/* =========================================================
   NCRO WEBSITE
   Revised Professional Stylesheet
   New Consultancy and Relief Organization
   ========================================================= */

.ncro{
    --green:#103f33;
    --green-dark:#0b3027;
    --green-soft:#174f40;
    --leaf:#28765b;
    --leaf-light:#3b8c6d;
    --gold:#e9bf62;
    --gold-dark:#c99a3f;
    --cream:#f5f3eb;
    --cream-light:#faf9f5;
    --ink:#17382e;
    --muted:#55675e;
    --line:#dce4dd;
    --white:#ffffff;

    --radius-sm:4px;
    --radius:8px;
    --radius-lg:12px;

    --shadow-sm:0 4px 16px rgba(16,63,51,.06);
    --shadow:0 10px 30px rgba(16,63,51,.09);
    --shadow-lg:0 18px 45px rgba(16,63,51,.14);

    color:var(--ink);
    background:#fff;
    font:16px/1.65 Arial,Helvetica,sans-serif;
    text-align:left;
    overflow-wrap:break-word;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}


/* =========================================================
   RESET / BASE
   ========================================================= */

.ncro *,
.ncro *::before,
.ncro *::after{
    box-sizing:border-box;
}

.ncro h1,
.ncro h2,
.ncro h3,
.ncro p,
.ncro ul,
.ncro figure{
    margin:0;
}

.ncro a{
    color:inherit;
    text-decoration:none;
}

.ncro a:hover{
    text-decoration:underline;
}

.ncro img{
    display:block;
    max-width:100%;
    height:auto;
}

.ncro ::selection{
    background:var(--gold);
    color:var(--green-dark);
}

.ncro [id]{
    scroll-margin-top:30px;
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.ncro a:focus-visible,
.ncro button:focus-visible,
.ncro summary:focus-visible{
    outline:3px solid var(--gold-dark);
    outline-offset:4px;
    border-radius:3px;
}

.ncro .skip{
    position:absolute;
    left:-9999px;
    top:auto;
}

.ncro .skip:focus{
    left:15px;
    top:15px;
    z-index:9999;
    background:#fff;
    color:var(--green);
    padding:14px 18px;
    border-radius:5px;
    box-shadow:var(--shadow);
}


/* =========================================================
   GLOBAL CONTAINER
   ========================================================= */

.ncro .wrap{
    width:min(1180px,calc(100% - 64px));
    margin-inline:auto;
}


/* =========================================================
   UTILITY BAR
   ========================================================= */

.ncro .utility{
    background:var(--green-dark);
    color:#fff;
    font-size:12px;
    letter-spacing:.35px;
    padding:8px 0;
}

.ncro .utility .wrap{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}

.ncro .utility a{
    color:#fff;
}

.ncro .utility a:hover{
    color:var(--gold);
}


/* =========================================================
   MAIN NAVIGATION
   ========================================================= */

.ncro .nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:19px 0;
}

.ncro .brand{
    display:flex;
    align-items:center;
    gap:13px;
    flex-shrink:0;
}

.ncro .brand img{
    width:68px;
    height:62px;
    object-fit:contain;
}

.ncro .brand strong{
    display:block;
    font-size:29px;
    letter-spacing:.8px;
    line-height:1.05;
    color:var(--green);
}

.ncro .brand small{
    display:block;
    max-width:170px;
    font-size:10px;
    line-height:1.4;
    margin-top:4px;
    color:#64766e;
}

.ncro .navlinks{
    display:flex;
    align-items:center;
    gap:25px;
    font-size:14px;
    font-weight:700;
}

.ncro .navlinks a{
    position:relative;
    padding:8px 0;
}

.ncro .navlinks a:not(.button)::after{
    content:"";
    position:absolute;
    left:0;
    bottom:2px;
    width:0;
    height:2px;
    background:var(--leaf);
    transition:width .2s ease;
}

.ncro .navlinks a:not(.button):hover{
    color:var(--leaf);
    text-decoration:none;
}

