body{
    margin:0;
    padding:0;
    font-family:'Poppins',sans-serif;
    background:#f8f8f8;
}

.custom-navbar{
    background:#02122e;
    padding:14px 0;
}

.navbar-brand img{
    height:70px;
}

.navbar-nav{
    gap:30px;
}

.nav-link{
    color:#fff !important;
    font-size:14px;
    font-weight:500;
}

.nav-link.active{
    color:#d4a02a !important;
}

.section-title{
    font-size:46px;
    color:#081d45;
    font-family:'Playfair Display',serif;
    margin-bottom:20px;
}

.gold-line,
.gold-line-center,
.gold-line-sm{
    background:#d4a437;
}

.gold-line{
    width:70px;
    height:4px;
    margin-bottom:30px;
}

.gold-line-center{
    width:70px;
    height:4px;
    margin:20px auto 0;
}

.gold-line-sm{
    width:60px;
    height:3px;
    margin:20px 0;
}

.btn-gold{
    background:#d4a437;
    color:#fff;
    padding:16px 34px;
    text-decoration:none;
    border-radius:4px;
    font-weight:600;
    display:inline-block;
}

.btn-gold:hover{
    background:#b98a1f;
    color:#fff;
}

.btn-outline-custom{
    border:1px solid #d4a437;
    color:#fff;
    padding:16px 34px;
    text-decoration:none;
    border-radius:4px;
    font-weight:600;
}

.hero-section{
    background:linear-gradient(90deg,rgba(1,8,30,.96),rgba(1,8,30,.88),rgba(1,8,30,.40),rgba(1,8,30,.08)),
    url('/assets/images/banners/home-banner.png');
    background-size:cover;
    background-position:center;
    min-height:640px;
    display:flex;
    align-items:center;
}

.hero-overlay{
    width:100%;
    padding:100px 0;
}

.hero-content{
    max-width:650px;
    color:#fff;
}

.hero-content h1,
.hero-content h2{
    font-size:58px;
    line-height:1.1;
    color:#fff;
    font-family:'Playfair Display',serif;
}

.hero-content p{
    font-size:22px;
    line-height:1.7;
    color:#f1f1f1;
}

.hero-buttons{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.about-preview-section,
.home-practice-section,
.contact-section{
    background:#fff;
}

.about-image,
.about-image img{
    height:100%;
}

.about-image img{
    width:100%;
    object-fit:cover;
    display:block;
}

.about-content{
    height:100%;
    padding:70px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.home-practice-section{
    padding:80px 0;
}

.practice-card{
    position:relative;
    background:#fff;
    padding:35px 30px;
    border-radius:12px;
    box-shadow:0 0 20px rgba(0,0,0,.08);
    height:100%;
}

.practice-card img{
    width:70px;
    margin-bottom:20px;
}

.practice-card h3{
    font-size:24px;
    color:#081d45;
    font-family:'Playfair Display',serif;
}

.card-arrow{
    position:absolute;
    right:25px;
    bottom:20px;
    color:#d4a437;
    font-size:28px;
}

.aboutus-hero,
.practice-hero,
.contact-hero,
.sustainability-hero,
.publications-hero,
.technical-hero{
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    min-height:520px;
    display:flex;
    align-items:center;
}

.contact-hero{
    background:linear-gradient(90deg,rgba(2,18,46,.96),rgba(2,18,46,.88),rgba(2,18,46,.40),rgba(2,18,46,.08)),
    url('/assets/images/banners/contact-banner.png');
}

.aboutus-hero{
    background:linear-gradient(90deg,rgba(2,18,46,.96),rgba(2,18,46,.88),rgba(2,18,46,.40),rgba(2,18,46,.08)),
    url('/assets/images/banners/aboutus-banner.png');
}

.practice-hero{
    background:linear-gradient(90deg,rgba(2,18,46,.96),rgba(2,18,46,.88),rgba(2,18,46,.40),rgba(2,18,46,.08)),
    url('/assets/images/banners/practice-banner.png');
}

.sustainability-hero{
    background:linear-gradient(90deg,rgba(7,20,10,.88),rgba(7,20,10,.70),rgba(7,20,10,.15),rgba(7,20,10,.02)),
    url('/assets/images/banners/sustainability-banner.png');
}

.publications-hero{
    background:linear-gradient(90deg,rgba(20,15,10,.88),rgba(20,15,10,.70),rgba(20,15,10,.15),rgba(20,15,10,.02)),
    url('/assets/images/banners/publications-banner.png');
}

.technical-hero{
    background:linear-gradient(90deg,rgba(2,18,46,.92),rgba(2,18,46,.75),rgba(2,18,46,.18),rgba(2,18,46,.03)),
    url('/assets/images/banners/technical-banner.png');
}

.contact-hero-overlay{
    width:100%;
    padding:90px 0;
}

.contact-info-box,
.contact-form-box{
    background:#fff;
    padding:40px;
    border-radius:12px;
    box-shadow:0 0 25px rgba(0,0,0,.06);
    height:100%;
}

.contact-item{
    display:flex;
    gap:18px;
    margin-bottom:35px;
}

.contact-icon{
    width:58px;
    height:58px;
    min-width:58px;
    background:#02122e;
    color:#d4a437;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
}

.consultation-box{
    background:#02122e;
    color:#fff;
    padding:35px;
    border-radius:14px;
    margin-top:40px;
}

.custom-input{
    height:58px;
    border-radius:6px;
    border:1px solid #ddd;
    padding:12px 18px;
}

textarea.custom-input{
    height:auto;
}

.map-wrapper{
    position:relative;
    border-radius:18px;
    overflow:hidden;
}

.location-card{
    position:absolute;
    top:40px;
    left:40px;
    background:#02122e;
    color:#fff;
    padding:35px;
    border-radius:16px;
    width:320px;
    z-index:10;
}

.approach-box{
    background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.92),rgba(255,255,255,.35),rgba(255,255,255,.05)),
    url('/assets/images/sustainability/approach.png');
    background-size:cover;
    background-position:center;
    border-radius:20px;
    overflow:hidden;
}

