/* Cicero's Columns premium override. Load after style.css */
:root{--navy:#02122e;--navy2:#071d3d;--gold:#d4a437;--green:#2f6b3b;--ink:#152033;--muted:#667085;--line:#e8ebef;--soft:#f6f7f9;--shadow:0 18px 45px rgba(2,18,46,.09);--shadow2:0 24px 60px rgba(2,18,46,.15)}
html{scroll-behavior:smooth}body{background:#fff;color:var(--ink);overflow-x:hidden}.container{max-width:1240px}.section-shell{padding:96px 0;margin:0!important}.section-shell--light{background:#fff}.section-shell--soft{background:var(--soft)}.section-heading{max-width:820px;margin:0 auto 54px}.section-kicker{display:inline-block;margin-bottom:12px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.14em}.section-description,.practice-subtitle,.section-subtitle{max-width:780px;margin:22px auto 0;color:var(--muted);font-size:17px;line-height:1.8}.section-title{line-height:1.12;letter-spacing:-.02em}.premium-card{height:100%;border:1px solid rgba(2,18,46,.07);border-radius:20px;box-shadow:var(--shadow);transition:.28s}.premium-card:hover{transform:translateY(-7px);box-shadow:var(--shadow2);border-color:rgba(212,164,55,.3)}.premium-panel{border-radius:24px;box-shadow:var(--shadow)}
.about-home-section .about-content{max-width:680px;padding:76px 8vw 76px 72px}.about-home-section .about-content p{max-width:620px;line-height:1.9;color:#475467}.home-practice-section .advisory-layout{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.home-practice-section .area-card{position:relative;min-height:330px;display:flex;flex-direction:column;padding:32px 28px 62px}.home-practice-section .area-card img{width:68px;height:68px;object-fit:contain;margin-bottom:22px}.home-practice-section .area-card h3{min-height:64px;color:var(--navy);font-family:'Playfair Display',serif;font-size:23px;line-height:1.25}.home-practice-section .area-card p{color:#5f6b7a;line-height:1.75;font-size:15px}.home-practice-section .advisory-advert{grid-column:span 3;min-height:330px;padding:48px;display:flex;flex-direction:column;justify-content:center}.practice-cta-box,.cta-box,.cta-green{border-radius:22px!important;padding:42px 46px!important}
.value-box{padding:34px 28px!important}.value-box h4{font-size:25px!important}.value-box p{color:#5f6b7a!important;line-height:1.75!important}.practice-cards-section .row,.people-section .row,.contact-section .row,.focus-areas .row{align-items:stretch}.practice-full-card{display:flex;flex-direction:column;overflow:hidden}.practice-top-image{width:100%;height:220px;object-fit:cover;display:block}.practice-content{display:flex;flex-direction:column;flex:1;padding:30px 30px 34px}.practice-content h3{min-height:70px;font-size:27px;line-height:1.2}.practice-content>p:not(.advisory-card-label){min-height:82px;color:#5f6b7a;line-height:1.75}.advisory-card-label{padding-top:18px;margin-top:auto;margin-bottom:12px;border-top:1px solid var(--line);color:var(--navy);font-weight:700;font-size:13px}.practice-content ul{padding-left:0;list-style:none}.practice-content li{position:relative;padding-left:22px;margin-bottom:10px;color:#344054;line-height:1.6}.practice-content li:before{content:'';position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.people-card{overflow:hidden;display:flex;flex-direction:column}.people-card img{height:310px!important;object-fit:cover!important;object-position:top center!important}.people-card-content{flex:1;display:flex;flex-direction:column;padding:28px}.people-card-content p{flex:1}.publication-card{overflow:hidden;display:flex;flex-direction:column}.publication-image{width:100%;height:260px;object-fit:cover}.publication-content{flex:1;padding:30px}.publication-content h3{min-height:76px}.contact-info-box,.contact-form-box{border:1px solid rgba(2,18,46,.07);box-shadow:var(--shadow)!important}.contact-item{padding:0 0 22px;margin-bottom:24px!important;border-bottom:1px solid var(--line)}.custom-input{border:1px solid #d7dce2!important;background:#fbfcfd}.custom-input:focus{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(212,164,55,.12)!important}.map-wrapper{box-shadow:var(--shadow)}
.commitment-box{padding:36px;background:#fff}.impact-list{gap:18px!important;padding-left:8px!important}.sustainability-item--premium{display:flex;align-items:center!important;gap:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.sustainability-icon{width:50px;height:50px;min-width:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;box-shadow:0 10px 24px rgba(2,18,46,.12)}.sustainability-icon--green{background:var(--green)}.sustainability-icon--navy{background:var(--navy)}.sustainability-icon--gold{background:var(--gold)}.sustainability-item--premium span{font-size:15px!important;line-height:1.55!important;color:#344054!important;font-weight:600}.focus-card{overflow:hidden;display:flex;flex-direction:column}.focus-card>img{width:100%;height:190px;object-fit:cover}.focus-content{flex:1;padding:26px 22px 30px}.focus-content h3{min-height:58px;color:var(--navy);font-size:21px}.focus-content p{color:#5f6b7a;line-height:1.7}.approach-box{box-shadow:var(--shadow)}.approach-content{max-width:560px}
.hero-section,.aboutus-hero,.practice-hero,.contact-hero,.sustainability-hero,.publications-hero,.technical-hero{min-height:560px}.hero-content{max-width:760px}.hero-content p{max-width:680px}.hero-buttons{margin-top:26px}@media(max-width:1199px){.section-shell{padding:80px 0}.home-practice-section .advisory-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.home-practice-section .advisory-advert{grid-column:span 2}}@media(max-width:991px){.section-shell{padding:68px 0}.container{padding-left:22px;padding-right:22px}.about-home-section .about-content{padding:48px 28px;max-width:none}.practice-content h3,.practice-content>p:not(.advisory-card-label){min-height:0}.commitment-box{padding:24px}.impact-list{padding-left:0!important;margin-top:8px!important}}@media(max-width:767px){.section-shell{padding:56px 0}.section-heading{margin-bottom:36px}.home-practice-section .advisory-layout{grid-template-columns:1fr}.home-practice-section .advisory-advert{grid-column:span 1;padding:32px 26px}.home-practice-section .area-card{min-height:0}.hero-section,.aboutus-hero,.practice-hero,.contact-hero,.sustainability-hero,.publications-hero,.technical-hero{min-height:460px}.hero-content h1,.hero-content h2{font-size:40px!important}.people-card img{height:280px!important}}

/* =========================================================
   PREMIUM HOMEPAGE REFRESH
========================================================= */


/* ---------- GENERAL ---------- */

.premium-section{
    padding:100px 0;
    background:#f7f8fa;
}

.section-heading{
    max-width:850px;
    margin:0 auto 55px;
}

.section-kicker,
.hero-kicker,
.advert-kicker,
.cta-kicker{
    display:block;
    color:#d4a437;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.section-description{
    max-width:760px;
    margin:24px auto 0;
    color:#667085;
    font-size:17px;
    line-height:1.8;
}


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

.premium-home-hero{
    min-height:660px;
}

.premium-home-hero .hero-overlay{
    padding:115px 0;
}

.premium-home-hero .hero-content{
    max-width:760px;
}

.hero-kicker{
    margin-bottom:18px;
}

.premium-home-hero .hero-content h1{
    font-size:62px;
    max-width:850px;
    margin-bottom:24px;
}

.premium-home-hero .hero-content p{
    max-width:680px;
    font-size:19px;
    line-height:1.8;
}


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

.home-about-premium{
    padding:100px 0;
    background:#fff;
}

.home-about-panel{
    overflow:hidden;
    border-radius:24px;
    box-shadow:0 20px 60px rgba(2,18,46,.10);
    background:#fff;
}

.home-about-panel .about-image{
    height:100%;
    min-height:540px;
}

.home-about-panel .about-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.home-about-panel .about-content{
    padding:70px 64px;
}

.home-about-panel .about-content p{
    max-width:580px;
    color:#526071;
    font-size:16px;
    line-height:1.9;
}

.about-feature-row{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    margin:28px 0 32px;
}

.about-feature{
    display:flex;
    align-items:center;
    gap:10px;
    color:#081d45;
    font-size:14px;
    font-weight:600;
}

.about-feature i{
    color:#d4a437;
    font-size:18px;
}


/* =========================================================
   ADVISORY GRID
========================================================= */

.advisory-layout{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
}

.area-card{
    position:relative;
    min-height:350px;
    padding:32px 28px;
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(8,29,69,.07);
    box-shadow:0 12px 38px rgba(2,18,46,.07);

    display:flex;
    flex-direction:column;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.area-card:hover{
    transform:translateY(-7px);
    box-shadow:0 22px 55px rgba(2,18,46,.13);
    border-color:rgba(212,164,55,.35);
}

.area-card-icon{
    width:78px;
    height:78px;
    margin-bottom:24px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#f8fafc;
    border-radius:16px;
}

.area-card-icon img{
    width:58px;
    height:58px;
    object-fit:contain;
}

.area-card h3{
    color:#081d45;
    font-family:'Playfair Display',serif;
    font-size:23px;
    line-height:1.3;
    min-height:62px;
    margin-bottom:16px;
}

.area-card p{
    color:#667085;
    font-size:15px;
    line-height:1.75;
    margin-bottom:28px;
}

.area-card-link{
    margin-top:auto;

    display:flex;
    align-items:center;
    justify-content:space-between;

    color:#b98a1f;
    text-decoration:none;
    font-size:14px;
    font-weight:700;

    padding-top:18px;
    border-top:1px solid #edf0f3;
}

.area-card-link:hover{
    color:#081d45;
}


/* =========================================================
   ADVISORY FEATURE PANEL
========================================================= */

.advisory-advert{
    grid-column:span 3;

    min-height:350px;

    padding:48px 52px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:50px;

    border-radius:22px;

    background:
        linear-gradient(
            110deg,
            #02122e 0%,
            #071d3d 70%,
            #0a2b55 100%
        );

    color:#fff;

    overflow:hidden;
}

.advisory-advert-content{
    max-width:780px;
}

.advisory-advert h3{
    color:#fff;
    font-family:'Playfair Display',serif;
    font-size:37px;
    line-height:1.25;
    margin:14px 0 18px;
}

.advisory-advert p{
    max-width:700px;
    color:#dfe6ef;
    font-size:16px;
    line-height:1.8;
    margin-bottom:28px;
}

.advisory-advert-symbol{
    width:145px;
    height:145px;
    min-width:145px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid rgba(212,164,55,.45);
    border-radius:50%;

    color:#d4a437;
    font-size:62px;
}


/* =========================================================
   WHY CICERO
========================================================= */

.home-strength-section{
    padding:100px 0;
    background:#fff;
}

.strength-intro{
    max-width:500px;
    color:#667085;
    font-size:17px;
    line-height:1.85;
}

.strength-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}

.strength-item{
    display:flex;
    gap:18px;

    padding:26px;

    background:#f8f9fb;

    border:1px solid #edf0f3;
    border-radius:17px;
}

.strength-icon{
    width:52px;
    height:52px;
    min-width:52px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#02122e;
    color:#d4a437;

    font-size:19px;
}

.strength-item h4{
    color:#081d45;
    font-size:18px;
    font-weight:700;
    margin-bottom:8px;
}

.strength-item p{
    color:#667085;
    font-size:14px;
    line-height:1.7;
    margin:0;
}


/* =========================================================
   FINAL CTA
========================================================= */

.home-final-cta{
    padding:20px 0 100px;
    background:#fff;
}

.premium-final-cta{
    position:relative;
    overflow:hidden;

    padding:46px 50px;

    border-radius:22px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    box-shadow:0 20px 55px rgba(2,18,46,.17);
}

.cta-content-premium{
    display:flex;
    align-items:center;
    gap:28px;
}

.cta-icon-wrap{
    width:82px;
    height:82px;
    min-width:82px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid rgba(212,164,55,.45);

    border-radius:50%;
}

.cta-icon-wrap img{
    width:52px;
    height:52px;
    object-fit:contain;
}

.premium-final-cta h3{
    color:#fff;
    font-family:'Playfair Display',serif;
    font-size:32px;
    margin:8px 0;
}

.premium-final-cta p{
    max-width:650px;
    color:#d9e0ea;
    line-height:1.7;
    margin:0;
}

.btn-gold-large{
    padding:17px 30px;
}


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

@media(max-width:1199px){

    .advisory-layout{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .advisory-advert{
        grid-column:span 2;
    }

}


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

@media(max-width:991px){

    .premium-home-hero .hero-content h1{
        font-size:44px;
    }

    .home-about-premium,
    .premium-section,
    .home-strength-section{
        padding:70px 0;
    }

    .home-about-panel .about-content{
        padding:45px 35px;
    }

    .home-about-panel .about-image{
        min-height:400px;
    }

    .advisory-advert{
        padding:36px;
    }

    .advisory-advert-symbol{
        display:none;
    }

    .strength-grid{
        grid-template-columns:1fr;
    }

}


@media(max-width:767px){

    .premium-home-hero{
        min-height:520px;
    }

    .premium-home-hero .hero-overlay{
        padding:80px 0;
    }

    .premium-home-hero .hero-content h1{
        font-size:38px;
    }

    .premium-home-hero .hero-content p{
        font-size:16px;
    }

    .advisory-layout{
        grid-template-columns:1fr;
    }

    .advisory-advert{
        grid-column:span 1;
    }

    .area-card{
        min-height:auto;
    }

    .area-card h3{
        min-height:0;
    }

    .advisory-advert h3{
        font-size:29px;
    }

    .cta-content-premium{
        align-items:flex-start;
    }

    .premium-final-cta{
        padding:34px 26px;
    }

    .premium-final-cta h3{
        font-size:27px;
    }

}

/* =========================================================
   PREMIUM ABOUT PAGE
========================================================= */


/* HERO */

.premium-about-hero{
    min-height:590px;
}

.premium-about-hero .hero-content{
    max-width:760px;
}

.premium-about-hero .hero-content h1{
    font-size:64px;
}

.premium-about-hero .hero-content p{
    max-width:700px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   WHO WE ARE
========================================================= */

.about-who-section{
    padding:100px 0;
    background:#fff;
}

.about-who-panel{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(2,18,46,.10);
}

.about-who-image{
    height:100%;
    min-height:650px;
}

.about-who-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.about-who-content{
    height:100%;
    padding:64px 62px;

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.about-who-content p{
    max-width:600px;
    color:#5f6b7a;
    font-size:15.5px;
    line-height:1.85;
    margin-bottom:17px;
}

.about-who-highlights{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    margin-top:22px;
}

.about-highlight{
    display:flex;
    align-items:center;
    gap:14px;

    padding:17px;

    border:1px solid #e8ebef;
    border-radius:14px;

    background:#f8f9fb;
}

.about-highlight i{
    width:42px;
    height:42px;
    min-width:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#02122e;
    color:#d4a437;
}

.about-highlight strong{
    display:block;
    color:#081d45;
    font-size:14px;
    margin-bottom:3px;
}

.about-highlight span{
    color:#667085;
    font-size:12px;
}


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

.premium-values-section{
    padding:100px 0;
    background:#f7f8fa;
}

.values-premium-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.value-box{
    position:relative;

    min-height:330px;

    padding:32px 30px !important;

    background:#fff;

    display:flex;
    flex-direction:column;
}

.value-icon-wrap{
    width:72px;
    height:72px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:16px;

    background:#f8fafc;

    margin-bottom:22px;
}

.value-icon-wrap .value-icon{
    width:52px;
    height:52px;
    object-fit:contain;
    margin:0;
}

.value-number{
    position:absolute;
    top:27px;
    right:28px;

    color:#d4a437;

    font-family:'Playfair Display',serif;
    font-size:15px;
    font-weight:700;
}

.value-box h4{
    color:#081d45;
    font-size:25px !important;
    margin-bottom:16px;
}

.value-box p{
    color:#667085 !important;
    font-size:15px;
    line-height:1.8 !important;
    margin:0;
}

.value-box-featured{
    grid-column:span 2;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;
}

.value-box-featured .value-icon-wrap{
    background:rgba(255,255,255,.08);
}

.value-box-featured h4{
    color:#fff;
}

.value-box-featured p{
    color:#dbe2eb !important;
    max-width:650px;
}

.value-box-featured .value-number{
    color:#d4a437;
}


/* =========================================================
   DIFFERENCE SECTION
========================================================= */

.about-difference-section{
    padding:20px 0 100px;
    background:#fff;
}

.about-difference-panel{
    padding:55px 58px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:0 20px 60px rgba(2,18,46,.15);
}

.about-difference-panel h2{
    max-width:720px;
    color:#fff;

    font-family:'Playfair Display',serif;
    font-size:38px;
    line-height:1.25;

    margin:12px 0 18px;
}

.about-difference-panel p{
    max-width:700px;

    color:#dce3ec;

    font-size:16px;
    line-height:1.8;

    margin:0;
}

.difference-points{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.difference-point{
    display:flex;
    align-items:center;
    gap:14px;

    padding:14px 16px;

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
}

.difference-point i{
    width:28px;
    height:28px;
    min-width:28px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#d4a437;
    color:#fff;

    font-size:11px;
}

.difference-point span{
    color:#fff;
    font-size:14px;
}


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

@media(max-width:991px){

    .about-who-section,
    .premium-values-section{
        padding:70px 0;
    }

    .about-who-image{
        min-height:440px;
    }

    .about-who-content{
        padding:45px 35px;
    }

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

    .value-box-featured{
        grid-column:span 2;
    }

    .about-difference-panel{
        padding:42px 35px;
    }

}


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

@media(max-width:767px){

    .premium-about-hero .hero-content h1{
        font-size:42px;
    }

    .about-who-section,
    .premium-values-section{
        padding:58px 0;
    }

    .about-who-highlights{
        grid-template-columns:1fr;
    }

    .values-premium-grid{
        grid-template-columns:1fr;
    }

    .value-box-featured{
        grid-column:span 1;
    }

    .value-box{
        min-height:auto;
    }

    .about-difference-section{
        padding:10px 0 70px;
    }

    .about-difference-panel{
        padding:34px 26px;
    }

    .about-difference-panel h2{
        font-size:30px;
    }

}

/* =========================================================
   PREMIUM ADVISORY AREAS PAGE
========================================================= */


/* HERO */

.premium-practice-hero{
    min-height:590px;
}

.premium-practice-hero .hero-content{
    max-width:760px;
}

.premium-practice-hero .hero-content h1{
    font-size:64px;
}

.premium-practice-hero .hero-content p{
    max-width:690px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   INTRO
========================================================= */

.advisory-intro-premium{
    padding:95px 0 65px;
    background:#fff;
}


/* =========================================================
   ADVISORY GRID
========================================================= */

.advisory-premium-section{
    padding:40px 0 100px;
    background:#f7f8fa;
}

.advisory-premium-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
}


/* =========================================================
   CARD
========================================================= */

.advisory-premium-card{
    background:#fff;

    border:1px solid rgba(2,18,46,.07);

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 14px 42px rgba(2,18,46,.07);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;

    display:flex;
    flex-direction:column;
}

.advisory-premium-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 25px 60px rgba(2,18,46,.13);

    border-color:
        rgba(212,164,55,.35);
}


/* IMAGE */

.advisory-image-wrap{
    position:relative;

    height:275px;

    overflow:hidden;
}

.advisory-image-wrap img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .5s ease;
}

.advisory-premium-card:hover
.advisory-image-wrap img{
    transform:scale(1.035);
}


/* NUMBER */

.advisory-card-number{
    position:absolute;

    top:22px;
    right:22px;

    width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:rgba(2,18,46,.92);

    border:1px solid rgba(212,164,55,.55);

    color:#d4a437;

    font-family:'Playfair Display',serif;

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


/* BODY */

.advisory-card-body{
    padding:34px 34px 38px;

    flex:1;

    display:flex;
    flex-direction:column;
}

.advisory-category{
    color:#d4a437;

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

    letter-spacing:1.5px;

    margin-bottom:13px;
}

.advisory-card-body h3{
    color:#081d45;

    font-family:'Playfair Display',serif;

    font-size:30px;
    line-height:1.22;

    margin-bottom:17px;
}

.advisory-summary{
    color:#667085;

    font-size:15.5px;

    line-height:1.8;

    margin-bottom:25px;
}


/* SERVICES */

.advisory-services{
    margin-top:auto;

    padding-top:24px;

    border-top:1px solid #e9edf1;
}

.advisory-services > span{
    display:block;

    color:#081d45;

    font-size:13px;

    font-weight:700;

    margin-bottom:15px;
}

.advisory-services ul{
    list-style:none;

    padding:0;
    margin:0;

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:10px 22px;
}

.advisory-services li{
    position:relative;

    padding-left:19px;

    color:#475467;

    font-size:14px;

    line-height:1.55;
}

.advisory-services li::before{
    content:"";

    position:absolute;

    left:0;
    top:8px;

    width:7px;
    height:7px;

    border-radius:50%;

    background:#d4a437;
}


/* =========================================================
   WIDE FIFTH CARD
========================================================= */

.advisory-premium-card--wide{
    grid-column:span 1;
}


/* =========================================================
   STRATEGIC PANEL
========================================================= */

.advisory-strategy-panel{
    min-height:100%;

    padding:46px;

    border-radius:22px;

    background:
        linear-gradient(
            115deg,
            #02122e 0%,
            #071d3d 70%,
            #0a2a54 100%
        );

    color:#fff;

    box-shadow:
        0 18px 52px rgba(2,18,46,.16);

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:36px;

    overflow:hidden;
}

.advisory-strategy-content{
    max-width:620px;
}

.advisory-strategy-panel h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:34px;
    line-height:1.25;

    margin:14px 0 17px;
}

.advisory-strategy-panel p{
    color:#dfe6ef;

    font-size:15px;

    line-height:1.8;

    margin-bottom:28px;
}

.advisory-strategy-icon{
    width:130px;
    height:130px;

    min-width:130px;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.45);

    display:flex;
    align-items:center;
    justify-content:center;

    color:#d4a437;

    font-size:50px;
}


/* =========================================================
   APPROACH STRIP
========================================================= */

.advisory-approach-section{
    padding:90px 0;

    background:#fff;
}

.advisory-approach-grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    border:
        1px solid #e7ebef;

    border-radius:20px;

    overflow:hidden;

    box-shadow:
        0 14px 40px rgba(2,18,46,.06);
}

.advisory-approach-item{
    padding:30px 26px;

    display:flex;

    gap:16px;

    border-right:
        1px solid #e7ebef;

    background:#fff;
}

.advisory-approach-item:last-child{
    border-right:none;
}

.advisory-approach-item i{
    width:44px;
    height:44px;

    min-width:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#02122e;

    color:#d4a437;

    font-size:16px;
}

.advisory-approach-item strong{
    display:block;

    color:#081d45;

    font-size:15px;

    margin-bottom:5px;
}

.advisory-approach-item span{
    display:block;

    color:#667085;

    font-size:13px;

    line-height:1.6;
}


/* =========================================================
   FINAL CTA
========================================================= */

.advisory-final-cta{
    padding:10px 0 100px;

    background:#fff;
}

.premium-advisory-cta{
    padding:45px 48px;

    border-radius:22px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    box-shadow:
        0 20px 55px rgba(2,18,46,.16);
}

.premium-cta-content{
    display:flex;

    align-items:center;

    gap:26px;
}

.premium-cta-icon{
    width:82px;
    height:82px;

    min-width:82px;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.45);

    display:flex;

    align-items:center;
    justify-content:center;
}

.premium-cta-icon img{
    width:50px;
    height:50px;

    object-fit:contain;
}

.premium-advisory-cta h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:31px;

    margin:8px 0;
}

.premium-advisory-cta p{
    color:#dbe2eb;

    max-width:650px;

    line-height:1.7;

    margin:0;
}


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

@media(max-width:991px){

    .advisory-intro-premium{
        padding:70px 0 45px;
    }

    .advisory-premium-section{
        padding:25px 0 75px;
    }

    .advisory-premium-grid{
        grid-template-columns:1fr;
    }

    .advisory-premium-card--wide{
        grid-column:span 1;
    }

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

    .advisory-approach-item{
        border-bottom:
            1px solid #e7ebef;
    }

    .advisory-approach-item:nth-child(2){
        border-right:none;
    }

    .advisory-strategy-icon{
        display:none;
    }

}


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

@media(max-width:767px){

    .premium-practice-hero .hero-content h1{
        font-size:42px;
    }

    .advisory-image-wrap{
        height:220px;
    }

    .advisory-card-body{
        padding:28px 24px 32px;
    }

    .advisory-card-body h3{
        font-size:26px;
    }

    .advisory-services ul{
        grid-template-columns:1fr;
    }

    .advisory-strategy-panel{
        padding:34px 26px;
    }

    .advisory-strategy-panel h3{
        font-size:28px;
    }

    .advisory-approach-section{
        padding:65px 0;
    }

    .advisory-approach-grid{
        grid-template-columns:1fr;
    }

    .advisory-approach-item{
        border-right:none;
    }

    .premium-advisory-cta{
        padding:34px 26px;
    }

    .premium-cta-content{
        align-items:flex-start;
    }

    .premium-advisory-cta h3{
        font-size:27px;
    }

}

/* =========================================================
   PREMIUM OUR PEOPLE PAGE
========================================================= */


/* HERO */

.premium-people-hero{
    min-height:590px;
}

.premium-people-hero .hero-content{
    max-width:760px;
}

.premium-people-hero .hero-content h1{
    font-size:64px;
}

.premium-people-hero .hero-content p{
    max-width:680px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   INTRO
========================================================= */

.people-intro-premium{
    padding:95px 0 55px;
    background:#fff;
}


/* =========================================================
   PEOPLE GRID
========================================================= */

.people-premium-section{
    padding:35px 0 100px;
    background:#f7f8fa;
}

.people-premium-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
}


/* =========================================================
   PEOPLE CARD
========================================================= */

.people-premium-card{
    background:#fff;

    border-radius:22px;

    overflow:hidden;

    border:1px solid rgba(2,18,46,.07);

    box-shadow:
        0 14px 42px rgba(2,18,46,.07);

    display:flex;
    flex-direction:column;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.people-premium-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 25px 60px rgba(2,18,46,.13);

    border-color:
        rgba(212,164,55,.35);
}

.people-premium-card--lead{
    border-top:4px solid #d4a437;
}


/* IMAGE */

.people-image-wrap{
    position:relative;

    height:340px;

    overflow:hidden;

    background:#eef1f4;
}

.people-image-wrap img{
    width:100%;
    height:100%;

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

    display:block;

    transition:transform .45s ease;
}

.people-premium-card:hover
.people-image-wrap img{
    transform:scale(1.025);
}


/* ROLE */

.people-role-badge{
    position:absolute;

    left:20px;
    bottom:18px;

    padding:7px 13px;

    background:rgba(2,18,46,.94);

    color:#d4a437;

    border:1px solid rgba(212,164,55,.45);

    border-radius:30px;

    font-size:10px;

    font-weight:700;

    letter-spacing:1.3px;
}


/* CONTENT */

.people-card-body{
    padding:28px;

    flex:1;

    display:flex;

    flex-direction:column;
}

.people-card-body h3{
    color:#081d45;

    font-family:'Playfair Display',serif;

    font-size:26px;

    line-height:1.2;

    margin-bottom:15px;

    min-height:62px;
}

.people-expertise{
    color:#667085;

    font-size:14.5px;

    line-height:1.75;

    margin-bottom:24px;

    flex:1;
}

.people-card-divider{
    height:1px;

    background:#e9edf1;

    margin-bottom:17px;
}

.people-profile-link{
    display:flex;

    align-items:center;

    justify-content:space-between;

    color:#b98a1f;

    text-decoration:none;

    font-size:14px;

    font-weight:700;
}

.people-profile-link:hover{
    color:#081d45;
}


/* =========================================================
   COLLABORATION STRIP
========================================================= */

.people-collaboration-section{
    padding:90px 0;
    background:#fff;
}

.people-collaboration-panel{
    padding:48px 52px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.15);
}

.people-collaboration-panel h2{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:36px;

    line-height:1.25;

    margin:12px 0 0;
}

.people-collaboration-grid{
    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;
}

.people-collaboration-item{
    display:flex;

    align-items:flex-start;

    gap:14px;

    padding:20px;

    border-radius:16px;

    background:rgba(255,255,255,.06);

    border:
        1px solid rgba(255,255,255,.10);
}

.people-collaboration-item i{
    width:44px;
    height:44px;

    min-width:44px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#d4a437;

    color:#02122e;

    font-size:17px;
}

.people-collaboration-item strong{
    display:block;

    color:#fff;

    font-size:14px;

    margin-bottom:5px;
}

.people-collaboration-item span{
    display:block;

    color:#d7dee8;

    font-size:12.5px;

    line-height:1.6;
}


/* =========================================================
   CTA
========================================================= */

.people-final-cta{
    padding:10px 0 100px;

    background:#fff;
}

.people-cta-panel{
    padding:46px 50px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.16);
}

.people-cta-content{
    display:flex;

    align-items:center;

    gap:26px;
}

.people-cta-icon{
    width:82px;
    height:82px;

    min-width:82px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.45);

    color:#d4a437;

    font-size:30px;
}