.ncro .navlinks a:not(.button):hover::after{
    width:100%;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.ncro .button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;

    min-height:48px;
    padding:13px 22px;

    background:var(--green);
    border:1px solid var(--green);
    border-radius:6px;

    color:#fff;
    font-size:14px;
    font-weight:700;
    line-height:1.2;

    cursor:pointer;
    box-shadow:0 3px 10px rgba(16,63,51,.08);
}

.ncro .button:hover{
    background:var(--green-dark);
    border-color:var(--green-dark);
    color:#fff;
    text-decoration:none;
}

.ncro .button.gold{
    background:var(--gold);
    border-color:var(--gold);
    color:var(--green-dark);
}

.ncro .button.gold:hover{
    background:#f0ca76;
    border-color:#f0ca76;
    color:var(--green-dark);
}

.ncro .button.light{
    background:transparent;
    border-color:rgba(255,255,255,.55);
    color:#fff;
}

.ncro .button.light:hover{
    background:rgba(255,255,255,.09);
    border-color:#fff;
}

.ncro .actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-top:30px;
}


/* =========================================================
   HERO
   ========================================================= */

.ncro .hero{
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:575px;
    background:var(--green);
    color:#fff;
}

.ncro .hero-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding-top:70px;
    padding-bottom:70px;
    padding-left:max(32px,calc((100vw - 1180px)/2));
    padding-right:52px;
}

.ncro .eyebrow{
    margin-bottom:18px;

    color:var(--leaf);

    font-size:11px;
    font-weight:700;
    letter-spacing:2px;
    line-height:1.4;

    text-transform:uppercase;
}

.ncro .hero .eyebrow{
    color:var(--gold);
}

.ncro h1{
    max-width:680px;

    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(40px,4.3vw,66px);
    font-weight:400;
    line-height:1.06;

    letter-spacing:-1.5px;
}

.ncro h1 em{
    color:var(--gold);
    font-style:normal;
}

.ncro .hero p.lead{
    max-width:520px;
    margin-top:24px;

    color:#e0e9e3;
    font-size:17px;
    line-height:1.75;
}

.ncro .hero-photo{
    position:relative;
    min-height:520px;
    overflow:hidden;
    background:#355e4e;
}

.ncro .hero-photo::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;

    background:
        linear-gradient(
            to top,
            rgba(5,35,27,.35) 0%,
            rgba(5,35,27,.04) 48%,
            transparent 70%
        );

    pointer-events:none;
}

.ncro .hero-photo>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;
}

.ncro .photo-label{
    position:absolute;
    z-index:2;

    right:24px;
    bottom:24px;
    left:24px;

    padding:16px 20px;

    background:rgba(16,63,51,.94);
    border-left:3px solid var(--gold);
    border-radius:0 5px 5px 0;

    color:#fff;
    font-size:12px;

    box-shadow:0 8px 25px rgba(0,0,0,.12);
    backdrop-filter:blur(4px);
}

.ncro .photo-label b{
    display:block;
    margin-bottom:3px;

    font-family:Georgia,"Times New Roman",serif;
    font-size:23px;
    font-weight:400;
    line-height:1.25;
}


/* =========================================================
   STATISTICS
   ========================================================= */

.ncro .stats{
    padding:32px 0 20px;
    background:var(--cream);
    border-bottom:1px solid #e4e2d9;
}

.ncro .stats-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
}

.ncro .stat{
    padding:9px 18px;
    border-right:1px solid #d6ddd5;
    text-align:center;
}

.ncro .stat:last-child{
    border-right:0;
}

.ncro .stat strong{
    display:block;

    color:var(--green);

    font-family:Georgia,"Times New Roman",serif;
    font-size:34px;
    font-weight:400;
    line-height:1.1;
}

.ncro .stat span{
    display:block;
    margin-top:8px;

    color:#50645a;
    font-size:12px;
    line-height:1.4;
}

.ncro .note{
    margin-top:18px;

    color:#66766e;
    font-size:11px;
    text-align:center;
}


/* =========================================================
   GENERAL SECTIONS
   ========================================================= */

.ncro .section{
    padding:88px 0;
}