.approach-overlay{
    padding:70px;
}

.approach-list{
    list-style:none;
    padding:0;
}

.approach-list li{
    display:flex;
    gap:12px;
    margin-bottom:16px;
}

.approach-list .tick{
    width:22px;
    height:22px;
    min-width:22px;
    border-radius:50%;
    background:#4d8b3b;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.advisor-bottom-strip{
    padding:30px 0 70px;
}

.bottom-strip-box{
    background:#02122e;
    border-radius:12px;
    overflow:hidden;
}

.bottom-left{
    display:flex;
    align-items:center;
    gap:35px;
    padding:30px 40px;
}

.icon-circle,
.feature-icon{
    border:2px solid #d4a437;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
}

.icon-circle{
    width:110px;
    height:110px;
    min-width:110px;
}

.icon-circle img{
    width:58px;
}

.bottom-left h2,
.bottom-left p,
.feature-item h5,
.feature-item p{
    color:#fff;
}

.bottom-features{
    border-left:2px solid #d4a437;
    padding:30px 35px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.feature-item{
    display:flex;
    gap:14px;
    max-width:220px;
}

.feature-icon{
    width:68px;
    height:68px;
    min-width:68px;
}

.feature-icon img{
    width:36px;
}

.footer-section{
    background:#02122e;
    padding:70px 0;
    color:#fff;
}

.footer-logo{
    height:80px;
}

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

.footer-links a{
    color:#fff;
    text-decoration:none;
}

@media(max-width:991px){

    .hero-overlay{
        padding:80px 20px;
    }

    .hero-content h1,
    .hero-content h2{
        font-size:40px;
    }

    .hero-content p{
        font-size:18px;
    }

    .about-content{
        padding:40px 30px;
    }

    .section-title{
        font-size:32px;
    }

    .contact-hero,
    .aboutus-hero,
    .practice-hero,
    .sustainability-hero,
    .publications-hero,
    .technical-hero{
        min-height:auto;
    }

    .location-card{
        position:relative;
        top:auto;
        left:auto;
        width:100%;
        border-radius:0;
    }

    .bottom-left{
        flex-direction:column;
        text-align:center;
    }

    .bottom-features{
        border-left:none;
        border-top:2px solid #d4a437;
        flex-direction:column;
        align-items:flex-start;
    }

    .feature-item{
        max-width:100%;
    }

    .approach-overlay{
        padding:40px 25px;
    }
}

.bottom-strip-box{
    overflow:hidden;
}

.bottom-features{
    flex-wrap:wrap;
    justify-content:flex-start;
}

.feature-item{
    flex:1 1 160px;
    min-width:0;
    max-width:none;
}

.feature-item p,
.feature-item h5{
    word-break:normal;
    overflow-wrap:break-word;
}
.bottom-features{
    padding:25px 20px;
    gap:18px;
}

/* =========================================
   LEAD CONSULTANT HERO FIX
========================================= */

.lead-hero{
    background:#02122e;
    overflow:hidden;
}

.lead-hero .row{
    min-height:620px;
}

.lead-hero-image{
    height:100%;
}

.lead-hero-image img{
    width:100%;
    height:100%;
    min-height:620px;
    object-fit:cover;
    object-position:center top;
    display:block;
}

.lead-hero-content{
    background:#02122e;
    padding:65px 60px;
    color:#fff;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.lead-hero-content h1{
    font-size:64px;
    line-height:1.05;
    margin-bottom:16px;
    font-family:'Playfair Display',serif;
    color:#fff;
}

.lead-hero-content h4{
    color:#d4a437;
    font-size:24px;
    line-height:1.4;
    margin-bottom:16px;
}

.lead-position{
    font-size:20px;
    margin-bottom:24px;
}

.lead-description{
    font-size:18px;
    line-height:1.7;
    margin-bottom:35px;
    max-width:1050px;
}

.lead-highlights{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:22px;
}

.highlight-item{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
}

.highlight-item img{
    width:49px;
    height:49px;
    object-fit:contain;
    flex-shrink:0;
}

.highlight-item span{
    font-size:16px;
    line-height:1.4;
    color:#fff;
}

@media(max-width:991px){
    .lead-hero .row{
        min-height:auto;
    }

    .lead-hero-image img{
        min-height:auto;
    }

    .lead-hero-content{
        padding:40px 25px;
    }

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

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

/* =========================================
   SUSTAINABILITY IMPACT LIST FIX
========================================= */

.impact-list{
    display:flex;
    flex-direction:column;
    gap:35px;
    padding-left:20px;
    height:100%;
    justify-content:center;
}

.sustainability-item{
    display:flex;
    align-items:flex-start;
    gap:18px;
}

.sustainability-item img{
    width:42px;
    height:42px;
    object-fit:contain;
    flex-shrink:0;
    margin-top:3px;
}

.sustainability-item span{
    font-size:18px;
    line-height:1.7;
    color:#1d1d1d;

    display:block;
    flex:1;

    word-break:normal;
    overflow-wrap:break-word;
}

/* MOBILE */

@media(max-width:991px){

    .impact-list{
        margin-top:40px;
        padding-left:0;
    }

    .sustainability-item span{
        font-size:17px;
    }

}

/* =========================================
   MEGA MENU
========================================= */

.mega-dropdown{
    position:static;
}

.mega-menu{

    width:100%;
    left:0;
    right:0;

    background:#02122e;

    border:none;
    border-radius:0;

    padding:40px;

    margin-top:18px;
}

.mega-advisor-card{

    background:#041a40;

    padding:22px;

    border-radius:12px;

    height:100%;

    transition:0.3s;
}

.mega-advisor-card:hover{
    transform:translateY(-5px);
}

.mega-advisor-card img{

    width:100%;
    height:220px;

    object-fit:cover;

    border-radius:10px;

    margin-bottom:20px;
}

.mega-advisor-card h4{

    color:#fff;

    font-size:24px;

    margin-bottom:8px;

    font-family:'Playfair Display',serif;
}

.mega-advisor-card span{

    color:#d4a437;

    display:block;

    margin-bottom:15px;

    font-weight:600;
}

.mega-advisor-card p{

    color:#d9d9d9;

    font-size:15px;

    line-height:1.7;

    margin-bottom:20px;
}

.mega-advisor-card a{

    color:#d4a437;

    text-decoration:none;

    font-weight:600;
}

.mega-advisor-card a:hover{
    color:#fff;
}

/* DESKTOP */

@media(min-width:992px){

    .mega-dropdown:hover .mega-menu{
        display:block;
    }

}

/* =========================================
   OUR PEOPLE MEGA MENU
========================================= */

.mega-dropdown{
    position:static;
}

.people-mega-menu{

    width:100%;
    left:0;
    right:0;

    background:#02122e;

    border:none;
    border-radius:0;

    padding:45px;

    margin-top:18px;
}

/* LEAD CONSULTANT */

.featured-person{

    background:#041a40;

    padding:25px;

    border-radius:14px;

    height:100%;
}

.featured-person img{

    width:100%;
    height:300px;

    object-fit:cover;

    border-radius:12px;

    margin-bottom:20px;
}

.person-tag{

    display:inline-block;

    background:#d4a437;

    color:#fff;

    padding:6px 14px;

    border-radius:30px;

    font-size:12px;

    font-weight:600;

    margin-bottom:15px;
}

.featured-person h3{

    color:#fff;

    font-size:34px;

    margin-bottom:10px;

    font-family:'Playfair Display',serif;
}

.featured-person span{

    color:#d4a437;

    display:block;

    margin-bottom:18px;

    font-weight:600;
}

.featured-person p{

    color:#d9d9d9;

    line-height:1.8;

    margin-bottom:20px;
}

/* ADVISORS */

.mega-advisor-card{

    background:#041a40;

    padding:22px;

    border-radius:12px;

    height:100%;
}

.mega-advisor-card h4{

    color:#fff;

    font-size:22px;

    margin-bottom:8px;

    font-family:'Playfair Display',serif;
}

.mega-advisor-card span{

    color:#d4a437;

    display:block;

    margin-bottom:14px;

    font-weight:600;
}

.mega-advisor-card p{

    color:#d9d9d9;

    font-size:15px;

    line-height:1.7;

    margin-bottom:18px;
}

.mega-advisor-card a,
.featured-person a{

    color:#d4a437;

    text-decoration:none;

    font-weight:600;
}

.mega-advisor-card a:hover,
.featured-person a:hover{
    color:#fff;
}

/* DESKTOP HOVER */

@media(min-width:992px){

    .mega-dropdown:hover .mega-menu{
        display:block;
    }

}

.advisor-profile-hero{
    background:#02122e;
    padding:90px 0;
    color:#fff;
}

.advisor-profile-img{
    width:100%;
    border-radius:16px;
}

.advisor-label{
    color:#d4a437;
    font-weight:700;
    letter-spacing:1px;
}

.advisor-profile-hero h1{
    font-size:64px;
    font-family:'Playfair Display',serif;
    margin:15px 0;
}

.advisor-profile-hero h4{
    color:#d4a437;
    font-size:26px;
}

.advisor-profile-hero p{
    font-size:20px;
    line-height:1.8;
}

.advisor-profile-content p{
    font-size:17px;
    line-height:1.9;
    color:#444;
}

.advisor-side-box{
    background:#fff;
    padding:30px;
    border-radius:14px;
    box-shadow:0 0 25px rgba(0,0,0,0.08);
}

.advisor-side-box h3{
    color:#081d45;
    font-family:'Playfair Display',serif;
    margin-bottom:20px;
}

.advisor-side-box ul{
    padding-left:20px;
}

.advisor-side-box li{
    margin-bottom:12px;
}

.g-recaptcha{
    display:block !important;
    visibility:visible !important;
    margin:25px 0;
    min-height:78px;
    position:relative;
    z-index:9999;
}

.footer-column{
    padding-right:40px;
}

.footer-column h4{
    margin-bottom:20px;
}

.footer-column p,
.footer-column li{
    line-height:1.9;
}

.footer-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:120px;
}

.footer-logo-column{
    max-width:380px;
}

.footer-links-column{
    padding-left:40px;
}

.footer-contact-column{
    padding-left:20px;
}

.footer-column h4{
    margin-bottom:22px;
}

.footer-column p,
.footer-column li{
    line-height:1.9;
}

@media(max-width:991px){

    .footer-row{
        gap:40px;
    }

    .footer-links-column,
    .footer-contact-column{
        padding-left:0;
    }
}

.values-section{
    background:#f8f9fb;
}

.value-box{

    background:#fff;

    padding:40px 30px;

    border-radius:18px;

    height:100%;

    transition:0.3s ease;

    box-shadow:0 5px 25px rgba(0,0,0,0.06);
}

.value-box:hover{

    transform:translateY(-6px);

    box-shadow:0 12px 35px rgba(0,0,0,0.10);
}

.value-icon{

    width:60px;

    margin-bottom:24px;
}

.value-box h4{

    font-size:32px;

    margin-bottom:18px;

    color:#081d45;

    font-family:'Playfair Display', serif;
}

.value-box p{

    font-size:16px;

    line-height:1.9;

    color:#444;
}

.section-subtitle{

    max-width:760px;

    margin:0 auto;

    color:#666;

    font-size:18px;

    line-height:1.8;
}

.home-practice-section,
.about-section,
.values-section,
.sustainability-section,
.practice-cards-section{
    margin-top:40px;
}

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

.people-section{
    background:#fff;
}

.people-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    height:100%;
    box-shadow:0 8px 30px rgba(0,0,0,0.08);
    transition:0.3s ease;
    border:1px solid rgba(0,0,0,0.05);
}