.people-cta-panel h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:31px;

    line-height:1.25;

    margin:8px 0;
}

.people-cta-panel p{
    max-width:680px;

    color:#dbe2eb;

    line-height:1.75;

    margin:0;
}


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

@media(max-width:1199px){

    .people-premium-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .people-collaboration-grid{
        grid-template-columns:1fr;
    }

}


@media(max-width:991px){

    .people-intro-premium{
        padding:70px 0 40px;
    }

    .people-premium-section{
        padding:25px 0 75px;
    }

    .people-collaboration-section{
        padding:70px 0;
    }

    .people-collaboration-panel{
        padding:40px 34px;
    }

}


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

@media(max-width:767px){

    .premium-people-hero .hero-content h1{
        font-size:42px;
    }

    .people-premium-grid{
        grid-template-columns:1fr;
    }

    .people-image-wrap{
        height:320px;
    }

    .people-card-body h3{
        min-height:0;
    }

    .people-collaboration-panel{
        padding:32px 24px;
    }

    .people-collaboration-panel h2{
        font-size:29px;
    }

    .people-final-cta{
        padding-bottom:70px;
    }

    .people-cta-panel{
        padding:34px 26px;
    }

    .people-cta-content{
        align-items:flex-start;
    }

    .people-cta-panel h3{
        font-size:27px;
    }

}