.ncro h2{
    color:var(--green);

    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(32px,3vw,45px);
    font-weight:400;
    line-height:1.14;

    letter-spacing:-.7px;
}

.ncro h3{
    color:var(--green);
    font-size:20px;
    line-height:1.3;
}

.ncro .muted{
    color:var(--muted);
}


/* =========================================================
   INTRODUCTION / ABOUT
   ========================================================= */

.ncro .intro{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:start;
}

.ncro .intro p{
    color:#455d52;
}

.ncro .intro p+p{
    margin-top:15px;
}

.ncro .text-link{
    display:inline-block;
    position:relative;

    margin-top:22px;
    padding-bottom:3px;

    border-bottom:1px solid #9bb8a9;

    color:var(--leaf);

    font-size:14px;
    font-weight:700;
}

.ncro .text-link:hover{
    color:var(--green);
    border-color:var(--green);
    text-decoration:none;
}

.ncro .mission{
    display:flex;
    gap:18px;

    margin-top:28px;
    padding:23px 24px;

    background:var(--cream);
    border-left:4px solid var(--gold);
    border-radius:0 7px 7px 0;
}

.ncro .mission strong{
    color:var(--green);

    font-family:Georgia,"Times New Roman",serif;
    font-size:23px;
    font-weight:400;
    line-height:1.3;
}


/* =========================================================
   SECTION HEADERS
   ========================================================= */

.ncro .section-top{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:36px;

    margin-bottom:38px;
}

.ncro .section-top>p{
    max-width:420px;
    color:var(--muted);
}


/* =========================================================
   PROGRAM CARDS
   ========================================================= */

.ncro .program-section{
    background:#f6f7f3;
}

.ncro .cards{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.ncro .card{
    overflow:hidden;

    background:#fff;
    border:1px solid #e1e7de;
    border-radius:var(--radius);

    box-shadow:var(--shadow-sm);
}

.ncro .card>img{
    width:100%;
    height:220px;
    object-fit:cover;
}

.ncro .card-body{
    padding:26px;
}

.ncro .card .number{
    margin-bottom:10px;

    color:#657c6a;

    font-size:11px;
    font-weight:700;
    letter-spacing:1.5px;

    text-transform:uppercase;
}

.ncro .card h3{
    font-size:20px;
}

.ncro .card p{
    margin-top:12px;

    color:var(--muted);
    font-size:14px;
    line-height:1.7;
}

.ncro .card .text-link{
    margin-top:18px;
    font-size:13px;
}


/* =========================================================
   FEATURED WORK
   ========================================================= */

.ncro .work{
    display:grid;
    grid-template-columns:1.1fr 1fr;

    overflow:hidden;

    background:var(--green);
    border-radius:var(--radius-lg);

    color:#fff;

    box-shadow:var(--shadow);
}

.ncro .work>img{
    width:100%;
    height:100%;
    min-height:430px;

    object-fit:cover;
}

.ncro .work-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:48px;
}

.ncro .work h2{
    color:#fff;
}

.ncro .work .eyebrow{
    color:var(--gold);
}

.ncro .work p{
    margin-top:20px;

    color:#e0e9e3;
    line-height:1.75;
}

.ncro .work .text-link{
    color:var(--gold);
    border-color:rgba(233,191,98,.55);
}

.ncro .work .text-link:hover{
    color:#fff;
    border-color:#fff;
}


/* =========================================================
   REGIONS / LOCATIONS
   ========================================================= */

.ncro .region-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;

    margin-top:34px;
}

.ncro .region{
    padding:24px;

    background:var(--cream);
    border:1px solid transparent;
    border-radius:var(--radius);
}

.ncro .region strong{
    display:block;
    margin-bottom:7px;

    color:var(--green);
    font-size:16px;
}

.ncro .region p{
    color:var(--muted);
    font-size:14px;
    line-height:1.65;
}


/* =========================================================
   VALUES
   ========================================================= */

.ncro .values{
    background:var(--cream);
}

.ncro .values-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:32px 42px;

    margin-top:38px;
}

.ncro .value{
    padding-top:21px;
    border-top:2px solid #bcc8b8;
}