.people-card:hover{
    transform:translateY(-6px);
    box-shadow:0 16px 40px rgba(0,0,0,0.12);
}

.people-card img{
    width:100%;
    height:320px;
    object-fit:cover;
    object-position:top center;
    display:block;
}

.people-card-content{
    padding:28px;
}

.people-card-content span{
    display:inline-block;
    color:#d4a437;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    margin-bottom:12px;
}

.people-card-content h3{
    font-family:'Playfair Display',serif;
    font-size:28px;
    line-height:1.2;
    color:#081d45;
    margin-bottom:16px;
}

.people-card-content p{
    font-size:15px;
    line-height:1.8;
    color:#444;
    margin-bottom:22px;
}

.people-card-content a{
    color:#d4a437;
    text-decoration:none;
    font-weight:600;
}

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

@media(max-width:991px){

    .people-card img{
        height:300px;
    }

}
/* =========================================
   OUR PEOPLE PAGE FIX
========================================= */

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

.people-section .row{
    align-items:stretch;
}

.people-section .col-lg-3,
.people-section .col-md-6{
    display:flex;
}

.people-card{
    width:100%;
    height:100%;
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 8px 30px rgba(0,0,0,0.08);
    border:1px solid rgba(0,0,0,0.06);
    display:flex;
    flex-direction:column;
}