/* =========================================================
   PREMIUM PUBLICATIONS PAGE
========================================================= */


/* HERO */

.premium-publications-hero{
    min-height:590px;
}

.premium-publications-hero .hero-content{
    max-width:760px;
}

.premium-publications-hero .hero-content h1{
    font-size:64px;
}

.premium-publications-hero .hero-content p{
    max-width:680px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   INTRO
========================================================= */

.publications-intro-premium{
    padding:95px 0 55px;
    background:#fff;
}


/* =========================================================
   PUBLICATIONS GRID
========================================================= */

.publications-premium-section{
    padding:35px 0 100px;
    background:#f7f8fa;
}

.publications-premium-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:28px;
}


/* =========================================================
   PUBLICATION CARD
========================================================= */

.publication-premium-card{
    background:#fff;

    border-radius:22px;

    overflow:hidden;

    border:1px solid rgba(2,18,46,.07);

    box-shadow:
        0 14px 42px rgba(2,18,46,.07);

    display:flex;
    flex-direction:column;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.publication-premium-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 25px 60px rgba(2,18,46,.13);

    border-color:
        rgba(212,164,55,.35);
}


/* IMAGE */

.publication-image-wrap{
    position:relative;

    height:320px;

    overflow:hidden;

    background:#eef1f4;
}

