﻿:root {
    --darkest-grey: #343E46;
    --darkest-grey-rgb: 52,62,70;
    --massage-green: #B8D149;
    --dark-grey: #586A77;
    --dark-grey-30: rgba(88, 106, 119, 0.3);
    --light-grey: #E6E5E5;
    --light-grey-50: rgba(230,229,229,0.5);
    --dark-grey-20: rgba(88,106,119,0.2);
    --mid-tone-grey: #798893;
    --mid-tone-grey-rgb: 121 136 147;
    --massage-green-20: rgba(184, 209, 73, 0.2);
}

.national-insurance-wrapper {
    background: var(--light-grey-50);
}

.national-insurance-wrapper.spacing-top-full {
    padding-top: 90px;
    margin-top: 0px;
}

.national-insurance-wrapper.spacing-bottom-full {
    padding-bottom: 90px;
    margin-bottom: 0px;
}

.national-insurance-wrapper.spacing-top-half {
    padding-top: 45px;
    margin-top: 0px;
}

.national-insurance-wrapper.spacing-bottom-half {
    padding-bottom: 45px;
    margin-bottom: 0px;
}

.national-insurance-wrapper.spacing-top-none {
    padding-top: 0px;
    margin-top: 0px;
}

.national-insurance-wrapper.spacing-bottom-none {
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.national-insurance-wrapper .insurance-grid {
    display: grid;
    gap: 0;
    align-items: center;
    margin-top: 25px;
}

.national-insurance-wrapper .insurance-grid.cols-2 {
    grid-template-columns: repeat(2, 1fr);
}

.national-insurance-wrapper .insurance-grid.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}

.national-insurance-wrapper .insurance-grid.cols-4 {
    grid-template-columns: repeat(4, 1fr);
}

.national-insurance-wrapper .insurance-grid.cols-5 {
    grid-template-columns: repeat(5, 1fr);
}

.national-insurance-wrapper .insurance-logo-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    border-right: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    position: relative;
    min-height: 130px;
}

.national-insurance-wrapper .insurance-logo-wrapper a {
    inset: 0;
    position:absolute;
    display: flex;
    align-items:center;
    justify-content:center;
}

.national-insurance-wrapper .insurance-logo {
    width: 205px;
    height: auto;
    filter: grayscale(100%);
    transition: all .5s ease;
}

.national-insurance-wrapper .cols-5 .insurance-logo {
    width: 175px;
}

.national-insurance-wrapper .insurance-logo-wrapper a:hover .insurance-logo {
    filter: grayscale(0%);
}

.national-insurance-wrapper .insurance-grid > .insurance-logo-wrapper:nth-child(n) {
    border-right: 1px solid #d9d9d9;
}

.insurance-grid.multi-row > .insurance-logo-wrapper:nth-child(-n+2) {
    border-bottom: 1px solid #d9d9d9;
}

.insurance-grid.multi-row.cols-3 > .insurance-logo-wrapper:nth-child(-n+3) {
    border-bottom: 1px solid #d9d9d9;
}

.insurance-grid.multi-row.cols-4 > .insurance-logo-wrapper:nth-child(-n+4) {
    border-bottom: 1px solid #d9d9d9;
}

.insurance-grid.multi-row.cols-5 > .insurance-logo-wrapper:nth-child(-n+5) {
    border-bottom: 1px solid #d9d9d9;
}

.insurance-logo-wrapper.last-row {
    border-bottom: none !important;
}

@media (min-width: 767px) {
    .insurance-logo-wrapper.end-of-row {
        border-right: none !important;
    }
}

@media (min-width: 1200px) and (max-width: 1366px) {

    .national-insurance-wrapper .cols-4 .insurance-logo {
        width: 175px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo {
        width: 155px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo-wrapper {
        min-height: 100px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .national-insurance-wrapper .cols-3 .insurance-logo {
        width: 175px;
    }

    .national-insurance-wrapper .cols-3 .insurance-logo-wrapper {
        min-height: 110px;
    }

    .national-insurance-wrapper .cols-4 .insurance-logo {
        width: 155px;
    }

    .national-insurance-wrapper .cols-4 .insurance-logo-wrapper {
        min-height: 110px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo {
        width: 125px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo-wrapper {
        min-height: 90px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .national-insurance-wrapper .cols-3 .insurance-logo {
        width: 155px;
    }

    .national-insurance-wrapper .cols-3 .insurance-logo-wrapper {
        min-height: 110px;
    }

    .national-insurance-wrapper .cols-4 .insurance-logo {
        width: 135px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo {
        width: 115px;
    }

    .national-insurance-wrapper .cols-5 .insurance-logo-wrapper {
        min-height: 80px;
    }

    .national-insurance-wrapper .cols-4 .insurance-logo-wrapper {
        min-height: 90px;
    }
}


@media (max-width: 767px) {
    .national-insurance-wrapper .insurance-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        padding-left: 15px;
        padding-right: 15px;
    }

    .national-insurance-wrapper .insurance-grid > .insurance-logo-wrapper {
        border-right: 1px solid #d9d9d9;
    }

    .national-insurance-wrapper .insurance-grid > .insurance-logo-wrapper:nth-child(2n) { 
        border-right: none; 
    }

    .national-insurance-wrapper .insurance-logo {
        max-width: 75%;
    }

    .insurance-grid.cols-5 > .insurance-logo-wrapper:nth-of-type(odd) {
        border-right: 1px solid #d9d9d9!important;
    }

    .insurance-logo-wrapper.last-row {
        border-bottom: 1px solid #d9d9d9 !important;
    }

    .insurance-grid.odd-logos .insurance-logo-wrapper:nth-last-of-type(1) {
        border-bottom: none!important;
    }

    .insurance-grid.even-logos .insurance-logo-wrapper:nth-last-of-type(1),
    .insurance-grid.even-logos .insurance-logo-wrapper:nth-last-of-type(2) {
        border-bottom: none !important;
    }

    .national-insurance-wrapper .insurance-grid {
        margin-top: 20px;
    }
}