.people-card img{
    width:100% !important;
    height:300px !important;
    max-height:300px !important;
    object-fit:cover !important;
    object-position:top center !important;
    display:block !important;
}

.people-card-content{
    padding:28px;
    flex:1;
    display:flex;
    flex-direction:column;
}

.people-card-content h3{
    font-family:'Playfair Display',serif;
    font-size:26px;
    color:#081d45;
    margin-bottom:14px;
}

.people-card-content p{
    font-size:15px;
    line-height:1.8;
    color:#444;
    flex:1;
}

.people-card-content a{
    color:#d4a437;
    text-decoration:none;
    font-weight:600;
    margin-top:auto;
}


/* =========================================
   MOBILE OFFCANVAS MENU
========================================= */

@media(max-width:991px){

    .mobile-offcanvas{
        background:#02122e;
        width:320px;
        color:#fff;
    }

    .mobile-menu-logo{
        height:58px;
    }

    .mobile-offcanvas .offcanvas-header{
        border-bottom:1px solid rgba(255,255,255,0.15);
    }

    .mobile-offcanvas .navbar-nav{
        gap:0;
        width:100%;
    }

    .mobile-offcanvas .nav-item{
        width:100%;
        border-bottom:1px solid rgba(255,255,255,0.12);
    }

    .mobile-offcanvas .nav-link{
        padding:15px 0 !important;
        color:#fff !important;
        font-size:15px;
    }

    .mobile-offcanvas .dropdown-menu{
        position:static !important;
        transform:none !important;
        width:100% !important;
        background:#041a40 !important;
        border:none;
        box-shadow:none;
        padding:18px;
        margin:8px 0 15px;
    }

    .mobile-offcanvas .featured-person img{
        height:200px;
        object-fit:cover;
        object-position:top center;
    }

    .mobile-offcanvas .mega-advisor-card{
        background:#02122e;
        border:1px solid rgba(255,255,255,0.12);
    }
}