.publication-image-wrap img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .45s ease;
}

.publication-premium-card:hover
.publication-image-wrap img{
    transform:scale(1.03);
}


/* TYPE BADGE */

.publication-type{
    position:absolute;

    left:20px;
    bottom:18px;

    padding:7px 14px;

    border-radius:30px;

    background:rgba(2,18,46,.94);

    color:#d4a437;

    border:
        1px solid rgba(212,164,55,.45);

    font-size:10px;

    font-weight:700;

    letter-spacing:1.3px;
}


/* CARD BODY */

.publication-card-body{
    position:relative;

    flex:1;

    display:flex;
    flex-direction:column;

    padding:36px 30px 30px;
}

.publication-icon-premium{
    position:absolute;

    top:-30px;
    right:28px;

    width:60px;
    height:60px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#02122e;

    color:#d4a437;

    border:4px solid #fff;

    box-shadow:
        0 10px 25px rgba(2,18,46,.16);

    font-size:20px;
}

.publication-category{
    color:#d4a437;

    font-size:10.5px;

    font-weight:700;

    letter-spacing:1.4px;

    margin-bottom:14px;
}

.publication-card-body h3{
    color:#081d45;

    font-family:'Playfair Display',serif;

    font-size:27px;

    line-height:1.25;

    min-height:105px;

    margin-bottom:18px;
}