.ncro .value span{
    color:#687966;

    font-size:11px;
    font-weight:700;
    letter-spacing:.7px;
    text-transform:uppercase;
}

.ncro .value h3{
    margin:7px 0;
}

.ncro .value p{
    color:var(--muted);
    font-size:14px;
    line-height:1.7;
}


/* =========================================================
   PARTNERS
   ========================================================= */

.ncro .partners{
    padding:64px 0;
    text-align:center;
}

.ncro .partners h2{
    font-size:35px;
}

.ncro .partners p{
    max-width:740px;
    margin:17px auto 30px;

    color:var(--muted);
    font-size:14px;
}

.ncro .partner-list{
    display:flex;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap;
}

.ncro .partner-list span{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:48px;
    padding:11px 20px;

    background:#fff;
    border:1px solid #d9e1d7;
    border-radius:6px;

    color:#4b6458;

    font-size:17px;
    font-weight:700;

    box-shadow:0 3px 12px rgba(16,63,51,.035);
}


/* =========================================================
   CALL TO ACTION
   ========================================================= */

.ncro .cta{
    padding:58px 0;

    background:var(--green);
    color:#fff;
}

.ncro .cta .wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.ncro .cta h2{
    max-width:670px;

    color:#fff;
    font-size:38px;
}

.ncro .cta p{
    max-width:670px;
    margin-top:14px;

    color:#d4e3d7;
    line-height:1.7;
}


/* =========================================================
   FEEDBACK BAR
   ========================================================= */

.ncro .feedback{
    padding:27px 0;

    background:#f2e7c9;
    border-top:1px solid #ead9ad;
    border-bottom:1px solid #ead9ad;
}

.ncro .feedback .wrap{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;
}

.ncro .feedback p{
    color:#4f4a39;
    font-size:14px;
}

.ncro .feedback a{
    color:var(--green);
    font-weight:700;
    white-space:nowrap;
    text-decoration:underline;
}

.ncro .feedback a:hover{
    color:var(--leaf);
}


/* =========================================================
   FOOTER
   ========================================================= */

.ncro footer{
    padding:54px 0 22px;

    background:#f7f8f4;
    border-top:1px solid #e7ebe5;

    font-size:13px;
}

.ncro .footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.5fr;
    gap:42px;
}

.ncro footer h3{
    margin-bottom:15px;

    color:var(--green);

    font-size:14px;
    font-weight:700;
}

.ncro footer p{
    color:var(--muted);
    line-height:1.7;
}

.ncro footer ul{
    padding:0;
    list-style:none;
}

.ncro footer li{
    margin-bottom:8px;
}

.ncro footer li a{
    color:#4c6157;
}

.ncro footer li a:hover{
    color:var(--leaf);
}

.ncro footer .brand{
    margin-bottom:18px;
}

.ncro .legal{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;

    margin-top:38px;
    padding-top:23px;

    border-top:1px solid #d8e0d5;

    color:var(--muted);
    font-size:11px;
}

.ncro .update{
    margin-top:28px;

    color:var(--muted);
    font-size:11px;
}


/* =========================================================
   MOBILE NAVIGATION
   ========================================================= */

.ncro .mobile-nav{
    display:none;
}

.ncro .mobile-nav summary{
    list-style:none;
}

.ncro .mobile-nav summary::-webkit-details-marker{
    display:none;
}


/* =========================================================
   LARGE SCREENS
   ========================================================= */