/* =========================================
   STICKY NAVBAR
========================================= */

.custom-navbar{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:9999;

    background:rgba(2,18,46,0.96);

    backdrop-filter:blur(10px);

    -webkit-backdrop-filter:blur(10px);

    transition:all 0.3s ease;

    box-shadow:0 4px 20px rgba(0,0,0,0.08);
}

/* PREVENT CONTENT HIDING UNDER NAVBAR */

body{
    padding-top:110px;
}

/* NAVBAR LOGO */

.navbar-brand img{

    height:72px;

    transition:0.3s ease;
}

/* SCROLL EFFECT */

.custom-navbar.scrolled{

    background:rgba(2,18,46,0.98);

    padding-top:6px;

    padding-bottom:6px;

    box-shadow:0 8px 30px rgba(0,0,0,0.18);
}

.custom-navbar.scrolled .navbar-brand img{

    height:64px;
}

/* NAV LINKS */

.custom-navbar .nav-link{

    color:#fff !important;

    font-weight:500;

    letter-spacing:0.4px;

    transition:0.3s ease;
}

.custom-navbar .nav-link:hover{

    color:#d4a437 !important;
}

/* MOBILE */

@media(max-width:991px){

    body{
        padding-top:95px;
    }

    .navbar-brand img{
        height:58px;
    }

    .custom-navbar.scrolled .navbar-brand img{
        height:54px;
    }
}