.publication-card-body p{
    color:#667085;

    font-size:15px;

    line-height:1.8;

    flex:1;

    margin-bottom:24px;
}


/* FOOTER */

.publication-card-footer{
    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    padding-top:18px;

    border-top:1px solid #e9edf1;

    color:#b98a1f;

    font-size:13px;

    font-weight:700;
}

.publication-card-footer i{
    color:#d4a437;
}


/* =========================================================
   INSIGHT PANEL
========================================================= */

.publications-insight-section{
    padding:90px 0;
    background:#fff;
}

.publications-insight-panel{
    padding:50px 52px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.15);
}

.publications-insight-panel h2{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:36px;

    line-height:1.25;

    margin:12px 0 0;
}

.publications-insight-grid{
    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:18px;
}

.publication-insight-item{
    display:flex;

    align-items:flex-start;

    gap:14px;

    padding:20px;

    border-radius:16px;

    background:
        rgba(255,255,255,.06);

    border:
        1px solid rgba(255,255,255,.11);
}

.publication-insight-item i{
    width:44px;
    height:44px;

    min-width:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#d4a437;

    color:#02122e;

    font-size:16px;
}

.publication-insight-item strong{
    display:block;

    color:#fff;

    font-size:14px;

    margin-bottom:5px;
}

.publication-insight-item span{
    display:block;

    color:#d7dee8;

    font-size:12.5px;

    line-height:1.6;
}