@media(min-width:1500px){

    .ncro .hero-copy{
        padding-left:calc((100vw - 1180px)/2);
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1000px){

    .ncro .navlinks{
        gap:15px;
    }

    .ncro .navlinks .optional{
        display:none;
    }

    .ncro .hero-copy{
        padding:50px 36px;
    }

    .ncro .intro{
        gap:42px;
    }

    .ncro .cards{
        gap:18px;
    }

    .ncro .card-body{
        padding:21px;
    }

    .ncro .footer-grid{
        gap:28px;
    }

    .ncro .stats-grid{
        grid-template-columns:repeat(3,1fr);
        gap:0;
    }

    .ncro .stat{
        padding:13px 12px;
    }

    .ncro .stat:nth-child(3n){
        border-right:0;
    }

    .ncro .stat:nth-child(n+4){
        margin-top:15px;
        padding-top:20px;
        border-top:1px solid #d6ddd5;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

    .ncro .wrap{
        width:calc(100% - 36px);
    }


    /* Utility */

    .ncro .utility{
        padding:7px 0;
    }

    .ncro .utility .wrap{
        justify-content:center;
        text-align:center;
    }

    .ncro .utility .wrap>span:last-child{
        display:none;
    }


    /* Navigation */

    .ncro .nav{
        flex-wrap:wrap;
        gap:12px;
        padding:13px 0;
    }

    .ncro .navlinks{
        display:none;
    }

    .ncro .brand img{
        width:52px;
        height:50px;
    }

    .ncro .brand strong{
        font-size:24px;
    }

    .ncro .brand small{
        max-width:145px;
        font-size:9px;
    }

    .ncro .mobile-nav{
        display:block;
        margin-left:auto;
    }

    .ncro .mobile-nav summary{
        display:flex;
        align-items:center;
        justify-content:center;

        min-width:48px;
        min-height:44px;
        padding:10px 13px;

        background:var(--cream);
        border:1px solid #dce4dd;
        border-radius:6px;

        color:var(--green);

        cursor:pointer;
        font-size:13px;
        font-weight:700;
    }

    .ncro .mobile-nav[open]{
        width:100%;
        margin-left:0;
    }

    .ncro .mobile-nav[open] summary{
        width:max-content;
        margin-left:auto;
        margin-bottom:8px;
    }

    .ncro .mobile-nav nav{
        display:grid;
        gap:2px;

        padding:10px;

        background:var(--cream);
        border:1px solid #e1e5dc;
        border-radius:8px;

        box-shadow:var(--shadow-sm);
    }

    .ncro .mobile-nav nav a{
        padding:10px 12px;
        border-radius:5px;
        font-weight:600;
    }

    .ncro .mobile-nav nav a:hover{
        background:#fff;
        color:var(--leaf);
        text-decoration:none;
    }


    /* Hero */

    .ncro .hero{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .ncro .hero-copy{
        padding:50px 24px 48px;
    }

    .ncro h1{
        font-size:clamp(38px,11vw,48px);
        letter-spacing:-1px;
    }

    .ncro .hero p.lead{
        font-size:16px;
    }

    .ncro .hero-photo{
        min-height:360px;
    }

    .ncro .hero-photo>img{
        object-position:center 43%;
    }

    .ncro .photo-label{
        right:18px;
        bottom:18px;
        left:18px;

        padding:14px 16px;
    }

    .ncro .photo-label b{
        font-size:21px;
    }


    /* Buttons */

    .ncro .actions{
        gap:10px;
    }

    .ncro .actions .button{
        flex:1 1 160px;
    }


    /* Statistics */

    .ncro .stats{
        padding:25px 0 18px;
    }

    .ncro .stats-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .ncro .stat{
        padding:14px 10px;
        border-right:0;
        border-top:0;
        margin-top:0;
    }

    .ncro .stat:nth-child(odd){
        border-right:1px solid #d6ddd5;
    }

    .ncro .stat:nth-child(n+3){
        border-top:1px solid #d6ddd5;
    }

    .ncro .stat strong{
        font-size:29px;
    }

    .ncro .stat span{
        font-size:11px;
        line-height:1.35;
    }


    /* General Sections */

    .ncro .section{
        padding:58px 0;
    }

    .ncro h2{
        font-size:34px;
    }


    /* Intro */

    .ncro .intro{
        grid-template-columns:1fr;
        gap:34px;
    }

    .ncro .mission{
        padding:20px;
    }


    /* Section header */

    .ncro .section-top{
        display:block;
        margin-bottom:28px;
    }

    .ncro .section-top>p{
        margin-top:18px;
    }


    /* Cards */

    .ncro .cards{
        grid-template-columns:1fr;
        gap:20px;
    }

    .ncro .card>img{
        height:240px;
    }

    .ncro .card-body{
        padding:23px;
    }


    /* Featured work */

    .ncro .work{
        grid-template-columns:1fr;
        gap:0;
    }

    .ncro .work>img{
        height:300px;
        min-height:0;
    }

    .ncro .work-copy{
        padding:32px 27px;
    }


    /* Regions */

    .ncro .region-grid{
        grid-template-columns:1fr;
        gap:15px;
    }


    /* Values */

    .ncro .values-grid{
        grid-template-columns:1fr;
        gap:26px;
    }


    /* Partners */

    .ncro .partners{
        padding:52px 0;
    }

    .ncro .partners h2{
        font-size:31px;
    }

    .ncro .partner-list span{
        padding:10px 16px;
        font-size:15px;
    }


    /* CTA */

    .ncro .cta{
        padding:48px 0;
    }

    .ncro .cta .wrap{
        display:block;
    }

    .ncro .cta h2{
        font-size:32px;
    }

    .ncro .cta .button{
        margin-top:25px;
    }


    /* Feedback */

    .ncro .feedback .wrap{
        display:block;
    }

    .ncro .feedback a{
        display:inline-block;
        margin-top:12px;
        white-space:normal;
    }


    /* Footer */

    .ncro footer{
        padding-top:45px;
    }

    .ncro .footer-grid{
        grid-template-columns:1fr 1fr;
        gap:32px 24px;
    }

    .ncro .footer-grid>div:first-child{
        grid-column:1 / -1;
    }

    .ncro .legal{
        display:block;
    }

    .ncro .legal span{
        display:block;
        margin-top:10px;
    }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media(max-width:460px){

    .ncro .wrap{
        width:calc(100% - 28px);
    }

    .ncro .hero-copy{
        padding:43px 20px;
    }

    .ncro h1{
        font-size:39px;
    }

    .ncro .hero-photo{
        min-height:315px;
    }

    .ncro .card>img{
        height:215px;
    }

    .ncro .footer-grid{
        grid-template-columns:1fr;
    }

    .ncro .footer-grid>div:first-child{
        grid-column:auto;
    }

    .ncro .partner-list{
        gap:9px;
    }

    .ncro .partner-list span{
        flex:1 1 45%;
    }

}


/* =========================================================
   HOVER EFFECTS
   Only when device supports hover
   ========================================================= */

@media(hover:hover){

    .ncro .card{
        transition:
            transform .22s ease,
            box-shadow .22s ease,
            border-color .22s ease;
    }

    .ncro .card:hover{
        transform:translateY(-5px);
        border-color:#cad9ce;
        box-shadow:var(--shadow);
    }

    .ncro .card>img{
        transition:transform .4s ease;
    }

    .ncro .card:hover>img{
        transform:scale(1.025);
    }

    .ncro .region{
        transition:
            transform .2s ease,
            background .2s ease,
            border-color .2s ease,
            box-shadow .2s ease;
    }

    .ncro .region:hover{
        transform:translateY(-3px);
        background:#fff;
        border-color:#dce5dd;
        box-shadow:var(--shadow-sm);
    }

    .ncro .partner-list span{
        transition:
            transform .18s ease,
            border-color .18s ease,
            box-shadow .18s ease;
    }

    .ncro .partner-list span:hover{
        transform:translateY(-2px);
        border-color:#b7cbbd;
        box-shadow:var(--shadow-sm);
    }

}


/* =========================================================
   MOTION
   ========================================================= */

@media(prefers-reduced-motion:no-preference){

    .ncro .button{
        transition:
            background .18s ease,
            border-color .18s ease,
            color .18s ease,
            transform .18s ease,
            box-shadow .18s ease;
    }

    .ncro .button:hover{
        transform:translateY(-2px);
        box-shadow:0 7px 18px rgba(16,63,51,.16);
    }

}


/* =========================================================
   REDUCED MOTION ACCESSIBILITY
   ========================================================= */

@media(prefers-reduced-motion:reduce){

    .ncro *,
    .ncro *::before,
    .ncro *::after{
        scroll-behavior:auto !important;
        transition:none !important;
        animation:none !important;
    }

}