/* =========================================
   PRIVACY POLICY
========================================= */

.privacy-policy-section{

    background:#f8f9fb;
}

.privacy-policy-box{

    background:#fff;

    padding:50px;

    border-radius:20px;

    box-shadow:0 8px 30px rgba(0,0,0,0.06);

    max-width:1000px;

    margin:auto;
}

.privacy-date{

    color:#777;

    margin-bottom:25px;

    font-style:italic;
}

.privacy-policy-box p{

    line-height:1.9;

    color:#444;

    margin-bottom:18px;
}

.privacy-list{

    padding-left:20px;

    margin-bottom:25px;
}

.privacy-list li{

    margin-bottom:12px;

    line-height:1.8;

    color:#222;
}

.privacy-contact-box{

    margin-top:35px;

    padding-top:25px;

    border-top:1px solid #e5e5e5;
}

.privacy-contact-box h4{

    margin-bottom:15px;

    color:#081d45;
}

.privacy-contact-box a{

    color:#d4a437;

    text-decoration:none;
}

@media(max-width:991px){

    .privacy-policy-box{

        padding:35px 25px;
    }
}

/* =========================================
   PRIVACY POLICY MODAL
========================================= */

.privacy-modal-content{

    border-radius:20px;

    border:none;

    overflow:hidden;
}

.privacy-modal-content .modal-header{

    background:#02122e;

    color:#fff;

    padding:25px 30px;

    border:none;
}

.privacy-modal-content .modal-title{

    font-size:32px;

    font-family:'Playfair Display', serif;
}

.privacy-modal-content .btn-close{

    filter:invert(1);
}

.privacy-modal-content .modal-body{

    padding:35px;
}

.privacy-modal-content p{

    line-height:1.9;

    color:#444;
}

.privacy-list{

    padding-left:20px;

    margin-bottom:25px;
}

.privacy-list li{

    margin-bottom:12px;

    line-height:1.8;
}

.privacy-date{

    color:#777;

    font-style:italic;

    margin-bottom:25px;
}

.privacy-contact-box{

    margin-top:30px;

    padding-top:20px;

    border-top:1px solid #e5e5e5;
}

.privacy-contact-box a{

    color:#d4a437;

    text-decoration:none;
}

/* =========================================
   PRIVACY MODAL FONT SIZE FIX
========================================= */

.privacy-modal-content .modal-title{

    font-size:28px;
}

.privacy-modal-content .modal-body{

    padding:28px;
}

.privacy-modal-content p{

    font-size:15px;

    line-height:1.8;
}

.privacy-list li{

    font-size:15px;

    line-height:1.7;
}

.privacy-contact-box h4{

    font-size:20px;
}

@media(max-width:768px){

    .privacy-modal-content .modal-title{

        font-size:24px;
    }

    .privacy-modal-content .modal-body{

        padding:22px;
    }

    .privacy-modal-content p{

        font-size:14px;
    }

    .privacy-list li{

        font-size:14px;
    }
}