/* =========================================================
   FINAL CTA
========================================================= */

.publications-final-cta{
    padding:10px 0 100px;

    background:#fff;
}

.publications-cta-panel{
    padding:46px 50px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.16);
}

.publications-cta-content{
    display:flex;

    align-items:center;

    gap:26px;
}

.publications-cta-icon{
    width:82px;
    height:82px;

    min-width:82px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.45);

    color:#d4a437;

    font-size:29px;
}

.publications-cta-panel h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:31px;

    line-height:1.25;

    margin:8px 0;
}

.publications-cta-panel p{
    max-width:680px;

    color:#dbe2eb;

    line-height:1.75;

    margin:0;
}


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

@media(max-width:1199px){

    .publications-premium-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .publications-insight-grid{
        grid-template-columns:1fr;
    }

}


@media(max-width:991px){

    .publications-intro-premium{
        padding:70px 0 40px;
    }

    .publications-premium-section{
        padding:25px 0 75px;
    }

    .publications-insight-section{
        padding:70px 0;
    }

    .publications-insight-panel{
        padding:40px 34px;
    }

}


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

@media(max-width:767px){

    .premium-publications-hero .hero-content h1{
        font-size:42px;
    }

    .publications-premium-grid{
        grid-template-columns:1fr;
    }

    .publication-image-wrap{
        height:280px;
    }

    .publication-card-body h3{
        min-height:0;

        font-size:25px;
    }

    .publications-insight-panel{
        padding:32px 24px;
    }

    .publications-insight-panel h2{
        font-size:29px;
    }

    .publications-final-cta{
        padding-bottom:70px;
    }

    .publications-cta-panel{
        padding:34px 26px;
    }

    .publications-cta-content{
        align-items:flex-start;
    }

    .publications-cta-panel h3{
        font-size:27px;
    }

}

/* =========================================================
   PREMIUM SUSTAINABILITY PAGE
========================================================= */


/* HERO */

.premium-sustainability-hero{
    min-height:600px;
}

.premium-sustainability-hero .hero-content{
    max-width:780px;
}

.premium-sustainability-hero .hero-content h1{
    font-size:62px;
    line-height:1.08;
}

.premium-sustainability-hero .hero-content p{
    max-width:700px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   COMMITMENT
========================================================= */

.sustainability-commitment-premium{
    padding:100px 0;
    background:#fff;
}

.sustainability-commitment-panel{
    overflow:hidden;

    background:#fff;

    border-radius:24px;

    box-shadow:
        0 20px 60px rgba(2,18,46,.10);
}

.sustainability-commitment-image{
    height:100%;
    min-height:650px;
}

.sustainability-commitment-image img{
    width:100%;
    height:100%;

    object-fit:cover;

    display:block;
}

.sustainability-commitment-content{
    padding:62px 58px;

    height:100%;

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.sustainability-commitment-content > p{
    max-width:650px;

    color:#5f6b7a;

    font-size:15.5px;

    line-height:1.85;

    margin-bottom:17px;
}


/* IMPACT ITEMS */

.sustainability-impact-grid{
    display:grid;

    grid-template-columns:1fr;

    gap:14px;

    margin-top:22px;
}

.sustainability-impact-item{
    display:flex;

    align-items:center;

    gap:15px;

    padding:16px 18px;

    background:#f8fafb;

    border:
        1px solid #e7ebef;

    border-radius:15px;
}

.sustainability-impact-icon{
    width:48px;
    height:48px;

    min-width:48px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;

    font-size:18px;
}

.impact-green{
    background:#356c45;
}

.impact-navy{
    background:#02122e;
}

.impact-gold{
    background:#d4a437;
}

.sustainability-impact-item strong{
    display:block;

    color:#081d45;

    font-size:14px;

    margin-bottom:3px;
}

.sustainability-impact-item span{
    display:block;

    color:#667085;

    font-size:12.5px;

    line-height:1.55;
}


/* =========================================================
   FOCUS SECTION
========================================================= */

.sustainability-focus-premium{
    padding:100px 0;

    background:#f6f8f5;
}

.sustainability-focus-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:28px;
}


/* CARD */

.sustainability-focus-card{
    overflow:hidden;

    display:flex;
    flex-direction:column;

    background:#fff;

    border:
        1px solid rgba(2,18,46,.07);

    border-radius:22px;

    box-shadow:
        0 14px 42px rgba(2,18,46,.07);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.sustainability-focus-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 25px 60px rgba(2,18,46,.13);
}


/* IMAGE */

.sustainability-focus-image{
    position:relative;

    height:260px;

    overflow:hidden;
}

.sustainability-focus-image img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .45s ease;
}

.sustainability-focus-card:hover
.sustainability-focus-image img{
    transform:scale(1.035);
}


/* NUMBER */

.sustainability-card-number{
    position:absolute;

    top:20px;
    right:20px;

    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        rgba(2,18,46,.92);

    color:#d4a437;

    border:
        1px solid rgba(212,164,55,.5);

    font-family:
        'Playfair Display',serif;

    font-size:14px;

    font-weight:700;
}