/* =========================================
   PRIVACY MODAL POSITION FIX
========================================= */

#privacyModal .modal-dialog{

    margin-top:120px;
}

@media(max-width:768px){

    #privacyModal .modal-dialog{

        margin-top:95px;
    }
}


/* =========================================
   RECAPTCHA + MODAL OVERLAY FIX
========================================= */

.grecaptcha-badge{
    z-index:1 !important;
}

#privacyModal{
    z-index:99999 !important;
}

#privacyModal .modal-dialog{
    z-index:999999 !important;
}

.modal-backdrop{
    z-index:99990 !important;
}

/* =========================================
   PRACTICE MASONRY GRID
========================================= */

.practice-masonry-grid{

    display:grid;

    grid-template-columns:1.2fr 1fr;

    gap:28px;
}

.practice-featured-card{

    grid-row:span 2;

    background:#02122e;

    color:#fff;

    padding:45px;

    border-radius:22px;

    display:flex;

    flex-direction:column;

    justify-content:center;
}

.practice-featured-card img{

    width:90px;

    margin-bottom:30px;
}

.practice-featured-card h3{

    font-size:42px;

    line-height:1.2;

    color:#fff;

    margin-bottom:20px;
}

.practice-featured-card p{

    font-size:17px;

    line-height:1.9;

    color:#e5e5e5;
}

.practice-badge{

    display:inline-block;

    background:#d4a437;

    color:#fff;

    padding:8px 18px;

    border-radius:30px;

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    margin-bottom:20px;
}

.practice-small-card{

    background:#fff;

    border-radius:18px;

    padding:32px;

    box-shadow:0 8px 30px rgba(0,0,0,0.08);

    transition:0.3s ease;
}

.practice-small-card:hover{

    transform:translateY(-5px);
}

.practice-small-card img{

    width:58px;

    margin-bottom:22px;
}

.practice-small-card h3{

    font-size:26px;

    line-height:1.3;

    margin-bottom:15px;

    color:#081d45;
}

.practice-small-card p{

    color:#555;

    line-height:1.8;
}

@media(max-width:991px){

    .practice-masonry-grid{

        grid-template-columns:1fr;
    }

    .practice-featured-card{

        grid-row:auto;
    }

    .practice-featured-card h3{

        font-size:34px;
    }
}

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

.area-card,
.advisory-advert{
    background:#fff;
    border-radius:18px;
    padding:32px;
    box-shadow:0 8px 30px rgba(0,0,0,0.08);
}

.advisory-advert{
    grid-column:span 3;
    background:#02122e;
    color:#fff;
}

.advisory-advert span{
    color:#d4a437;
    font-weight:700;
    letter-spacing:1px;
    font-size:13px;
}

.advisory-advert h3{
    font-family:'Playfair Display',serif;
    font-size:34px;
    margin:15px 0;
}

.advisory-advert p{
    line-height:1.8;
    max-width:760px;
    margin-bottom:25px;
}

@media(max-width:991px){
    .advisory-layout{
        grid-template-columns:1fr;
    }

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

.navbar-toggler{
    border:none !important;
    box-shadow:none !important;
}

.navbar-toggler:focus{
    box-shadow:none !important;
}

.navbar-toggler{
    border:none !important;
    box-shadow:none !important;
    background:transparent !important;
}

.navbar-toggler:focus,
.navbar-toggler:active{
    box-shadow:none !important;
    outline:none !important;
}

.navbar-toggler-icon{
    display:block !important;
}

.navbar-toggler{
    border:none !important;
    box-shadow:none !important;
    background:transparent !important;
}

.navbar-toggler:focus,
.navbar-toggler:active{
    box-shadow:none !important;
    outline:none !important;
}

.navbar-toggler-icon{
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28212,164,55,1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.5' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* =========================================
   MOBILE OFFCANVAS DISPLAY FIX
========================================= */

@media(max-width:991px){

    .offcanvas.show{

        visibility:visible !important;
    }

    .mobile-offcanvas{

        background:#02122e;

        width:320px;
    }

    .mobile-offcanvas .offcanvas-body{

        overflow-y:auto;
    }
}

.advisory-card-label{
    color:#081d45;
    font-weight:600;
    margin-bottom:14px;
    font-size:15px;
}

.practice-content ul{
    margin-top:0;
}