/* BODY */

.sustainability-focus-body{
    position:relative;

    padding:35px 30px 32px;

    flex:1;
}

.sustainability-focus-icon{
    position:absolute;

    right:28px;
    top:-29px;

    width:58px;
    height:58px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#356c45;

    color:#fff;

    border:4px solid #fff;

    box-shadow:
        0 10px 25px rgba(2,18,46,.15);

    font-size:18px;
}

.sustainability-focus-body h3{
    color:#081d45;

    font-family:
        'Playfair Display',serif;

    font-size:27px;

    line-height:1.25;

    margin-bottom:14px;
}

.sustainability-focus-body p{
    color:#667085;

    font-size:15px;

    line-height:1.8;

    margin:0;
}


/* =========================================================
   FEATURE PANEL
========================================================= */

.sustainability-feature-panel{
    min-height:100%;

    padding:48px;

    border-radius:22px;

    background:
        linear-gradient(
            115deg,
            #0f3824,
            #174c30
        );

    color:#fff;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:36px;

    box-shadow:
        0 20px 55px rgba(15,56,36,.18);
}

.sustainability-feature-panel > div:first-child{
    max-width:650px;
}

.sustainability-feature-panel h3{
    color:#fff;

    font-family:
        'Playfair Display',serif;

    font-size:35px;

    line-height:1.25;

    margin:12px 0 17px;
}

.sustainability-feature-panel p{
    color:#dce8df;

    font-size:15px;

    line-height:1.8;

    margin-bottom:26px;
}

.sustainability-feature-symbol{
    width:130px;
    height:130px;

    min-width:130px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.5);

    color:#d4a437;

    font-size:52px;
}


/* =========================================================
   APPROACH
========================================================= */

.sustainability-approach-premium{
    padding:100px 0;

    background:#fff;
}

.sustainability-approach-panel{
    overflow:hidden;

    border-radius:24px;

    min-height:600px;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.98) 0%,
            rgba(255,255,255,.95) 38%,
            rgba(255,255,255,.25) 68%,
            rgba(255,255,255,.05) 100%
        ),
        url('/assets/images/sustainability/approach.png');

    background-size:cover;

    background-position:center;

    box-shadow:
        0 20px 60px rgba(2,18,46,.10);
}

.sustainability-approach-content{
    padding:65px 55px;

    max-width:650px;
}

.sustainability-approach-content > p{
    color:#5f6b7a;

    line-height:1.8;

    margin-bottom:25px;
}

.sustainability-approach-list{
    display:flex;

    flex-direction:column;

    gap:12px;
}

.sustainability-approach-item{
    display:flex;

    gap:14px;

    padding:13px 15px;

    background:
        rgba(255,255,255,.82);

    border:
        1px solid #e6eaed;

    border-radius:13px;

    backdrop-filter:
        blur(6px);
}

.approach-check{
    width:30px;
    height:30px;

    min-width:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#356c45;

    color:#fff;

    font-size:11px;
}

.sustainability-approach-item strong{
    display:block;

    color:#081d45;

    font-size:14px;

    margin-bottom:3px;
}

.sustainability-approach-item p{
    color:#667085;

    font-size:13px;

    line-height:1.55;

    margin:0;
}


/* =========================================================
   FINAL CTA
========================================================= */

.sustainability-final-cta{
    padding:10px 0 100px;

    background:#fff;
}

.sustainability-cta-panel{
    padding:48px 50px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #0f3824,
            #174c30
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(15,56,36,.18);
}

.sustainability-cta-content{
    display:flex;

    align-items:center;

    gap:26px;
}

.sustainability-cta-icon{
    width:82px;
    height:82px;

    min-width:82px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.5);

    color:#d4a437;

    font-size:30px;
}

.sustainability-cta-panel h3{
    color:#fff;

    font-family:
        'Playfair Display',serif;

    font-size:32px;

    margin:8px 0;
}

.sustainability-cta-panel p{
    max-width:680px;

    color:#dce8df;

    line-height:1.75;

    margin:0;
}


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

@media(max-width:991px){

    .sustainability-commitment-premium,
    .sustainability-focus-premium,
    .sustainability-approach-premium{
        padding:70px 0;
    }

    .sustainability-commitment-image{
        min-height:430px;
    }

    .sustainability-commitment-content{
        padding:44px 34px;
    }

    .sustainability-focus-grid{
        grid-template-columns:1fr;
    }

    .sustainability-feature-symbol{
        display:none;
    }

    .sustainability-approach-panel{
        background:
            linear-gradient(
                rgba(255,255,255,.96),
                rgba(255,255,255,.94)
            ),
            url('/assets/images/sustainability/approach.png');

        background-size:cover;
    }

}


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

@media(max-width:767px){

    .premium-sustainability-hero
    .hero-content h1{
        font-size:40px;
    }

    .sustainability-focus-image{
        height:220px;
    }

    .sustainability-feature-panel{
        padding:34px 25px;
    }

    .sustainability-feature-panel h3{
        font-size:28px;
    }

    .sustainability-approach-content{
        padding:38px 25px;
    }

    .sustainability-final-cta{
        padding-bottom:70px;
    }

    .sustainability-cta-panel{
        padding:34px 26px;
    }

    .sustainability-cta-content{
        align-items:flex-start;
    }

    .sustainability-cta-panel h3{
        font-size:27px;
    }

}

/* =========================================================
   PREMIUM CONTACT PAGE
========================================================= */


/* HERO */

.premium-contact-hero{
    min-height:560px;
}

.premium-contact-hero .hero-content{
    max-width:760px;
}

.premium-contact-hero .hero-content h1{
    font-size:64px;
}

.premium-contact-hero .hero-content p{
    max-width:680px;
    font-size:18px;
    line-height:1.85;
}


/* =========================================================
   INTRO
========================================================= */

.contact-intro-premium{
    padding:90px 0 48px;
    background:#fff;
}


/* =========================================================
   MAIN CONTACT
========================================================= */

.contact-premium-section{
    padding:38px 0 100px;
    background:#f7f8fa;
}


/* LEFT PANEL */

.premium-contact-info{
    height:100%;

    padding:38px 32px;

    border-radius:22px;

    background:
        linear-gradient(
            145deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.16);
}

.premium-contact-info > h2{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:34px;

    margin:10px 0 14px;
}

.contact-info-intro{
    color:#d7dee8;

    font-size:14px;

    line-height:1.75;

    margin-bottom:30px;
}


/* CONTACT ITEM */

.premium-contact-item{
    display:flex;

    align-items:flex-start;

    gap:15px;

    padding:19px 0;

    border-bottom:
        1px solid rgba(255,255,255,.12);
}

.premium-contact-icon{
    width:46px;
    height:46px;

    min-width:46px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        rgba(212,164,55,.12);

    border:
        1px solid rgba(212,164,55,.4);

    color:#d4a437;

    font-size:16px;
}

.premium-contact-item > div:last-child{
    min-width:0;
}

.premium-contact-item span{
    display:block;

    color:#d4a437;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:5px;
}

.premium-contact-item a,
.premium-contact-item p{
    display:block;

    color:#fff;

    text-decoration:none;

    font-size:13.5px;

    line-height:1.7;

    margin:0;

    overflow-wrap:anywhere;
}

.premium-contact-item a:hover{
    color:#d4a437;
}


/* CONSULTATION */

.contact-consultation-card{
    margin-top:30px;

    padding:25px;

    border-radius:17px;

    background:
        rgba(255,255,255,.06);

    border:
        1px solid rgba(255,255,255,.12);
}

.consultation-symbol{
    width:50px;
    height:50px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#d4a437;

    color:#02122e;

    margin-bottom:18px;

    font-size:18px;
}

.contact-consultation-card h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:22px;

    margin-bottom:10px;
}

.contact-consultation-card p{
    color:#d6dde6;

    font-size:13px;

    line-height:1.7;
}

.contact-mini-link{
    display:flex;

    align-items:center;

    justify-content:space-between;

    color:#d4a437;

    font-size:13px;

    font-weight:700;

    text-decoration:none;

    padding-top:15px;

    border-top:
        1px solid rgba(255,255,255,.1);
}


/* =========================================================
   FORM PANEL
========================================================= */

.premium-contact-form{
    height:100%;

    padding:44px;

    background:#fff;

    border-radius:22px;

    border:
        1px solid rgba(2,18,46,.07);

    box-shadow:
        0 18px 50px rgba(2,18,46,.08);
}

.contact-form-heading{
    margin-bottom:32px;
}

.contact-form-heading h2{
    color:#081d45;

    font-family:'Playfair Display',serif;

    font-size:36px;

    margin:10px 0;
}

.contact-form-heading p{
    color:#667085;

    font-size:14px;

    line-height:1.7;

    margin:0;
}


/* FORM */

.contact-premium-form{
    display:flex;

    flex-direction:column;

    gap:18px;
}

.premium-form-group{
    display:flex;

    flex-direction:column;

    gap:8px;
}

.premium-form-group label{
    color:#344054;

    font-size:13px;

    font-weight:600;
}

.premium-form-group label span{
    color:#b98a1f;
}

.premium-input{
    min-height:56px;

    padding:13px 16px !important;

    border:
        1px solid #d9dee5 !important;

    border-radius:10px !important;

    background:#fbfcfd !important;

    color:#1d2939;

    font-size:14px;
}

.premium-input::placeholder{
    color:#98a2b3;
}

.premium-input:focus{
    background:#fff !important;

    border-color:#d4a437 !important;

    box-shadow:
        0 0 0 3px rgba(212,164,55,.12) !important;
}

.premium-textarea{
    min-height:160px;

    resize:vertical;
}


/* PRIVACY */

.premium-privacy-row{
    display:flex;

    align-items:flex-start;

    gap:11px;

    padding:15px 16px;

    border-radius:10px;

    background:#f8fafc;

    border:
        1px solid #edf0f3;
}

.premium-privacy-row .form-check-input{
    margin-top:4px;

    flex-shrink:0;
}

.premium-privacy-row label{
    color:#667085;

    font-size:12.5px;

    line-height:1.6;
}

.premium-privacy-row a{
    color:#b98a1f;

    font-weight:700;

    text-decoration:none;
}


/* RECAPTCHA */

.premium-recaptcha-wrap{
    padding-top:2px;
}

.premium-recaptcha-wrap .g-recaptcha{
    margin:0 !important;
}


/* SUBMIT */

.contact-submit-row{
    display:flex;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;
}

.form-note{
    color:#98a2b3;

    font-size:12px;
}


/* =========================================================
   MAP
========================================================= */

.premium-map-section{
    padding:90px 0;

    background:#fff;
}

.premium-map-panel{
    overflow:hidden;

    border-radius:24px;

    background:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.10);
}

.premium-map-heading{
    display:flex;

    align-items:end;

    justify-content:space-between;

    gap:30px;

    padding:34px 40px;
}

.premium-map-heading h2{
    color:#081d45;

    font-family:'Playfair Display',serif;

    font-size:32px;

    margin:8px 0 0;
}

.premium-map-heading > p{
    color:#667085;

    font-size:14px;

    margin:0;
}

.premium-map-wrap iframe{
    display:block;

    width:100%;
}


/* =========================================================
   CTA
========================================================= */

.contact-final-cta{
    padding:10px 0 100px;

    background:#fff;
}

.contact-cta-panel{
    padding:46px 50px;

    border-radius:24px;

    background:
        linear-gradient(
            110deg,
            #02122e,
            #071d3d
        );

    color:#fff;

    box-shadow:
        0 20px 55px rgba(2,18,46,.16);
}

.contact-cta-content{
    display:flex;

    align-items:center;

    gap:26px;
}

.contact-cta-icon{
    width:82px;
    height:82px;

    min-width:82px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:
        1px solid rgba(212,164,55,.45);

    color:#d4a437;

    font-size:29px;
}

.contact-cta-panel h3{
    color:#fff;

    font-family:'Playfair Display',serif;

    font-size:31px;

    margin:8px 0;
}

.contact-cta-panel p{
    max-width:680px;

    color:#dbe2eb;

    line-height:1.75;

    margin:0;
}


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

@media(max-width:991px){

    .contact-intro-premium{
        padding:70px 0 38px;
    }

    .contact-premium-section{
        padding:25px 0 75px;
    }

    .premium-contact-info{
        height:auto;
    }

    .premium-contact-form{
        padding:36px 30px;
    }

    .premium-map-section{
        padding:70px 0;
    }

}


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

@media(max-width:767px){

    .premium-contact-hero .hero-content h1{
        font-size:42px;
    }

    .premium-contact-info{
        padding:30px 24px;
    }

    .premium-contact-form{
        padding:30px 22px;
    }

    .contact-form-heading h2{
        font-size:30px;
    }

    .premium-map-heading{
        align-items:flex-start;

        flex-direction:column;

        padding:28px 24px;
    }

    .premium-map-wrap iframe{
        height:350px;
    }

    .contact-final-cta{
        padding-bottom:70px;
    }

    .contact-cta-panel{
        padding:34px 26px;
    }

    .contact-cta-content{
        align-items:flex-start;
    }

    .contact-cta-panel h3{
        font-size:27px;
    }

}


