

.apv3-breadcrumb{



padding:18px 0;



background:#F8F5EF;



border-bottom:1px solid #ECE4D3;



}



.apv3-breadcrumb ul{



display:flex;



gap:14px;



padding:0;



margin:0;



list-style:none;



align-items:center;



}



.apv3-breadcrumb li{



font-size:15px;



color:#666;



}



.apv3-breadcrumb li a{



color:#0B2545;



text-decoration:none;



font-weight:600;



}



.apv3-breadcrumb li:not(:last-child):after{



content:"/";



margin-left:14px;



color:#C9A961;



}


/*PAGES*/
/* =========================================================
   ABOUT A2Z VALUERS — NATIONAL PRACTICE
   SECTION 1
   Namespace: gaviAboutIntro
========================================================= */

.gaviAboutIntro{
    position:relative;
    padding:85px 0;
    background:#f8fafc;
    overflow:hidden;
}

.gaviAboutIntro:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

.gaviAboutIntroGrid{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);
    gap:65px;
    align-items:center;
}

.gaviAboutEyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:17px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.gaviAboutEyebrow span{
    display:inline-block;
    width:38px;
    height:2px;
    background:#b97800;
}

.gaviAboutIntroContent h1{
    margin:0 0 24px;
    color:#061d3d;
    font-size:clamp(36px,4vw,58px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-1.4px;
}

.gaviAboutIntroContent h1 strong{
    display:block;
    color:#b97800;
}

.gaviAboutIntroContent p{
    margin:0 0 19px;
    color:#536276;
    font-size:16px;
    line-height:1.8;
}

.gaviAboutIntroContent p strong{
    color:#092f62;
    font-weight:750;
}

.gaviAboutIntroContent .gaviAboutLead{
    color:#263b54;
    font-size:19px;
    line-height:1.7;
}


/* =========================================================
   INTRO STAT PANEL
========================================================= */

.gaviAboutIntroPanel{
    position:relative;
    padding:29px;
    border:1px solid rgba(185,120,0,.38);
    border-radius:10px;
    background:linear-gradient(145deg,#04152d,#092f62);
    box-shadow:0 25px 55px rgba(6,29,61,.15);
    overflow:hidden;
}

.gaviAboutIntroPanel:after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    right:-90px;
    top:-90px;
    border:1px solid rgba(240,180,41,.22);
    border-radius:50%;
}

.gaviAboutPanelTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding-bottom:19px;
    border-bottom:1px solid rgba(255,255,255,.13);
}

.gaviAboutPanelTop span{
    color:#d3ddea;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.3px;
}

.gaviAboutPanelTop strong{
    color:#f0b429;
    font-size:15px;
    letter-spacing:1px;
}

.gaviAboutStats{
    display:grid;
    grid-template-columns:1fr 1fr;
}

.gaviAboutStat{
    padding:24px 12px 21px 0;
    border-bottom:1px solid rgba(255,255,255,.11);
}

.gaviAboutStat:nth-child(odd){
    padding-right:20px;
    border-right:1px solid rgba(255,255,255,.11);
}

.gaviAboutStat:nth-child(even){
    padding-left:20px;
}

.gaviAboutStat:nth-child(3),
.gaviAboutStat:nth-child(4){
    border-bottom:0;
}

.gaviAboutStat strong{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:32px;
    line-height:1;
    font-weight:850;
}

.gaviAboutStat span{
    display:block;
    color:#dce5ef;
    font-size:15px;
    line-height:1.45;
}

.gaviAboutPanelFooter{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding-top:20px;
    color:#c5d1de;
    font-size:15px;
    line-height:1.55;
}

.gaviAboutPanelFooter strong{
    color:#fff;
}

.gaviAboutDot{
    flex:0 0 8px;
    width:8px;
    height:8px;
    margin-top:5px;
    border-radius:50%;
    background:#f0b429;
    box-shadow:0 0 0 5px rgba(240,180,41,.11);
}


/* =========================================================
   SECTION 2
   NATIONAL PRACTICE MODEL
   Namespace: gaviAboutScope
========================================================= */

.gaviAboutScope{
    position:relative;
    padding:88px 0;
    background:#fff;
}

.gaviAboutSectionHeader{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviAboutSectionHeader h2{
    margin:0 0 16px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.15;
    font-weight:800;
    letter-spacing:-1px;
}

.gaviAboutSectionHeader h2 strong{
    color:#b97800;
}

.gaviAboutSectionHeader p{
    margin:0 auto;
    color:#59697b;
    font-size:16px;
    line-height:1.75;
}

.gaviAboutScopeGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.gaviAboutScopeCard{
    position:relative;
    padding:28px 24px 27px;
    border:1px solid #dce4ed;
    border-radius:9px;
    background:#fff;
    box-shadow:0 8px 25px rgba(6,29,61,.045);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviAboutScopeCard:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
    transform:scaleX(.25);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviAboutScopeCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.42);
    box-shadow:0 18px 38px rgba(6,29,61,.09);
}

.gaviAboutScopeCard:hover:before{
    transform:scaleX(1);
}

.gaviAboutScopeNumber{
    position:absolute;
    top:17px;
    right:18px;
    color:#e3e8ee;
    font-size:15px;
    font-weight:900;
}

.gaviAboutScopeIcon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    min-width:64px;
    margin-bottom:19px;
    padding:7px 10px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:.8px;
}

.gaviAboutScopeCard h3{
    margin:0 0 12px;
    color:#061d3d;
    font-size:21px;
    line-height:1.35;
    font-weight:750;
}

.gaviAboutScopeCard h3 strong{
    color:#b97800;
}

.gaviAboutScopeCard p{
    margin:0;
    color:#59697b;
    font-size:15px;
    line-height:1.72;
}

.gaviAboutScopeCard p strong{
    color:#092f62;
    font-weight:750;
}


/* =========================================================
   SECTION 3
   CREDENTIALS
   Namespace: gaviAboutCredentials
========================================================= */

.gaviAboutCredentials{
    position:relative;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 85% 15%,rgba(185,120,0,.12),transparent 25%),
        linear-gradient(135deg,#f5f8fc,#fff);
}

.gaviAboutCredentialsGrid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);
    gap:65px;
    align-items:center;
}

.gaviAboutCredentialsContent h2{
    margin:0 0 18px;
    color:#061d3d;
    font-size:clamp(32px,3.5vw,48px);
    line-height:1.15;
    font-weight:800;
}

.gaviAboutCredentialsContent h2 strong{
    color:#b97800;
}

.gaviAboutCredentialsContent > p{
    max-width:760px;
    margin:0 0 28px;
    color:#59697b;
    font-size:16px;
    line-height:1.8;
}

.gaviAboutCredentialsContent > p strong{
    color:#092f62;
}

.gaviCredentialList{
    display:grid;
    gap:13px;
}

.gaviCredentialItem{
    display:flex;
    align-items:flex-start;
    gap:13px;
    padding:16px 17px;
    border:1px solid #dce4ed;
    border-radius:6px;
    background:#fff;
}

.gaviCredentialMark{
    flex:0 0 27px;
    width:27px;
    height:27px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviCredentialItem strong{
    display:block;
    margin-bottom:3px;
    color:#092f62;
    font-size:16px;
}

.gaviCredentialItem span{
    display:block;
    color:#607084;
    font-size:15px;
    line-height:1.5;
}


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

.gaviAboutCredentialsCard{
    position:relative;
    padding:36px 32px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:10px;
    background:linear-gradient(145deg,#04152d,#092f62);
    color:#fff;
    box-shadow:0 25px 55px rgba(6,29,61,.16);
    overflow:hidden;
}

.gaviAboutCredentialsCard:before{
    content:"";
    position:absolute;
    width:230px;
    height:230px;
    top:-130px;
    right:-110px;
    border:1px solid rgba(240,180,41,.2);
    border-radius:50%;
}

.gaviCredentialsCardLabel{
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviCredentialsCardTitle{
    display:flex;
    align-items:baseline;
    gap:10px;
    margin-top:22px;
}

.gaviCredentialsCardTitle strong{
    color:#f0b429;
    font-size:54px;
    line-height:1;
}

.gaviCredentialsCardTitle span{
    color:#fff;
    font-size:19px;
    font-weight:800;
    letter-spacing:2px;
}

.gaviCredentialsCardLine{
    width:65px;
    height:3px;
    margin:19px 0;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviAboutCredentialsCard > p{
    margin:0;
    color:#e1e8f0;
    font-size:17px;
    line-height:1.55;
}

.gaviCredentialsCardAddress{
    display:grid;
    gap:4px;
    margin-top:25px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.12);
}

.gaviCredentialsCardAddress strong{
    color:#fff;
    font-size:17px;
}

.gaviCredentialsCardAddress span{
    color:#bdcad8;
    font-size:15px;
    line-height:1.45;
}

.gaviCredentialsCardStats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:27px;
    padding-top:21px;
    border-top:1px solid rgba(255,255,255,.12);
}

.gaviCredentialsCardStats div{
    text-align:center;
}

.gaviCredentialsCardStats strong{
    display:block;
    color:#f0b429;
    font-size:20px;
}

.gaviCredentialsCardStats span{
    display:block;
    margin-top:4px;
    color:#b9c7d6;
    font-size:15px;
}


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

.gaviAboutFinalCta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    margin-top:62px;
    padding:31px 34px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:9px;
    background:linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 18px 40px rgba(6,29,61,.12);
}

.gaviAboutFinalCtaText > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviAboutFinalCtaText h3{
    margin:0 0 7px;
    color:#fff;
    font-size:25px;
    line-height:1.35;
}

.gaviAboutFinalCtaText h3 strong{
    color:#f0b429;
}

.gaviAboutFinalCtaText p{
    max-width:700px;
    margin:0;
    color:#cbd6e2;
    font-size:15px;
    line-height:1.6;
}

.gaviAboutFinalCtaActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
}

.gaviAboutPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:53px;
    padding:0 24px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviAboutPrimaryCta:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(185,120,0,.3);
}

.gaviAboutPrimaryCta span{
    font-size:20px;
}

.gaviAboutPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:53px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    text-decoration:none !important;
}

.gaviAboutPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .gaviAboutIntroGrid{
        grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);
        gap:35px;
    }

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

    .gaviAboutCredentialsGrid{
        grid-template-columns:1fr 1fr;
        gap:35px;
    }

}


@media (max-width:991px){

    .gaviAboutIntro{
        padding:70px 0;
    }

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

    .gaviAboutIntroPanel{
        max-width:600px;
    }

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

    .gaviAboutCredentialsCard{
        max-width:600px;
    }

    .gaviAboutFinalCta{
        flex-direction:column;
        align-items:flex-start;
    }

}


@media (max-width:767px){

    .gaviAboutIntro,
    .gaviAboutScope,
    .gaviAboutCredentials{
        padding:60px 0;
    }

    .gaviAboutIntroContent h1{
        font-size:38px;
    }

    .gaviAboutIntroContent .gaviAboutLead{
        font-size:17px;
    }

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

    .gaviAboutScopeCard{
        padding:25px 21px;
    }

    .gaviAboutCredentialsCard{
        padding:29px 23px;
    }

    .gaviAboutFinalCta{
        padding:25px 21px;
    }

    .gaviAboutFinalCtaText h3{
        font-size:21px;
    }

    .gaviAboutFinalCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviAboutPrimaryCta,
    .gaviAboutPhoneCta{
        width:100%;
    }

}


@media (max-width:480px){

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

    .gaviAboutStat,
    .gaviAboutStat:nth-child(odd),
    .gaviAboutStat:nth-child(even){
        padding:18px 0;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.11);
    }

    .gaviAboutStat:last-child{
        border-bottom:0;
    }

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

}

/* =========================================================
   GOVERNMENT APPROVED VALUERS INDIA
   ENGAGEMENT PAGE
   ROYAL NAVY + GOLD DESIGN
========================================================= */


/* =========================================================
   SECTION 1 — HERO
   Namespace: gaviEngageHero
========================================================= */

.gaviEngageHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 85% 15%,rgba(185,120,0,.16),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 55%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviEngageHero:after{
    content:"";
    position:absolute;
    right:-180px;
    bottom:-220px;
    width:500px;
    height:500px;
    border:1px solid rgba(240,180,41,.13);
    border-radius:50%;
    box-shadow:
        0 0 0 35px rgba(240,180,41,.025),
        0 0 0 75px rgba(240,180,41,.018);
}

.gaviEngageHeroPattern{
    position:absolute;
    inset:0;
    opacity:.16;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:55px 55px;
    pointer-events:none;
}

.gaviEngageHeroInner{
    position:relative;
    z-index:2;
    max-width:1080px;
    margin:0 auto;
    text-align:center;
}

.gaviEngageHeroEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviEngageHeroEyebrow span{
    display:block;
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviEngageHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(40px,5vw,67px);
    line-height:1.08;
    font-weight:850;
    letter-spacing:-1.7px;
}

.gaviEngageHero h1 strong{
    display:block;
    margin-top:9px;
    color:#f0b429;
    font-size:.55em;
    line-height:1.25;
    letter-spacing:-.2px;
}

.gaviEngageHeroLead{
    max-width:850px;
    margin:26px auto 0;
    color:#d9e3ee;
    font-size:18px;
    line-height:1.75;
}

.gaviEngageHeroLead strong{
    color:#fff;
}

.gaviEngageHeroStats{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    margin:36px auto 0;
    max-width:800px;
    border:1px solid rgba(240,180,41,.23);
    border-radius:8px;
    background:rgba(255,255,255,.045);
    backdrop-filter:blur(7px);
}

.gaviEngageHeroStats div{
    flex:1;
    min-width:180px;
    padding:19px 20px;
}

.gaviEngageHeroStats div + div{
    border-left:1px solid rgba(255,255,255,.13);
}

.gaviEngageHeroStats strong{
    display:block;
    color:#f0b429;
    font-size:22px;
    line-height:1.25;
}

.gaviEngageHeroStats span{
    display:block;
    margin-top:4px;
    color:#bfcbd8;
    font-size:15px;
}

.gaviEngageHeroActions{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;
}

.gaviEngagePrimaryBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:57px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviEngagePrimaryBtn span{
    font-size:22px;
}

.gaviEngagePrimaryBtn:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.35);
}

.gaviEngagePhoneBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:57px;
    padding:0 22px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:17px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviEngagePhoneBtn span{
    color:#f0b429;
    font-size:21px;
}

.gaviEngagePhoneBtn:hover{
    border-color:#f0b429;
    background:rgba(185,120,0,.10);
}


/* =========================================================
   COMMON SECTION INTRO
========================================================= */

.gaviEngageSectionIntro{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviEngageSectionLabel{
    display:inline-block;
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviEngageSectionIntro h2{
    margin:0 0 14px;
    color:#061d3d;
    font-size:clamp(31px,3.6vw,48px);
    line-height:1.16;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviEngageSectionIntro h2 strong{
    color:#b97800;
}

.gaviEngageSectionIntro p{
    margin:0;
    color:#566679;
    font-size:16px;
    line-height:1.75;
}

.gaviEngageSectionIntro p strong{
    color:#092f62;
}


/* =========================================================
   SECTION 2 — ENGAGEMENT MODEL
   Namespace: gaviEngageModel
========================================================= */

.gaviEngageModel{
    position:relative;
    padding:88px 0 85px;
    background:#f8fafc;
}

.gaviEngageModel:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

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

.gaviEngageInputCard{
    position:relative;
    min-height:330px;
    padding:31px 27px 28px;
    border:1px solid #dce3ec;
    border-radius:9px;
    background:#fff;
    box-shadow:0 12px 30px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviEngageInputCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
    transform:scaleX(.25);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviEngageInputCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.38);
    box-shadow:0 20px 42px rgba(6,29,61,.10);
}

.gaviEngageInputCard:hover:before{
    transform:scaleX(1);
}

.gaviEngageInputNo{
    position:absolute;
    top:18px;
    right:20px;
    color:#dce3eb;
    font-size:15px;
    font-weight:900;
}

.gaviEngageInputIcon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:65px;
    height:42px;
    margin-bottom:21px;
    padding:0 10px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:.8px;
}

.gaviEngageInputCard h3{
    margin:0 0 14px;
    color:#061d3d;
    font-size:22px;
    line-height:1.3;
    font-weight:800;
}

.gaviEngageInputCard h3 strong{
    color:#b97800;
}

.gaviEngageInputCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.75;
}

.gaviEngageInputCard p strong{
    color:#092f62;
}

.gaviEngageModelNote{
    display:flex;
    align-items:flex-start;
    gap:18px;
    max-width:950px;
    margin:34px auto 0;
    padding:20px 23px;
    border-left:4px solid #b97800;
    border-radius:0 6px 6px 0;
    background:#fff;
    box-shadow:0 7px 20px rgba(6,29,61,.045);
}

.gaviEngageModelNote > span{
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviEngageModelNote p{
    margin:0;
    color:#566679;
    font-size:15px;
    line-height:1.7;
}

.gaviEngageModelNote strong{
    color:#092f62;
}


/* =========================================================
   SECTION 3 — PROCESS FLOW
   Namespace: gaviEngageFlow
========================================================= */

.gaviEngageFlow{
    position:relative;
    padding:88px 0;
    background:
        radial-gradient(circle at 20% 80%,rgba(185,120,0,.11),transparent 28%),
        linear-gradient(135deg,#04152d,#061d3d 58%,#092f62);
    overflow:hidden;
}

.gaviEngageSectionIntroLight .gaviEngageSectionLabel{
    color:#f0b429;
}

.gaviEngageSectionIntroLight h2{
    color:#fff;
}

.gaviEngageSectionIntroLight h2 strong{
    color:#f0b429;
}

.gaviEngageSectionIntroLight p{
    color:#c5d0dc;
}

.gaviEngageSectionIntroLight p strong{
    color:#fff;
}

.gaviEngageFlowGrid{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
    align-items:center;
    gap:12px;
}

.gaviEngageFlowStep{
    min-height:255px;
    padding:28px 22px;
    border:1px solid rgba(240,180,41,.23);
    border-radius:8px;
    background:rgba(255,255,255,.055);
    text-align:center;
    backdrop-filter:blur(8px);
    transition:all .3s ease;
}

.gaviEngageFlowStep:hover{
    transform:translateY(-6px);
    border-color:rgba(240,180,41,.55);
    background:rgba(185,120,0,.08);
}

.gaviEngageFlowStep > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    margin:0 auto 17px;
    border:1px solid #b97800;
    border-radius:50%;
    color:#061d3d;
    background:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviEngageFlowStep h3{
    margin:0 0 11px;
    color:#fff;
    font-size:20px;
    line-height:1.3;
}

.gaviEngageFlowStep p{
    margin:0;
    color:#bdc9d6;
    font-size:15px;
    line-height:1.7;
}

.gaviEngageFlowStep p strong{
    color:#f0b429;
}

.gaviEngageFlowConnector{
    width:35px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}


/* =========================================================
   SECTION 4 — TIMELINES
   Namespace: gaviEngageTimelines
========================================================= */

.gaviEngageTimelines{
    padding:88px 0 84px;
    background:#f8fafc;
}

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

.gaviTimelineCard{
    display:flex;
    align-items:flex-start;
    gap:20px;
    padding:25px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:#fff;
    box-shadow:0 9px 25px rgba(6,29,61,.045);
    transition:all .3s ease;
}

.gaviTimelineCard:hover{
    transform:translateY(-4px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 15px 32px rgba(6,29,61,.09);
}

.gaviTimelineIcon{
    flex:0 0 65px;
    width:65px;
    height:65px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    background:linear-gradient(145deg,#061d3d,#092f62);
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:.5px;
}

.gaviTimelineContent{
    flex:1;
}

.gaviTimelineTag{
    display:inline-block;
    margin-bottom:8px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:.7px;
}

.gaviTimelineContent h3{
    margin:0 0 8px;
    color:#061d3d;
    font-size:21px;
    line-height:1.3;
}

.gaviTimelineContent h3 strong{
    color:#b97800;
}

.gaviTimelineContent p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.7;
}

.gaviTimelineContent p strong{
    color:#092f62;
}

.gaviTimelineNote{
    margin-top:25px;
    padding:18px 22px;
    border:1px solid #e1e6ed;
    border-left:4px solid #b97800;
    border-radius:0 6px 6px 0;
    background:#fff;
    color:#5a6878;
    font-size:15px;
    line-height:1.7;
}

.gaviTimelineNote strong{
    color:#092f62;
}


/* =========================================================
   SECTION 5 — FINAL CTA
   Namespace: gaviEngageCta
========================================================= */

.gaviEngageCta{
    padding:65px 0;
    background:#fff;
}

.gaviEngageCtaInner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    padding:38px 42px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:10px;
    background:
        linear-gradient(115deg,#04152d 0%,#092f62 65%,#061d3d 100%);
    box-shadow:0 22px 50px rgba(6,29,61,.15);
}

.gaviEngageCtaContent{
    max-width:700px;
}

.gaviEngageCtaLabel{
    margin-bottom:8px;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.5px;
}

.gaviEngageCtaContent h2{
    margin:0 0 12px;
    color:#fff;
    font-size:32px;
    line-height:1.2;
    font-weight:800;
}

.gaviEngageCtaContent h2 strong{
    color:#f0b429;
}

.gaviEngageCtaContent p{
    margin:0;
    color:#c8d3df;
    font-size:15px;
    line-height:1.72;
}

.gaviEngageCtaContent p strong{
    color:#fff;
}

.gaviEngageCtaActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gaviEngageFinalBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:55px;
    padding:0 25px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:900;
    text-decoration:none !important;
    box-shadow:0 10px 26px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviEngageFinalBtn:hover{
    transform:translateY(-3px);
    box-shadow:0 15px 32px rgba(185,120,0,.34);
}

.gaviEngageFinalBtn span{
    font-size:21px;
}

.gaviEngageFinalPhone{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:55px;
    padding:6px 17px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.05);
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviEngageFinalPhone > span{
    color:#f0b429;
    font-size:20px;
}

.gaviEngageFinalPhone small{
    display:block;
    color:#aebdcd;
    font-size:15px;
}

.gaviEngageFinalPhone strong{
    display:block;
    color:#fff;
    font-size:16px;
}

.gaviEngageFinalPhone:hover{
    border-color:#f0b429;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .gaviEngageFlowGrid{
        grid-template-columns:repeat(2,1fr);
        gap:18px;
    }

    .gaviEngageFlowConnector{
        display:none;
    }

}


@media (max-width:991px){

    .gaviEngageHero{
        padding:70px 0;
    }

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

    .gaviEngageInputCard{
        min-height:auto;
    }

    .gaviEngageCtaInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviEngageCtaActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviEngageHero{
        padding:58px 0;
    }

    .gaviEngageHero h1{
        font-size:40px;
        letter-spacing:-1px;
    }

    .gaviEngageHero h1 strong{
        font-size:22px;
    }

    .gaviEngageHeroLead{
        font-size:16px;
    }

    .gaviEngageHeroStats{
        flex-direction:column;
    }

    .gaviEngageHeroStats div{
        min-width:100%;
    }

    .gaviEngageHeroStats div + div{
        border-top:1px solid rgba(255,255,255,.13);
        border-left:0;
    }

    .gaviEngageHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviEngagePrimaryBtn,
    .gaviEngagePhoneBtn{
        width:100%;
    }

    .gaviEngageModel,
    .gaviEngageFlow,
    .gaviEngageTimelines{
        padding:65px 0;
    }

    .gaviEngageSectionIntro h2{
        font-size:32px;
    }

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

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

    .gaviTimelineCard{
        padding:21px;
    }

    .gaviEngageCta{
        padding:45px 0;
    }

    .gaviEngageCtaInner{
        padding:29px 22px;
    }

    .gaviEngageCtaContent h2{
        font-size:27px;
    }

    .gaviEngageCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviEngageFinalBtn,
    .gaviEngageFinalPhone{
        width:100%;
        justify-content:center;
    }

}


@media (max-width:480px){

    .gaviEngageHero h1{
        font-size:34px;
    }

    .gaviEngageHero h1 strong{
        font-size:20px;
    }

    .gaviEngageInputCard{
        padding:27px 21px;
    }

    .gaviTimelineCard{
        flex-direction:column;
    }

    .gaviTimelineIcon{
        width:60px;
        height:60px;
    }

}
/* =========================================================
   PAN INDIA DELIVERY MODEL
   HERO
   Namespace: gavpidHero
========================================================= */

.gavpidHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 82px;
    background:
        radial-gradient(circle at 85% 15%,rgba(240,180,41,.13),transparent 28%),
        radial-gradient(circle at 10% 85%,rgba(185,120,0,.08),transparent 25%),
        linear-gradient(135deg,#04152d 0%,#061d3d 55%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gavpidHeroPattern{
    position:absolute;
    inset:0;
    opacity:.15;
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
    background-size:55px 55px;
    mask-image:linear-gradient(135deg,transparent 10%,#000 50%,transparent 95%);
}

.gavpidHeroInner{
    position:relative;
    max-width:1000px;
    margin:0 auto;
    text-align:center;
}

.gavpidHeroEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-bottom:20px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2.2px;
}

.gavpidHeroEyebrow span{
    width:45px;
    height:2px;
    background:linear-gradient(90deg,transparent,#f0b429);
}

.gavpidHeroEyebrow span:last-child{
    background:linear-gradient(90deg,#f0b429,transparent);
}

.gavpidHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(42px,5vw,68px);
    line-height:1.05;
    font-weight:800;
    letter-spacing:-1.8px;
}

.gavpidHero h1 strong{
    display:block;
    margin-top:8px;
    color:#f0b429;
    font-weight:800;
}

.gavpidHeroLead{
    max-width:840px;
    margin:25px auto 0;
    color:#d9e3ee;
    font-size:18px;
    line-height:1.78;
}

.gavpidHeroLead strong{
    color:#fff;
}

.gavpidHeroStats{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:0;
    max-width:730px;
    margin:37px auto 0;
    border:1px solid rgba(240,180,41,.25);
    border-radius:8px;
    background:rgba(255,255,255,.045);
    backdrop-filter:blur(8px);
}

.gavpidHeroStat{
    flex:1 1 200px;
    padding:18px 22px;
    border-right:1px solid rgba(240,180,41,.18);
}

.gavpidHeroStat:last-child{
    border-right:0;
}

.gavpidHeroStat strong{
    display:block;
    color:#f0b429;
    font-size:21px;
    line-height:1.3;
}

.gavpidHeroStat span{
    display:block;
    margin-top:4px;
    color:#c6d2df;
    font-size:15px;
}


/* =========================================================
   INTRO
   Namespace: gavpidIntro
========================================================= */

.gavpidIntro{
    padding:72px 0;
    background:#fff;
    border-bottom:1px solid #e5eaf0;
}

.gavpidIntroGrid{
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:70px;
    align-items:start;
}

.gavpidIntroLabel{
    position:relative;
    padding-top:5px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
    line-height:1.5;
}

.gavpidIntroLabel span{
    display:block;
    margin-bottom:12px;
    color:#092f62;
    font-size:38px;
    font-weight:900;
    line-height:1;
}

.gavpidIntroContent{
    max-width:850px;
}

.gavpidIntroContent h2{
    margin:0 0 17px;
    color:#061d3d;
    font-size:clamp(30px,3.3vw,45px);
    line-height:1.15;
    letter-spacing:-1px;
}

.gavpidIntroContent h2 strong{
    color:#b97800;
}

.gavpidIntroContent p{
    margin:0 0 13px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gavpidIntroContent p:last-child{
    margin-bottom:0;
}

.gavpidIntroContent strong{
    color:#092f62;
}


/* =========================================================
   STAGES
   Namespace: gavpidStages
========================================================= */

.gavpidStages{
    position:relative;
    padding:90px 0 95px;
    background:#f6f8fb;
    overflow:hidden;
}

.gavpidStages:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:5px;
    background:linear-gradient(
        90deg,
        #061d3d,
        #b97800,
        #f0b429,
        #b97800,
        #061d3d
    );
}

.gavpidStagesHeader{
    max-width:760px;
    margin:0 auto 55px;
    text-align:center;
}

.gavpidStagesEyebrow{
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gavpidStagesHeader h2{
    margin:0 0 13px;
    color:#061d3d;
    font-size:clamp(32px,3.8vw,50px);
    line-height:1.12;
    letter-spacing:-1.1px;
}

.gavpidStagesHeader h2 strong{
    color:#b97800;
}

.gavpidStagesHeader p{
    margin:0;
    color:#637184;
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   TIMELINE
========================================================= */

.gavpidStageTimeline{
    position:relative;
    max-width:1080px;
    margin:0 auto;
}

.gavpidStageTimeline:before{
    content:"";
    position:absolute;
    top:50px;
    bottom:50px;
    left:38px;
    width:2px;
    background:linear-gradient(
        180deg,
        #b97800,
        #092f62 48%,
        #b97800
    );
}

.gavpidStage{
    position:relative;
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    gap:27px;
    margin-bottom:28px;
}

.gavpidStage:last-child{
    margin-bottom:0;
}

.gavpidStageMarker{
    position:relative;
    z-index:3;
    width:76px;
    height:76px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:2px solid #b97800;
    border-radius:50%;
    background:#fff;
    color:#092f62;
    font-size:19px;
    font-weight:900;
    box-shadow:0 8px 22px rgba(6,29,61,.09);
}

.gavpidStageNavy .gavpidStageMarker{
    border-color:#092f62;
    color:#b97800;
}

.gavpidStageBody{
    position:relative;
    padding:30px 34px 31px;
    border:1px solid #dce3eb;
    border-radius:10px;
    background:#fff;
    box-shadow:0 10px 28px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gavpidStageBody:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:5px;
}

.gavpidStageGold .gavpidStageBody:before{
    background:linear-gradient(180deg,#f0b429,#b97800);
}

.gavpidStageNavy .gavpidStageBody:before{
    background:linear-gradient(180deg,#092f62,#061d3d);
}

.gavpidStageBody:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 38px rgba(6,29,61,.10);
}

.gavpidStageTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:10px;
}

.gavpidStageLabel{
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.3px;
}

.gavpidStageNavy .gavpidStageLabel{
    color:#092f62;
}

.gavpidStageMini{
    padding:6px 9px;
    border:1px solid #e0e6ed;
    border-radius:3px;
    color:#687789;
    background:#f8fafc;
    font-size:15px;
    font-weight:700;
    letter-spacing:.5px;
}

.gavpidStageBody h3{
    margin:0 0 14px;
    color:#061d3d;
    font-size:27px;
    line-height:1.25;
    font-weight:750;
    letter-spacing:-.5px;
}

.gavpidStageBody h3 strong{
    color:#b97800;
}

.gavpidStageNavy .gavpidStageBody h3 strong{
    color:#092f62;
}

.gavpidStageBody > p{
    max-width:900px;
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.78;
}

.gavpidStageBody > p strong{
    color:#092f62;
    font-weight:750;
}


/* =========================================================
   STAGE DETAILS
========================================================= */

.gavpidStageDetails{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:21px;
}

.gavpidStageDetails span{
    padding:8px 11px;
    border:1px solid #dce3eb;
    border-radius:4px;
    background:#f8fafc;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}

.gavpidStageGold .gavpidStageDetails span{
    border-color:rgba(185,120,0,.25);
    background:#fffaf0;
}

.gavpidStageNote{
    margin-top:21px;
    padding:13px 15px;
    border-left:3px solid #b97800;
    background:#faf7f0;
    color:#59697b;
    font-size:15px;
    line-height:1.65;
}

.gavpidStageNavy .gavpidStageNote{
    border-left-color:#092f62;
    background:#f3f6fa;
}

.gavpidStageNote strong{
    color:#061d3d;
}


/* =========================================================
   DATABASE GRID
========================================================= */

.gavpidDatabaseGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:9px;
    margin-top:22px;
}

.gavpidDatabaseGrid span{
    min-height:68px;
    padding:10px 11px;
    border:1px solid #dce3eb;
    border-radius:5px;
    background:#f8fafc;
    color:#627184;
    font-size:15px;
    line-height:1.4;
}

.gavpidDatabaseGrid strong{
    display:block;
    margin-bottom:2px;
    color:#092f62;
    font-size:15px;
}


/* =========================================================
   REVIEW GRID
========================================================= */

.gavpidReviewGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:9px;
    margin-top:22px;
}

.gavpidReviewGrid div{
    min-height:70px;
    padding:11px 13px;
    border:1px solid rgba(185,120,0,.25);
    border-radius:5px;
    background:#fffaf0;
    color:#5c6878;
    font-size:15px;
    line-height:1.45;
}

.gavpidReviewGrid strong{
    display:block;
    margin-bottom:3px;
    color:#b97800;
    font-size:16px;
}


/* =========================================================
   ASSURANCE SECTION
   Namespace: gavpidAssurance
========================================================= */

.gavpidAssurance{
    padding:90px 0;
    background:#fff;
}

.gavpidAssuranceGrid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
}

.gavpidAssuranceEyebrow{
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.8px;
}

.gavpidAssuranceContent h2{
    margin:0 0 20px;
    color:#061d3d;
    font-size:clamp(32px,3.6vw,48px);
    line-height:1.15;
    letter-spacing:-1px;
}

.gavpidAssuranceContent h2 strong{
    color:#b97800;
}

.gavpidAssuranceContent p{
    margin:0 0 15px;
    color:#58687a;
    font-size:16px;
    line-height:1.8;
}

.gavpidAssuranceContent p strong{
    color:#092f62;
}

.gavpidAssurancePoints{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.gavpidAssurancePoint{
    display:flex;
    gap:13px;
    padding:21px;
    border:1px solid #dce3eb;
    border-radius:8px;
    background:#f8fafc;
    transition:all .3s ease;
}

.gavpidAssurancePoint:hover{
    transform:translateY(-3px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 12px 28px rgba(6,29,61,.07);
}

.gavpidAssurancePoint > span{
    flex:0 0 37px;
    width:37px;
    height:37px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gavpidAssurancePoint strong{
    display:block;
    margin-bottom:5px;
    color:#092f62;
    font-size:16px;
}

.gavpidAssurancePoint p{
    margin:0;
    color:#657386;
    font-size:15px;
    line-height:1.55;
}


/* =========================================================
   FINAL CTA
   Namespace: gavpidFinal
========================================================= */

.gavpidFinal{
    padding:0 0 90px;
    background:#fff;
}

.gavpidFinalBox{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    padding:42px 45px;
    border:1px solid rgba(185,120,0,.45);
    border-radius:10px;
    background:
        radial-gradient(circle at 90% 30%,rgba(240,180,41,.15),transparent 30%),
        linear-gradient(120deg,#04152d,#092f62);
    box-shadow:0 22px 50px rgba(6,29,61,.15);
    overflow:hidden;
}

.gavpidFinalBox:after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    right:-100px;
    bottom:-120px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gavpidFinalContent{
    position:relative;
    z-index:2;
    max-width:730px;
}

.gavpidFinalContent > span{
    display:block;
    margin-bottom:9px;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.7px;
}

.gavpidFinalContent h2{
    margin:0 0 12px;
    color:#fff;
    font-size:clamp(26px,3vw,39px);
    line-height:1.2;
    letter-spacing:-.6px;
}

.gavpidFinalContent h2 strong{
    color:#f0b429;
}

.gavpidFinalContent p{
    margin:0;
    color:#d4deea;
    font-size:16px;
    line-height:1.7;
}

.gavpidFinalContent p strong{
    color:#fff;
}

.gavpidFinalActions{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    flex-direction:column;
    gap:12px;
    min-width:205px;
}

.gavpidFinalButton{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    width:100%;
    min-height:57px;
    padding:0 23px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:900;
    text-decoration:none !important;
    box-shadow:0 12px 27px rgba(0,0,0,.17);
    transition:all .3s ease;
}

.gavpidFinalButton:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 32px rgba(0,0,0,.25);
}

.gavpidFinalButton span{
    font-size:22px;
}

.gavpidFinalPhone{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:57px;
    padding:7px 16px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:5px;
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gavpidFinalPhone:hover{
    border-color:#f0b429;
}

.gavpidFinalPhone small{
    color:#b9c6d5;
    font-size:15px;
}

.gavpidFinalPhone strong{
    margin-top:2px;
    color:#f0b429;
    font-size:17px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .gavpidStageBody{
        padding:27px 29px;
    }

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

}


@media (max-width:991px){

    .gavpidHero{
        padding:72px 0;
    }

    .gavpidIntroGrid{
        grid-template-columns:1fr;
        gap:25px;
    }

    .gavpidIntroLabel{
        display:flex;
        align-items:center;
        gap:12px;
    }

    .gavpidIntroLabel span{
        margin:0;
        font-size:30px;
    }

    .gavpidAssuranceGrid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .gavpidFinalBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gavpidFinalActions{
        width:100%;
        max-width:320px;
        align-items:stretch;
    }

}


@media (max-width:767px){

    .gavpidHero{
        padding:55px 0;
    }

    .gavpidHero h1{
        font-size:40px;
        letter-spacing:-1px;
    }

    .gavpidHeroLead{
        font-size:16px;
        line-height:1.7;
    }

    .gavpidHeroStats{
        flex-direction:column;
    }

    .gavpidHeroStat{
        border-right:0;
        border-bottom:1px solid rgba(240,180,41,.18);
    }

    .gavpidHeroStat:last-child{
        border-bottom:0;
    }

    .gavpidStages{
        padding:65px 0;
    }

    .gavpidStageTimeline:before{
        left:25px;
    }

    .gavpidStage{
        grid-template-columns:52px minmax(0,1fr);
        gap:15px;
    }

    .gavpidStageMarker{
        width:50px;
        height:50px;
        font-size:15px;
    }

    .gavpidStageBody{
        padding:24px 21px;
    }

    .gavpidStageTop{
        align-items:flex-start;
        flex-direction:column;
        gap:7px;
    }

    .gavpidStageBody h3{
        font-size:22px;
    }

    .gavpidStageBody > p{
        font-size:15px;
    }

    .gavpidDatabaseGrid,
    .gavpidReviewGrid{
        grid-template-columns:1fr;
    }

    .gavpidAssurance{
        padding:65px 0;
    }

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

    .gavpidFinal{
        padding-bottom:65px;
    }

    .gavpidFinalBox{
        padding:30px 22px;
    }

}


@media (max-width:480px){

    .gavpidHeroEyebrow{
        font-size:15px;
        letter-spacing:1.3px;
    }

    .gavpidHeroEyebrow span{
        width:25px;
    }

    .gavpidHero h1{
        font-size:34px;
    }

    .gavpidHero h1 strong{
        font-size:29px;
    }

    .gavpidStageTimeline:before{
        display:none;
    }

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

    .gavpidStageMarker{
        margin-bottom:-2px;
    }

    .gavpidStageBody{
        padding:22px 18px;
    }

    .gavpidStageDetails{
        gap:6px;
    }

    .gavpidStageDetails span{
        width:100%;
    }

}
/* =========================================================
   GOVERNMENT APPROVED VALUERS INDIA
   INSIGHTS PAGE
   Royal Navy + Gold
========================================================= */


/* =========================================================
   HERO
   Namespace: gaviInsightsHero
========================================================= */

.gaviInsightsHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 78% 25%,rgba(185,120,0,.17),transparent 27%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviInsightsHero:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

.gaviInsightsHeroPattern{
    position:absolute;
    width:520px;
    height:520px;
    right:-220px;
    top:-260px;
    border:1px solid rgba(240,180,41,.17);
    border-radius:50%;
    box-shadow:
        0 0 0 30px rgba(185,120,0,.025),
        0 0 0 70px rgba(185,120,0,.02);
    z-index:-1;
}

.gaviInsightsHeroInner{
    max-width:970px;
    margin:0 auto;
    text-align:center;
}

.gaviInsightsHeroEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    margin-bottom:19px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2.2px;
}

.gaviInsightsHeroEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviInsightsHero h1{
    margin:0 0 23px;
    color:#fff;
    font-size:clamp(39px,5vw,67px);
    line-height:1.04;
    font-weight:800;
    letter-spacing:-1.7px;
}

.gaviInsightsHero h1 strong{
    color:#f0b429;
}

.gaviInsightsHeroInner > p{
    max-width:850px;
    margin:0 auto;
    color:#dbe4ee;
    font-size:17px;
    line-height:1.8;
}

.gaviInsightsHeroInner > p strong{
    color:#fff;
}

.gaviInsightsHeroMeta{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:28px;
}

.gaviInsightsHeroMeta span{
    padding:9px 17px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:4px;
    background:rgba(255,255,255,.05);
    color:#dbe4ee;
    font-size:15px;
}

.gaviInsightsHeroMeta b{
    color:#f0b429;
}

.gaviInsightsHeroActions{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:31px;
}

.gaviInsightsPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.24);
    transition:all .3s ease;
}

.gaviInsightsPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 36px rgba(185,120,0,.34);
}

.gaviInsightsPrimaryCta span{
    font-size:21px;
}

.gaviInsightsPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:56px;
    padding:0 21px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviInsightsPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   INTRO
   Namespace: gaviInsightsIntro
========================================================= */

.gaviInsightsIntro{
    padding:82px 0;
    background:#fff;
}

.gaviInsightsIntroGrid{
    display:grid;
    grid-template-columns:210px minmax(0,1fr);
    gap:65px;
    align-items:start;
    max-width:1100px;
    margin:0 auto;
}

.gaviInsightsIntroLabel{
    padding:23px 20px;
    border-left:4px solid #b97800;
    background:linear-gradient(145deg,#061d3d,#092f62);
    color:#fff;
}

.gaviInsightsIntroLabel span{
    display:block;
    margin-bottom:17px;
    color:#f0b429;
    font-size:31px;
    line-height:1;
    font-weight:900;
}

.gaviInsightsIntroLabel strong{
    font-size:15px;
    line-height:1.7;
    letter-spacing:1.3px;
}

.gaviInsightsSectionEyebrow{
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviInsightsIntroContent h2{
    margin:0 0 18px;
    color:#061d3d;
    font-size:clamp(30px,3.5vw,46px);
    line-height:1.16;
    letter-spacing:-1px;
}

.gaviInsightsIntroContent h2 strong{
    color:#b97800;
}

.gaviInsightsIntroContent p{
    max-width:880px;
    margin:0 0 15px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gaviInsightsIntroContent p strong{
    color:#092f62;
}


/* =========================================================
   ARTICLE GRID
   Namespace: gaviInsightsGrid
========================================================= */

.gaviInsightsGrid{
    padding:88px 0 94px;
    background:
        linear-gradient(180deg,#f7f9fc 0%,#fff 100%);
    border-top:1px solid #e5eaf0;
}

.gaviInsightsHeading{
    max-width:760px;
    margin:0 auto 47px;
    text-align:center;
}

.gaviInsightsHeading h2{
    margin:0 0 13px;
    color:#061d3d;
    font-size:clamp(31px,3.6vw,48px);
    line-height:1.15;
    font-weight:800;
}

.gaviInsightsHeading h2 strong{
    color:#b97800;
}

.gaviInsightsHeading p{
    margin:0;
    color:#617084;
    font-size:16px;
    line-height:1.7;
}

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

.gaviArticleCard{
    position:relative;
    height:457px;
    padding:28px 25px 24px;
    border:1px solid #dce3eb;
    border-radius:8px;
    background:#fff;
    box-shadow:0 8px 27px rgba(6,29,61,.045);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviArticleCard:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800,#f0b429);
    transform:scaleX(.18);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviArticleCard:hover{
    transform:translateY(-7px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 19px 42px rgba(6,29,61,.11);
}

.gaviArticleCard:hover:before{
    transform:scaleX(1);
}

.gaviArticleNumber{
    position:absolute;
    right:20px;
    top:18px;
    color:#e3e8ee;
    font-size:15px;
    font-weight:900;
}

.gaviArticleCategory{
    display:inline-block;
    margin-bottom:18px;
    padding:6px 9px;
    border:1px solid rgba(185,120,0,.28);
    border-radius:3px;
    background:#fffaf0;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:.7px;
}

.gaviArticleCard h3{
    margin:0 0 15px;
    color:#061d3d;
    font-size:20px;
    line-height:1.4;
    font-weight:750;
}

.gaviArticleCard h3 strong{
    color:#092f62;
}

.gaviArticleCard p{
    margin:0;
    color:#5a697b;
    font-size:15px;
    line-height:1.72;
}

.gaviArticleCard p strong{
    color:#092f62;
}

.gaviArticleLink{
    position:absolute;
    left:25px;
    right:25px;
    bottom:23px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:14px;
    border-top:1px solid #e7ebf0;
    color:#092f62 !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviArticleLink span{
    color:#b97800;
    font-size:21px;
    transition:transform .25s ease;
}

.gaviArticleLink:hover{
    color:#b97800 !important;
}

.gaviArticleLink:hover span{
    transform:translateX(5px);
}


/* =========================================================
   FINAL CTA
   Namespace: gaviInsightsCta
========================================================= */

.gaviInsightsCta{
    padding:0 0 88px;
    background:#fff;
}

.gaviInsightsCtaBox{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    padding:39px 42px;
    border:1px solid rgba(185,120,0,.42);
    border-radius:9px;
    background:
        radial-gradient(circle at 85% 15%,rgba(240,180,41,.13),transparent 30%),
        linear-gradient(115deg,#04152d,#092f62);
    box-shadow:0 20px 45px rgba(6,29,61,.14);
    overflow:hidden;
}

.gaviInsightsCtaBox:after{
    content:"";
    position:absolute;
    right:-100px;
    bottom:-160px;
    width:350px;
    height:350px;
    border:1px solid rgba(240,180,41,.14);
    border-radius:50%;
}

.gaviInsightsCtaContent{
    position:relative;
    z-index:2;
    max-width:760px;
}

.gaviInsightsCtaContent > span{
    display:block;
    margin-bottom:8px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviInsightsCtaContent h2{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(24px,3vw,34px);
    line-height:1.25;
}

.gaviInsightsCtaContent h2 strong{
    color:#f0b429;
}

.gaviInsightsCtaContent p{
    margin:0;
    color:#d2dce7;
    font-size:15px;
    line-height:1.7;
}

.gaviInsightsCtaActions{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:11px;
}

.gaviInsightsFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:55px;
    padding:0 24px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviInsightsFinalButton:hover{
    transform:translateY(-3px);
    box-shadow:0 13px 30px rgba(185,120,0,.3);
}

.gaviInsightsFinalButton span{
    font-size:20px;
}

.gaviInsightsFinalPhone{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:55px;
    padding:6px 17px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:5px;
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviInsightsFinalPhone:hover{
    border-color:#f0b429;
}

.gaviInsightsFinalPhone small{
    color:#b8c5d4;
    font-size:15px;
}

.gaviInsightsFinalPhone strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:991px){

    .gaviInsightsHero{
        padding:72px 0;
    }

    .gaviInsightsIntroGrid{
        grid-template-columns:170px minmax(0,1fr);
        gap:35px;
    }

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

    .gaviInsightsCtaBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviInsightsCtaActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviInsightsHero{
        padding:58px 0 62px;
    }

    .gaviInsightsHero h1{
        font-size:40px;
    }

    .gaviInsightsHeroInner > p{
        font-size:15px;
        line-height:1.7;
    }

    .gaviInsightsHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviInsightsPrimaryCta,
    .gaviInsightsPhoneCta{
        width:100%;
    }

    .gaviInsightsIntro{
        padding:65px 0;
    }

    .gaviInsightsIntroGrid{
        grid-template-columns:1fr;
        gap:25px;
    }

    .gaviInsightsIntroLabel{
        max-width:210px;
    }

    .gaviInsightsGrid{
        padding:65px 0 72px;
    }

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

    .gaviArticleCard{
        min-height:365px;
    }

    .gaviInsightsCta{
        padding-bottom:65px;
    }

    .gaviInsightsCtaBox{
        padding:29px 22px;
    }

    .gaviInsightsCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviInsightsFinalButton,
    .gaviInsightsFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

    .gaviInsightsHero h1{
        font-size:34px;
    }

    .gaviInsightsHeroEyebrow{
        font-size:15px;
        letter-spacing:1.3px;
    }

    .gaviInsightsHeroEyebrow span{
        width:22px;
    }

    .gaviInsightsHeroMeta{
        flex-direction:column;
    }

    .gaviInsightsHeroMeta span{
        width:100%;
    }

    .gaviInsightsIntroContent h2{
        font-size:30px;
    }

}
/* =========================================================
   GOVERNMENT APPROVED VALUERS INDIA
   NATIONAL REGULATORY ARCHITECTURE
   ROYAL NAVY + GOLD DESIGN SYSTEM
========================================================= */


/* =========================================================
   HERO
   Namespace: gaviRegHero
========================================================= */

.gaviRegHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 80% 20%,rgba(240,180,41,.14),transparent 27%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviRegHeroPattern{
    position:absolute;
    inset:0;
    opacity:.22;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(240,180,41,.07) 1px,transparent 1px),
        linear-gradient(90deg,rgba(240,180,41,.07) 1px,transparent 1px);
    background-size:55px 55px;
}

.gaviRegHeroInner{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(330px,.75fr);
    gap:65px;
    align-items:center;
}

.gaviRegHeroContent{
    position:relative;
    z-index:2;
}

.gaviRegHeroEyebrow{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:20px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviRegHeroEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviRegHero h1{
    max-width:900px;
    margin:0 0 25px;
    color:#fff;
    font-size:clamp(39px,4.5vw,67px);
    line-height:1.05;
    letter-spacing:-1.8px;
    font-weight:800;
}

.gaviRegHero h1 strong{
    display:block;
    margin-top:10px;
    color:#f0b429;
    font-size:.55em;
    line-height:1.2;
    letter-spacing:-.3px;
}

.gaviRegHeroLead{
    max-width:810px;
    margin:0;
    color:#dce5ef;
    font-size:18px;
    line-height:1.75;
}

.gaviRegHeroLead strong{
    color:#fff;
}

.gaviRegHeroPills{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:28px;
}

.gaviRegHeroPills span{
    padding:9px 13px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:4px;
    background:rgba(255,255,255,.055);
    color:#dfe7ef;
    font-size:15px;
}

.gaviRegHeroPills strong{
    color:#f0b429;
}

.gaviRegHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;
}

.gaviRegHeroCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 26px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 14px 32px rgba(185,120,0,.22);
    transition:all .3s ease;
}

.gaviRegHeroCTA:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 38px rgba(185,120,0,.34);
}

.gaviRegHeroCTA span{
    font-size:21px;
}

.gaviRegHeroPhone{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:0 19px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviRegHeroPhone span{
    color:#f0b429;
    font-size:21px;
}

.gaviRegHeroPhone:hover{
    border-color:#f0b429;
    background:rgba(185,120,0,.1);
}


/* Architecture Visual */

.gaviRegHeroArchitecture{
    display:flex;
    justify-content:center;
}

.gaviRegHeroArchitectureCard{
    position:relative;
    width:min(100%,410px);
    padding:27px;
    border:1px solid rgba(240,180,41,.35);
    border-radius:12px;
    background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035));
    box-shadow:0 30px 70px rgba(0,0,0,.3);
    backdrop-filter:blur(10px);
}

.gaviRegArchitectureTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-bottom:17px;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.gaviRegArchitectureTop span{
    color:#aebdcd;
    font-size:15px;
    letter-spacing:1.3px;
    font-weight:750;
}

.gaviRegArchitectureTop strong{
    color:#f0b429;
    font-size:18px;
}

.gaviRegArchitectureCore{
    display:flex;
    justify-content:center;
    padding:38px 0;
}

.gaviRegCoreCircle{
    width:155px;
    height:155px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #f0b429;
    border-radius:50%;
    background:
        radial-gradient(circle,#092f62 0%,#061d3d 65%,#04152d 100%);
    color:#f0b429;
    font-size:16px;
    font-weight:900;
    letter-spacing:1.5px;
    box-shadow:
        0 0 0 15px rgba(185,120,0,.045),
        0 0 45px rgba(185,120,0,.14);
}

.gaviRegArchitectureItems{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
}

.gaviRegArchitectureItems > div{
    min-height:90px;
    padding:12px 7px;
    text-align:center;
    border:1px solid rgba(255,255,255,.1);
    border-radius:5px;
    background:rgba(255,255,255,.035);
}

.gaviRegArchitectureItems b{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:16px;
}

.gaviRegArchitectureItems span{
    display:block;
    color:#c4d0dc;
    font-size:15px;
    line-height:1.4;
}


/* =========================================================
   SECTION 1 — SECTION 34AB
   Namespace: gavi34ab
========================================================= */

.gavi34ab{
    padding:92px 0;
    background:#fff;
    position:relative;
}

.gavi34abGrid{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:50px;
    max-width:1100px;
    margin:auto;
}

.gavi34abNumber{
    padding-top:8px;
    border-right:1px solid #dce3ec;
}

.gavi34abNumber span{
    display:block;
    color:#b97800;
    font-size:55px;
    line-height:1;
    font-weight:900;
}

.gavi34abNumber small{
    display:block;
    max-width:110px;
    margin-top:13px;
    color:#092f62;
    font-size:15px;
    line-height:1.45;
    font-weight:800;
    letter-spacing:1px;
}

.gavi34abEyebrow{
    display:inline-block;
    margin-bottom:11px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gavi34abContent h2{
    margin:0 0 21px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,47px);
    line-height:1.15;
    font-weight:800;
}

.gavi34abContent h2 strong{
    color:#b97800;
}

.gavi34abContent p{
    max-width:900px;
    margin:0 0 17px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gavi34abContent p strong{
    color:#092f62;
    font-weight:800;
}

.gavi34abHighlight{
    display:flex;
    align-items:center;
    gap:17px;
    margin:29px 0;
    padding:19px;
    border-left:4px solid #b97800;
    background:linear-gradient(90deg,#f7f9fc,#fff);
    box-shadow:0 8px 25px rgba(6,29,61,.06);
}

.gavi34abHighlightIcon{
    flex:0 0 67px;
    height:67px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gavi34abHighlight strong{
    display:block;
    margin-bottom:4px;
    color:#061d3d;
    font-size:17px;
}

.gavi34abHighlight span{
    display:block;
    color:#667587;
    font-size:15px;
    line-height:1.5;
}

.gavi34abCategories{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:9px;
    margin-top:26px;
}

.gavi34abCategories div{
    padding:15px 7px;
    text-align:center;
    border:1px solid #dce3ec;
    border-radius:5px;
    background:#fafbfd;
}

.gavi34abCategories strong{
    display:block;
    margin-bottom:5px;
    color:#b97800;
    font-size:21px;
}

.gavi34abCategories span{
    display:block;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}


/* =========================================================
   SECTION 2 — IBBI
   Namespace: gaviIbbi
========================================================= */

.gaviIbbi{
    padding:94px 0;
    background:
        linear-gradient(145deg,#04152d,#061d3d 62%,#092f62);
    color:#fff;
    position:relative;
    overflow:hidden;
}

.gaviIbbi:after{
    content:"IBBI";
    position:absolute;
    right:-20px;
    top:25px;
    color:rgba(255,255,255,.025);
    font-size:180px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

.gaviIbbiHeader{
    max-width:850px;
    margin:0 auto 47px;
    text-align:center;
}

.gaviIbbiEyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:13px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviIbbiEyebrow span{
    width:31px;
    height:2px;
    background:#b97800;
}

.gaviIbbiHeader h2{
    margin:0 0 16px;
    color:#fff;
    font-size:clamp(31px,3.5vw,47px);
    line-height:1.15;
}

.gaviIbbiHeader h2 strong{
    color:#f0b429;
}

.gaviIbbiHeader p{
    margin:0;
    color:#cbd6e1;
    font-size:16px;
    line-height:1.75;
}

.gaviIbbiHeader p strong{
    color:#fff;
}

.gaviIbbiGrid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.gaviIbbiCard{
    min-height:300px;
    padding:26px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:9px;
    background:rgba(255,255,255,.055);
    transition:all .3s ease;
}

.gaviIbbiCard:hover,
.gaviIbbiCardFeatured{
    border-color:rgba(240,180,41,.5);
    transform:translateY(-5px);
    background:rgba(185,120,0,.075);
    box-shadow:0 20px 45px rgba(0,0,0,.2);
}

.gaviIbbiCardTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:25px;
}

.gaviIbbiCardTop span{
    color:#708196;
    font-size:15px;
    font-weight:800;
}

.gaviIbbiCardTop b{
    color:#f0b429;
    font-size:17px;
}

.gaviIbbiCard h3{
    margin:0 0 13px;
    color:#fff;
    font-size:23px;
    line-height:1.3;
}

.gaviIbbiCard p{
    margin:0;
    color:#c3d0dc;
    font-size:15px;
    line-height:1.75;
}

.gaviIbbiCard p strong{
    color:#f0b429;
}

.gaviIbbiLine{
    width:45px;
    height:2px;
    margin-top:25px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviIbbiCard small{
    display:block;
    margin-top:11px;
    color:#9eafc0;
    font-size:15px;
    letter-spacing:.8px;
}

.gaviIbbiInsight{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:19px;
    margin-top:28px;
    padding:22px;
    border:1px solid rgba(240,180,41,.25);
    border-radius:7px;
    background:rgba(255,255,255,.045);
}

.gaviIbbiInsightMark{
    flex:0 0 67px;
    height:67px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d99a16;
    border-radius:50%;
    color:#061d3d;
    background:linear-gradient(135deg,#b97800,#f0b429);
    font-size:15px;
    font-weight:900;
}

.gaviIbbiInsightText strong{
    display:block;
    margin-bottom:5px;
    color:#f0b429;
    font-size:17px;
}

.gaviIbbiInsightText p{
    margin:0;
    color:#c5d0dc;
    font-size:15px;
    line-height:1.65;
}

.gaviIbbiCTA{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:42px;
    padding:28px 30px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:8px;
    background:#fff;
}

.gaviIbbiCTA > div:first-child span{
    display:block;
    margin-bottom:7px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1px;
}

.gaviIbbiCTA h3{
    margin:0;
    color:#061d3d;
    font-size:22px;
    line-height:1.4;
}

.gaviIbbiCTA h3 strong{
    color:#b97800;
}

.gaviIbbiActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:11px;
}

.gaviIbbiPrimaryCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:52px;
    padding:0 21px;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviIbbiPrimaryCTA span{
    font-size:20px;
}

.gaviIbbiPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 17px;
    border:1px solid #d5dde6;
    border-radius:5px;
    color:#092f62 !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
}


/* =========================================================
   SECTION 3 — RERA
   Namespace: gaviRera
========================================================= */

.gaviRera{
    padding:92px 0 88px;
    background:#f7f9fc;
    position:relative;
}

.gaviReraHeader{
    max-width:850px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviReraEyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviReraEyebrow span{
    width:31px;
    height:2px;
    background:#b97800;
}

.gaviReraHeader h2{
    margin:0 0 16px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,47px);
    line-height:1.15;
}

.gaviReraHeader h2 strong{
    color:#b97800;
}

.gaviReraHeader p{
    margin:0;
    color:#596a7d;
    font-size:16px;
    line-height:1.75;
}

.gaviReraGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px;
}

.gaviReraCard{
    position:relative;
    min-height:275px;
    padding:24px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:#fff;
    box-shadow:0 8px 25px rgba(6,29,61,.045);
    transition:all .3s ease;
}

.gaviReraCard:hover{
    transform:translateY(-5px);
    border-color:rgba(185,120,0,.42);
    box-shadow:0 18px 36px rgba(6,29,61,.09);
}

.gaviReraCardNational{
    background:linear-gradient(145deg,#061d3d,#092f62);
    border-color:#b97800;
}

.gaviReraCardHead{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:18px;
}

.gaviReraCardHead > span{
    flex:0 0 48px;
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:5px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviReraCardNational .gaviReraCardHead > span{
    background:#b97800;
    color:#061d3d;
}

.gaviReraCardHead small{
    display:block;
    margin-bottom:2px;
    color:#8a98a8;
    font-size:15px;
    font-weight:750;
    letter-spacing:1px;
}

.gaviReraCardHead h3{
    margin:0;
    color:#061d3d;
    font-size:21px;
    line-height:1.25;
}

.gaviReraCardNational .gaviReraCardHead h3{
    color:#fff;
}

.gaviReraCard p{
    margin:0;
    color:#58697b;
    font-size:15px;
    line-height:1.72;
}

.gaviReraCard p strong{
    color:#092f62;
}

.gaviReraCardNational .gaviReraCardHead small,
.gaviReraCardNational p{
    color:#c3d0dc;
}

.gaviReraCardNational p strong{
    color:#f0b429;
}

.gaviReraMarkets{
    position:absolute;
    left:24px;
    right:24px;
    bottom:21px;
    padding-top:13px;
    border-top:1px solid #e1e6ec;
    color:#b97800;
    font-size:15px;
    font-weight:750;
    line-height:1.45;
}

.gaviReraCardNational .gaviReraMarkets{
    border-color:rgba(255,255,255,.15);
    color:#f0b429;
}

.gaviReraBottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:45px;
    padding:29px 32px;
    border:1px solid rgba(185,120,0,.35);
    border-radius:8px;
    background:linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 17px 38px rgba(6,29,61,.13);
}

.gaviReraBottomContent > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.2px;
}

.gaviReraBottomContent h3{
    margin:0 0 5px;
    color:#fff;
    font-size:23px;
    line-height:1.35;
}

.gaviReraBottomContent h3 strong{
    color:#f0b429;
}

.gaviReraBottomContent p{
    margin:0;
    color:#bfcbd8;
    font-size:15px;
    line-height:1.55;
}

.gaviReraBottomActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:11px;
}

.gaviReraCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:52px;
    padding:0 22px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviReraCTA span{
    font-size:20px;
}

.gaviReraPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
}

.gaviReraPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .gaviRegHeroInner{
        grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
        gap:35px;
    }

    .gaviRegHero h1{
        font-size:50px;
    }

    .gavi34abGrid{
        grid-template-columns:130px minmax(0,1fr);
        gap:35px;
    }

}


@media(max-width:991px){

    .gaviRegHero{
        padding:70px 0;
    }

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

    .gaviRegHeroContent{
        text-align:center;
    }

    .gaviRegHeroEyebrow,
    .gaviRegHeroActions{
        justify-content:center;
    }

    .gaviRegHeroLead{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviRegHeroPills{
        justify-content:center;
    }

    .gaviRegHeroArchitecture{
        margin-top:15px;
    }

    .gavi34ab{
        padding:70px 0;
    }

    .gavi34abGrid{
        grid-template-columns:1fr;
        gap:25px;
    }

    .gavi34abNumber{
        border-right:0;
        border-bottom:1px solid #dce3ec;
        padding-bottom:17px;
    }

    .gavi34abNumber span{
        display:inline;
        margin-right:10px;
    }

    .gavi34abNumber small{
        display:inline;
        max-width:none;
    }

    .gavi34abCategories{
        grid-template-columns:repeat(3,1fr);
    }

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

    .gaviIbbiCTA,
    .gaviReraBottom{
        flex-direction:column;
        align-items:flex-start;
    }

}


@media(max-width:767px){

    .gaviRegHero{
        padding:58px 0;
    }

    .gaviRegHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviRegHero h1 strong{
        font-size:21px;
    }

    .gaviRegHeroLead{
        font-size:16px;
    }

    .gaviRegHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviRegHeroCTA,
    .gaviRegHeroPhone{
        width:100%;
    }

    .gaviRegHeroArchitectureCard{
        width:100%;
    }

    .gavi34abContent h2,
    .gaviIbbiHeader h2,
    .gaviReraHeader h2{
        font-size:32px;
    }

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

    .gaviIbbiGrid,
    .gaviReraGrid{
        grid-template-columns:1fr;
    }

    .gaviIbbiCard,
    .gaviReraCard{
        min-height:270px;
    }

    .gaviIbbiInsight{
        align-items:flex-start;
    }

    .gaviIbbiCTA,
    .gaviReraBottom{
        padding:24px 20px;
    }

    .gaviIbbiActions,
    .gaviReraBottomActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviIbbiPrimaryCTA,
    .gaviIbbiPhone,
    .gaviReraCTA,
    .gaviReraPhone{
        width:100%;
    }

}


@media(max-width:480px){

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

    .gaviRegArchitectureItems > div{
        min-height:auto;
    }

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

}

/* =========================================================
   WESTERN INDIA HERO
   Namespace: gaviWestHero
========================================================= */

.gaviWestHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 84% 18%,rgba(240,180,41,.16),transparent 27%),
        radial-gradient(circle at 10% 100%,rgba(185,120,0,.09),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviWestHeroOrb{
    position:absolute;
    border:1px solid rgba(240,180,41,.16);
    border-radius:50%;
    pointer-events:none;
}

.gaviWestHeroOrbOne{
    width:500px;
    height:500px;
    right:-250px;
    top:-280px;
}

.gaviWestHeroOrbTwo{
    width:300px;
    height:300px;
    left:-190px;
    bottom:-220px;
}

.gaviWestHeroInner{
    position:relative;
    max-width:1050px;
    margin:auto;
    text-align:center;
}

.gaviWestHeroEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    margin-bottom:19px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviWestHeroEyebrow span{
    width:43px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviWestHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(40px,5vw,66px);
    line-height:1.06;
    font-weight:800;
    letter-spacing:-1.7px;
}

.gaviWestHero h1 strong{
    display:block;
    margin-top:8px;
    color:#f0b429;
    font-size:.57em;
    line-height:1.3;
    letter-spacing:-.3px;
}

.gaviWestHeroLead{
    max-width:900px;
    margin:26px auto 0;
    color:#dce5ef;
    font-size:18px;
    line-height:1.8;
}

.gaviWestHeroLead strong{
    color:#fff;
}

.gaviWestHeroTags{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin-top:30px;
}

.gaviWestHeroTags span{
    min-width:155px;
    padding:11px 15px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#bdc9d7;
    font-size:15px;
    line-height:1.4;
}

.gaviWestHeroTags strong{
    display:block;
    margin-bottom:2px;
    color:#f0b429;
    font-size:16px;
}

.gaviWestHeroActions{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;
}

.gaviWestHeroCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviWestHeroCTA:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(185,120,0,.35);
}

.gaviWestHeroCTA span{
    font-size:21px;
}

.gaviWestHeroPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:56px;
    padding:0 22px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.05);
    color:#fff !important;
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviWestHeroPhone span{
    color:#f0b429;
    font-size:20px;
}

.gaviWestHeroPhone:hover{
    border-color:#f0b429;
    background:rgba(185,120,0,.1);
}


/* =========================================================
   MUMBAI
   Namespace: gaviMumbai
========================================================= */

.gaviMumbai{
    position:relative;
    padding:95px 0 85px;
    background:#f7f9fc;
    overflow:hidden;
}

.gaviMumbai:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:7px;
    height:100%;
    background:linear-gradient(180deg,#061d3d,#b97800,#f0b429);
}

.gaviMumbaiGrid{
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:55px;
    align-items:start;
}

.gaviMumbaiIntro{
    position:sticky;
    top:30px;
}

.gaviMumbaiLabel{
    display:inline-block;
    margin-bottom:15px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviMumbaiIntro h2{
    margin:0;
    color:#061d3d;
    font-size:clamp(33px,4vw,51px);
    line-height:1.12;
    letter-spacing:-1.2px;
}

.gaviMumbaiIntro h2 strong{
    color:#b97800;
}

.gaviMumbaiAccent{
    width:75px;
    height:4px;
    margin:22px 0;
    border-radius:5px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429);
}

.gaviMumbaiIntro p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gaviMumbaiIntro p strong{
    color:#092f62;
}

.gaviMumbaiHighlight{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:30px;
    padding:17px;
    border:1px solid #e0e6ed;
    border-left:4px solid #b97800;
    border-radius:6px;
    background:#fff;
    box-shadow:0 12px 28px rgba(6,29,61,.06);
}

.gaviMumbaiHighlightIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:55px;
    height:48px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviMumbaiHighlight strong{
    display:block;
    color:#061d3d;
    font-size:17px;
}

.gaviMumbaiHighlight small{
    display:block;
    margin-top:3px;
    color:#697789;
    font-size:15px;
}

.gaviMumbaiContent{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.gaviMumbaiBlock{
    position:relative;
    padding:28px 30px 27px 68px;
    border:1px solid #dfe5ec;
    border-radius:8px;
    background:#fff;
    box-shadow:0 9px 25px rgba(6,29,61,.045);
    transition:all .3s ease;
}

.gaviMumbaiBlock:hover{
    transform:translateX(5px);
    border-color:rgba(185,120,0,.42);
    box-shadow:0 15px 32px rgba(6,29,61,.08);
}

.gaviMumbaiBlockNo{
    position:absolute;
    left:25px;
    top:28px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviMumbaiBlock h3{
    margin:0 0 10px;
    color:#061d3d;
    font-size:22px;
    line-height:1.35;
}

.gaviMumbaiBlock h3 strong{
    color:#b97800;
}

.gaviMumbaiBlock p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.76;
}

.gaviMumbaiBlock p strong{
    color:#092f62;
}

.gaviMumbaiInsight{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    margin-top:38px;
    padding:27px 30px;
    border-radius:8px;
    background:linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 18px 38px rgba(6,29,61,.13);
}

.gaviMumbaiInsight span{
    display:block;
    margin-bottom:5px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.4px;
}

.gaviMumbaiInsight h3{
    margin:0;
    color:#fff;
    font-size:21px;
    line-height:1.4;
}

.gaviMumbaiInsight h3 strong{
    color:#f0b429;
}

.gaviMumbaiCTA{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:51px;
    padding:0 21px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:#b97800;
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}


/* =========================================================
   PUNE
   Namespace: gaviPune
========================================================= */

.gaviPune{
    padding:95px 0;
    background:#fff;
}

.gaviPuneHeader{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviPuneEyebrow{
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviPuneHeader h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(32px,4vw,49px);
    line-height:1.15;
}

.gaviPuneHeader h2 strong{
    color:#b97800;
}

.gaviPuneHeader p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.78;
}

.gaviPuneHeader p strong{
    color:#092f62;
}

.gaviPuneGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.gaviPuneCard{
    position:relative;
    min-height:420px;
    padding:27px 22px 24px;
    border:1px solid #dfe5ec;
    border-radius:8px;
    background:#f9fafc;
    overflow:hidden;
    transition:all .3s ease;
}

.gaviPuneCardFeatured{
    background:linear-gradient(150deg,#061d3d,#092f62);
    border-color:#092f62;
}

.gaviPuneCard:hover{
    transform:translateY(-7px);
    border-color:#b97800;
    box-shadow:0 20px 40px rgba(6,29,61,.11);
}

.gaviPuneNumber{
    position:absolute;
    top:17px;
    right:17px;
    color:#d5dde7;
    font-size:15px;
    font-weight:900;
}

.gaviPuneCardFeatured .gaviPuneNumber{
    color:rgba(255,255,255,.2);
}

.gaviPuneIcon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:52px;
    height:42px;
    margin-bottom:23px;
    padding:0 9px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviPuneCardFeatured .gaviPuneIcon{
    background:#b97800;
    color:#061d3d;
}

.gaviPuneCard h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:21px;
    line-height:1.35;
}

.gaviPuneCardFeatured h3{
    color:#fff;
}

.gaviPuneCard h3 strong{
    color:#b97800;
}

.gaviPuneCardFeatured h3 strong{
    color:#f0b429;
}

.gaviPuneCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.72;
}

.gaviPuneCardFeatured p{
    color:#d4dfeb;
}

.gaviPuneCard p strong{
    color:#092f62;
}

.gaviPuneCardFeatured p strong{
    color:#fff;
}

.gaviPuneKeywords{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:20px;
}

.gaviPuneKeywords span,
.gaviPuneMiniTag{
    display:inline-block;
    padding:6px 8px;
    border:1px solid #d8e0e9;
    border-radius:3px;
    background:#fff;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}

.gaviPuneCardFeatured .gaviPuneKeywords span{
    border-color:rgba(240,180,41,.25);
    background:rgba(255,255,255,.06);
    color:#f0b429;
}

.gaviPuneMiniTag{
    margin-top:20px;
}

.gaviPuneCTABox{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    margin-top:42px;
    padding:28px 31px;
    border:1px solid rgba(185,120,0,.35);
    border-radius:8px;
    background:#061d3d;
}

.gaviPuneCTABox > div:first-child span{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviPuneCTABox h3{
    margin:0;
    color:#fff;
    font-size:23px;
}

.gaviPuneCTABox h3 strong{
    color:#f0b429;
}

.gaviPuneCTAActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}

.gaviPuneCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:51px;
    padding:0 21px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviPunePhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:51px;
    padding:0 17px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}


/* =========================================================
   AHMEDABAD + GIFT CITY + SURAT
   Namespace: gaviGujarat
========================================================= */

.gaviGujarat{
    position:relative;
    padding:96px 0 90px;
    background:
        linear-gradient(180deg,#f7f9fc 0%,#fff 100%);
}

.gaviGujaratHeader{
    max-width:850px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviGujaratEyebrow{
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviGujaratHeader h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(33px,4vw,50px);
    line-height:1.15;
}

.gaviGujaratHeader h2 strong{
    color:#b97800;
}

.gaviGujaratHeader p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.78;
}

.gaviGujaratHeader p strong{
    color:#092f62;
}

.gaviGujaratGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:19px;
}

.gaviGujaratCard{
    position:relative;
    padding:28px 25px 29px;
    border:1px solid #dfe5ec;
    border-radius:9px;
    background:#fff;
    box-shadow:0 12px 30px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviGujaratCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429);
}

.gaviGujaratCard:hover{
    transform:translateY(-7px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 20px 42px rgba(6,29,61,.1);
}

.gaviGujaratTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:23px;
}

.gaviGujaratCode{
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.5px;
}

.gaviGujaratNo{
    color:#dfe5ec;
    font-size:15px;
    font-weight:900;
}

.gaviGujaratCard h3{
    margin:0 0 15px;
    color:#061d3d;
    font-size:23px;
    line-height:1.3;
}

.gaviGujaratCard h3 strong{
    color:#b97800;
}

.gaviGujaratCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.75;
}

.gaviGujaratCard p strong{
    color:#092f62;
}

.gaviGujaratFeature{
    margin:22px 0;
    padding:15px 16px;
    border-left:3px solid #b97800;
    border-radius:4px;
    background:#f5f7fa;
}

.gaviGujaratFeature strong{
    display:block;
    margin-bottom:4px;
    color:#061d3d;
    font-size:16px;
}

.gaviGujaratFeature span{
    display:block;
    color:#697789;
    font-size:15px;
    line-height:1.5;
}

.gaviGujaratGift{
    background:linear-gradient(145deg,#061d3d,#092f62);
    border-color:#092f62;
}

.gaviGujaratGift .gaviGujaratCode{
    color:#f0b429;
}

.gaviGujaratGift .gaviGujaratNo{
    color:rgba(255,255,255,.22);
}

.gaviGujaratGift h3{
    color:#fff;
}

.gaviGujaratGift h3 strong{
    color:#f0b429;
}

.gaviGujaratGift p{
    color:#d5dfeb;
}

.gaviGujaratGift p strong{
    color:#fff;
}

.gaviGujaratGift .gaviGujaratFeature{
    background:rgba(255,255,255,.06);
    border-color:#b97800;
}

.gaviGujaratGift .gaviGujaratFeature strong{
    color:#fff;
}

.gaviGujaratGift .gaviGujaratFeature span{
    color:#c5d1df;
}

.gaviGujaratCTA{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:43px;
    padding:29px 32px;
    border-radius:8px;
    background:linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 18px 38px rgba(6,29,61,.14);
}

.gaviGujaratCTAContent span{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviGujaratCTAContent h3{
    margin:0;
    color:#fff;
    font-size:23px;
    line-height:1.4;
}

.gaviGujaratCTAContent h3 strong{
    color:#f0b429;
}

.gaviGujaratCTAActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}

.gaviGujaratPrimaryCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    padding:0 22px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviGujaratPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}


/* =========================================================
   FINAL CTA
   Namespace: gaviWestFinal
========================================================= */

.gaviWestFinal{
    padding:72px 0;
    background:#fff;
}

.gaviWestFinalInner{
    display:grid;
    grid-template-columns:90px minmax(0,1fr) auto;
    align-items:center;
    gap:28px;
    padding:34px 38px;
    border:1px solid #dce3eb;
    border-radius:10px;
    background:
        radial-gradient(circle at 100% 0%,rgba(185,120,0,.09),transparent 28%),
        #f7f9fc;
    box-shadow:0 15px 35px rgba(6,29,61,.06);
}

.gaviWestFinalMark{
    width:78px;
    height:78px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:linear-gradient(135deg,#061d3d,#092f62);
    border:2px solid #b97800;
    color:#f0b429;
    font-size:16px;
    font-weight:900;
}

.gaviWestFinalText > span{
    display:block;
    margin-bottom:5px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviWestFinalText h2{
    margin:0 0 8px;
    color:#061d3d;
    font-size:28px;
    line-height:1.3;
}

.gaviWestFinalText h2 strong{
    color:#b97800;
}

.gaviWestFinalText p{
    max-width:800px;
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.7;
}

.gaviWestFinalText p strong{
    color:#092f62;
}

.gaviWestFinalActions{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:9px;
    min-width:190px;
}

.gaviWestFinalCTA{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    padding:0 19px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviWestFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:47px;
    border:1px solid #cfd8e2;
    border-radius:5px;
    color:#092f62 !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

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

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

    .gaviGujaratCard{
        min-height:0;
    }

    .gaviWestFinalInner{
        grid-template-columns:75px 1fr;
    }

    .gaviWestFinalActions{
        grid-column:2;
        flex-direction:row;
        align-items:center;
        min-width:0;
    }

}


@media (max-width:900px){

    .gaviMumbaiGrid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .gaviMumbaiIntro{
        position:static;
    }

    .gaviMumbaiInsight{
        flex-direction:column;
        align-items:flex-start;
    }

}


@media (max-width:767px){

    .gaviWestHero{
        padding:65px 0;
    }

    .gaviWestHero h1{
        font-size:40px;
    }

    .gaviWestHero h1 strong{
        font-size:22px;
    }

    .gaviWestHeroLead{
        font-size:16px;
        line-height:1.7;
    }

    .gaviWestHeroTags{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .gaviWestHeroTags span{
        min-width:0;
    }

    .gaviWestHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviWestHeroCTA,
    .gaviWestHeroPhone{
        width:100%;
    }

    .gaviMumbai,
    .gaviPune,
    .gaviGujarat{
        padding:70px 0;
    }

    .gaviMumbaiIntro h2,
    .gaviPuneHeader h2,
    .gaviGujaratHeader h2{
        font-size:34px;
    }

    .gaviMumbaiBlock{
        padding:25px 21px 24px;
    }

    .gaviMumbaiBlockNo{
        position:static;
        display:block;
        margin-bottom:8px;
    }

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

    .gaviPuneCard{
        min-height:0;
    }

    .gaviPuneCTABox,
    .gaviGujaratCTA{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviPuneCTAActions,
    .gaviGujaratCTAActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviPuneCTA,
    .gaviPunePhone,
    .gaviGujaratPrimaryCTA,
    .gaviGujaratPhone{
        width:100%;
    }

    .gaviWestFinalInner{
        grid-template-columns:1fr;
        text-align:center;
        padding:28px 21px;
    }

    .gaviWestFinalMark{
        margin:0 auto;
    }

    .gaviWestFinalActions{
        grid-column:auto;
        width:100%;
    }

    .gaviWestFinalText h2{
        font-size:24px;
    }

}


@media (max-width:480px){

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

    .gaviWestHeroEyebrow{
        font-size:15px;
        letter-spacing:1.3px;
    }

    .gaviMumbaiBlock h3,
    .gaviPuneCard h3,
    .gaviGujaratCard h3{
        font-size:20px;
    }

}

/* =========================================================
   SOUTHERN INDIA
   GLOBAL NAMESPACE
   Navy + Gold Royal Design
========================================================= */

.sivHero,
.sivCitySection,
.sivFinalCta{
    font-family:inherit;
}

.sivHero *,
.sivCitySection *,
.sivFinalCta *{
    box-sizing:border-box;
}


/* =========================================================
   HERO
   Unique Namespace: sivHero
========================================================= */

.sivHero{
    position:relative;
    overflow:hidden;
    padding:82px 0 78px;
    background:
        radial-gradient(circle at 85% 15%,rgba(240,180,41,.16),transparent 27%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
}

.sivHero:after{
    content:"";
    position:absolute;
    right:-170px;
    bottom:-240px;
    width:500px;
    height:500px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
    box-shadow:0 0 0 30px rgba(185,120,0,.025);
}

.sivHeroInner{
    position:relative;
    z-index:2;
    max-width:1050px;
    margin:auto;
    text-align:center;
}

.sivHeroEyebrow{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.8px;
}

.sivHeroEyebrow span{
    width:40px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.sivHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(38px,4.7vw,64px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-1.5px;
}

.sivHero h1 strong{
    display:block;
    margin-top:9px;
    color:#f0b429;
    font-weight:750;
}

.sivHeroLead{
    max-width:900px;
    margin:25px auto 0;
    color:#dce5ef;
    font-size:18px;
    line-height:1.75;
}

.sivHeroLead strong{
    color:#fff;
}

.sivHeroCities{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-top:35px;
}

.sivHeroCities span{
    display:flex;
    flex-direction:column;
    gap:5px;
    padding:16px 13px;
    border:1px solid rgba(240,180,41,.24);
    border-radius:6px;
    background:rgba(255,255,255,.055);
    color:#bfcbd8;
    font-size:15px;
}

.sivHeroCities strong{
    color:#f0b429;
    font-size:17px;
}

.sivHeroActions{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    flex-wrap:wrap;
    margin-top:32px;
}

.sivPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.sivPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.35);
}

.sivPrimaryCta span{
    font-size:22px;
}

.sivPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:0 23px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    font-size:16px;
    font-weight:750;
    text-decoration:none !important;
    transition:all .3s ease;
}

.sivPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   CITY SECTIONS
   Unique Namespace: sivCitySection
========================================================= */

.sivCitySection{
    position:relative;
    padding:90px 0;
    overflow:hidden;
}

.sivCitySection:nth-of-type(odd){
    background:#f7f9fc;
}

.sivBengaluru{
    background:#f7f9fc;
}

.sivChennai{
    background:#fff;
}

.sivHyderabad{
    background:#f7f9fc;
}

.sivKochi{
    background:#fff;
}

.sivCityGrid{
    display:grid;
    grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);
    gap:65px;
    align-items:center;
}

.sivReverseGrid{
    grid-template-columns:minmax(330px,.7fr) minmax(0,1.3fr);
}

.sivReverseGrid .sivCityContent{
    order:2;
}

.sivReverseGrid .sivCityPanel{
    order:1;
}

.sivCityContent{
    position:relative;
}

.sivCityNumber{
    position:absolute;
    top:-28px;
    right:0;
    color:rgba(9,47,98,.055);
    font-size:100px;
    line-height:1;
    font-weight:900;
    pointer-events:none;
}

.sivCityEyebrow{
    position:relative;
    z-index:1;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.4px;
}

.sivCityContent h2{
    position:relative;
    z-index:1;
    margin:0 0 21px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,47px);
    line-height:1.15;
    letter-spacing:-1px;
    font-weight:800;
}

.sivCityContent h2 strong{
    color:#b97800;
}

.sivCityContent p{
    position:relative;
    z-index:1;
    margin:0 0 17px;
    color:#526276;
    font-size:16px;
    line-height:1.82;
}

.sivCityContent p strong{
    color:#092f62;
    font-weight:800;
}


/* =========================================================
   HIGHLIGHT BOX
========================================================= */

.sivHighlightBox{
    display:flex;
    gap:15px;
    margin-top:27px;
    padding:19px 20px;
    border-left:4px solid #b97800;
    border-radius:5px;
    background:linear-gradient(100deg,#eef3f8,#fff);
    box-shadow:0 9px 25px rgba(6,29,61,.055);
}

.sivHighlightIcon{
    flex:0 0 46px;
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.sivHighlightBox strong{
    display:block;
    margin-bottom:5px;
    color:#061d3d;
    font-size:17px;
}

.sivHighlightBox p{
    margin:0;
    color:#59697b;
    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   TAGS
========================================================= */

.sivTags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:21px;
}

.sivTags span{
    padding:7px 10px;
    border:1px solid #d9e1eb;
    border-radius:4px;
    background:#fff;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}


/* =========================================================
   CITY SIDE PANEL
========================================================= */

.sivCityPanel{
    position:relative;
    padding:28px 25px 25px;
    border:1px solid #d9e1eb;
    border-radius:9px;
    background:
        linear-gradient(145deg,#061d3d,#092f62);
    box-shadow:0 22px 50px rgba(6,29,61,.15);
    overflow:hidden;
}

.sivCityPanel:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,#b97800,#f0b429,#b97800);
}

.sivPanelTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-bottom:20px;
    border-bottom:1px solid rgba(255,255,255,.13);
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.sivPanelTop strong{
    color:rgba(255,255,255,.2);
    font-size:32px;
}

.sivMarketItem{
    display:flex;
    align-items:flex-start;
    gap:13px;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.11);
}

.sivMarketItem > span{
    flex:0 0 30px;
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.35);
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:800;
}

.sivMarketItem strong{
    display:block;
    margin-bottom:3px;
    color:#fff;
    font-size:16px;
}

.sivMarketItem small{
    display:block;
    color:#b9c7d6;
    font-size:15px;
    line-height:1.5;
}

.sivPanelCta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:22px;
    padding:14px 16px;
    border:1px solid rgba(240,180,41,.45);
    border-radius:5px;
    background:rgba(185,120,0,.1);
    color:#f0b429 !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
    transition:all .3s ease;
}

.sivPanelCta:hover{
    background:#b97800;
    color:#061d3d !important;
}

.sivPanelCta span{
    font-size:20px;
}


/* =========================================================
   FINAL CTA
   Unique Namespace: sivFinalCta
========================================================= */

.sivFinalCta{
    padding:75px 0;
    background:
        radial-gradient(circle at 15% 50%,rgba(240,180,41,.12),transparent 28%),
        linear-gradient(120deg,#04152d,#092f62);
}

.sivFinalCtaInner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    padding:38px 42px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:10px;
    background:rgba(255,255,255,.045);
}

.sivFinalCtaContent > span{
    display:block;
    margin-bottom:8px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.sivFinalCtaContent h2{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(27px,3vw,40px);
    line-height:1.2;
    font-weight:800;
}

.sivFinalCtaContent h2 strong{
    color:#f0b429;
}

.sivFinalCtaContent p{
    max-width:730px;
    margin:0;
    color:#cbd6e2;
    font-size:16px;
    line-height:1.7;
}

.sivFinalCtaContent p strong{
    color:#fff;
}

.sivFinalCtaActions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
}

.sivFinalPrimary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:55px;
    padding:0 25px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.22);
    transition:all .3s ease;
}

.sivFinalPrimary:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 32px rgba(185,120,0,.35);
}

.sivFinalPrimary span{
    font-size:21px;
}

.sivFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:55px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
    transition:all .3s ease;
}

.sivFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .sivCityGrid,
    .sivReverseGrid{
        grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
        gap:40px;
    }

    .sivHeroCities{
        gap:9px;
    }

}


@media (max-width:991px){

    .sivHero{
        padding:65px 0;
    }

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

    .sivCitySection{
        padding:70px 0;
    }

    .sivCityGrid,
    .sivReverseGrid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .sivReverseGrid .sivCityContent,
    .sivReverseGrid .sivCityPanel{
        order:initial;
    }

    .sivCityNumber{
        right:10px;
    }

    .sivFinalCtaInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .sivFinalCtaActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .sivHero{
        padding:55px 0;
    }

    .sivHero h1{
        font-size:38px;
        letter-spacing:-1px;
    }

    .sivHero h1 strong{
        font-size:25px;
    }

    .sivHeroLead{
        font-size:16px;
        line-height:1.7;
    }

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

    .sivHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .sivPrimaryCta,
    .sivPhoneCta{
        width:100%;
    }

    .sivCitySection{
        padding:58px 0;
    }

    .sivCityContent h2{
        font-size:32px;
    }

    .sivCityContent p{
        font-size:15px;
        line-height:1.75;
    }

    .sivCityNumber{
        font-size:72px;
        top:-15px;
    }

    .sivCityPanel{
        padding:23px 19px;
    }

    .sivHighlightBox{
        padding:16px;
    }

    .sivFinalCta{
        padding:55px 0;
    }

    .sivFinalCtaInner{
        padding:27px 20px;
    }

    .sivFinalCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .sivFinalPrimary,
    .sivFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

    .sivHero h1{
        font-size:34px;
    }

    .sivHero h1 strong{
        font-size:23px;
    }

    .sivHeroEyebrow{
        font-size:15px;
        line-height:1.4;
    }

    .sivCityNumber{
        display:none;
    }

    .sivTags span{
        font-size:15px;
    }

}
/* =========================================================
   EASTERN INDIA — HERO
   Namespace: gaviEasternHero
   Royal Navy + Gold
========================================================= */

.gaviEasternHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 82% 20%,rgba(185,120,0,.16),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 55%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviEasternHero:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:4px;
    background:linear-gradient(
        90deg,
        #092f62,
        #b97800,
        #f0b429,
        #b97800,
        #092f62
    );
}

.gaviEasternHeroPattern{
    position:absolute;
    width:620px;
    height:620px;
    right:-300px;
    top:-300px;
    border:1px solid rgba(240,180,41,.14);
    border-radius:50%;
    box-shadow:
        0 0 0 35px rgba(185,120,0,.025),
        0 0 0 70px rgba(185,120,0,.018);
    pointer-events:none;
}

.gaviEasternHeroInner{
    display:grid;
    grid-template-columns:minmax(0,1.22fr) minmax(350px,.78fr);
    gap:65px;
    align-items:center;
}

.gaviEasternHeroContent{
    position:relative;
    z-index:2;
}

.gaviEasternHeroEyebrow{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviEasternHeroEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviEasternHero h1{
    margin:0 0 24px;
    color:#fff;
    font-size:clamp(40px,5vw,67px);
    line-height:1.05;
    letter-spacing:-1.7px;
    font-weight:850;
}

.gaviEasternHero h1 strong{
    display:block;
    margin-top:9px;
    color:#f0b429;
    font-size:.57em;
    line-height:1.25;
    letter-spacing:-.2px;
}

.gaviEasternHeroLead{
    max-width:820px;
    margin:0;
    color:#dce5ef;
    font-size:17px;
    line-height:1.78;
}

.gaviEasternHeroLead strong{
    color:#fff;
    font-weight:800;
}

.gaviEasternHeroHighlights{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    max-width:720px;
    margin-top:29px;
}

.gaviEasternHeroHighlight{
    padding:15px 13px;
    border:1px solid rgba(240,180,41,.24);
    border-radius:6px;
    background:rgba(255,255,255,.045);
}

.gaviEasternHeroHighlight span{
    display:block;
    margin-bottom:6px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:1px;
}

.gaviEasternHeroHighlight strong{
    display:block;
    color:#fff;
    font-size:16px;
    line-height:1.35;
}

.gaviEasternHeroHighlight small{
    display:block;
    margin-top:3px;
    color:#aebdcd;
    font-size:15px;
    line-height:1.4;
}

.gaviEasternHeroActions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:14px;
    margin-top:31px;
}

.gaviEasternPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:57px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 13px 30px rgba(185,120,0,.22);
    transition:all .3s ease;
}

.gaviEasternPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 38px rgba(185,120,0,.34);
}

.gaviEasternPrimaryCta span{
    font-size:22px;
}

.gaviEasternPhoneCta{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:57px;
    padding:7px 18px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    background:rgba(255,255,255,.05);
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviEasternPhoneCta:hover{
    border-color:#b97800;
    background:rgba(185,120,0,.1);
}

.gaviEasternPhoneIcon{
    color:#f0b429;
    font-size:21px;
}

.gaviEasternPhoneCta small{
    display:block;
    margin-bottom:2px;
    color:#aebdcd;
    font-size:15px;
}

.gaviEasternPhoneCta strong{
    display:block;
    color:#fff;
    font-size:17px;
}


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

.gaviEasternHeroPanel{
    position:relative;
    padding:30px 26px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:10px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.085),
            rgba(255,255,255,.025)
        );
    box-shadow:
        0 28px 65px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.1);
    backdrop-filter:blur(10px);
}

.gaviEasternHeroPanelTop span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.4px;
}

.gaviEasternHeroPanelTop strong{
    display:block;
    color:#fff;
    font-size:29px;
    line-height:1.2;
}

.gaviEasternHeroPanelLine{
    width:100%;
    height:1px;
    margin:24px 0 5px;
    background:linear-gradient(
        90deg,
        #b97800,
        rgba(185,120,0,.05)
    );
}

.gaviEasternHeroPanelItem{
    display:flex;
    gap:15px;
    padding:19px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.gaviEasternHeroPanelItem > span{
    flex:0 0 32px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviEasternHeroPanelItem strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:17px;
}

.gaviEasternHeroPanelItem small{
    display:block;
    color:#aebdcd;
    font-size:15px;
    line-height:1.5;
}

.gaviEasternHeroPanelFooter{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding-top:22px;
}

.gaviEasternHeroPanelFooter span{
    color:#9eafc1;
    font-size:15px;
    font-weight:750;
    letter-spacing:1px;
}

.gaviEasternHeroPanelFooter strong{
    color:#f0b429;
    font-size:17px;
}


/* =========================================================
   KOLKATA SECTION
   Namespace: gaviKolkata
========================================================= */

.gaviKolkata{
    position:relative;
    padding:92px 0 86px;
    background:#f7f9fc;
    overflow:hidden;
}

.gaviKolkata:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(
        90deg,
        #061d3d,
        #092f62,
        #b97800,
        #f0b429,
        #b97800,
        #092f62,
        #061d3d
    );
}

.gaviKolkataIntro{
    max-width:850px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviKolkataEyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviKolkataEyebrow span{
    width:32px;
    height:2px;
    background:#b97800;
}

.gaviKolkataIntro h2{
    margin:0 0 17px;
    color:#061d3d;
    font-size:clamp(32px,4vw,50px);
    line-height:1.15;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviKolkataIntro h2 strong{
    color:#b97800;
}

.gaviKolkataIntro p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.78;
}

.gaviKolkataIntro p strong{
    color:#092f62;
}


/* =========================================================
   KOLKATA CARDS
========================================================= */

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

.gaviKolkataCard{
    position:relative;
    min-height:330px;
    padding:27px 23px 24px;
    border:1px solid #dce3ec;
    border-radius:9px;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviKolkataCardLarge{
    min-height:360px;
}

.gaviKolkataCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
    transform:scaleX(.25);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviKolkataCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.42);
    box-shadow:0 20px 42px rgba(6,29,61,.11);
}

.gaviKolkataCard:hover:before{
    transform:scaleX(1);
}

.gaviKolkataCardNumber{
    position:absolute;
    top:17px;
    right:18px;
    color:#e0e6ed;
    font-size:15px;
    font-weight:900;
}

.gaviKolkataCardIcon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:54px;
    min-height:42px;
    margin-bottom:20px;
    padding:7px 10px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:.7px;
}

.gaviKolkataCard h3{
    margin:0 0 14px;
    color:#061d3d;
    font-size:21px;
    line-height:1.35;
    font-weight:750;
}

.gaviKolkataCard h3 strong{
    color:#b97800;
}

.gaviKolkataCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.75;
}

.gaviKolkataCard p strong{
    color:#092f62;
    font-weight:800;
}

.gaviKolkataTags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:22px;
}

.gaviKolkataTags span{
    padding:6px 9px;
    border:1px solid #dce3ec;
    border-radius:3px;
    background:#f8fafc;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}


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

.gaviKolkataCta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    margin-top:52px;
    padding:31px 35px;
    border:1px solid rgba(185,120,0,.42);
    border-radius:9px;
    background:
        linear-gradient(
            110deg,
            #04152d 0%,
            #092f62 70%,
            #061d3d 100%
        );
    box-shadow:0 18px 42px rgba(6,29,61,.14);
}

.gaviKolkataCtaContent > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.4px;
}

.gaviKolkataCtaContent h3{
    margin:0 0 7px;
    color:#fff;
    font-size:25px;
    line-height:1.35;
    font-weight:750;
}

.gaviKolkataCtaContent h3 strong{
    color:#f0b429;
}

.gaviKolkataCtaContent p{
    margin:0;
    color:#c4d0dd;
    font-size:15px;
    line-height:1.6;
}

.gaviKolkataCtaActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gaviKolkataPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:53px;
    padding:0 23px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviKolkataPrimaryCta:hover{
    transform:translateY(-2px);
    box-shadow:0 11px 27px rgba(185,120,0,.3);
}

.gaviKolkataPrimaryCta span{
    font-size:20px;
}

.gaviKolkataPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:53px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviKolkataPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .gaviEasternHeroInner{
        grid-template-columns:minmax(0,1fr) minmax(310px,.72fr);
        gap:38px;
    }

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

}


@media (max-width:991px){

    .gaviEasternHero{
        padding:70px 0;
    }

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

    .gaviEasternHeroContent{
        text-align:center;
    }

    .gaviEasternHeroEyebrow,
    .gaviEasternHeroActions{
        justify-content:center;
    }

    .gaviEasternHeroLead{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviEasternHeroHighlights{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviEasternHeroPanel{
        max-width:650px;
        width:100%;
        margin:5px auto 0;
    }

    .gaviKolkata{
        padding:72px 0;
    }

    .gaviKolkataCta{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviKolkataCtaActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviEasternHero{
        padding:56px 0;
    }

    .gaviEasternHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviEasternHero h1 strong{
        font-size:21px;
    }

    .gaviEasternHeroLead{
        font-size:15px;
        line-height:1.7;
    }

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

    .gaviEasternHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviEasternPrimaryCta,
    .gaviEasternPhoneCta{
        width:100%;
    }

    .gaviEasternHeroPanel{
        padding:24px 20px;
    }

    .gaviEasternHeroPanelTop strong{
        font-size:25px;
    }

    .gaviKolkata{
        padding:62px 0;
    }

    .gaviKolkataIntro h2{
        font-size:32px;
    }

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

    .gaviKolkataCard,
    .gaviKolkataCardLarge{
        min-height:auto;
    }

    .gaviKolkataCta{
        padding:25px 21px;
    }

    .gaviKolkataCtaContent h3{
        font-size:21px;
    }

    .gaviKolkataCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviKolkataPrimaryCta,
    .gaviKolkataPhone{
        width:100%;
    }

}
/* =========================================================
   NORTH INDIA BEYOND NCR
   HERO
   Namespace: gaviNorthHero
========================================================= */

.gaviNorthHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 78% 35%,rgba(185,120,0,.14),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 58%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviNorthHeroPattern{
    position:absolute;
    inset:0;
    opacity:.13;
    background-image:
        linear-gradient(rgba(240,180,41,.12) 1px,transparent 1px),
        linear-gradient(90deg,rgba(240,180,41,.12) 1px,transparent 1px);
    background-size:65px 65px;
    mask-image:linear-gradient(to right,transparent,#000 45%,#000);
}

.gaviNorthHeroInner{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
    gap:60px;
    align-items:center;
}

.gaviNorthHeroEyebrow,
.gaviNorthSectionEyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviNorthHeroEyebrow span,
.gaviNorthSectionEyebrow span{
    display:inline-block;
    width:38px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviNorthHero h1{
    margin:19px 0 23px;
    max-width:850px;
    color:#fff;
    font-size:clamp(40px,4.6vw,66px);
    line-height:1.04;
    letter-spacing:-1.8px;
    font-weight:850;
}

.gaviNorthHero h1 strong{
    display:block;
    margin-top:9px;
    color:#f0b429;
    font-size:.53em;
    line-height:1.25;
    letter-spacing:-.3px;
}

.gaviNorthHeroLead{
    max-width:820px;
    margin:0;
    color:#dbe4ee;
    font-size:17px;
    line-height:1.8;
}

.gaviNorthHeroLead strong{
    color:#fff;
}

.gaviNorthHeroStats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:30px;
}

.gaviNorthHeroStat{
    min-width:145px;
    padding:13px 17px;
    border:1px solid rgba(240,180,41,.25);
    border-radius:5px;
    background:rgba(255,255,255,.05);
}

.gaviNorthHeroStat strong{
    display:block;
    color:#f0b429;
    font-size:23px;
    line-height:1.1;
}

.gaviNorthHeroStat span{
    display:block;
    margin-top:5px;
    color:#bfcbd8;
    font-size:15px;
}

.gaviNorthHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:30px;
}

.gaviNorthPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:55px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.2);
    transition:all .3s ease;
}

.gaviNorthPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.32);
}

.gaviNorthPrimaryCta span{
    font-size:21px;
}

.gaviNorthPhoneCta{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-height:55px;
    padding:0 19px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNorthPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   HERO MAP VISUAL
========================================================= */

.gaviNorthHeroMap{
    display:flex;
    justify-content:center;
    align-items:center;
}

.gaviNorthHeroMapOuter{
    position:relative;
    width:430px;
    height:430px;
    border:1px solid rgba(240,180,41,.25);
    border-radius:50%;
    background:
        radial-gradient(circle,#092f62 0%,#061d3d 60%,#04152d 100%);
    box-shadow:
        0 0 0 22px rgba(185,120,0,.025),
        0 0 80px rgba(185,120,0,.12);
}

.gaviNorthHeroMapOuter:before,
.gaviNorthHeroMapOuter:after{
    content:"";
    position:absolute;
    inset:48px;
    border:1px dashed rgba(240,180,41,.17);
    border-radius:50%;
}

.gaviNorthHeroMapOuter:after{
    inset:102px;
    border-color:rgba(255,255,255,.08);
}

.gaviNorthMapRing{
    position:absolute;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gaviNorthRingOne{
    width:180px;
    height:180px;
    left:125px;
    top:125px;
}

.gaviNorthRingTwo{
    width:100px;
    height:100px;
    left:165px;
    top:165px;
}

.gaviNorthMapCenter{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:105px;
    height:105px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid #d99a16;
    border-radius:50%;
    background:linear-gradient(145deg,#b97800,#f0b429);
    color:#061d3d;
    box-shadow:0 0 40px rgba(240,180,41,.2);
}

.gaviNorthMapCenter span{
    font-size:15px;
    font-weight:700;
    letter-spacing:2px;
}

.gaviNorthMapCenter strong{
    font-size:20px;
    letter-spacing:2px;
}

.gaviNorthMapPoint{
    position:absolute;
    z-index:3;
    display:flex;
    align-items:center;
    gap:7px;
    color:#fff;
    font-size:15px;
    font-weight:750;
}

.gaviNorthMapPoint i{
    display:block;
    width:10px;
    height:10px;
    border:2px solid #061d3d;
    border-radius:50%;
    background:#f0b429;
    box-shadow:0 0 0 5px rgba(240,180,41,.13);
}

.gaviNorthPointChd{
    left:56px;
    top:82px;
}

.gaviNorthPointJai{
    right:53px;
    top:155px;
}

.gaviNorthPointLuc{
    left:65px;
    bottom:104px;
}

.gaviNorthPointKan{
    right:47px;
    bottom:83px;
}


/* =========================================================
   SECTION 02
========================================================= */

.gaviNorthWest{
    padding:88px 0;
    background:#f7f9fc;
}

.gaviNorthSectionHeading{
    max-width:800px;
    margin:0 auto 46px;
    text-align:center;
}

.gaviNorthSectionHeading h2{
    margin:14px 0 14px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.14;
    font-weight:800;
    letter-spacing:-1px;
}

.gaviNorthSectionHeading h2 strong{
    color:#b97800;
}

.gaviNorthSectionHeading p{
    margin:0;
    color:#596a7d;
    font-size:16px;
    line-height:1.75;
}

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

.gaviNorthFeatureCard{
    position:relative;
    padding:31px;
    border:1px solid #dce4ed;
    border-radius:9px;
    background:#fff;
    box-shadow:0 12px 30px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviNorthFeatureCard:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    background:linear-gradient(#092f62,#b97800,#f0b429);
}

.gaviNorthFeatureCard:hover{
    transform:translateY(-5px);
    border-color:rgba(185,120,0,.38);
    box-shadow:0 20px 42px rgba(6,29,61,.1);
}

.gaviNorthCardTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:19px;
}

.gaviNorthCardNumber{
    color:#b97800;
    font-size:25px;
    font-weight:900;
}

.gaviNorthCardLabel{
    color:#78889a;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.2px;
}

.gaviNorthFeatureCard h3{
    margin:0 0 15px;
    color:#061d3d;
    font-size:27px;
    line-height:1.25;
}

.gaviNorthFeatureCard h3 strong{
    color:#b97800;
}

.gaviNorthFeatureCard > p{
    margin:0;
    color:#536477;
    font-size:15px;
    line-height:1.78;
}

.gaviNorthFeatureCard > p strong{
    color:#092f62;
}

.gaviNorthMiniGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-top:24px;
}

.gaviNorthMiniGrid div{
    min-height:78px;
    padding:11px;
    border:1px solid #e0e6ed;
    border-radius:5px;
    background:#f8fafc;
}

.gaviNorthMiniGrid strong{
    display:block;
    color:#092f62;
    font-size:15px;
}

.gaviNorthMiniGrid span{
    display:block;
    margin-top:4px;
    color:#718093;
    font-size:15px;
    line-height:1.4;
}

.gaviNorthBenchBox{
    display:flex;
    gap:13px;
    margin-top:21px;
    padding:16px;
    border:1px solid rgba(185,120,0,.22);
    border-radius:6px;
    background:linear-gradient(110deg,#fdfaf3,#f8fafc);
}

.gaviNorthBenchIcon{
    flex:0 0 52px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNorthBenchBox strong{
    display:block;
    color:#061d3d;
    font-size:15px;
}

.gaviNorthBenchBox p{
    margin:4px 0 0;
    color:#627286;
    font-size:15px;
    line-height:1.55;
}

.gaviNorthBenchBox p strong{
    display:inline;
    color:#092f62;
}

.gaviNorthReraTag{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:12px;
    padding:10px 13px;
    border-radius:4px;
    background:#061d3d;
}

.gaviNorthReraTag strong{
    color:#f0b429;
    font-size:15px;
}

.gaviNorthReraTag span{
    color:#d4dde7;
    font-size:15px;
}


/* =========================================================
   SECTION 03
========================================================= */

.gaviNorthEast{
    padding:92px 0 88px;
    background:
        linear-gradient(135deg,#04152d 0%,#061d3d 55%,#092f62 100%);
    color:#fff;
}

.gaviNorthEastGrid{
    display:grid;
    grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);
    gap:55px;
    align-items:start;
}

.gaviNorthEastIntro{
    position:sticky;
    top:30px;
}

.gaviNorthEastIntro h2{
    margin:15px 0 18px;
    color:#fff;
    font-size:clamp(31px,3.3vw,46px);
    line-height:1.15;
    letter-spacing:-1px;
}

.gaviNorthEastIntro h2 strong{
    color:#f0b429;
    display:block;
}

.gaviNorthEastIntro > p{
    margin:0;
    color:#cbd6e2;
    font-size:16px;
    line-height:1.8;
}

.gaviNorthEastIntro > p strong{
    color:#fff;
}

.gaviNorthDarkCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-top:28px;
    min-height:54px;
    padding:0 25px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNorthDarkCta:hover{
    transform:translateY(-3px);
    box-shadow:0 13px 30px rgba(185,120,0,.28);
}

.gaviNorthDarkCta span{
    font-size:20px;
}

.gaviNorthCityStack{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.gaviNorthCityCard{
    display:grid;
    grid-template-columns:65px 1fr;
    gap:19px;
    padding:25px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:8px;
    background:rgba(255,255,255,.055);
    transition:all .3s ease;
}

.gaviNorthCityCard:hover{
    border-color:rgba(240,180,41,.42);
    background:rgba(255,255,255,.075);
    transform:translateX(4px);
}

.gaviNorthCityNumber{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    color:#f0b429;
    font-size:27px;
    font-weight:900;
}

.gaviNorthCityContent > span,
.gaviNorthJurisdictionCard > div:last-child > span{
    display:block;
    margin-bottom:6px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.1px;
}

.gaviNorthCityContent h3{
    margin:0 0 9px;
    color:#fff;
    font-size:27px;
    line-height:1.2;
}

.gaviNorthCityContent p{
    margin:0;
    color:#c5d0dc;
    font-size:15px;
    line-height:1.72;
}

.gaviNorthCityContent p strong{
    color:#fff;
}

.gaviNorthCityTags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:15px;
}

.gaviNorthCityTags span{
    padding:6px 9px;
    border:1px solid rgba(240,180,41,.2);
    border-radius:3px;
    color:#dce5ee;
    font-size:15px;
}

.gaviNorthJurisdictionCard{
    display:grid;
    grid-template-columns:65px 1fr;
    gap:19px;
    padding:25px;
    border:1px solid rgba(240,180,41,.34);
    border-radius:8px;
    background:linear-gradient(110deg,rgba(185,120,0,.14),rgba(255,255,255,.04));
}

.gaviNorthJurisdictionIcon{
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d99a16;
    border-radius:50%;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d;
    font-size:15px;
    font-weight:900;
}

.gaviNorthJurisdictionCard h3{
    margin:0 0 8px;
    color:#fff;
    font-size:22px;
}

.gaviNorthJurisdictionCard p{
    margin:0;
    color:#c5d0dc;
    font-size:15px;
    line-height:1.7;
}

.gaviNorthJurisdictionCard p strong{
    color:#fff;
}


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

.gaviNorthFinalCta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    margin-top:58px;
    padding:31px 34px;
    border:1px solid rgba(240,180,41,.35);
    border-radius:8px;
    background:rgba(255,255,255,.055);
}

.gaviNorthFinalCta > div:first-child > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviNorthFinalCta h3{
    margin:0 0 7px;
    color:#fff;
    font-size:25px;
    line-height:1.3;
}

.gaviNorthFinalCta h3 strong{
    color:#f0b429;
}

.gaviNorthFinalCta p{
    margin:0;
    color:#bfcbd7;
    font-size:15px;
    line-height:1.6;
}

.gaviNorthFinalActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:11px;
}

.gaviNorthFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:52px;
    padding:0 22px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNorthFinalButton:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(185,120,0,.3);
}

.gaviNorthFinalButton span{
    font-size:20px;
}

.gaviNorthFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}

.gaviNorthFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

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

    .gaviNorthHeroContent{
        text-align:center;
    }

    .gaviNorthHeroEyebrow{
        justify-content:center;
    }

    .gaviNorthHeroLead{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviNorthHeroStats,
    .gaviNorthHeroActions{
        justify-content:center;
    }

    .gaviNorthHeroMap{
        margin-top:15px;
    }

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

    .gaviNorthEastIntro{
        position:static;
    }

}


@media (max-width:767px){

    .gaviNorthHero{
        padding:60px 0;
    }

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

    .gaviNorthHero h1 strong{
        font-size:21px;
    }

    .gaviNorthHeroLead{
        font-size:15px;
    }

    .gaviNorthHeroMapOuter{
        width:340px;
        height:340px;
    }

    .gaviNorthMapRing{
        display:none;
    }

    .gaviNorthMapCenter{
        width:90px;
        height:90px;
    }

    .gaviNorthMapCenter strong{
        font-size:17px;
    }

    .gaviNorthPointChd{
        left:30px;
        top:62px;
    }

    .gaviNorthPointJai{
        right:22px;
        top:125px;
    }

    .gaviNorthPointLuc{
        left:33px;
        bottom:80px;
    }

    .gaviNorthPointKan{
        right:20px;
        bottom:60px;
    }

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

    .gaviNorthFeatureCard{
        padding:25px 22px;
    }

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

    .gaviNorthCityCard,
    .gaviNorthJurisdictionCard{
        grid-template-columns:1fr;
    }

    .gaviNorthCityNumber{
        justify-content:flex-start;
    }

    .gaviNorthFinalCta{
        flex-direction:column;
        align-items:flex-start;
        padding:25px 21px;
    }

    .gaviNorthFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNorthFinalButton,
    .gaviNorthFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

    .gaviNorthHeroStats{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .gaviNorthHeroStat{
        min-width:0;
    }

    .gaviNorthHeroStat:last-child{
        grid-column:1 / -1;
    }

    .gaviNorthHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNorthPrimaryCta,
    .gaviNorthPhoneCta{
        width:100%;
    }

    .gaviNorthHeroMapOuter{
        width:290px;
        height:290px;
    }

    .gaviNorthMapPoint{
        font-size:15px;
    }

    .gaviNorthPointChd{
        left:15px;
    }

    .gaviNorthPointJai{
        right:10px;
    }

    .gaviNorthPointLuc{
        left:17px;
    }

    .gaviNorthPointKan{
        right:8px;
    }

}
/* =========================================================
   INDIA'S STATE RERA REGIMES
   HERO
   Namespace: gaviReraHero
========================================================= */

.gaviReraHero{
    position:relative;
    overflow:hidden;
    padding:86px 0 78px;
    background:
        radial-gradient(circle at 84% 15%,rgba(240,180,41,.15),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 55%,#092f62 100%);
    color:#fff;
}

.gaviReraHero:after{
    content:"";
    position:absolute;
    right:-130px;
    bottom:-220px;
    width:480px;
    height:480px;
    border:1px solid rgba(240,180,41,.12);
    border-radius:50%;
    box-shadow:0 0 0 35px rgba(185,120,0,.025);
}

.gaviReraHeroInner{
    position:relative;
    z-index:2;
    max-width:1050px;
    margin:0 auto;
    text-align:center;
}

.gaviReraHeroEyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:19px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviReraHeroEyebrow span{
    width:38px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviReraHero h1{
    margin:0 auto 23px;
    max-width:1000px;
    color:#fff;
    font-size:clamp(38px,4.6vw,64px);
    line-height:1.08;
    letter-spacing:-1.5px;
    font-weight:800;
}

.gaviReraHero h1 strong{
    display:block;
    color:#f0b429;
}

.gaviReraHeroLead{
    max-width:900px;
    margin:0 auto;
    color:#dce5ef;
    font-size:17px;
    line-height:1.8;
}

.gaviReraHeroLead strong{
    color:#fff;
}

.gaviReraHeroHighlights{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:31px;
}

.gaviReraHeroHighlights div{
    min-width:205px;
    padding:15px 19px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:6px;
    background:rgba(255,255,255,.055);
}

.gaviReraHeroHighlights strong{
    display:block;
    margin-bottom:4px;
    color:#f0b429;
    font-size:17px;
}

.gaviReraHeroHighlights span{
    display:block;
    color:#c8d3df;
    font-size:15px;
}

.gaviReraHeroActions{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:31px;
}

.gaviReraPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.24);
    transition:all .3s ease;
}

.gaviReraPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(185,120,0,.32);
}

.gaviReraPrimaryCta span{
    font-size:21px;
}

.gaviReraPhoneCta{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:0 22px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    font-size:16px;
    text-decoration:none !important;
}

.gaviReraPhoneCta span{
    color:#f0b429;
    font-size:20px;
}


/* =========================================================
   SHARED SECTION HEADING
========================================================= */

.gaviReraSectionHeading{
    max-width:850px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviReraKicker{
    margin-bottom:12px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviReraSectionHeading h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.16;
    letter-spacing:-1px;
    font-weight:800;
}

.gaviReraSectionHeading h2 strong{
    color:#b97800;
}

.gaviReraSectionHeading p{
    margin:0;
    color:#536276;
    font-size:16px;
    line-height:1.78;
}

.gaviReraSectionHeading p strong{
    color:#092f62;
}


/* =========================================================
   SECTION 1
   ROLE
========================================================= */

.gaviReraRole{
    position:relative;
    padding:90px 0 85px;
    background:#f8fafc;
}

.gaviReraRole:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

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

.gaviReraRoleCard{
    position:relative;
    padding:29px 23px 27px;
    min-height:350px;
    border:1px solid #dce4ed;
    border-radius:8px;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviReraRoleCard:after{
    content:"";
    position:absolute;
    width:100px;
    height:100px;
    right:-50px;
    bottom:-50px;
    border:1px solid rgba(185,120,0,.13);
    border-radius:50%;
}

.gaviReraRoleCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 20px 40px rgba(6,29,61,.10);
}

.gaviReraRoleNumber{
    position:absolute;
    top:18px;
    right:19px;
    color:#dce3eb;
    font-size:15px;
    font-weight:900;
}

.gaviReraRoleIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:60px;
    height:44px;
    margin-bottom:22px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviReraRoleCard h3{
    margin:0 0 14px;
    color:#061d3d;
    font-size:21px;
    line-height:1.3;
    font-weight:750;
}

.gaviReraRoleCard h3 strong{
    color:#b97800;
}

.gaviReraRoleCard p{
    margin:0;
    color:#566578;
    font-size:15px;
    line-height:1.75;
}

.gaviReraRoleCard p strong{
    color:#092f62;
}

.gaviReraRoleNote{
    display:flex;
    align-items:flex-start;
    gap:17px;
    margin-top:28px;
    padding:18px 21px;
    border-left:4px solid #b97800;
    background:#eef3f8;
}

.gaviReraRoleNote span{
    flex:0 0 auto;
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:1px;
}

.gaviReraRoleNote p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.65;
}

.gaviReraRoleNote p strong{
    color:#092f62;
}


/* =========================================================
   SECTION 2
   STATE COMPARISON
========================================================= */

.gaviReraStates{
    position:relative;
    padding:90px 0;
    background:
        radial-gradient(circle at 8% 20%,rgba(185,120,0,.12),transparent 24%),
        linear-gradient(135deg,#04152d,#061d3d 55%,#092f62);
}

.gaviReraSectionHeadingLight .gaviReraKicker{
    color:#f0b429;
}

.gaviReraSectionHeadingLight h2{
    color:#fff;
}

.gaviReraSectionHeadingLight h2 strong{
    color:#f0b429;
}

.gaviReraSectionHeadingLight p{
    color:#bdcad8;
}

.gaviReraSectionHeadingLight p strong{
    color:#fff;
}

.gaviReraStateGrid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
}

.gaviReraStateCard{
    position:relative;
        height: 702px;
    padding:25px 20px 22px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:8px;
    background:rgba(255,255,255,.055);
    box-shadow:0 15px 35px rgba(0,0,0,.12);
    transition:all .3s ease;
}

.gaviReraStateCard:hover{
    transform:translateY(-7px);
    border-color:rgba(240,180,41,.45);
    background:rgba(255,255,255,.075);
}

.gaviReraStateTop{
    display:flex;
    align-items:center;
    gap:12px;
}

.gaviReraStateCode{
    display:flex;
    align-items:center;
    justify-content:center;
    width:46px;
    height:46px;
    flex:0 0 46px;
    border:1px solid #b97800;
    border-radius:5px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviReraStateRegion{
    display:block;
    margin-bottom:3px;
    color:#b8c6d5;
    font-size:15px;
    font-weight:700;
    letter-spacing:.8px;
}

.gaviReraStateTop h3{
    margin:0;
    color:#fff;
    font-size:20px;
    line-height:1.2;
    font-weight:800;
}

.gaviReraStateLine{
    width:100%;
    height:1px;
    margin:21px 0 19px;
    background:linear-gradient(90deg,#b97800,transparent);
}

.gaviReraStateCard p{
    margin:0;
    color:#c2cfdd;
    font-size:15px;
    line-height:1.72;
}

.gaviReraStateCard p strong{
    color:#fff;
}

.gaviReraStateFocus{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:21px;
}

.gaviReraStateFocus span{
    padding:6px 7px;
    border:1px solid rgba(240,180,41,.24);
    border-radius:3px;
    color:#e2eaf2;
    background:rgba(185,120,0,.08);
    font-size:15px;
}

.gaviReraStateLink{
    position:absolute;
    left:20px;
    right:20px;
    bottom:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:13px;
    border-top:1px solid rgba(255,255,255,.12);
    color:#f0b429 !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
}

.gaviReraStateLink span{
    font-size:20px;
}


/* =========================================================
   SECTION 3
   MATRIX
========================================================= */

.gaviReraMatrix{
    padding:90px 0;
    background:#f6f8fb;
}

.gaviReraMatrixBox{
    padding:43px;
    border:1px solid #dce4ed;
    border-radius:10px;
    background:#fff;
    box-shadow:0 18px 45px rgba(6,29,61,.07);
}

.gaviReraMatrixHeader{
    max-width:800px;
    margin-bottom:35px;
}

.gaviReraMatrixHeader h2{
    margin:0 0 14px;
    color:#061d3d;
    font-size:clamp(30px,3.2vw,43px);
    line-height:1.15;
    font-weight:800;
}

.gaviReraMatrixHeader h2 strong{
    color:#b97800;
}

.gaviReraMatrixHeader p{
    margin:0;
    color:#566578;
    font-size:16px;
    line-height:1.75;
}

.gaviReraMatrixHeader p strong{
    color:#092f62;
}

.gaviReraMatrixRows{
    border-top:1px solid #dfe6ee;
}

.gaviReraMatrixRow{
    display:grid;
    grid-template-columns:260px 1fr;
    align-items:center;
    min-height:78px;
    border-bottom:1px solid #e4e9ef;
}

.gaviReraMatrixLabel{
    padding:15px 20px 15px 0;
}

.gaviReraMatrixLabel strong{
    display:block;
    color:#061d3d;
    font-size:16px;
}

.gaviReraMatrixLabel span{
    display:block;
    margin-top:3px;
    color:#b97800;
    font-size:15px;
}

.gaviReraMatrixValue{
    padding:15px 0 15px 25px;
    border-left:2px solid #f0b429;
    color:#526276;
    font-size:15px;
    line-height:1.55;
}


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

.gaviReraCta{
    padding:0 0 90px;
    background:#f6f8fb;
}

.gaviReraCtaInner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    padding:32px 36px;
    border:1px solid rgba(185,120,0,.38);
    border-radius:9px;
    background:
        linear-gradient(115deg,#04152d,#092f62 68%,#061d3d);
    box-shadow:0 20px 45px rgba(6,29,61,.14);
}

.gaviReraCtaContent > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviReraCtaContent h2{
    margin:0 0 8px;
    color:#fff;
    font-size:27px;
    line-height:1.3;
    font-weight:750;
}

.gaviReraCtaContent h2 strong{
    color:#f0b429;
}

.gaviReraCtaContent p{
    margin:0;
    color:#bdcad8;
    font-size:15px;
    line-height:1.55;
}

.gaviReraCtaActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:11px;
}

.gaviReraCtaButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:54px;
    padding:0 23px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviReraCtaButton:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(185,120,0,.3);
}

.gaviReraCtaButton span{
    font-size:20px;
}

.gaviReraCtaPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}

.gaviReraCtaPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

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

    .gaviReraStateGrid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

}


@media (max-width:991px){

    .gaviReraHero{
        padding:70px 0;
    }

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

    .gaviReraCtaInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviReraCtaActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviReraHero{
        padding:55px 0;
    }

    .gaviReraHero h1{
        font-size:38px;
    }

    .gaviReraHero h1 strong{
        margin-top:7px;
        font-size:27px;
        line-height:1.2;
    }

    .gaviReraHeroLead{
        font-size:15px;
        line-height:1.7;
    }

    .gaviReraHeroHighlights{
        flex-direction:column;
    }

    .gaviReraHeroHighlights div{
        width:100%;
    }

    .gaviReraHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviReraPrimaryCta,
    .gaviReraPhoneCta{
        width:100%;
    }

    .gaviReraRole,
    .gaviReraStates,
    .gaviReraMatrix{
        padding:65px 0;
    }

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

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

    .gaviReraMatrixBox{
        padding:25px 19px;
    }

    .gaviReraMatrixRow{
        grid-template-columns:1fr;
        padding:14px 0;
    }

    .gaviReraMatrixLabel{
        padding:0 0 10px;
    }

    .gaviReraMatrixValue{
        padding:10px 0 0;
        border-left:0;
        border-top:2px solid #f0b429;
    }

    .gaviReraCta{
        padding-bottom:65px;
    }

    .gaviReraCtaInner{
        padding:26px 20px;
    }

    .gaviReraCtaActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviReraCtaButton,
    .gaviReraCtaPhone{
        width:100%;
    }

}

/* =========================================================
   GOVERNMENT APPROVED VALUERS INDIA
   INDIA'S CIRCLE RATE SYSTEMS
   ROYAL NAVY + GOLD DESIGN SYSTEM
========================================================= */


/* =========================================================
   SECTION 01 — HERO
   Namespace: gaviCRHero
========================================================= */

.gaviCRHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 82% 20%,rgba(185,120,0,.16),transparent 26%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviCRHeroPattern{
    position:absolute;
    width:620px;
    height:620px;
    right:-260px;
    top:-290px;
    border:1px solid rgba(240,180,41,.16);
    border-radius:50%;
    box-shadow:
        0 0 0 50px rgba(185,120,0,.025),
        0 0 0 100px rgba(185,120,0,.02);
}

.gaviCRHeroInner{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);
    gap:65px;
    align-items:center;
}

.gaviCRHeroEyebrow,
.gaviCREyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.gaviCRHeroEyebrow span,
.gaviCREyebrow span{
    width:38px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCRHero h1{
    max-width:900px;
    margin:18px 0 24px;
    color:#fff;
    font-size:clamp(40px,4.7vw,68px);
    line-height:1.04;
    font-weight:850;
    letter-spacing:-1.8px;
}

.gaviCRHero h1 span{
    display:block;
    margin-top:10px;
    color:#f0b429;
    font-size:.53em;
    line-height:1.25;
    letter-spacing:-.3px;
}

.gaviCRHeroIntro{
    max-width:850px;
    margin:0;
    color:#d9e2ed;
    font-size:18px;
    line-height:1.75;
}

.gaviCRHeroIntro strong{
    color:#fff;
}

.gaviCRHeroStats{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;
}

.gaviCRHeroStats div{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:145px;
    padding:11px 15px;
    border:1px solid rgba(240,180,41,.25);
    border-radius:5px;
    background:rgba(255,255,255,.05);
}

.gaviCRHeroStats strong{
    color:#f0b429;
    font-size:25px;
    line-height:1;
}

.gaviCRHeroStats span{
    color:#c5d0dc;
    font-size:15px;
    line-height:1.35;
}

.gaviCRHeroActions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:14px;
    margin-top:31px;
}

.gaviCRPrimaryCta,
.gaviCRFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:57px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 13px 30px rgba(185,120,0,.2);
    transition:all .3s ease;
}

.gaviCRPrimaryCta:hover,
.gaviCRFinalButton:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(185,120,0,.3);
}

.gaviCRPrimaryCta span,
.gaviCRFinalButton span{
    font-size:21px;
}

.gaviCRPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:57px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCRPhoneCta span{
    color:#f0b429;
    font-size:20px;
}

.gaviCRPhoneCta:hover{
    border-color:#f0b429;
    background:rgba(185,120,0,.1);
}


/* HERO VISUAL */

.gaviCRHeroVisual{
    position:relative;
    min-height:510px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviCRHeroRing{
    position:absolute;
    border:1px solid rgba(240,180,41,.2);
    border-radius:50%;
}

.gaviCRRingOne{
    width:410px;
    height:410px;
}

.gaviCRRingTwo{
    width:305px;
    height:305px;
    border-color:rgba(240,180,41,.35);
}

.gaviCRHeroCore{
    position:relative;
    width:225px;
    height:225px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:2px solid #b97800;
    border-radius:50%;
    background:
        radial-gradient(circle,#092f62 0%,#061d3d 70%);
    box-shadow:
        0 0 55px rgba(185,120,0,.2),
        inset 0 0 35px rgba(185,120,0,.08);
    z-index:2;
}

.gaviCRCoreTop{
    color:#d9a12b;
    font-size:15px;
    font-weight:800;
    letter-spacing:2px;
}

.gaviCRHeroCore strong{
    margin:4px 0;
    color:#f0b429;
    font-size:64px;
    line-height:1;
    font-weight:900;
}

.gaviCRCoreBottom{
    color:#c9d5e2;
    font-size:15px;
    letter-spacing:2px;
    font-weight:800;
}

.gaviCRFloating{
    position:absolute;
    z-index:3;
    min-width:150px;
    padding:14px 17px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:6px;
    background:rgba(4,21,45,.94);
    box-shadow:0 15px 35px rgba(0,0,0,.25);
}

.gaviCRFloating strong{
    display:block;
    color:#f0b429;
    font-size:22px;
}

.gaviCRFloating span{
    display:block;
    margin-top:3px;
    color:#c3cfdd;
    font-size:15px;
}

.gaviCRFloatOne{
    left:2%;
    top:85px;
}

.gaviCRFloatTwo{
    right:0;
    bottom:80px;
}


/* =========================================================
   SECTION 02 — FRAMEWORK
========================================================= */

.gaviCRFramework{
    padding:88px 0;
    background:#f7f9fc;
}

.gaviCRSectionHeading{
    max-width:850px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviCRSectionHeading h2{
    margin:14px 0 14px;
    color:#061d3d;
    font-size:clamp(32px,3.6vw,48px);
    line-height:1.14;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviCRSectionHeading h2 strong{
    color:#b97800;
}

.gaviCRSectionHeading p{
    margin:0;
    color:#58687b;
    font-size:16px;
    line-height:1.75;
}

.gaviCRFrameworkGrid{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);
    gap:24px;
}

.gaviCRFrameworkMain{
    position:relative;
    padding:38px;
    border:1px solid #dce3ec;
    border-radius:9px;
    background:#fff;
    box-shadow:0 15px 35px rgba(6,29,61,.06);
}

.gaviCRFrameworkNumber{
    position:absolute;
    top:22px;
    right:25px;
    color:#e2e7ed;
    font-size:38px;
    font-weight:900;
}

.gaviCRFrameworkMain h3{
    margin:0 0 17px;
    color:#061d3d;
    font-size:28px;
    line-height:1.3;
}

.gaviCRFrameworkMain p{
    margin:0 0 15px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gaviCRFrameworkMain p strong{
    color:#092f62;
}

.gaviCRFormula{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:20px;
    align-items:center;
    margin-top:27px;
    padding:20px;
    border:1px solid #e1e6ed;
    border-radius:6px;
    background:#f7f9fc;
    text-align:center;
}

.gaviCRFormula div{
    padding:12px;
}

.gaviCRFormula span{
    display:block;
    color:#69798c;
    font-size:15px;
}

.gaviCRFormula strong{
    display:block;
    margin-top:5px;
    color:#092f62;
    font-size:20px;
}

.gaviCRFormula b{
    color:#b97800;
    font-size:25px;
}

.gaviCRFrameworkSide{
    display:grid;
    gap:13px;
}

.gaviCRMiniCard{
    padding:23px;
    border:1px solid #dce3ec;
    border-left:4px solid #b97800;
    border-radius:7px;
    background:#fff;
    box-shadow:0 8px 24px rgba(6,29,61,.045);
}

.gaviCRMiniCard span{
    display:block;
    margin-bottom:7px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
}

.gaviCRMiniCard strong{
    display:block;
    color:#061d3d;
    font-size:19px;
}

.gaviCRMiniCard p{
    margin:7px 0 0;
    color:#5d6d80;
    font-size:15px;
    line-height:1.6;
}


/* =========================================================
   SECTION 03 — STATES
========================================================= */

.gaviCRStates{
    padding:90px 0;
    background:
        radial-gradient(circle at 10% 10%,rgba(185,120,0,.12),transparent 25%),
        linear-gradient(135deg,#04152d,#061d3d 55%,#092f62);
}

.gaviCRHeadingLight h2{
    color:#fff;
}

.gaviCRHeadingLight p{
    color:#bcc9d8;
}

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

.gaviCRStateCard{
    position:relative;
    padding:25px 23px 22px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:8px;
    background:rgba(255,255,255,.055);
    box-shadow:0 15px 30px rgba(0,0,0,.12);
    transition:all .3s ease;
    overflow:hidden;
}

.gaviCRStateCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:3px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCRStateCard:hover{
    transform:translateY(-5px);
    border-color:rgba(240,180,41,.4);
    background:rgba(255,255,255,.075);
}

.gaviCRStateFeatured{
    border-color:rgba(240,180,41,.38);
    background:rgba(185,120,0,.09);
}

.gaviCRStateTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:20px;
}

.gaviCRStateTop span{
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviCRStateTop small{
    color:#9fafc1;
    font-size:15px;
    font-weight:800;
    letter-spacing:1px;
}

.gaviCRStateCard h3{
    margin:0 0 12px;
    color:#fff;
    font-size:21px;
    line-height:1.35;
}

.gaviCRStateCard p{
    min-height:112px;
    margin:0;
    color:#c1cbd7;
    font-size:15px;
    line-height:1.7;
}

.gaviCRStateCard p strong{
    color:#f0b429;
}

.gaviCRStateCities{
    margin-top:18px;
    padding-top:13px;
    border-top:1px solid rgba(255,255,255,.1);
    color:#d9e2eb;
    font-size:15px;
    font-weight:700;
}


/* =========================================================
   SECTION 04 — PRACTICAL COMPARISON
========================================================= */

.gaviCRCompare{
    padding:90px 0;
    background:#fff;
}

.gaviCRCompareBox{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr;
    align-items:center;
    gap:18px;
    padding:28px;
    border:1px solid #dce3ec;
    border-radius:10px;
    background:#f7f9fc;
    box-shadow:0 16px 40px rgba(6,29,61,.06);
}

.gaviCRCompareStep{
    display:flex;
    gap:15px;
    min-height:180px;
    padding:23px;
    border:1px solid #dfe5ec;
    border-radius:7px;
    background:#fff;
}

.gaviCRStepNo{
    flex:0 0 42px;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviCRCompareStep h3{
    margin:0 0 10px;
    color:#061d3d;
    font-size:19px;
    line-height:1.35;
}

.gaviCRCompareStep p{
    margin:0;
    color:#596a7d;
    font-size:15px;
    line-height:1.7;
}

.gaviCRCompareStep p strong{
    color:#092f62;
}

.gaviCRCompareArrow{
    color:#b97800;
    font-size:28px;
    font-weight:900;
}


/* =========================================================
   SECTION 05 — NATIONAL PRACTICE
========================================================= */

.gaviCRPractice{
    padding:90px 0;
    background:#f7f9fc;
}

.gaviCRPracticeGrid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);
    gap:35px;
    align-items:stretch;
}

.gaviCREyebrowGold{
    color:#b97800;
}

.gaviCRPracticeContent h2{
    margin:15px 0 20px;
    color:#061d3d;
    font-size:clamp(31px,3.4vw,46px);
    line-height:1.15;
    font-weight:850;
}

.gaviCRPracticeContent h2 strong{
    color:#b97800;
}

.gaviCRPracticeContent p{
    margin:0 0 15px;
    color:#58687a;
    font-size:16px;
    line-height:1.8;
}

.gaviCRPracticeContent p strong{
    color:#092f62;
}

.gaviCRPracticeCredentials{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:27px;
}

.gaviCRPracticeCredentials div{
    padding:16px;
    border:1px solid #dce3ec;
    border-radius:6px;
    background:#fff;
}

.gaviCRPracticeCredentials strong{
    display:block;
    color:#092f62;
    font-size:15px;
}

.gaviCRPracticeCredentials span{
    display:block;
    margin-top:5px;
    color:#68788a;
    font-size:15px;
    line-height:1.4;
}

.gaviCRPracticePanel{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:35px;
    border-radius:9px;
    background:linear-gradient(145deg,#04152d,#092f62);
    box-shadow:0 20px 45px rgba(6,29,61,.16);
    overflow:hidden;
}

.gaviCRPracticePanel:after{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    right:-130px;
    bottom:-140px;
    border:1px solid rgba(240,180,41,.2);
    border-radius:50%;
}

.gaviCRPracticePanelTop{
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviCRPracticePanelMain{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin:27px 0;
    padding:24px 10px;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}

.gaviCRPracticePanelMain span{
    color:#d1dce8;
    font-size:15px;
    font-weight:750;
    text-align:center;
}

.gaviCRPracticePanelMain strong{
    color:#f0b429;
    font-size:34px;
}

.gaviCRPracticePanel p{
    margin:0;
    color:#c8d3df;
    font-size:15px;
    line-height:1.75;
}

.gaviCRPracticePanel p strong{
    color:#f0b429;
}


/* =========================================================
   SECTION 06 — FINAL CTA
========================================================= */

.gaviCRFinal{
    padding:0 0 90px;
    background:#f7f9fc;
}

.gaviCRFinalBox{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    padding:38px 42px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:10px;
    background:
        linear-gradient(115deg,#04152d 0%,#092f62 70%,#061d3d 100%);
    box-shadow:0 20px 45px rgba(6,29,61,.14);
}

.gaviCRFinalEyebrow{
    display:block;
    margin-bottom:9px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.6px;
}

.gaviCRFinalContent h2{
    max-width:750px;
    margin:0 0 10px;
    color:#fff;
    font-size:31px;
    line-height:1.25;
    font-weight:800;
}

.gaviCRFinalContent h2 strong{
    color:#f0b429;
}

.gaviCRFinalContent p{
    margin:0;
    color:#c6d1dd;
    font-size:15px;
    line-height:1.65;
}

.gaviCRFinalContent p strong{
    color:#fff;
}

.gaviCRFinalActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gaviCRFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:57px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCRFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1199px){

    .gaviCRHeroInner{
        grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);
        gap:35px;
    }

    .gaviCRStateGrid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

}


@media(max-width:991px){

    .gaviCRHero{
        padding:70px 0;
    }

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

    .gaviCRHeroContent{
        text-align:center;
    }

    .gaviCRHeroEyebrow,
    .gaviCRHeroActions{
        justify-content:center;
    }

    .gaviCRHeroIntro{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviCRHeroVisual{
        min-height:400px;
    }

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

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

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

    .gaviCRCompareArrow{
        text-align:center;
        transform:rotate(90deg);
    }

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

    .gaviCRFinalBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviCRFinalActions{
        justify-content:flex-start;
    }

}


@media(max-width:767px){

    .gaviCRHero{
        padding:55px 0 60px;
    }

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

    .gaviCRHero h1 span{
        font-size:21px;
    }

    .gaviCRHeroIntro{
        font-size:16px;
        line-height:1.68;
    }

    .gaviCRHeroStats{
        display:grid;
        grid-template-columns:1fr;
    }

    .gaviCRHeroStats div{
        justify-content:center;
    }

    .gaviCRHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCRPrimaryCta,
    .gaviCRPhoneCta{
        width:100%;
    }

    .gaviCRHeroVisual{
        min-height:330px;
    }

    .gaviCRHeroRing.gaviCRRingOne{
        width:290px;
        height:290px;
    }

    .gaviCRHeroRing.gaviCRRingTwo{
        width:220px;
        height:220px;
    }

    .gaviCRHeroCore{
        width:175px;
        height:175px;
    }

    .gaviCRHeroCore strong{
        font-size:48px;
    }

    .gaviCRFloating{
        min-width:125px;
        padding:10px 12px;
    }

    .gaviCRFloatOne{
        left:0;
        top:45px;
    }

    .gaviCRFloatTwo{
        right:0;
        bottom:45px;
    }

    .gaviCRFramework,
    .gaviCRStates,
    .gaviCRCompare,
    .gaviCRPractice{
        padding:65px 0;
    }

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

    .gaviCRStateCard p{
        min-height:auto;
    }

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

    .gaviCRPracticePanel{
        padding:27px 22px;
    }

    .gaviCRPracticePanelMain{
        gap:9px;
    }

    .gaviCRPracticePanelMain span{
        font-size:15px;
    }

    .gaviCRFinal{
        padding-bottom:65px;
    }

    .gaviCRFinalBox{
        padding:28px 22px;
    }

    .gaviCRFinalContent h2{
        font-size:25px;
    }

    .gaviCRFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCRFinalButton,
    .gaviCRFinalPhone{
        width:100%;
    }

}


@media(max-width:480px){

    .gaviCRHeroVisual{
        min-height:285px;
    }

    .gaviCRFloating{
        display:none;
    }

    .gaviCRHeroCore{
        width:160px;
        height:160px;
    }

    .gaviCRHeroCore strong{
        font-size:43px;
    }

    .gaviCRFrameworkMain{
        padding:27px 21px;
    }

    .gaviCRFormula{
        grid-template-columns:1fr;
        gap:4px;
    }

    .gaviCRFormula b{
        transform:rotate(90deg);
    }

    .gaviCRCompareBox{
        padding:15px;
    }

    .gaviCRCompareStep{
        padding:19px;
    }

}

/* =========================================================
   IBBI NCLT BENCH COVERAGE
   GLOBAL DESIGN SYSTEM
   Royal Navy + Gold
========================================================= */


/* =========================================================
   SECTION 01 — HERO
   Namespace: gavincHero
========================================================= */

.gavincHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 86% 25%,rgba(185,120,0,.16),transparent 26%),
        linear-gradient(135deg,#04152d 0%,#061d3d 58%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gavincHeroPattern{
    position:absolute;
    inset:0;
    opacity:.18;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:55px 55px;
    pointer-events:none;
}

.gavincHeroInner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);
    gap:65px;
    align-items:center;
}

.gavincHeroEyebrow{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gavincHeroEyebrow span{
    display:block;
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gavincHero h1{
    margin:0 0 23px;
    max-width:900px;
    color:#fff;
    font-size:clamp(38px,4.5vw,65px);
    line-height:1.05;
    font-weight:850;
    letter-spacing:-1.8px;
}

.gavincHero h1 strong{
    display:block;
    margin-top:8px;
    color:#f0b429;
    font-size:.55em;
    line-height:1.3;
    letter-spacing:-.3px;
}

.gavincHeroLead{
    max-width:850px;
    margin:0 0 25px;
    color:#edf2f7;
    font-size:18px;
    line-height:1.72;
}

.gavincHeroLead strong,
.gavincHeroText strong{
    color:#f0b429;
}

.gavincHeroStats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    max-width:850px;
    margin-bottom:25px;
    border:1px solid rgba(240,180,41,.25);
    background:rgba(255,255,255,.045);
}

.gavincHeroStat{
    min-height:76px;
    padding:13px 12px;
    border-right:1px solid rgba(255,255,255,.10);
}

.gavincHeroStat:last-child{
    border-right:0;
}

.gavincHeroStat strong{
    display:block;
    margin-bottom:4px;
    color:#f0b429;
    font-size:19px;
    font-weight:850;
}

.gavincHeroStat span{
    display:block;
    color:#c9d5e2;
    font-size:15px;
    line-height:1.35;
}

.gavincHeroText{
    max-width:850px;
    margin:0;
    color:#d4deea;
    font-size:16px;
    line-height:1.75;
}

.gavincHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:30px;
}

.gavincPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 26px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gavincPrimaryCta span{
    font-size:21px;
}

.gavincPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.34);
}

.gavincPhoneCta{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:6px 17px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gavincPhoneCta:hover{
    border-color:#b97800;
    background:rgba(185,120,0,.10);
}

.gavincPhoneIcon{
    color:#f0b429;
    font-size:21px;
}

.gavincPhoneCta small{
    display:block;
    margin-bottom:2px;
    color:#aebdcd;
    font-size:15px;
}

.gavincPhoneCta strong{
    display:block;
    color:#fff;
    font-size:17px;
}

.gavincHeroTrust{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:9px;
    margin-top:22px;
    color:#aebdcd;
    font-size:15px;
}

.gavincHeroTrust span:nth-child(even){
    color:#b97800;
}


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

.gavincHeroVisual{
    position:relative;
    min-height:500px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gavincOrbit{
    position:absolute;
    border:1px solid rgba(240,180,41,.20);
    border-radius:50%;
}

.gavincOrbitOne{
    width:430px;
    height:430px;
}

.gavincOrbitTwo{
    width:330px;
    height:330px;
    border-color:rgba(255,255,255,.08);
}

.gavincTribunalCard{
    position:relative;
    z-index:3;
    width:min(100%,405px);
    padding:28px;
    border:1px solid rgba(240,180,41,.38);
    border-radius:10px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
    box-shadow:
        0 30px 65px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
}

.gavincTribunalTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:27px;
}

.gavincTribunalIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:67px;
    height:67px;
    border:1px solid #d99a16;
    border-radius:50%;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d;
    font-size:15px;
    font-weight:950;
}

.gavincTribunalLabel{
    color:#f0b429;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.3px;
}

.gavincTribunalTitle{
    color:#fff;
    font-size:30px;
    line-height:1.18;
    font-weight:750;
}

.gavincTribunalTitle strong{
    display:block;
    color:#f0b429;
}

.gavincTribunalDivider{
    width:100%;
    height:1px;
    margin:25px 0;
    background:linear-gradient(90deg,#b97800,rgba(185,120,0,.05));
}

.gavincAssetRow{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
}

.gavincAssetRow > div{
    padding:13px 8px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(0,0,0,.10);
    text-align:center;
}

.gavincAssetRow strong{
    display:block;
    margin-bottom:5px;
    color:#f0b429;
    font-size:16px;
}

.gavincAssetRow span{
    display:block;
    color:#bdc9d6;
    font-size:15px;
    line-height:1.35;
}

.gavincTribunalFooter{
    display:flex;
    align-items:center;
    gap:9px;
    margin-top:24px;
    color:#c7d2de;
    font-size:15px;
}

.gavincGoldDot{
    width:5px;
    height:5px;
    border-radius:50%;
    background:#f0b429;
}

.gavincBenchFloat{
    position:absolute;
    z-index:5;
    display:flex;
    align-items:center;
    gap:9px;
    padding:12px 15px;
    border:1px solid rgba(240,180,41,.38);
    border-radius:6px;
    background:#04152d;
    box-shadow:0 14px 30px rgba(0,0,0,.28);
}

.gavincBenchFloat strong{
    color:#f0b429;
    font-size:21px;
}

.gavincBenchFloat span{
    color:#d8e1eb;
    font-size:15px;
    line-height:1.25;
}

.gavincBenchFloatOne{
    top:62px;
    left:-5px;
}

.gavincBenchFloatTwo{
    right:-5px;
    bottom:62px;
}


/* =========================================================
   SECTION 02 — JURISDICTION MAP
   Namespace: gavincMap
========================================================= */

.gavincMap{
    padding:90px 0 82px;
    background:#f7f9fc;
}

.gavincSectionHeading{
    max-width:850px;
    margin:0 auto 50px;
    text-align:center;
}

.gavincSectionEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gavincSectionEyebrow span{
    display:block;
    width:30px;
    height:2px;
    background:#b97800;
}

.gavincSectionHeading h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(31px,3.6vw,49px);
    line-height:1.15;
    font-weight:850;
    letter-spacing:-1px;
}

.gavincSectionHeading h2 strong{
    color:#b97800;
}

.gavincSectionHeading p{
    margin:0;
    color:#536377;
    font-size:16px;
    line-height:1.75;
}

.gavincBenchGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:17px;
}

.gavincBenchCard{
    position:relative;
    min-height:225px;
    padding:24px 21px;
    border:1px solid #dce3eb;
    border-radius:8px;
    background:#fff;
    box-shadow:0 9px 25px rgba(6,29,61,.045);
    overflow:hidden;
    transition:all .3s ease;
}

.gavincBenchCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
}

.gavincBenchCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 18px 35px rgba(6,29,61,.10);
}

.gavincBenchNumber{
    position:absolute;
    top:14px;
    right:16px;
    color:#dce3eb;
    font-size:15px;
    font-weight:900;
}

.gavincBenchHead span{
    display:block;
    margin-bottom:5px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.2px;
}

.gavincBenchHead h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:21px;
    line-height:1.3;
    font-weight:800;
}

.gavincBenchCard p{
    margin:0 0 12px;
    color:#3e4f63;
    font-size:15px;
    line-height:1.5;
}

.gavincBenchCard p strong{
    color:#092f62;
}

.gavincCities{
    padding-top:12px;
    border-top:1px solid #e5eaf0;
    color:#657386;
    font-size:15px;
    line-height:1.55;
}

.gavincBenchCardWide{
    grid-column:span 2;
}

.gavincSourceNote{
    margin-top:27px;
    padding:16px 19px;
    border-left:3px solid #b97800;
    background:#eef2f7;
    color:#56667a;
    font-size:15px;
    line-height:1.65;
}

.gavincSourceNote span{
    display:block;
    margin-bottom:3px;
    color:#092f62;
    font-size:15px;
    font-weight:850;
    letter-spacing:.8px;
}


/* =========================================================
   SECTION 03 — THREE CLASS
   Namespace: gavincThreeClass
========================================================= */

.gavincThreeClass{
    position:relative;
    padding:95px 0;
    background:
        radial-gradient(circle at 10% 80%,rgba(185,120,0,.10),transparent 25%),
        linear-gradient(135deg,#04152d,#061d3d 65%,#092f62);
    color:#fff;
    overflow:hidden;
}

.gavincThreeClassGrid{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(400px,.98fr);
    gap:55px;
    align-items:center;
}

.gavincSectionEyebrowLight{
    justify-content:flex-start;
}

.gavincThreeClassContent h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(32px,3.8vw,52px);
    line-height:1.12;
    font-weight:850;
    letter-spacing:-1px;
}

.gavincThreeClassContent h2 strong{
    color:#f0b429;
}

.gavincThreeIntro{
    max-width:720px;
    margin:0 0 31px;
    color:#d0dbe7;
    font-size:16px;
    line-height:1.78;
}

.gavincThreeIntro strong{
    color:#f0b429;
}

.gavincAssetCards{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.gavincAssetCard{
    display:grid;
    grid-template-columns:72px 1fr;
    gap:15px;
    align-items:center;
    padding:15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:6px;
    background:rgba(255,255,255,.045);
}

.gavincAssetCode{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:55px;
    border:1px solid rgba(240,180,41,.42);
    border-radius:4px;
    background:rgba(185,120,0,.10);
    color:#f0b429;
    font-size:16px;
    font-weight:900;
}

.gavincAssetCard strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:16px;
}

.gavincAssetCard span{
    display:block;
    color:#aebdcd;
    font-size:15px;
    line-height:1.5;
}


/* =========================================================
   ADVANTAGE PANEL
========================================================= */

.gavincAdvantagePanel{
    padding:31px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:9px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025));
    box-shadow:0 25px 55px rgba(0,0,0,.18);
}

.gavincAdvantageTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-bottom:19px;
    border-bottom:1px solid rgba(255,255,255,.11);
}

.gavincAdvantageTop span{
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gavincAdvantageTop strong{
    color:rgba(240,180,41,.35);
    font-size:30px;
}

.gavincAdvantageItem{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:14px;
    padding:23px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.gavincAdvantageNo{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:1px solid rgba(240,180,41,.38);
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
}

.gavincAdvantageItem h3{
    margin:0 0 7px;
    color:#fff;
    font-size:18px;
    line-height:1.35;
    font-weight:750;
}

.gavincAdvantageItem p{
    margin:0;
    color:#acbac9;
    font-size:15px;
    line-height:1.65;
}

.gavincAdvantageBottom{
    display:flex;
    flex-direction:column;
    gap:4px;
    padding-top:22px;
}

.gavincAdvantageBottom > strong{
    color:#f0b429;
    font-size:18px;
}

.gavincAdvantageBottom span{
    color:#b9c6d4;
    font-size:15px;
    line-height:1.5;
}

.gavincAdvantageBottom span strong{
    color:#fff;
}


/* =========================================================
   SECTION 04 — FINAL CTA
   Namespace: gavincFinal
========================================================= */

.gavincFinal{
    padding:70px 0;
    background:#f7f9fc;
}

.gavincFinalInner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    padding:35px 40px;
    border:1px solid rgba(185,120,0,.35);
    border-radius:9px;
    background:
        linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 20px 45px rgba(6,29,61,.13);
}

.gavincFinalContent{
    max-width:780px;
}

.gavincFinalContent .gavincSectionEyebrow{
    justify-content:flex-start;
}

.gavincFinalContent h2{
    margin:0 0 12px;
    color:#fff;
    font-size:32px;
    line-height:1.2;
    font-weight:800;
}

.gavincFinalContent h2 strong{
    color:#f0b429;
}

.gavincFinalContent p{
    margin:0;
    color:#c9d5e2;
    font-size:16px;
    line-height:1.7;
}

.gavincFinalActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gavincFinalCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:55px;
    padding:0 25px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gavincFinalCta:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(185,120,0,.30);
}

.gavincFinalCta span{
    font-size:21px;
}

.gavincFinalPhone{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:55px;
    padding:7px 17px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    text-decoration:none !important;
}

.gavincFinalPhone small{
    color:#9faec0;
    font-size:15px;
    line-height:1.25;
}

.gavincFinalPhone strong{
    color:#fff;
    font-size:17px;
    line-height:1.35;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

    .gavincHeroInner{
        grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);
        gap:35px;
    }

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

    .gavincHeroStat:nth-child(2){
        border-right:0;
    }

    .gavincHeroStat:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,.10);
    }

    .gavincBenchGrid{
        grid-template-columns:repeat(3,1fr);
    }

    .gavincBenchCardWide{
        grid-column:span 2;
    }

}


@media (max-width:991px){

    .gavincHero{
        padding:70px 0;
    }

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

    .gavincHeroContent{
        text-align:center;
    }

    .gavincHeroEyebrow,
    .gavincHeroActions,
    .gavincHeroTrust{
        justify-content:center;
    }

    .gavincHeroLead,
    .gavincHeroText{
        margin-left:auto;
        margin-right:auto;
    }

    .gavincHeroVisual{
        min-height:440px;
    }

    .gavincHeroStats{
        margin-left:auto;
        margin-right:auto;
    }

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

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

    .gavincFinalInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .gavincFinalActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gavincHero{
        padding:55px 0;
    }

    .gavincHero h1{
        font-size:38px;
    }

    .gavincHero h1 strong{
        font-size:21px;
    }

    .gavincHeroLead{
        font-size:16px;
    }

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

    .gavincHeroVisual{
        min-height:400px;
    }

    .gavincOrbitOne{
        width:350px;
        height:350px;
    }

    .gavincOrbitTwo{
        width:275px;
        height:275px;
    }

    .gavincTribunalCard{
        width:90%;
        padding:22px;
    }

    .gavincTribunalTitle{
        font-size:25px;
    }

    .gavincBenchFloatOne{
        left:0;
        top:30px;
    }

    .gavincBenchFloatTwo{
        right:0;
        bottom:30px;
    }

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

    .gavincBenchCardWide{
        grid-column:span 1;
    }

    .gavincMap,
    .gavincThreeClass{
        padding:70px 0;
    }

    .gavincSectionHeading h2{
        font-size:32px;
    }

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

    .gavincAdvantagePanel{
        padding:23px;
    }

    .gavincFinal{
        padding:55px 0;
    }

    .gavincFinalInner{
        padding:27px 21px;
    }

    .gavincFinalContent h2{
        font-size:27px;
    }

    .gavincFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gavincFinalCta,
    .gavincFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

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

    .gavincHeroStat{
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.10);
    }

    .gavincHeroStat:last-child{
        border-bottom:0;
    }

    .gavincHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gavincPrimaryCta,
    .gavincPhoneCta{
        width:100%;
    }

    .gavincHeroVisual{
        min-height:355px;
    }

    .gavincTribunalCard{
        width:94%;
    }

    .gavincAssetRow span{
        font-size:15px;
    }

    .gavincBenchFloat{
        display:none;
    }

    .gavincAssetCard{
        grid-template-columns:60px 1fr;
    }

}
/* =========================================================
   NATIONAL BANK EMPANELMENT
   GOVERNMENT APPROVED VALUERS INDIA
   Unique Namespace: gaviBank
   Royal Navy + Gold System
========================================================= */


/* =========================================================
   SECTION 01 — HERO
========================================================= */

.gaviBankHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 82% 18%,rgba(185,120,0,.18),transparent 30%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviBankHeroPattern{
    position:absolute;
    inset:0;
    opacity:.25;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(240,180,41,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(240,180,41,.055) 1px,transparent 1px);
    background-size:55px 55px;
}

.gaviBankHeroInner{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(350px,.75fr);
    gap:70px;
    align-items:center;
}

.gaviBankHeroContent{
    position:relative;
    z-index:2;
}

.gaviBankHeroEyebrow,
.gaviBankEyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:17px;
    color:#f0b429;
    font-size:15px;
    line-height:1.4;
    font-weight:850;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.gaviBankHeroEyebrow span,
.gaviBankEyebrow span{
    display:inline-block;
    width:38px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviBankHero h1{
    max-width:850px;
    margin:0 0 25px;
    color:#fff;
    font-size:clamp(40px,4.5vw,65px);
    line-height:1.06;
    font-weight:800;
    letter-spacing:-1.8px;
}

.gaviBankHero h1 strong{
    display:block;
    margin-top:8px;
    color:#f0b429;
    font-size:.55em;
    line-height:1.3;
    letter-spacing:-.3px;
}

.gaviBankHeroLead{
    max-width:830px;
    margin:0;
    color:#dbe4ee;
    font-size:17px;
    line-height:1.8;
}

.gaviBankHeroLead strong{
    color:#fff;
    font-weight:750;
}

.gaviBankHeroStats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    max-width:760px;
    margin-top:29px;
}

.gaviBankHeroStat{
    padding:15px 14px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:6px;
    background:rgba(255,255,255,.055);
}

.gaviBankHeroStat strong{
    display:block;
    margin-bottom:5px;
    color:#f0b429;
    font-size:19px;
    line-height:1.2;
}

.gaviBankHeroStat span{
    display:block;
    color:#c2cfdd;
    font-size:15px;
    line-height:1.4;
}

.gaviBankHeroActions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:13px;
    margin-top:30px;
}

.gaviBankPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 13px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviBankPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(185,120,0,.36);
}

.gaviBankPrimaryCta span{
    font-size:21px;
}

.gaviBankPhoneCta{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:7px 17px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviBankPhoneCta:hover{
    border-color:#b97800;
    background:rgba(185,120,0,.1);
}

.gaviBankPhoneIcon{
    color:#f0b429;
    font-size:22px;
}

.gaviBankPhoneCta small{
    display:block;
    color:#aebdcd;
    font-size:15px;
    line-height:1.3;
}

.gaviBankPhoneCta strong{
    display:block;
    margin-top:2px;
    color:#fff;
    font-size:17px;
    line-height:1.3;
}


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

.gaviBankHeroVisual{
    position:relative;
    min-height:510px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviBankHeroOrb{
    width:390px;
    height:390px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.3);
    border-radius:50%;
    background:
        radial-gradient(circle at center,rgba(185,120,0,.17),rgba(6,29,61,.15) 53%,transparent 54%),
        linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.015));
    box-shadow:
        0 0 0 25px rgba(185,120,0,.025),
        0 0 90px rgba(185,120,0,.13),
        inset 0 0 60px rgba(185,120,0,.07);
}

.gaviBankHeroOrbInner{
    width:255px;
    height:255px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.45);
    border-radius:50%;
    background:linear-gradient(145deg,#092f62,#04152d);
    box-shadow:0 20px 55px rgba(0,0,0,.3);
    text-align:center;
}

.gaviBankHeroOrbLabel{
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2.5px;
}

.gaviBankHeroOrbInner strong{
    margin:5px 0 0;
    color:#fff;
    font-size:43px;
    line-height:1;
    letter-spacing:2px;
}

.gaviBankHeroOrbInner > span:last-child{
    margin-top:7px;
    color:#d9e2ec;
    font-size:15px;
    font-weight:750;
    letter-spacing:3px;
}

.gaviBankFloatingCard{
    position:absolute;
    display:flex;
    align-items:center;
    gap:11px;
    padding:13px 15px;
    border:1px solid rgba(240,180,41,.34);
    border-radius:6px;
    background:rgba(4,21,45,.94);
    box-shadow:0 18px 40px rgba(0,0,0,.28);
    backdrop-filter:blur(8px);
}

.gaviBankFloatingTop{
    top:75px;
    left:-8px;
}

.gaviBankFloatingBottom{
    right:-12px;
    bottom:80px;
}

.gaviBankFloatingCard > span{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:54px;
    min-height:40px;
    padding:5px 8px;
    border-radius:4px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d;
    font-size:15px;
    font-weight:900;
}

.gaviBankFloatingCard strong{
    display:block;
    color:#fff;
    font-size:15px;
    line-height:1.35;
}

.gaviBankFloatingCard small{
    display:block;
    margin-top:2px;
    color:#aebdcd;
    font-size:15px;
}


/* =========================================================
   COMMON LIGHT SECTION HEADING
========================================================= */

.gaviBankSectionHeading{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviBankSectionHeading h2{
    margin:0 0 14px;
    color:#061d3d;
    font-size:clamp(31px,3.6vw,48px);
    line-height:1.15;
    font-weight:800;
    letter-spacing:-1px;
}

.gaviBankSectionHeading h2 strong{
    color:#b97800;
}

.gaviBankSectionHeading > p{
    margin:0;
    color:#566679;
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — ADVANTAGE
========================================================= */

.gaviBankAdvantage{
    padding:90px 0;
    background:#f7f9fc;
}

.gaviBankAdvantageGrid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:28px;
    align-items:stretch;
}

.gaviBankAdvantageMain{
    position:relative;
    padding:42px 42px 38px;
    border:1px solid #dce3ec;
    border-radius:10px;
    background:#fff;
    box-shadow:0 15px 35px rgba(6,29,61,.065);
    overflow:hidden;
}

.gaviBankAdvantageMain:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429);
}

.gaviBankQuoteMark{
    margin-bottom:8px;
    color:#b97800;
    font-family:Georgia,serif;
    font-size:75px;
    line-height:.7;
}

.gaviBankAdvantageMain p{
    margin:0 0 19px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gaviBankAdvantageMain p:last-child{
    margin-bottom:0;
}

.gaviBankAdvantageMain strong{
    color:#092f62;
}

.gaviBankAdvantagePoints{
    display:flex;
    flex-direction:column;
    gap:13px;
}

.gaviBankAdvantagePoint{
    display:flex;
    gap:17px;
    padding:22px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:#fff;
    transition:all .3s ease;
}

.gaviBankAdvantagePoint:hover{
    border-color:rgba(185,120,0,.4);
    transform:translateX(4px);
    box-shadow:0 12px 28px rgba(6,29,61,.07);
}

.gaviBankAdvantagePoint > span{
    flex:0 0 39px;
    width:39px;
    height:39px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviBankAdvantagePoint strong{
    display:block;
    margin-bottom:5px;
    color:#061d3d;
    font-size:17px;
}

.gaviBankAdvantagePoint p{
    margin:0;
    color:#627184;
    font-size:15px;
    line-height:1.6;
}


/* =========================================================
   SECTION 03 — BANK COVERAGE
========================================================= */

.gaviBankCoverage{
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 15% 20%,rgba(185,120,0,.12),transparent 28%),
        linear-gradient(135deg,#04152d,#061d3d 58%,#092f62);
    color:#fff;
}

.gaviBankHeadingLight h2{
    color:#fff;
}

.gaviBankHeadingLight > p{
    color:#bac8d7;
}

.gaviBankCoverageGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.gaviBankCard{
    position:relative;
    padding:30px 25px 26px;
    border:1px solid rgba(240,180,41,.2);
    border-radius:9px;
    background:rgba(255,255,255,.055);
    box-shadow:0 18px 40px rgba(0,0,0,.13);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviBankCard:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:3px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviBankCard:hover{
    transform:translateY(-7px);
    border-color:rgba(240,180,41,.48);
    background:rgba(255,255,255,.075);
}

.gaviBankCardNumber{
    position:absolute;
    top:17px;
    right:18px;
    color:rgba(255,255,255,.2);
    font-size:15px;
    font-weight:900;
}

.gaviBankCardLogo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:58px;
    min-height:44px;
    margin-bottom:19px;
    padding:7px 11px;
    border:1px solid rgba(240,180,41,.35);
    border-radius:4px;
    background:rgba(185,120,0,.12);
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviBankCard h3{
    margin:0 0 13px;
    color:#fff;
    font-size:22px;
    line-height:1.3;
}

.gaviBankCard p{
    margin:0;
    color:#b9c7d6;
    font-size:15px;
    line-height:1.72;
}

.gaviBankCard p strong{
    color:#f0b429;
}

.gaviBankCardTags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:22px;
}

.gaviBankCardTags span{
    padding:6px 8px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:3px;
    color:#dbe4ee;
    font-size:15px;
    line-height:1.3;
}

.gaviBankCoverageNote{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin-top:28px;
    padding:18px 20px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:7px;
    background:rgba(255,255,255,.045);
}

.gaviBankNoteIcon{
    flex:0 0 27px;
    width:27px;
    height:27px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #b97800;
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviBankCoverageNote p{
    margin:0;
    color:#aebdcd;
    font-size:15px;
    line-height:1.65;
}

.gaviBankCoverageNote strong{
    color:#f0b429;
}


/* =========================================================
   SECTION 04 — REQUIREMENTS
========================================================= */

.gaviBankRequirements{
    padding:90px 0;
    background:#fff;
}

.gaviBankRequirementGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:17px;
}

.gaviBankRequirementCard{
    position:relative;
    min-height:285px;
    padding:27px 22px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:#fff;
    box-shadow:0 10px 27px rgba(6,29,61,.045);
    transition:all .3s ease;
    overflow:hidden;
}

.gaviBankRequirementCard:after{
    content:"";
    position:absolute;
    width:80px;
    height:80px;
    right:-35px;
    bottom:-35px;
    border-radius:50%;
    background:rgba(185,120,0,.07);
}

.gaviBankRequirementCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.45);
    box-shadow:0 18px 35px rgba(6,29,61,.09);
}

.gaviBankRequirementIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:51px;
    height:42px;
    margin-bottom:20px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviBankRequirementCard h3{
    margin:0 0 12px;
    color:#061d3d;
    font-size:20px;
    line-height:1.35;
}

.gaviBankRequirementCard h3 strong{
    color:#b97800;
}

.gaviBankRequirementCard p{
    margin:0;
    color:#5b6b7e;
    font-size:15px;
    line-height:1.7;
}

.gaviBankRequirementCard p strong{
    color:#092f62;
}


/* =========================================================
   SECTION 05 — PAN INDIA ADVANTAGE
========================================================= */

.gaviBankNational{
    padding:90px 0;
    background:#f5f7fa;
}

.gaviBankNationalGrid{
    display:grid;
    grid-template-columns:1.3fr .7fr;
    gap:45px;
    align-items:center;
}

.gaviBankNationalContent h2{
    max-width:750px;
    margin:0 0 18px;
    color:#061d3d;
    font-size:clamp(32px,3.8vw,50px);
    line-height:1.13;
    letter-spacing:-1px;
}

.gaviBankNationalContent h2 strong{
    color:#b97800;
}

.gaviBankNationalContent p{
    max-width:820px;
    margin:0 0 16px;
    color:#536376;
    font-size:16px;
    line-height:1.8;
}

.gaviBankNationalContent p strong{
    color:#092f62;
}

.gaviBankCityStrip{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:25px;
}

.gaviBankCityStrip span{
    padding:7px 11px;
    border:1px solid #d7dfe8;
    border-radius:3px;
    background:#fff;
    color:#092f62;
    font-size:15px;
    font-weight:750;
}

.gaviBankNationalPanel{
    position:relative;
    min-height:330px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:40px;
    border:1px solid rgba(240,180,41,.35);
    border-radius:10px;
    background:linear-gradient(145deg,#04152d,#092f62);
    box-shadow:0 25px 50px rgba(6,29,61,.16);
    overflow:hidden;
}

.gaviBankNationalPanel:before{
    content:"";
    position:absolute;
    width:230px;
    height:230px;
    right:-85px;
    top:-90px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gaviBankNationalPanel:after{
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    right:-50px;
    top:-50px;
    border:1px solid rgba(240,180,41,.14);
    border-radius:50%;
}

.gaviBankNationalPanelTop span{
    display:block;
    color:#f0b429;
    font-size:68px;
    line-height:1;
    font-weight:850;
    letter-spacing:-2px;
}

.gaviBankNationalPanelTop small{
    display:block;
    margin-top:7px;
    color:#d7e0e9;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.4px;
}

.gaviBankNationalPanelLine{
    width:100%;
    height:1px;
    margin:28px 0;
    background:linear-gradient(90deg,#b97800,rgba(240,180,41,.05));
}

.gaviBankNationalPanelBottom strong{
    display:block;
    margin-bottom:7px;
    color:#fff;
    font-size:25px;
}

.gaviBankNationalPanelBottom span{
    color:#aebdcd;
    font-size:15px;
    line-height:1.55;
}


/* =========================================================
   SECTION 06 — FINAL CTA
========================================================= */

.gaviBankFinal{
    padding:65px 0 80px;
    background:#fff;
}

.gaviBankFinalBox{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    padding:34px 38px;
    border:1px solid rgba(185,120,0,.38);
    border-radius:9px;
    background:
        linear-gradient(110deg,#04152d 0%,#061d3d 58%,#092f62 100%);
    box-shadow:0 20px 45px rgba(6,29,61,.13);
}

.gaviBankFinalEyebrow{
    display:block;
    margin-bottom:8px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviBankFinalContent h2{
    max-width:750px;
    margin:0 0 9px;
    color:#fff;
    font-size:29px;
    line-height:1.3;
}

.gaviBankFinalContent h2 strong{
    color:#f0b429;
}

.gaviBankFinalContent p{
    max-width:700px;
    margin:0;
    color:#b9c7d6;
    font-size:15px;
    line-height:1.65;
}

.gaviBankFinalActions{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    min-width:205px;
}

.gaviBankFinalCta{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:54px;
    padding:0 21px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviBankFinalCta:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 27px rgba(185,120,0,.32);
}

.gaviBankFinalCta span{
    font-size:20px;
}

.gaviBankFinalPhone{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:48px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviBankFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}

.gaviBankFinalPhone span{
    color:#f0b429;
    font-size:19px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

    .gaviBankHeroInner{
        grid-template-columns:minmax(0,1.15fr) minmax(320px,.75fr);
        gap:40px;
    }

    .gaviBankHeroOrb{
        width:330px;
        height:330px;
    }

    .gaviBankHeroOrbInner{
        width:220px;
        height:220px;
    }

    .gaviBankFloatingTop{
        left:-10px;
    }

    .gaviBankFloatingBottom{
        right:-5px;
    }

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

}


@media (max-width:991px){

    .gaviBankHero{
        padding:70px 0;
    }

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

    .gaviBankHeroContent{
        text-align:center;
    }

    .gaviBankHeroEyebrow,
    .gaviBankHeroActions{
        justify-content:center;
    }

    .gaviBankHeroLead{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviBankHeroVisual{
        min-height:430px;
        margin-top:5px;
    }

    .gaviBankHeroOrb{
        width:350px;
        height:350px;
    }

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

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

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

    .gaviBankFinalBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviBankFinalActions{
        width:100%;
        max-width:360px;
        flex-direction:row;
    }

    .gaviBankFinalCta,
    .gaviBankFinalPhone{
        flex:1;
    }

}


@media (max-width:767px){

    .gaviBankHero{
        padding:55px 0 60px;
    }

    .gaviBankHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviBankHero h1 strong{
        font-size:21px;
    }

    .gaviBankHeroLead{
        font-size:15px;
        line-height:1.72;
    }

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

    .gaviBankHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviBankPrimaryCta,
    .gaviBankPhoneCta{
        width:100%;
        justify-content:center;
    }

    .gaviBankHeroVisual{
        min-height:390px;
    }

    .gaviBankHeroOrb{
        width:300px;
        height:300px;
    }

    .gaviBankHeroOrbInner{
        width:190px;
        height:190px;
    }

    .gaviBankHeroOrbInner strong{
        font-size:34px;
    }

    .gaviBankFloatingCard{
        padding:10px;
    }

    .gaviBankFloatingTop{
        left:0;
        top:35px;
    }

    .gaviBankFloatingBottom{
        right:0;
        bottom:35px;
    }

    .gaviBankSectionHeading h2{
        font-size:32px;
    }

    .gaviBankAdvantageMain{
        padding:30px 24px;
    }

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

    .gaviBankRequirementCard{
        min-height:240px;
    }

    .gaviBankNationalContent h2{
        font-size:32px;
    }

    .gaviBankNationalPanel{
        min-height:280px;
    }

    .gaviBankFinal{
        padding:45px 0 60px;
    }

    .gaviBankFinalBox{
        padding:27px 22px;
    }

    .gaviBankFinalContent h2{
        font-size:24px;
    }

    .gaviBankFinalActions{
        flex-direction:column;
        max-width:none;
    }

    .gaviBankFinalCta,
    .gaviBankFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

    .gaviBankHeroVisual{
        min-height:350px;
    }

    .gaviBankHeroOrb{
        width:270px;
        height:270px;
    }

    .gaviBankHeroOrbInner{
        width:165px;
        height:165px;
    }

    .gaviBankHeroOrbInner strong{
        font-size:29px;
    }

    .gaviBankHeroOrbLabel,
    .gaviBankHeroOrbInner > span:last-child{
        font-size:15px;
    }

    .gaviBankFloatingCard{
        display:none;
    }

    .gaviBankCoverageNote{
        padding:15px;
    }

}
/* =========================================================
   NRI INDIA — NATIONAL PROPERTY SALE JOURNEY
   HERO
   Namespace: gaviNriHero
========================================================= */

.gaviNriHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 82% 18%,rgba(185,120,0,.16),transparent 27%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviNriHeroPattern{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(240,180,41,.35) 1px,transparent 1px),
        linear-gradient(90deg,rgba(240,180,41,.35) 1px,transparent 1px);
    background-size:70px 70px;
    mask-image:linear-gradient(to right,transparent,#000 35%,#000 80%,transparent);
    pointer-events:none;
}

.gaviNriHeroGrid{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);
    gap:65px;
    align-items:center;
}

.gaviNriHeroContent{
    position:relative;
    z-index:2;
}

.gaviNriHeroEyebrow{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviNriHeroEyebrow span{
    width:44px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviNriHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(40px,4.5vw,68px);
    line-height:1.02;
    font-weight:850;
    letter-spacing:-1.8px;
}

.gaviNriHero h1 strong{
    display:block;
    margin-top:10px;
    color:#f0b429;
    font-size:.55em;
    line-height:1.2;
    letter-spacing:-.3px;
}

.gaviNriHeroRule{
    width:85px;
    height:3px;
    margin:27px 0 22px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviNriHero h2{
    margin:0 0 19px;
    color:#fff;
    font-size:26px;
    line-height:1.35;
    font-weight:700;
}

.gaviNriHero h2 span{
    color:#f0b429;
}

.gaviNriHeroLead{
    max-width:850px;
    margin:0;
    color:#d9e3ed;
    font-size:17px;
    line-height:1.8;
}

.gaviNriHeroLead strong{
    color:#fff;
    font-weight:750;
}

.gaviNriHeroHighlights{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:27px;
}

.gaviNriHeroHighlight{
    display:flex;
    align-items:flex-start;
    gap:10px;
    min-height:92px;
    padding:13px;
    border:1px solid rgba(240,180,41,.24);
    border-radius:6px;
    background:rgba(255,255,255,.055);
}

.gaviNriHeroHighlight > span{
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNriHeroHighlight strong{
    display:block;
    margin-bottom:5px;
    color:#fff;
    font-size:15px;
}

.gaviNriHeroHighlight small{
    display:block;
    color:#aebdcd;
    font-size:15px;
    line-height:1.45;
}

.gaviNriHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:29px;
}

.gaviNriPrimaryCta,
.gaviNriTaxCta,
.gaviNriFinalCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:57px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.22);
    transition:all .3s ease;
}

.gaviNriPrimaryCta:hover,
.gaviNriTaxCta:hover,
.gaviNriFinalCta:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(185,120,0,.32);
}

.gaviNriPrimaryCta span,
.gaviNriTaxCta span,
.gaviNriFinalCta span{
    font-size:21px;
}

.gaviNriPhoneCta{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:57px;
    padding:7px 17px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    text-decoration:none !important;
}

.gaviNriPhoneIcon{
    color:#f0b429;
    font-size:22px;
}

.gaviNriPhoneCta small{
    display:block;
    color:#aebdcd;
    font-size:15px;
}

.gaviNriPhoneCta strong{
    display:block;
    margin-top:2px;
    color:#fff;
    font-size:17px;
}


/* =========================================================
   HERO VISUAL — ABSTRACT INDIA NETWORK
========================================================= */

.gaviNriHeroVisual{
    position:relative;
    min-height:560px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviNriIndiaCard{
    position:relative;
    z-index:3;
    width:min(100%,410px);
    min-height:450px;
    padding:24px;
    border:1px solid rgba(240,180,41,.38);
    border-radius:14px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
    box-shadow:
        0 30px 80px rgba(0,0,0,.3),
        inset 0 1px 0 rgba(255,255,255,.13);
    backdrop-filter:blur(10px);
}

.gaviNriIndiaCardTop{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:15px;
    padding-bottom:17px;
    border-bottom:1px solid rgba(240,180,41,.18);
}

.gaviNriIndiaCardTop span{
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:2px;
}

.gaviNriIndiaCardTop strong{
    color:#dce6ef;
    font-size:15px;
    letter-spacing:1px;
}

.gaviNriMapCore{
    position:relative;
    height:330px;
    margin:10px 0;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviNriMapCore:before{
    content:"";
    position:absolute;
    width:145px;
    height:220px;
    background:
        linear-gradient(135deg,transparent 8%,rgba(185,120,0,.16) 9%,rgba(185,120,0,.08) 85%,transparent 86%);
    clip-path:polygon(
        48% 0,
        67% 13%,
        80% 27%,
        71% 42%,
        84% 57%,
        73% 73%,
        58% 66%,
        49% 84%,
        38% 100%,
        30% 80%,
        17% 69%,
        23% 51%,
        8% 37%,
        23% 21%,
        31% 6%
    );
    border:1px solid rgba(240,180,41,.25);
}

.gaviNriMapRing{
    position:absolute;
    border:1px solid rgba(240,180,41,.25);
    border-radius:50%;
}

.gaviNriMapRingOne{
    width:220px;
    height:220px;
}

.gaviNriMapRingTwo{
    width:300px;
    height:300px;
    border-color:rgba(255,255,255,.08);
}

.gaviNriMapCenter{
    position:relative;
    z-index:2;
    width:72px;
    height:72px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #f0b429;
    border-radius:50%;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d;
    font-size:21px;
    font-weight:900;
    box-shadow:0 0 0 10px rgba(185,120,0,.08);
}

.gaviNriPin{
    position:absolute;
    z-index:4;
    padding:7px 9px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:4px;
    background:#061d3d;
    color:#fff;
    font-size:15px;
    font-weight:700;
}

.gaviNriPin:before{
    content:"";
    display:inline-block;
    width:6px;
    height:6px;
    margin-right:6px;
    border-radius:50%;
    background:#f0b429;
}

.gaviNriPinMumbai{
    top:45px;
    left:15px;
}

.gaviNriPinBengaluru{
    bottom:54px;
    left:10px;
}

.gaviNriPinChennai{
    bottom:32px;
    right:13px;
}

.gaviNriPinHyderabad{
    top:92px;
    right:2px;
}

.gaviNriIndiaCardBottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:17px;
    border-top:1px solid rgba(240,180,41,.18);
}

.gaviNriIndiaCardBottom small{
    display:block;
    color:#aebdcd;
    font-size:15px;
}

.gaviNriIndiaCardBottom strong{
    display:block;
    margin-top:3px;
    color:#fff;
    font-size:16px;
}

.gaviNriIndiaCardBottom > span{
    padding:7px 10px;
    border:1px solid rgba(240,180,41,.3);
    color:#f0b429;
    font-size:15px;
    font-weight:800;
}

.gaviNriOrbit{
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(240,180,41,.12);
}

.gaviNriOrbitOne{
    width:460px;
    height:460px;
}

.gaviNriOrbitTwo{
    width:570px;
    height:570px;
    border-color:rgba(255,255,255,.055);
}

.gaviNriFloating{
    position:absolute;
    z-index:5;
    display:flex;
    flex-direction:column;
    gap:3px;
    padding:12px 15px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:6px;
    background:#04152d;
    box-shadow:0 15px 35px rgba(0,0,0,.25);
}

.gaviNriFloating strong{
    color:#f0b429;
    font-size:18px;
}

.gaviNriFloating span{
    color:#cbd7e4;
    font-size:15px;
}

.gaviNriFloatingOne{
    top:70px;
    left:-5px;
}

.gaviNriFloatingTwo{
    right:-7px;
    bottom:65px;
}


/* =========================================================
   COMMON SECTION HEADING
========================================================= */

.gaviNriSectionHeading{
    max-width:830px;
    margin:0 auto 46px;
    text-align:center;
}

.gaviNriSectionEyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviNriSectionEyebrow span{
    width:32px;
    height:2px;
    background:#b97800;
}

.gaviNriSectionHeading h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(31px,3.4vw,47px);
    line-height:1.16;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviNriSectionHeading h2 strong{
    color:#b97800;
}

.gaviNriSectionHeading p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 1 — FRAMEWORK
========================================================= */

.gaviNriFramework{
    position:relative;
    padding:90px 0;
    background:#f7f9fc;
}

.gaviNriFramework:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

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

.gaviNriFrameworkCard{
    position:relative;
    min-height:315px;
    padding:27px 22px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:#fff;
    box-shadow:0 9px 28px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviNriFrameworkCard:after{
    content:"";
    position:absolute;
    right:-45px;
    bottom:-45px;
    width:120px;
    height:120px;
    border-radius:50%;
    background:rgba(185,120,0,.055);
}

.gaviNriFrameworkCard:hover{
    transform:translateY(-7px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 20px 42px rgba(6,29,61,.11);
}

.gaviNriStep{
    position:absolute;
    top:16px;
    right:18px;
    color:#dfe5ed;
    font-size:15px;
    font-weight:900;
}

.gaviNriStepIcon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:55px;
    min-height:42px;
    margin-bottom:20px;
    padding:6px 10px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNriFrameworkCard h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:21px;
    line-height:1.3;
}

.gaviNriFrameworkCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.72;
}

.gaviNriFrameworkCard p strong{
    color:#092f62;
}

.gaviNriFrameworkNote{
    display:flex;
    align-items:flex-start;
    gap:14px;
    margin-top:25px;
    padding:20px 22px;
    border-left:4px solid #b97800;
    background:#fff;
    box-shadow:0 8px 24px rgba(6,29,61,.055);
}

.gaviNriFrameworkNoteIcon{
    flex:0 0 28px;
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#b97800;
    color:#fff;
    font-size:15px;
    font-weight:900;
}

.gaviNriFrameworkNote p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.7;
}

.gaviNriFrameworkNote strong{
    color:#061d3d;
}


/* =========================================================
   SECTION 2 — CITIES
========================================================= */

.gaviNriCities{
    padding:90px 0;
    background:#fff;
}

.gaviNriCitiesHeading{
    margin-bottom:45px;
}

.gaviNriCityGrid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:15px;
}

.gaviNriCityCard{
    position:relative;
    min-height:330px;
    padding:26px 20px 22px;
    border:1px solid #dce3ec;
    border-radius:8px;
    background:
        linear-gradient(145deg,#fff 0%,#f8fafc 100%);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviNriCityCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
}

.gaviNriCityCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.38);
    box-shadow:0 18px 38px rgba(6,29,61,.09);
}

.gaviNriCityNumber{
    position:absolute;
    top:17px;
    right:16px;
    color:#dfe5ed;
    font-size:15px;
    font-weight:900;
}

.gaviNriCityRegion{
    display:block;
    margin-bottom:14px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1px;
}

.gaviNriCityCard h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:26px;
    line-height:1.2;
}

.gaviNriCityCard p{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.72;
}

.gaviNriCityCard p strong{
    color:#092f62;
}

.gaviNriCityTag{
    position:absolute;
    left:20px;
    bottom:21px;
    padding:6px 9px;
    border:1px solid #dce3ec;
    border-radius:3px;
    color:#092f62;
    background:#fff;
    font-size:15px;
    font-weight:750;
}


/* =========================================================
   SECTION 3 — TAX / DOCUMENTATION
========================================================= */

.gaviNriTax{
    padding:90px 0;
    background:
        linear-gradient(135deg,#04152d,#061d3d 62%,#092f62);
    color:#fff;
}

.gaviNriTaxGrid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);
    gap:60px;
    align-items:center;
}

.gaviNriLightEyebrow{
    color:#f0b429;
}

.gaviNriLightEyebrow span{
    background:#f0b429;
}

.gaviNriTaxContent h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.16;
    font-weight:850;
}

.gaviNriTaxContent h2 strong{
    color:#f0b429;
}

.gaviNriTaxContent p{
    max-width:760px;
    margin:0 0 17px;
    color:#d6e0ea;
    font-size:16px;
    line-height:1.78;
}

.gaviNriTaxContent p strong{
    color:#fff;
}

.gaviNriTaxCta{
    margin-top:14px;
}

.gaviNriTaxPanel{
    padding:26px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:10px;
    background:rgba(255,255,255,.055);
    box-shadow:0 25px 60px rgba(0,0,0,.22);
}

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

.gaviNriTaxPanelHeader span{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviNriTaxPanelHeader strong{
    color:#fff;
    font-size:21px;
}

.gaviNriTaxPoint{
    display:flex;
    align-items:center;
    gap:13px;
    padding:17px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.gaviNriTaxPoint > span{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.35);
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNriTaxPoint strong{
    display:block;
    color:#fff;
    font-size:15px;
}

.gaviNriTaxPoint small{
    display:block;
    margin-top:3px;
    color:#aebdcd;
    font-size:15px;
    line-height:1.45;
}

.gaviNriTaxPanelFooter{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding-top:19px;
}

.gaviNriTaxPanelFooter span{
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNriTaxPanelFooter strong{
    color:#fff;
    font-size:15px;
}


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

.gaviNriFinal{
    padding:65px 0;
    background:#f7f9fc;
}

.gaviNriFinalBox{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    padding:34px 38px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:9px;
    background:
        linear-gradient(110deg,#04152d 0%,#092f62 72%,#061d3d 100%);
    box-shadow:0 20px 45px rgba(6,29,61,.13);
}

.gaviNriFinalEyebrow{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviNriFinalContent h2{
    margin:0 0 10px;
    color:#fff;
    font-size:30px;
    line-height:1.25;
}

.gaviNriFinalContent h2 strong{
    color:#f0b429;
}

.gaviNriFinalContent p{
    max-width:700px;
    margin:0;
    color:#cbd7e4;
    font-size:15px;
    line-height:1.7;
}

.gaviNriFinalContent p strong{
    color:#fff;
}

.gaviNriFinalActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:11px;
}

.gaviNriFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:55px;
    padding:0 19px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}

.gaviNriFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

    .gaviNriHeroGrid{
        grid-template-columns:minmax(0,1fr) minmax(350px,.78fr);
        gap:35px;
    }

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

    .gaviNriHeroHighlight{
        min-height:auto;
    }

    .gaviNriCityGrid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

}


@media (max-width:991px){

    .gaviNriHero{
        padding:70px 0;
    }

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

    .gaviNriHeroContent{
        text-align:center;
    }

    .gaviNriHeroEyebrow,
    .gaviNriHeroActions{
        justify-content:center;
    }

    .gaviNriHeroRule{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviNriHeroVisual{
        min-height:510px;
        margin-top:5px;
    }

    .gaviNriFramework,
    .gaviNriCities,
    .gaviNriTax{
        padding:70px 0;
    }

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

    .gaviNriTaxGrid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .gaviNriFinalBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviNriFinalActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviNriHero{
        padding:55px 0;
    }

    .gaviNriHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviNriHero h1 strong{
        font-size:22px;
    }

    .gaviNriHeroLead{
        font-size:15px;
        line-height:1.72;
    }

    .gaviNriHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNriPrimaryCta,
    .gaviNriPhoneCta{
        width:100%;
    }

    .gaviNriHeroVisual{
        min-height:430px;
    }

    .gaviNriIndiaCard{
        width:94%;
        min-height:410px;
    }

    .gaviNriOrbitOne{
        width:390px;
        height:390px;
    }

    .gaviNriOrbitTwo{
        width:450px;
        height:450px;
    }

    .gaviNriFloating{
        display:none;
    }

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

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

    .gaviNriSectionHeading h2,
    .gaviNriTaxContent h2{
        font-size:32px;
    }

    .gaviNriFinal{
        padding:50px 0;
    }

    .gaviNriFinalBox{
        padding:27px 21px;
    }

    .gaviNriFinalContent h2{
        font-size:25px;
    }

    .gaviNriFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNriFinalCta,
    .gaviNriFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

    .gaviNriHeroVisual{
        min-height:390px;
    }

    .gaviNriIndiaCard{
        width:100%;
        padding:18px;
    }

    .gaviNriMapCore{
        height:280px;
    }

    .gaviNriPin{
        padding:6px 7px;
        font-size:15px;
    }

    .gaviNriPinMumbai{
        left:0;
    }

    .gaviNriPinBengaluru{
        left:0;
    }

    .gaviNriPinHyderabad{
        right:0;
    }

    .gaviNriPinChennai{
        right:0;
    }

    .gaviNriTaxPanel{
        padding:20px 17px;
    }

}
/* =========================================================
   INDIA GRADE A COMMERCIAL REAL ESTATE
   HERO
   Namespace: gaviCreHero
========================================================= */

.gaviCreHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 85% 15%,rgba(240,180,41,.14),transparent 25%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviCreHeroPattern{
    position:absolute;
    inset:0;
    opacity:.055;
    background-image:
        linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);
    background-size:70px 70px;
    pointer-events:none;
}

.gaviCreHeroGlow{
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(240,180,41,.15);
    pointer-events:none;
}

.gaviCreHeroGlowOne{
    width:450px;
    height:450px;
    right:-230px;
    top:-220px;
    box-shadow:0 0 100px rgba(185,120,0,.12);
}

.gaviCreHeroGlowTwo{
    width:260px;
    height:260px;
    left:-150px;
    bottom:-180px;
}

.gaviCreHeroInner{
    position:relative;
    max-width:1050px;
    margin:0 auto;
    text-align:center;
    z-index:2;
}

.gaviCreHeroEyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviCreHeroEyebrow span{
    width:40px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCreHero h1{
    margin:0;
    color:#fff;
    font-size:clamp(38px,5vw,67px);
    line-height:1.05;
    letter-spacing:-1.8px;
    font-weight:850;
}

.gaviCreHero h1 strong{
    display:block;
    margin-top:10px;
    color:#f0b429;
    font-size:.58em;
    line-height:1.25;
    letter-spacing:-.3px;
}

.gaviCreHeroRule{
    width:90px;
    height:3px;
    margin:27px auto 25px;
    border-radius:10px;
    background:linear-gradient(90deg,#b97800,#f0b429,#b97800);
}

.gaviCreHeroIntro{
    max-width:850px;
    margin:0 auto;
    color:#d9e3ee;
    font-size:18px;
    line-height:1.75;
}

.gaviCreHeroIntro strong{
    color:#fff;
}

.gaviCreHeroStats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin:34px auto 30px;
    max-width:880px;
}

.gaviCreHeroStat{
    padding:17px 12px;
    border:1px solid rgba(240,180,41,.23);
    border-radius:6px;
    background:rgba(255,255,255,.045);
}

.gaviCreHeroStat strong{
    display:block;
    color:#f0b429;
    font-size:17px;
    line-height:1.35;
}

.gaviCreHeroStat span{
    display:block;
    margin-top:4px;
    color:#b8c6d5;
    font-size:15px;
}

.gaviCreHeroActions{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
}

.gaviCreHeroPrimary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 28px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviCreHeroPrimary:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 36px rgba(185,120,0,.35);
}

.gaviCreHeroPrimary span{
    font-size:22px;
}

.gaviCreHeroPhone{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:56px;
    padding:7px 18px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    text-decoration:none !important;
}

.gaviCreHeroPhoneIcon{
    color:#f0b429;
    font-size:21px;
}

.gaviCreHeroPhone small,
.gaviCreHeroPhone strong{
    display:block;
    text-align:left;
}

.gaviCreHeroPhone small{
    color:#aebdcd;
    font-size:15px;
}

.gaviCreHeroPhone strong{
    color:#fff;
    font-size:17px;
}


/* =========================================================
   SHARED SECTION HEADING
========================================================= */

.gaviCreSectionHeading{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviCreSectionEyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviCreSectionEyebrow span{
    width:32px;
    height:2px;
    background:#b97800;
}

.gaviCreSectionHeading h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.15;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviCreSectionHeading h2 strong{
    color:#b97800;
}

.gaviCreSectionHeading p{
    margin:0;
    color:#526276;
    font-size:16px;
    line-height:1.75;
}

.gaviCreSectionHeading p strong{
    color:#092f62;
}


/* =========================================================
   SECTION 1
   MARKET CARDS
   Namespace: gaviCreMarkets
========================================================= */

.gaviCreMarkets{
    position:relative;
    padding:90px 0;
    background:#f7f9fc;
}

.gaviCreMarkets:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(
        90deg,
        #061d3d,
        #092f62,
        #b97800,
        #f0b429,
        #b97800,
        #092f62,
        #061d3d
    );
}

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

.gaviCreMarketCard{
    position:relative;
    min-height:405px;
    padding:25px 21px 23px;
    border:1px solid #dce4ed;
    border-radius:9px;
    background:#fff;
    box-shadow:0 10px 28px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviCreMarketCard:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
    transform:scaleX(.3);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviCreMarketCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.42);
    box-shadow:0 20px 42px rgba(6,29,61,.11);
}

.gaviCreMarketCard:hover:before{
    transform:scaleX(1);
}

.gaviCreMarketFeatured{
    border-color:rgba(185,120,0,.38);
}

.gaviCreMarketGold{
    background:
        linear-gradient(145deg,#fff,#fffaf0);
}

.gaviCreMarketTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:22px;
}

.gaviCreMarketNumber{
    color:#c8d1dc;
    font-size:15px;
    font-weight:900;
}

.gaviCreMarketTag{
    padding:6px 8px;
    border-radius:3px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:800;
    letter-spacing:.5px;
}

.gaviCreMarketCard h3{
    margin:0 0 5px;
    color:#061d3d;
    font-size:22px;
    line-height:1.3;
    font-weight:800;
}

.gaviCreMarketCard h3 strong{
    color:#b97800;
}

.gaviCreMarketLocation{
    margin:0 0 19px;
    color:#667487;
    font-size:15px;
    line-height:1.5;
}

.gaviCreMarketMetrics{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-bottom:19px;
}

.gaviCreMarketMetrics > div{
    min-height:92px;
    padding:12px 10px;
    border:1px solid #e1e7ee;
    border-radius:5px;
    background:#f8fafc;
}

.gaviCreMarketMetrics small{
    display:block;
    margin-bottom:5px;
    color:#69778a;
    font-size:15px;
}

.gaviCreMarketMetrics strong{
    display:inline;
    color:#092f62;
    font-size:20px;
    font-weight:850;
}

.gaviCreMarketMetrics span{
    color:#69778a;
    font-size:15px;
}

.gaviCreMarketCard > p:last-child{
    margin:0;
    color:#526276;
    font-size:15px;
    line-height:1.7;
}

.gaviCreMarketCard > p:last-child strong{
    color:#092f62;
}

.gaviCreMarketSpecial{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:92px;
    margin-bottom:19px;
    padding:14px;
    border:1px solid rgba(185,120,0,.3);
    border-radius:5px;
    background:rgba(185,120,0,.06);
}

.gaviCreMarketSpecial span{
    color:#6d5a32;
    font-size:15px;
}

.gaviCreMarketSpecial strong{
    color:#b97800;
    font-size:25px;
}


/* =========================================================
   SECTION 2
   METHODOLOGY
   Namespace: gaviCreMethod
========================================================= */

.gaviCreMethod{
    position:relative;
    padding:92px 0;
    background:
        linear-gradient(125deg,#04152d 0%,#061d3d 65%,#092f62 100%);
    color:#fff;
    overflow:hidden;
}

.gaviCreMethod:after{
    content:"";
    position:absolute;
    width:430px;
    height:430px;
    right:-230px;
    bottom:-240px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gaviCreMethodGrid{
    position:relative;
    display:grid;
    grid-template-columns:1fr .9fr;
    gap:70px;
    align-items:center;
    z-index:2;
}

.gaviCreDarkEyebrow{
    color:#f0b429;
}

.gaviCreDarkEyebrow span{
    background:#f0b429;
}

.gaviCreMethodContent h2{
    margin:0 0 21px;
    color:#fff;
    font-size:clamp(31px,3.6vw,50px);
    line-height:1.15;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviCreMethodContent h2 strong{
    color:#f0b429;
}

.gaviCreMethodContent > p{
    margin:0 0 18px;
    color:#d2dce7;
    font-size:16px;
    line-height:1.8;
}

.gaviCreMethodContent > p strong{
    color:#fff;
}

.gaviCreMethodHighlight{
    display:flex;
    gap:14px;
    align-items:flex-start;
    margin-top:28px;
    padding:18px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:7px;
    background:rgba(255,255,255,.055);
}

.gaviCreMethodHighlightIcon{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d;
    font-weight:900;
}

.gaviCreMethodHighlight strong{
    display:block;
    margin-bottom:4px;
    color:#f0b429;
    font-size:17px;
}

.gaviCreMethodHighlight p{
    margin:0;
    color:#cbd6e2;
    font-size:15px;
    line-height:1.6;
}

.gaviCreMethodSteps{
    border-left:1px solid rgba(240,180,41,.25);
}

.gaviCreMethodStep{
    position:relative;
    display:grid;
    grid-template-columns:58px 1fr;
    gap:18px;
    padding:0 0 27px 27px;
}

.gaviCreMethodStep:last-child{
    padding-bottom:0;
}

.gaviCreMethodStep > span{
    position:relative;
    width:43px;
    height:43px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-left:-49px;
    border:1px solid #b97800;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
}

.gaviCreMethodStep strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:17px;
}

.gaviCreMethodStep p{
    margin:0;
    color:#afbdcc;
    font-size:15px;
    line-height:1.6;
}


/* =========================================================
   SECTION 3
   MATRIX
   Namespace: gaviCreMatrix
========================================================= */

.gaviCreMatrix{
    padding:90px 0;
    background:#fff;
}

.gaviCreMatrixTableWrap{
    overflow-x:auto;
    border:1px solid #dce4ed;
    border-radius:9px;
    box-shadow:0 12px 32px rgba(6,29,61,.07);
}

.gaviCreMatrixTable{
    width:100%;
    min-width:850px;
    border-collapse:collapse;
    background:#fff;
}

.gaviCreMatrixTable th{
    padding:17px 18px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    line-height:1.4;
    font-weight:800;
    text-align:left;
    border-right:1px solid rgba(255,255,255,.08);
}

.gaviCreMatrixTable td{
    padding:18px;
    border-bottom:1px solid #e5eaf0;
    color:#526276;
    font-size:15px;
    line-height:1.6;
    vertical-align:top;
}

.gaviCreMatrixTable tr:last-child td{
    border-bottom:0;
}

.gaviCreMatrixTable tbody tr:nth-child(even){
    background:#f8fafc;
}

.gaviCreMatrixTable tbody tr:hover{
    background:#fffaf0;
}

.gaviCreMatrixTable td strong{
    color:#092f62;
    font-weight:800;
}


/* =========================================================
   FINAL CTA
   Namespace: gaviCreFinal
========================================================= */

.gaviCreFinal{
    padding:0 0 90px;
    background:#fff;
}

.gaviCreFinalBox{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    padding:34px 38px;
    border:1px solid rgba(185,120,0,.4);
    border-radius:9px;
    background:
        radial-gradient(circle at 90% 20%,rgba(240,180,41,.12),transparent 25%),
        linear-gradient(110deg,#04152d,#092f62);
    box-shadow:0 20px 45px rgba(6,29,61,.15);
    overflow:hidden;
}

.gaviCreFinalBox:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:5px;
    height:100%;
    background:linear-gradient(#b97800,#f0b429);
}

.gaviCreFinalContent{
    position:relative;
    z-index:2;
}

.gaviCreFinalContent > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviCreFinalContent h2{
    margin:0 0 9px;
    color:#fff;
    font-size:27px;
    line-height:1.3;
    font-weight:800;
}

.gaviCreFinalContent h2 strong{
    color:#f0b429;
}

.gaviCreFinalContent p{
    max-width:700px;
    margin:0;
    color:#c9d4df;
    font-size:15px;
    line-height:1.65;
}

.gaviCreFinalContent p strong{
    color:#fff;
}

.gaviCreFinalActions{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gaviCreFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:54px;
    padding:0 24px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCreFinalButton:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(185,120,0,.3);
}

.gaviCreFinalButton span{
    font-size:21px;
}

.gaviCreFinalPhone{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:54px;
    padding:5px 17px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    text-decoration:none !important;
}

.gaviCreFinalPhone small{
    color:#aebdcd;
    font-size:15px;
}

.gaviCreFinalPhone strong{
    color:#fff;
    font-size:17px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

    .gaviCreMarketGrid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

}


@media (max-width:991px){

    .gaviCreHero{
        padding:70px 0;
    }

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

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

    .gaviCreMethodGrid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .gaviCreFinalBox{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviCreFinalActions{
        justify-content:flex-start;
    }

}


@media (max-width:767px){

    .gaviCreHero{
        padding:55px 0 60px;
    }

    .gaviCreHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviCreHero h1 strong{
        font-size:22px;
    }

    .gaviCreHeroIntro{
        font-size:16px;
        line-height:1.7;
    }

    .gaviCreHeroStats{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .gaviCreHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCreHeroPrimary,
    .gaviCreHeroPhone{
        width:100%;
        justify-content:center;
    }

    .gaviCreMarkets,
    .gaviCreMethod,
    .gaviCreMatrix{
        padding:70px 0;
    }

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

    .gaviCreMarketCard{
        min-height:auto;
    }

    .gaviCreSectionHeading h2{
        font-size:32px;
    }

    .gaviCreMethodContent h2{
        font-size:32px;
    }

    .gaviCreFinal{
        padding-bottom:70px;
    }

    .gaviCreFinalBox{
        padding:28px 23px;
    }

    .gaviCreFinalContent h2{
        font-size:23px;
    }

    .gaviCreFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCreFinalButton,
    .gaviCreFinalPhone{
        width:100%;
        align-items:center;
    }

}


@media (max-width:480px){

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

    .gaviCreHeroStat{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        text-align:left;
    }

    .gaviCreHeroStat span{
        margin-top:0;
        text-align:right;
    }

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

}

/* =========================================================
   INDUSTRIAL CLUSTERS — HERO
   Namespace: gaviIndustrialHero
========================================================= */

.gaviIndustrialHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    color:#fff;
    background:
        radial-gradient(circle at 76% 45%,rgba(185,120,0,.16),transparent 27%),
        linear-gradient(125deg,#04152d 0%,#061d3d 55%,#092f62 100%);
}

.gaviIndustrialHero:before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:60px 60px;
    pointer-events:none;
}

.gaviIndustrialHeroGrid{
    position:relative;
    z-index:1;
}

.gaviIndustrialHeroInner{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);
    gap:60px;
    align-items:center;
}

.gaviIndustrialHeroContent{
    position:relative;
    z-index:2;
}

.gaviIndustrialEyebrow,
.gaviIndustrialSectionEyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.gaviIndustrialEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviIndustrialHero h1{
    max-width:850px;
    margin:0 0 24px;
    color:#fff;
    font-size:clamp(40px,4.6vw,66px);
    line-height:1.04;
    letter-spacing:-1.8px;
    font-weight:800;
}

.gaviIndustrialHero h1 strong{
    display:block;
    margin-top:9px;
    color:#f0b429;
    font-size:.52em;
    line-height:1.28;
    letter-spacing:-.2px;
}

.gaviIndustrialHeroLead{
    max-width:790px;
    margin:0;
    color:#dce5ef;
    font-size:18px;
    line-height:1.75;
}

.gaviIndustrialHeroLead strong{
    color:#fff;
}

.gaviIndustrialHeroStats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:30px;
}

.gaviIndustrialHeroStat{
    min-width:145px;
    padding:14px 17px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:5px;
    background:rgba(255,255,255,.055);
}

.gaviIndustrialHeroStat strong{
    display:block;
    color:#f0b429;
    font-size:18px;
    line-height:1.25;
}

.gaviIndustrialHeroStat span{
    display:block;
    margin-top:4px;
    color:#b9c7d6;
    font-size:15px;
    line-height:1.4;
}

.gaviIndustrialHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:31px;
}

.gaviIndustrialPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviIndustrialPrimaryCta span{
    font-size:22px;
}

.gaviIndustrialPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 34px rgba(185,120,0,.35);
}

.gaviIndustrialPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:56px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:16px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviIndustrialPhoneCta span{
    color:#f0b429;
    font-size:20px;
}

.gaviIndustrialPhoneCta:hover{
    border-color:#b97800;
    background:rgba(185,120,0,.1);
}


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

.gaviIndustrialHeroVisual{
    position:relative;
    min-height:500px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviIndustrialGridPattern{
    position:absolute;
    width:430px;
    height:430px;
    border:1px solid rgba(240,180,41,.13);
    background-image:
        linear-gradient(rgba(240,180,41,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(240,180,41,.08) 1px,transparent 1px);
    background-size:34px 34px;
    transform:rotate(45deg);
    opacity:.75;
}

.gaviIndustrialHeroOrb{
    position:relative;
    width:285px;
    height:285px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:
        radial-gradient(circle,#092f62 0%,#061d3d 60%,#04152d 100%);
    box-shadow:
        0 0 0 1px rgba(240,180,41,.25),
        0 0 70px rgba(185,120,0,.17);
}

.gaviIndustrialOrbRing{
    position:absolute;
    border:1px solid rgba(240,180,41,.32);
    border-radius:50%;
}

.ringOne{
    width:340px;
    height:170px;
    transform:rotate(35deg);
}

.ringTwo{
    width:390px;
    height:205px;
    transform:rotate(-35deg);
}

.gaviIndustrialOrbCore{
    position:relative;
    z-index:3;
    width:150px;
    height:150px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.55);
    border-radius:50%;
    background:linear-gradient(145deg,#092f62,#04152d);
    box-shadow:inset 0 0 35px rgba(185,120,0,.12);
}

.gaviIndustrialOrbCore span{
    color:#f0b429;
    font-size:40px;
    font-weight:900;
    line-height:1;
}

.gaviIndustrialOrbCore small{
    margin-top:8px;
    color:#d9e2ec;
    font-size:15px;
    letter-spacing:3px;
}

.gaviIndustrialClusterTag{
    position:absolute;
    display:flex;
    flex-direction:column;
    padding:11px 15px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:5px;
    background:rgba(4,21,45,.9);
    box-shadow:0 15px 30px rgba(0,0,0,.2);
}

.gaviIndustrialClusterTag strong{
    color:#f0b429;
    font-size:15px;
    letter-spacing:1px;
}

.gaviIndustrialClusterTag span{
    margin-top:3px;
    color:#c0ccda;
    font-size:15px;
}

.tagOne{
    top:62px;
    left:0;
}

.tagTwo{
    right:0;
    top:175px;
}

.tagThree{
    left:35px;
    bottom:45px;
}


/* =========================================================
   COMMON INDUSTRIAL SECTION
========================================================= */

.gaviIndustrialSection{
    position:relative;
    padding:92px 0;
    overflow:hidden;
}

.gaviChennai{
    background:#f8fafc;
}

.gaviPune{
    background:#fff;
}

.gaviGujarat{
    background:#f6f8fb;
}

.gaviIndustrialSectionGrid{
    display:grid;
    grid-template-columns:.82fr 1.18fr;
    gap:65px;
    align-items:center;
}

.gaviPuneGrid{
    grid-template-columns:1.18fr .82fr;
}

.gaviIndustrialSectionIntro{
    position:relative;
}

.gaviIndustrialSectionNumber{
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
    letter-spacing:3px;
}

.gaviIndustrialSectionEyebrow{
    margin-bottom:12px;
    color:#b97800;
}

.gaviIndustrialSection h2{
    margin:0 0 19px;
    color:#061d3d;
    font-size:clamp(32px,3.7vw,50px);
    line-height:1.12;
    font-weight:800;
    letter-spacing:-1px;
}

.gaviIndustrialSection h2 strong{
    color:#b97800;
}

.gaviIndustrialSectionLead{
    max-width:500px;
    margin:0;
    color:#536276;
    font-size:17px;
    line-height:1.75;
}

.gaviIndustrialSectionLead strong{
    color:#092f62;
}

.gaviIndustrialMiniCard{
    display:flex;
    align-items:center;
    gap:13px;
    max-width:390px;
    margin-top:28px;
    padding:15px;
    border:1px solid #dbe2eb;
    border-left:4px solid #b97800;
    border-radius:5px;
    background:#fff;
    box-shadow:0 10px 25px rgba(6,29,61,.06);
}

.gaviIndustrialMiniIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    flex:0 0 52px;
    border-radius:4px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviIndustrialMiniCard strong{
    display:block;
    color:#061d3d;
    font-size:15px;
}

.gaviIndustrialMiniCard small{
    display:block;
    margin-top:4px;
    color:#657387;
    font-size:15px;
    line-height:1.45;
}


/* =========================================================
   CHENNAI HIGHLIGHTS
========================================================= */

.gaviIndustrialClusterHighlights{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:26px;
}

.gaviIndustrialHighlight{
    padding:17px;
    border:1px solid #dce3ec;
    border-radius:6px;
    background:#fff;
    box-shadow:0 8px 20px rgba(6,29,61,.04);
}

.gaviIndustrialHighlight span{
    display:block;
    margin-bottom:9px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviIndustrialHighlight strong{
    display:block;
    color:#061d3d;
    font-size:17px;
}

.gaviIndustrialHighlight small{
    display:block;
    margin-top:5px;
    color:#657387;
    font-size:15px;
    line-height:1.5;
}

.gaviIndustrialText p{
    margin:0 0 17px;
    color:#536276;
    font-size:15px;
    line-height:1.82;
}

.gaviIndustrialText p:last-child{
    margin-bottom:0;
}

.gaviIndustrialText strong{
    color:#092f62;
    font-weight:800;
}

.gaviIndustrialKeywordBar{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:25px;
}

.gaviIndustrialKeywordBar span{
    padding:7px 10px;
    border:1px solid #d8e0ea;
    border-radius:3px;
    background:#fff;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}


/* =========================================================
   PUNE
========================================================= */

.gaviPune:before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:38%;
    height:100%;
    background:
        linear-gradient(135deg,rgba(9,47,98,.035),transparent);
    pointer-events:none;
}

.gaviIndustrialLocationRibbon{
    display:inline-flex;
    flex-direction:column;
    margin-bottom:25px;
    padding:12px 17px;
    border-left:4px solid #b97800;
    background:#f6f8fb;
}

.gaviIndustrialLocationRibbon span{
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.2px;
}

.gaviIndustrialLocationRibbon strong{
    margin-top:4px;
    color:#061d3d;
    font-size:15px;
}

.gaviPuneMatrix{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:27px;
}

.gaviPuneMatrix > div{
    padding:16px 13px;
    border:1px solid #dce3ec;
    border-radius:5px;
    background:#f9fafc;
}

.gaviPuneMatrix span{
    display:block;
    margin-bottom:6px;
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviPuneMatrix strong{
    display:block;
    color:#061d3d;
    font-size:15px;
}

.gaviPuneMatrix small{
    display:block;
    margin-top:4px;
    color:#657387;
    font-size:15px;
}

.gaviIndustrialCompanyStack{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:27px;
}

.gaviIndustrialCompanyStack span{
    padding:8px 10px;
    border:1px solid #dce3ec;
    border-radius:3px;
    color:#092f62;
    background:#fff;
    font-size:15px;
    font-weight:750;
}


/* =========================================================
   GUJARAT
========================================================= */

.gaviGujaratHeader{
    max-width:780px;
    margin:0 auto 46px;
    text-align:center;
}

.gaviGujaratHeader .gaviIndustrialSectionEyebrow{
    justify-content:center;
}

.gaviGujaratHeader h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(32px,3.7vw,50px);
    line-height:1.15;
    font-weight:800;
}

.gaviGujaratHeader h2 strong{
    color:#b97800;
}

.gaviGujaratHeader p{
    margin:0;
    color:#59687b;
    font-size:16px;
    line-height:1.75;
}

.gaviGujaratHeader p strong{
    color:#092f62;
}

.gaviGujaratGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:17px;
}

.gaviGujaratCard{
    position:relative;
    min-height:340px;
    padding:24px 21px;
    border:1px solid #dce3ec;
    border-radius:7px;
    background:#fff;
    box-shadow:0 10px 28px rgba(6,29,61,.055);
    transition:all .3s ease;
}

.gaviGujaratCard:hover{
    transform:translateY(-6px);
    border-color:rgba(185,120,0,.45);
    box-shadow:0 18px 35px rgba(6,29,61,.1);
}

.gaviGujaratCardTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:23px;
}

.gaviGujaratCardTop span{
    color:#b97800;
    font-size:15px;
    font-weight:900;
}

.gaviGujaratCardTop strong{
    color:#092f62;
    font-size:15px;
    letter-spacing:1px;
}

.gaviGujaratCard h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:21px;
    line-height:1.3;
}

.gaviGujaratCard p{
    margin:0;
    color:#59687b;
    font-size:15px;
    line-height:1.75;
}

.gaviGujaratCard p strong{
    color:#092f62;
}

.gaviGujaratCardTag{
    position:absolute;
    left:21px;
    bottom:20px;
    padding-top:12px;
    border-top:1px solid #e2e7ee;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:.6px;
}

.gaviGujaratCardWide{
    grid-column:span 4;
    min-height:auto;
    display:grid;
    grid-template-columns:100px 1fr auto;
    gap:20px;
    align-items:start;
    padding-right:25px;
}

.gaviGujaratCardWide .gaviGujaratCardTop{
    margin:0;
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
}

.gaviGujaratCardWide .gaviGujaratCardTag{
    position:static;
    border-top:0;
    padding:8px 0 0;
}


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

.gaviIndustrialCTA{
    position:relative;
    overflow:hidden;
    padding:65px 0;
    background:
        radial-gradient(circle at 90% 40%,rgba(240,180,41,.13),transparent 25%),
        linear-gradient(125deg,#04152d,#092f62);
}

.gaviIndustrialCTA:after{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    right:-180px;
    top:-180px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gaviIndustrialCTAInner{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
}

.gaviIndustrialCTAContent{
    max-width:760px;
}

.gaviIndustrialCTAContent .gaviIndustrialSectionEyebrow{
    margin-bottom:11px;
}

.gaviIndustrialCTAContent h2{
    margin:0 0 13px;
    color:#fff;
    font-size:clamp(29px,3.2vw,43px);
    line-height:1.18;
}

.gaviIndustrialCTAContent h2 strong{
    color:#f0b429;
}

.gaviIndustrialCTAContent p{
    max-width:700px;
    margin:0;
    color:#d4dfeb;
    font-size:16px;
    line-height:1.7;
}

.gaviIndustrialCTAContent p strong{
    color:#fff;
}

.gaviIndustrialCTAActions{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:11px;
    min-width:225px;
}

.gaviIndustrialCTAphone{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:62px;
    padding:8px 18px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:5px;
    color:#fff !important;
    text-decoration:none !important;
    background:rgba(255,255,255,.05);
}

.gaviIndustrialCTAphone small{
    color:#aebdcd;
    font-size:15px;
}

.gaviIndustrialCTAphone strong{
    margin-top:3px;
    color:#f0b429;
    font-size:17px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1199px){

    .gaviIndustrialHeroInner{
        grid-template-columns:1fr .78fr;
        gap:35px;
    }

    .gaviIndustrialHeroVisual{
        min-height:430px;
    }

    .gaviIndustrialHeroOrb{
        width:235px;
        height:235px;
    }

    .gaviIndustrialGridPattern{
        width:350px;
        height:350px;
    }

    .gaviIndustrialSectionGrid{
        gap:40px;
    }

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

    .gaviGujaratCardWide{
        grid-column:span 2;
    }

}


@media (max-width:991px){

    .gaviIndustrialHero{
        padding:70px 0;
    }

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

    .gaviIndustrialHeroContent{
        text-align:center;
    }

    .gaviIndustrialEyebrow{
        justify-content:center;
    }

    .gaviIndustrialHeroLead{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviIndustrialHeroStats,
    .gaviIndustrialHeroActions{
        justify-content:center;
    }

    .gaviIndustrialHeroVisual{
        min-height:390px;
        margin-top:10px;
    }

    .gaviIndustrialClusterTag.tagOne{
        left:12%;
    }

    .gaviIndustrialClusterTag.tagThree{
        left:17%;
    }

    .gaviIndustrialSectionGrid,
    .gaviPuneGrid{
        grid-template-columns:1fr;
    }

    .gaviPuneGrid .gaviIndustrialSectionIntro{
        order:-1;
    }

    .gaviIndustrialSection{
        padding:72px 0;
    }

    .gaviIndustrialCTAInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .gaviIndustrialCTAActions{
        width:100%;
        max-width:320px;
    }

}


@media (max-width:767px){

    .gaviIndustrialHero{
        padding:55px 0;
    }

    .gaviIndustrialHero h1{
        font-size:40px;
        letter-spacing:-1px;
    }

    .gaviIndustrialHero h1 strong{
        font-size:21px;
    }

    .gaviIndustrialHeroLead{
        font-size:16px;
    }

    .gaviIndustrialHeroStats{
        display:grid;
        grid-template-columns:1fr;
    }

    .gaviIndustrialHeroStat{
        width:100%;
    }

    .gaviIndustrialHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviIndustrialPrimaryCta,
    .gaviIndustrialPhoneCta{
        width:100%;
    }

    .gaviIndustrialHeroVisual{
        min-height:350px;
    }

    .gaviIndustrialHeroOrb{
        width:200px;
        height:200px;
    }

    .gaviIndustrialOrbCore{
        width:115px;
        height:115px;
    }

    .gaviIndustrialOrbCore span{
        font-size:30px;
    }

    .gaviIndustrialGridPattern{
        width:280px;
        height:280px;
    }

    .gaviIndustrialClusterTag{
        padding:8px 10px;
    }

    .gaviIndustrialClusterTag span,
    .gaviIndustrialClusterTag strong{
        font-size:15px;
    }

    .tagOne{
        top:25px;
        left:0 !important;
    }

    .tagTwo{
        right:0;
        top:135px;
    }

    .tagThree{
        left:0 !important;
        bottom:15px;
    }

    .gaviIndustrialSection h2,
    .gaviGujaratHeader h2{
        font-size:33px;
    }

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

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

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

    .gaviGujaratCardWide{
        grid-column:span 1;
        display:block;
    }

    .gaviGujaratCardWide .gaviGujaratCardTop{
        margin-bottom:20px;
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
    }

    .gaviGujaratCardWide .gaviGujaratCardTag{
        margin-top:18px;
        padding-top:12px;
        border-top:1px solid #e2e7ee;
    }

    .gaviIndustrialCTA{
        padding:55px 0;
    }

    .gaviIndustrialCTAContent h2{
        font-size:30px;
    }

}

/* =========================================================
   CAPITAL GAIN INDIA
   GLOBAL COLOUR SYSTEM
   Navy: #092f62 / #061d3d / #04152d
   Gold: #b97800 / #d99a16 / #f0b429
========================================================= */


/* =========================================================
   SECTION 01 — HERO
   Namespace: gaviCGHero
========================================================= */

.gaviCGHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 88% 15%,rgba(240,180,41,.14),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
}

.gaviCGHeroPattern{
    position:absolute;
    inset:0;
    opacity:.28;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:55px 55px;
    pointer-events:none;
}

.gaviCGHeroInner{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);
    gap:55px;
    align-items:center;
}

.gaviCGHeroContent{
    position:relative;
    z-index:2;
}

.gaviCGHeroEyebrow,
.gaviCGSectionEyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviCGHeroEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCGHero h1{
    max-width:900px;
    margin:0 0 24px;
    color:#fff;
    font-size:clamp(40px,4.5vw,67px);
    line-height:1.06;
    font-weight:800;
    letter-spacing:-1.8px;
}

.gaviCGHero h1 strong{
    display:block;
    color:#f0b429;
}

.gaviCGHeroLead{
    max-width:860px;
    margin:0;
    color:#dce5ee;
    font-size:18px;
    line-height:1.75;
}

.gaviCGHeroLead strong{
    color:#fff;
}

.gaviCGHeroStats{
    display:flex;
    flex-wrap:wrap;
    gap:0;
    margin:32px 0 29px;
}

.gaviCGHeroStats div{
    min-width:145px;
    padding:0 23px;
    border-left:1px solid rgba(240,180,41,.35);
}

.gaviCGHeroStats div:first-child{
    padding-left:0;
    border-left:0;
}

.gaviCGHeroStats strong{
    display:block;
    color:#f0b429;
    font-size:18px;
    line-height:1.3;
}

.gaviCGHeroStats span{
    display:block;
    margin-top:4px;
    color:#aebdcd;
    font-size:15px;
}

.gaviCGHeroActions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:14px;
}

.gaviCGPrimaryBtn,
.gaviCGGoldBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:57px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.22);
    transition:all .3s ease;
}

.gaviCGPrimaryBtn span,
.gaviCGGoldBtn span{
    font-size:21px;
}

.gaviCGPrimaryBtn:hover,
.gaviCGGoldBtn:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.34);
}

.gaviCGPhoneBtn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:57px;
    padding:0 19px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.06);
    color:#fff !important;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCGPhoneBtn span{
    color:#f0b429;
    font-size:20px;
}

.gaviCGPhoneBtn strong{
    color:#fff;
    font-size:16px;
}

.gaviCGPhoneBtn:hover{
    border-color:#f0b429;
    background:rgba(185,120,0,.12);
}


/* HERO SIDE CARD */

.gaviCGHeroSide{
    display:flex;
    justify-content:flex-end;
}

.gaviCGHeroCard{
    position:relative;
    max-width:430px;
    padding:34px 31px;
    border:1px solid rgba(240,180,41,.4);
    border-radius:9px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035));
    box-shadow:0 25px 65px rgba(0,0,0,.28);
    backdrop-filter:blur(10px);
}

.gaviCGHeroCard:before{
    content:"";
    position:absolute;
    top:-1px;
    left:35px;
    right:35px;
    height:3px;
    background:linear-gradient(90deg,#b97800,#f0b429,#b97800);
}

.gaviCGHeroCardLabel{
    display:block;
    margin-bottom:17px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gaviCGHeroCard h3{
    margin:0 0 17px;
    color:#fff;
    font-size:27px;
    line-height:1.3;
    font-weight:750;
}

.gaviCGHeroCard h3 strong{
    color:#f0b429;
}

.gaviCGHeroCard p{
    margin:0;
    color:#cbd6e2;
    font-size:15px;
    line-height:1.75;
}

.gaviCGHeroCard p strong{
    color:#fff;
}

.gaviCGHeroCardLine{
    width:60px;
    height:2px;
    margin:24px 0 14px;
    background:#b97800;
}

.gaviCGHeroCard small{
    color:#aebdcd;
    font-size:15px;
    line-height:1.5;
}


/* =========================================================
   SECTION 02 — SECTION 55(2)(b)
   Namespace: gaviCG55
========================================================= */

.gaviCG55{
    padding:90px 0 88px;
    background:#f8fafc;
    color:#092f62;
}

.gaviCG55Grid{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:60px;
    align-items:start;
}

.gaviCGSectionEyebrow{
    margin-bottom:14px;
}

.gaviCGSectionEyebrow span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:31px;
    height:31px;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
}

.gaviCG55Intro h2{
    margin:0;
    color:#061d3d;
    font-size:clamp(32px,3.4vw,48px);
    line-height:1.15;
    font-weight:800;
    letter-spacing:-1px;
}

.gaviCG55Intro h2 strong{
    display:block;
    color:#b97800;
}

.gaviCG55Intro p{
    margin:22px 0 0;
    color:#536277;
    font-size:16px;
    line-height:1.8;
}

.gaviCG55Intro p strong{
    color:#092f62;
}

.gaviCGGoldLine{
    width:70px;
    height:3px;
    margin-top:22px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCG55Evidence{
    padding:31px;
    border:1px solid #dce4ed;
    border-radius:9px;
    background:#fff;
    box-shadow:0 15px 40px rgba(6,29,61,.07);
}

.gaviCGEvidenceHeading{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:17px;
}

.gaviCGEvidenceHeading > span{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 45px;
    width:45px;
    height:45px;
    border-radius:50%;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviCGEvidenceHeading h3{
    margin:0;
    color:#061d3d;
    font-size:22px;
    line-height:1.35;
}

.gaviCGEvidenceHeading h3 strong{
    color:#b97800;
}

.gaviCG55Evidence > p{
    margin:0;
    color:#536277;
    font-size:15px;
    line-height:1.75;
}

.gaviCGStateGrid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:11px;
    margin-top:23px;
}

.gaviCGStateCard{
    padding:16px;
    border-left:3px solid #b97800;
    background:#f5f7fa;
}

.gaviCGStateCard strong{
    display:block;
    color:#092f62;
    font-size:16px;
}

.gaviCGStateCard span{
    display:block;
    margin-top:4px;
    color:#647387;
    font-size:15px;
    line-height:1.45;
}


/* METHODOLOGY */

.gaviCGMethodology{
    margin-top:55px;
    padding:32px;
    border-radius:9px;
    background:linear-gradient(135deg,#04152d,#092f62);
    box-shadow:0 18px 45px rgba(6,29,61,.13);
}

.gaviCGMethodologyIntro > span{
    display:block;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviCGMethodologyIntro h3{
    margin:7px 0 27px;
    color:#fff;
    font-size:27px;
    line-height:1.3;
}

.gaviCGMethodologyIntro h3 strong{
    color:#f0b429;
}

.gaviCGMethodologySteps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}

.gaviCGMethodStep{
    display:flex;
    gap:13px;
    padding:19px;
    border:1px solid rgba(240,180,41,.2);
    border-radius:6px;
    background:rgba(255,255,255,.045);
}

.gaviCGMethodStep > b{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#b97800;
    color:#061d3d;
    font-size:15px;
}

.gaviCGMethodStep strong{
    display:block;
    color:#fff;
    font-size:15px;
}

.gaviCGMethodStep span{
    display:block;
    margin-top:5px;
    color:#b9c7d6;
    font-size:15px;
    line-height:1.55;
}

.gaviCGMethodStep span strong{
    display:inline;
    color:#f0b429;
}


/* BOTTOM CTA */

.gaviCG55Bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:38px;
    padding:23px 25px;
    border:1px solid #e0e6ed;
    border-radius:7px;
    background:#fff;
}

.gaviCG55Bottom p{
    max-width:820px;
    margin:0;
    color:#536277;
    font-size:15px;
    line-height:1.65;
}

.gaviCG55Bottom p strong{
    color:#092f62;
}

.gaviCGInlineBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    flex:0 0 auto;
    min-height:50px;
    padding:0 20px;
    border-radius:5px;
    background:#061d3d;
    color:#f0b429 !important;
    font-size:15px;
    font-weight:800;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCGInlineBtn:hover{
    background:#b97800;
    color:#061d3d !important;
}


/* =========================================================
   SECTION 03 — FINANCE ACT 2024
   Namespace: gaviCG2024
========================================================= */

.gaviCG2024{
    padding:90px 0 88px;
    background:
        radial-gradient(circle at 10% 90%,rgba(185,120,0,.12),transparent 25%),
        linear-gradient(135deg,#04152d,#061d3d 65%,#092f62);
}

.gaviCG2024Header{
    max-width:850px;
    margin:0 auto 45px;
    text-align:center;
}

.gaviCGSectionEyebrowLight{
    justify-content:center;
}

.gaviCG2024Header h2{
    margin:0 0 17px;
    color:#fff;
    font-size:clamp(33px,3.6vw,50px);
    line-height:1.15;
    font-weight:800;
}

.gaviCG2024Header h2 strong{
    color:#f0b429;
}

.gaviCG2024Header p{
    margin:0;
    color:#cbd6e2;
    font-size:16px;
    line-height:1.78;
}

.gaviCG2024Header p strong{
    color:#fff;
}

.gaviCG2024Comparison{
    position:relative;
    display:grid;
    grid-template-columns:1fr 70px 1fr;
    align-items:stretch;
    gap:15px;
}

.gaviCG2024Method{
    padding:31px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:9px;
    background:rgba(255,255,255,.055);
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

.gaviCG2024MethodGold{
    border-color:rgba(240,180,41,.42);
    background:
        linear-gradient(145deg,rgba(185,120,0,.16),rgba(255,255,255,.045));
}

.gaviCGMethodTop{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:20px;
}

.gaviCGMethodTop > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border-radius:50%;
    background:#b97800;
    color:#061d3d;
    font-size:22px;
    font-weight:900;
}

.gaviCGMethodTop small{
    display:block;
    margin-bottom:3px;
    color:#aebdcd;
    font-size:15px;
    font-weight:800;
    letter-spacing:1.4px;
}

.gaviCGMethodTop h3{
    margin:0;
    color:#fff;
    font-size:23px;
    line-height:1.3;
}

.gaviCG2024Method p{
    margin:0;
    color:#c4d0dc;
    font-size:15px;
    line-height:1.75;
}

.gaviCG2024Method p strong{
    color:#fff;
}

.gaviCGMethodHighlight{
    margin-top:22px;
    padding:15px;
    border-left:3px solid #b97800;
    background:rgba(255,255,255,.055);
}

.gaviCGMethodHighlight strong{
    display:block;
    color:#f0b429;
    font-size:15px;
}

.gaviCGMethodHighlight span{
    display:block;
    margin-top:4px;
    color:#aebdcd;
    font-size:15px;
    line-height:1.45;
}

.gaviCG2024Vs{
    display:flex;
    align-items:center;
    justify-content:center;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
    letter-spacing:1px;
}


/* NOTE */

.gaviCG2024Note{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-top:28px;
    padding:21px 23px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:7px;
    background:rgba(255,255,255,.045);
}

.gaviCG2024NoteIcon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#b97800;
    color:#061d3d;
    font-size:16px;
    font-weight:900;
}

.gaviCG2024Note p{
    margin:0;
    color:#bdcad7;
    font-size:15px;
    line-height:1.7;
}

.gaviCG2024Note p strong{
    color:#f0b429;
}


/* FINAL CTA */

.gaviCG2024CTA{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:42px;
    padding:28px 31px;
    border:1px solid rgba(240,180,41,.4);
    border-radius:8px;
    background:linear-gradient(90deg,#b97800,#d99a16,#b97800);
}

.gaviCG2024CTA > div:first-child > span{
    display:block;
    margin-bottom:6px;
    color:#061d3d;
    font-size:15px;
    font-weight:900;
    letter-spacing:1.3px;
}

.gaviCG2024CTA h3{
    margin:0;
    color:#061d3d;
    font-size:25px;
    line-height:1.3;
}

.gaviCG2024CTA h3 strong{
    color:#fff;
}

.gaviCG2024Actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:11px;
}

.gaviCGGoldBtn{
    min-height:52px;
    background:#061d3d;
    border-color:#061d3d;
    color:#f0b429 !important;
    box-shadow:none;
}

.gaviCGGoldBtn:hover{
    background:#092f62;
    color:#f0b429 !important;
}

.gaviCGDarkPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border:1px solid rgba(6,29,61,.5);
    border-radius:5px;
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

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

    .gaviCGHeroSide{
        justify-content:flex-start;
    }

    .gaviCGHeroCard{
        max-width:650px;
    }

    .gaviCG55Grid{
        grid-template-columns:1fr;
        gap:35px;
    }

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

}


@media (max-width:900px){

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

    .gaviCG2024Vs{
        height:30px;
    }

    .gaviCG2024CTA,
    .gaviCG55Bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}


@media (max-width:767px){

    .gaviCGHero,
    .gaviCG55,
    .gaviCG2024{
        padding:65px 0;
    }

    .gaviCGHero h1{
        font-size:40px;
    }

    .gaviCGHeroLead{
        font-size:16px;
    }

    .gaviCGHeroStats{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
    }

    .gaviCGHeroStats div{
        padding:0 0 0 15px;
        border-left:2px solid #b97800;
    }

    .gaviCGHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCGPrimaryBtn,
    .gaviCGPhoneBtn{
        width:100%;
    }

    .gaviCGHeroCard{
        padding:27px 22px;
    }

    .gaviCG55Intro h2,
    .gaviCG2024Header h2{
        font-size:32px;
    }

    .gaviCG55Evidence{
        padding:23px;
    }

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

    .gaviCGMethodology{
        padding:23px;
    }

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

    .gaviCG55Bottom{
        padding:21px;
    }

    .gaviCGInlineBtn{
        width:100%;
    }

    .gaviCG2024Method{
        padding:24px;
    }

    .gaviCG2024Note{
        padding:18px;
    }

    .gaviCG2024CTA{
        padding:24px 20px;
    }

    .gaviCG2024Actions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCGGoldBtn,
    .gaviCGDarkPhone{
        width:100%;
    }

}
/* =========================================================
   FIVE PAN INDIA VALUATION PROFILES
   Master Namespace: gavip
   Royal Navy + Gold
========================================================= */


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

.gavipHero{
    position:relative;
    overflow:hidden;
    padding:100px 0 92px;
    background:
        radial-gradient(circle at 15% 15%,rgba(240,180,41,.12),transparent 28%),
        radial-gradient(circle at 85% 80%,rgba(185,120,0,.11),transparent 28%),
        linear-gradient(135deg,#04152d,#061d3d 55%,#092f62);
    color:#fff;
}

.gavipHeroPattern{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(30deg,#fff 1px,transparent 1px),
        linear-gradient(150deg,#fff 1px,transparent 1px);
    background-size:55px 95px;
    pointer-events:none;
}

.gavipHeroInner{
    position:relative;
    max-width:980px;
    margin:auto;
    text-align:center;
    z-index:2;
}

.gavipHeroEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-bottom:20px;
    color:#f0b429;
    font-size:15px;
    font-weight:800;
    letter-spacing:2px;
}

.gavipHeroEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gavipHero h1{
    margin:0 auto 24px;
    color:#fff;
    font-size:clamp(40px,5vw,68px);
    line-height:1.05;
    letter-spacing:-1.8px;
    font-weight:800;
}

.gavipHero h1 strong{
    display:block;
    color:#f0b429;
}

.gavipHeroInner > p{
    max-width:850px;
    margin:0 auto;
    color:#dce5ef;
    font-size:18px;
    line-height:1.75;
}

.gavipHeroInner > p strong{
    color:#fff;
}

.gavipHeroTags{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:9px;
    margin-top:27px;
}

.gavipHeroTags span{
    padding:9px 14px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:4px;
    background:rgba(255,255,255,.055);
    color:#e7edf4;
    font-size:15px;
    font-weight:700;
}

.gavipHeroActions{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:31px;
}

.gavipPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 28px;
    border-radius:5px;
    border:1px solid #f0b429;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gavipPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 38px rgba(185,120,0,.36);
}

.gavipPrimaryCta span{
    font-size:22px;
}

.gavipPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:0 22px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:16px;
    font-weight:750;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gavipPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


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

.gavipIntro{
    padding:82px 0;
    background:#f8fafc;
}

.gavipIntroGrid{
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
    gap:55px;
    align-items:start;
}

.gavipIntroLabel{
    padding-top:8px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gavipIntroLabel span{
    display:block;
    margin-bottom:11px;
    color:#092f62;
    font-size:34px;
    letter-spacing:0;
}

.gavipIntroContent h2{
    margin:0 0 20px;
    color:#061d3d;
    font-size:clamp(30px,3.4vw,46px);
    line-height:1.15;
    letter-spacing:-1px;
}

.gavipIntroContent h2 strong{
    color:#b97800;
}

.gavipIntroContent p{
    margin:0 0 16px;
    color:#526276;
    font-size:16px;
    line-height:1.8;
}

.gavipIntroContent p strong{
    color:#092f62;
}

.gavipIntroNote{
    margin-top:25px;
    padding:17px 19px;
    border-left:4px solid #b97800;
    background:#fff;
    color:#4d5d70;
    font-size:15px;
    line-height:1.65;
    box-shadow:0 8px 24px rgba(6,29,61,.06);
}

.gavipIntroNote strong{
    color:#092f62;
}


/* =========================================================
   PROFILE BASE
========================================================= */

.gavipProfile{
    position:relative;
    padding:88px 0;
    overflow:hidden;
}

.gavipProfileDark{
    background:
        radial-gradient(circle at 90% 20%,rgba(185,120,0,.12),transparent 27%),
        linear-gradient(125deg,#04152d,#061d3d 65%,#092f62);
    color:#fff;
}

.gavipProfileLight{
    background:#fff;
    color:#061d3d;
}

.gavipProfileGrid{
    display:grid;
    grid-template-columns:145px minmax(0,1fr) 245px;
    gap:35px;
    align-items:start;
}

.gavipProfileNumber{
    padding-top:4px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.7px;
}

.gavipProfileNumber span{
    display:block;
    margin-bottom:5px;
    color:#d99a16;
    font-size:48px;
    line-height:1;
    letter-spacing:-2px;
}

.gavipProfileLight .gavipProfileNumber span{
    color:#092f62;
}

.gavipProfileEyebrow{
    margin-bottom:11px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gavipProfileContent h2{
    margin:0 0 17px;
    font-size:clamp(29px,3.2vw,44px);
    line-height:1.13;
    letter-spacing:-1px;
}

.gavipProfileDark .gavipProfileContent h2{
    color:#fff;
}

.gavipProfileLight .gavipProfileContent h2{
    color:#061d3d;
}

.gavipProfileContent h2 strong{
    color:#f0b429;
}

.gavipProfileLight .gavipProfileContent h2 strong{
    color:#b97800;
}

.gavipProfileLead{
    max-width:850px;
    margin:0 0 25px;
    font-size:16px;
    line-height:1.78;
}

.gavipProfileDark .gavipProfileLead{
    color:#dce5ef;
}

.gavipProfileLight .gavipProfileLead{
    color:#526276;
}

.gavipProfileLead strong{
    color:#b97800;
}


/* =========================================================
   FACTS
========================================================= */

.gavipProfileFacts{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-bottom:24px;
}

.gavipProfileFacts > div{
    padding:15px 16px;
    border-radius:5px;
}

.gavipProfileDark .gavipProfileFacts > div{
    border:1px solid rgba(255,255,255,.11);
    background:rgba(255,255,255,.045);
}

.gavipProfileLight .gavipProfileFacts > div{
    border:1px solid #e2e7ee;
    background:#f8fafc;
}

.gavipProfileFacts span{
    display:block;
    margin-bottom:5px;
    font-size:15px;
}

.gavipProfileDark .gavipProfileFacts span{
    color:#9eafc1;
}

.gavipProfileLight .gavipProfileFacts span{
    color:#687789;
}

.gavipProfileFacts strong{
    display:block;
    font-size:15px;
    line-height:1.4;
}

.gavipProfileDark .gavipProfileFacts strong{
    color:#fff;
}

.gavipProfileLight .gavipProfileFacts strong{
    color:#092f62;
}


/* =========================================================
   METHODOLOGY
========================================================= */

.gavipMethodology{
    margin-top:5px;
    padding:20px;
    border-radius:6px;
}

.gavipProfileDark .gavipMethodology{
    border:1px solid rgba(240,180,41,.2);
    background:rgba(255,255,255,.04);
}

.gavipProfileLight .gavipMethodology{
    border:1px solid #e4e8ef;
    background:#f8fafc;
}

.gavipMethodologyTitle{
    margin-bottom:8px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.2px;
}

.gavipMethodology p{
    margin:0;
    font-size:15px;
    line-height:1.7;
}

.gavipProfileDark .gavipMethodology p{
    color:#ccd7e3;
}

.gavipProfileLight .gavipMethodology p{
    color:#526276;
}

.gavipMethodology strong{
    color:#b97800;
}


/* =========================================================
   RESULT GRID
========================================================= */

.gavipResultGrid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
}

.gavipResultGrid > div{
    padding:16px;
    border-radius:5px;
    text-align:center;
}

.gavipProfileDark .gavipResultGrid > div{
    background:#092f62;
    border:1px solid rgba(240,180,41,.2);
}

.gavipProfileLight .gavipResultGrid > div{
    background:#061d3d;
    border:1px solid #061d3d;
}

.gavipResultGrid span{
    display:block;
    margin-bottom:5px;
    color:#c4d0dc;
    font-size:15px;
}

.gavipResultGrid strong{
    display:block;
    color:#f0b429;
    font-size:18px;
}


/* =========================================================
   PROFILE SIDE
========================================================= */

.gavipProfileSide{
    min-height:360px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding:24px;
    border-radius:8px;
}

.gavipProfileDark .gavipProfileSide{
    border:1px solid rgba(240,180,41,.25);
    background:rgba(255,255,255,.045);
}

.gavipProfileLight .gavipProfileSide{
    border:1px solid #dfe5ed;
    background:linear-gradient(145deg,#f8fafc,#eef3f8);
}

.gavipSideBadge{
    display:inline-flex;
    align-self:flex-start;
    padding:8px 11px;
    border-radius:3px;
    background:#b97800;
    color:#061d3d;
    font-size:15px;
    font-weight:900;
    letter-spacing:1px;
}

.gavipSideQuote{
    padding:25px 0;
}

.gavipSideQuote span{
    display:block;
    margin-bottom:9px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1px;
}

.gavipSideQuote strong{
    display:block;
    font-size:20px;
    line-height:1.4;
}

.gavipProfileDark .gavipSideQuote strong{
    color:#fff;
}

.gavipProfileLight .gavipSideQuote strong{
    color:#061d3d;
}

.gavipSideTags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.gavipSideTags span{
    padding:7px 8px;
    border-radius:3px;
    font-size:15px;
    font-weight:700;
}

.gavipProfileDark .gavipSideTags span{
    border:1px solid rgba(255,255,255,.14);
    color:#d9e2ec;
}

.gavipProfileLight .gavipSideTags span{
    border:1px solid #dbe2ea;
    color:#092f62;
}


/* =========================================================
   COMPARISON
========================================================= */

.gavipComparison{
    padding:90px 0;
    background:#f7f9fc;
}

.gavipComparisonHeader{
    max-width:760px;
    margin:0 auto 40px;
    text-align:center;
}

.gavipSectionEyebrow{
    margin-bottom:11px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.6px;
}

.gavipComparisonHeader h2{
    margin:0 0 14px;
    color:#061d3d;
    font-size:clamp(31px,3.5vw,46px);
    line-height:1.15;
}

.gavipComparisonHeader h2 strong{
    color:#b97800;
}

.gavipComparisonHeader p{
    margin:0;
    color:#59697c;
    font-size:16px;
    line-height:1.7;
}

.gavipComparisonTable{
    overflow:hidden;
    border:1px solid #dce3eb;
    border-radius:8px;
    background:#fff;
    box-shadow:0 12px 30px rgba(6,29,61,.07);
}

.gavipTableRow{
    display:grid;
    grid-template-columns:1fr 1.4fr 1.5fr 1.2fr;
    border-bottom:1px solid #e3e8ee;
}

.gavipTableRow:last-child{
    border-bottom:0;
}

.gavipTableRow > div{
    padding:17px 18px;
    color:#526276;
    font-size:15px;
    line-height:1.5;
}

.gavipTableRow > div + div{
    border-left:1px solid #e7ebf0;
}

.gavipTableHead{
    background:#061d3d;
}

.gavipTableHead > div{
    color:#f0b429;
    font-size:15px;
    font-weight:850;
}

.gavipTableRow:not(.gavipTableHead) > div:first-child strong{
    color:#092f62;
}


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

.gavipFinalCta{
    position:relative;
    overflow:hidden;
    padding:75px 0;
    background:
        radial-gradient(circle at 90% 30%,rgba(240,180,41,.14),transparent 28%),
        linear-gradient(125deg,#04152d,#061d3d 65%,#092f62);
}

.gavipFinalCtaGlow{
    position:absolute;
    width:360px;
    height:360px;
    right:-180px;
    top:-180px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gavipFinalCtaInner{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    z-index:2;
}

.gavipFinalCtaInner h2{
    margin:0 0 14px;
    color:#fff;
    font-size:clamp(30px,3.5vw,46px);
    line-height:1.15;
}

.gavipFinalCtaInner h2 strong{
    color:#f0b429;
}

.gavipFinalCtaInner p{
    max-width:700px;
    margin:0;
    color:#cbd6e1;
    font-size:16px;
    line-height:1.7;
}

.gavipFinalActions{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    min-width:235px;
}

.gavipFinalButton{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:57px;
    padding:0 23px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(185,120,0,.24);
    transition:all .3s ease;
}

.gavipFinalButton:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 34px rgba(185,120,0,.35);
}

.gavipFinalButton span{
    font-size:21px;
}

.gavipFinalPhone{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:60px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    color:#fff !important;
    text-decoration:none !important;
    background:rgba(255,255,255,.045);
    transition:all .3s ease;
}

.gavipFinalPhone:hover{
    border-color:#f0b429;
}

.gavipFinalPhone small{
    color:#aebdcd;
    font-size:15px;
}

.gavipFinalPhone strong{
    margin-top:2px;
    color:#f0b429;
    font-size:17px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .gavipProfileGrid{
        grid-template-columns:100px minmax(0,1fr) 210px;
        gap:25px;
    }

}

@media(max-width:991px){

    .gavipHero{
        padding:75px 0;
    }

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

    .gavipIntroLabel{
        padding:0;
    }

    .gavipProfileGrid{
        grid-template-columns:80px minmax(0,1fr);
    }

    .gavipProfileSide{
        grid-column:2;
        min-height:auto;
        gap:20px;
    }

    .gavipSideQuote{
        padding:15px 0;
    }

    .gavipFinalCtaInner{
        flex-direction:column;
        align-items:flex-start;
    }

    .gavipFinalActions{
        width:100%;
        max-width:330px;
    }

}

@media(max-width:767px){

    .gavipHero{
        padding:58px 0;
    }

    .gavipHero h1{
        font-size:38px;
    }

    .gavipHeroInner > p{
        font-size:16px;
    }

    .gavipHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gavipPrimaryCta,
    .gavipPhoneCta{
        width:100%;
    }

    .gavipIntro,
    .gavipProfile,
    .gavipComparison{
        padding:65px 0;
    }

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

    .gavipProfileNumber{
        display:flex;
        align-items:center;
        gap:12px;
    }

    .gavipProfileNumber span{
        margin:0;
        font-size:38px;
    }

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

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

    .gavipProfileSide{
        grid-column:auto;
    }

    .gavipComparisonTable{
        overflow-x:auto;
    }

    .gavipTableRow{
        min-width:720px;
    }

    .gavipFinalCta{
        padding:60px 0;
    }

    .gavipFinalCtaInner h2{
        font-size:32px;
    }

}

@media(max-width:480px){

    .gavipHero h1{
        font-size:34px;
    }

    .gavipHeroEyebrow span{
        width:25px;
    }

    .gavipHeroTags span{
        width:100%;
    }

}
/* =========================================================
   INDIA'S MAJOR CITIES
   HERO
   Namespace: gaviCitiesHero
========================================================= */

.gaviCitiesHero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:
        radial-gradient(circle at 85% 25%,rgba(185,120,0,.16),transparent 28%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
}

.gaviCitiesHeroPattern{
    position:absolute;
    width:600px;
    height:600px;
    right:-260px;
    top:-210px;
    border:1px solid rgba(240,180,41,.13);
    border-radius:50%;
    box-shadow:
        0 0 0 50px rgba(240,180,41,.025),
        0 0 0 100px rgba(240,180,41,.018);
}

.gaviCitiesHeroGrid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    align-items:center;
    gap:65px;
}

.gaviCitiesHeroContent{
    position:relative;
    z-index:2;
}

.gaviCitiesHeroEyebrow,
.gaviCitiesWhyEyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:17px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviCitiesHeroEyebrow span,
.gaviCitiesWhyEyebrow span{
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviCitiesHero h1{
    max-width:850px;
    margin:0 0 25px;
    color:#fff;
    font-size:clamp(40px,4.5vw,65px);
    line-height:1.07;
    letter-spacing:-1.7px;
    font-weight:800;
}

.gaviCitiesHero h1 strong{
    display:block;
    color:#f0b429;
}

.gaviCitiesHeroLead{
    max-width:850px;
    margin:0 0 16px;
    color:#edf2f7;
    font-size:18px;
    line-height:1.75;
}

.gaviCitiesHeroLead strong{
    color:#f0b429;
}

.gaviCitiesHeroText{
    max-width:820px;
    margin:0;
    color:#bfcbd8;
    font-size:16px;
    line-height:1.75;
}

.gaviCitiesHeroText strong{
    color:#fff;
}

.gaviCitiesHeroStats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:29px;
}

.gaviCitiesHeroStat{
    min-width:135px;
    padding:13px 16px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:5px;
    background:rgba(255,255,255,.045);
}

.gaviCitiesHeroStat strong{
    display:block;
    margin-bottom:3px;
    color:#f0b429;
    font-size:23px;
    line-height:1;
}

.gaviCitiesHeroStat span{
    display:block;
    color:#c8d3df;
    font-size:15px;
    line-height:1.4;
}

.gaviCitiesHeroActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:30px;
}

.gaviCitiesPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:56px;
    padding:0 26px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(185,120,0,.2);
    transition:all .3s ease;
}

.gaviCitiesPrimaryCta span{
    font-size:21px;
}

.gaviCitiesPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 35px rgba(185,120,0,.32);
}

.gaviCitiesPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:56px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    background:rgba(255,255,255,.055);
    color:#fff !important;
    font-size:16px;
    text-decoration:none !important;
}

.gaviCitiesPhoneCta span{
    color:#f0b429;
    font-size:19px;
}

.gaviCitiesPhoneCta:hover{
    border-color:#f0b429;
}


/* =========================================================
   HERO CITY VISUAL
========================================================= */

.gaviCitiesHeroVisual{
    position:relative;
    min-height:500px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.gaviCitiesIndiaCircle{
    position:relative;
    width:460px;
    height:460px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.27);
    border-radius:50%;
    background:
        radial-gradient(circle,#092f62 0%,#061d3d 63%,#04152d 100%);
    box-shadow:
        0 0 0 20px rgba(185,120,0,.025),
        0 0 70px rgba(185,120,0,.12);
}

.gaviCitiesCircleInner{
    position:relative;
    width:88%;
    height:88%;
    border:1px dashed rgba(240,180,41,.23);
    border-radius:50%;
}

.gaviCitiesCircleCore{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:145px;
    height:145px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    border:2px solid #b97800;
    border-radius:50%;
    background:linear-gradient(145deg,#092f62,#04152d);
    box-shadow:0 0 35px rgba(185,120,0,.18);
    text-align:center;
}

.gaviCitiesCircleCore strong{
    color:#f0b429;
    font-size:27px;
    letter-spacing:2px;
}

.gaviCitiesCircleCore small{
    margin-top:5px;
    color:#c7d3df;
    font-size:15px;
    letter-spacing:1.5px;
}

.gaviCityPin{
    position:absolute;
    display:flex;
    align-items:center;
    gap:7px;
    padding:7px 10px;
    border:1px solid rgba(240,180,41,.27);
    border-radius:4px;
    background:rgba(4,21,45,.9);
    color:#fff;
    font-size:15px;
    font-weight:700;
    white-space:nowrap;
}

.gaviCityPin:before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:#f0b429;
    box-shadow:0 0 10px rgba(240,180,41,.65);
}

.gaviCityMumbai{
    left:7%;
    bottom:29%;
}

.gaviCityPune{
    left:22%;
    bottom:10%;
}

.gaviCityAhmedabad{
    left:20%;
    top:17%;
}

.gaviCityBengaluru{
    left:35%;
    bottom:3%;
}

.gaviCityChennai{
    right:12%;
    bottom:19%;
}

.gaviCityHyderabad{
    right:7%;
    top:35%;
}

.gaviCityKolkata{
    right:3%;
    top:13%;
}

.gaviCitiesVisualLabel{
    position:absolute;
    right:-12px;
    bottom:20px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 15px;
    border:1px solid rgba(240,180,41,.3);
    border-radius:5px;
    background:#04152d;
    box-shadow:0 15px 30px rgba(0,0,0,.25);
}

.gaviCitiesVisualLabel > span{
    color:#f0b429;
    font-size:20px;
    font-weight:900;
}

.gaviCitiesVisualLabel strong{
    display:block;
    color:#fff;
    font-size:15px;
}

.gaviCitiesVisualLabel small{
    display:block;
    margin-top:2px;
    color:#9eafc1;
    font-size:15px;
}


/* =========================================================
   SECTION 2
   CITY LANDSCAPE
========================================================= */

.gaviCitiesLandscape{
    padding:90px 0 88px;
    background:#f7f9fc;
    position:relative;
}

.gaviCitiesLandscape:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#061d3d,#b97800,#f0b429,#b97800,#061d3d);
}

.gaviCitiesLandscapeHeader{
    max-width:820px;
    margin:0 auto 50px;
    text-align:center;
}

.gaviCitiesLandscapeEyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-bottom:14px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.5px;
}

.gaviCitiesLandscapeEyebrow span{
    width:30px;
    height:2px;
    background:#b97800;
}

.gaviCitiesLandscapeHeader h2{
    margin:0 0 16px;
    color:#061d3d;
    font-size:clamp(32px,3.5vw,48px);
    line-height:1.15;
    letter-spacing:-1px;
}

.gaviCitiesLandscapeHeader h2 strong{
    color:#b97800;
}

.gaviCitiesLandscapeHeader p{
    margin:0;
    color:#566578;
    font-size:16px;
    line-height:1.75;
}

.gaviCitiesLandscapeHeader p strong{
    color:#092f62;
}


/* =========================================================
   REGIONAL CARDS
========================================================= */

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

.gaviCitiesRegionCard{
    position:relative;
    padding:28px 28px 24px;
    border:1px solid #dce3eb;
    border-radius:9px;
    background:#fff;
    box-shadow:0 10px 28px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviCitiesRegionCard:after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
    transform:scaleX(.2);
    transform-origin:left;
    transition:transform .3s ease;
}

.gaviCitiesRegionCard:hover{
    transform:translateY(-5px);
    border-color:rgba(185,120,0,.4);
    box-shadow:0 18px 40px rgba(6,29,61,.1);
}

.gaviCitiesRegionCard:hover:after{
    transform:scaleX(1);
}

.gaviCitiesRegionTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:18px;
}

.gaviCitiesRegionNumber{
    color:#b97800;
    font-size:22px;
    font-weight:900;
}

.gaviCitiesRegionTag{
    padding:6px 9px;
    border-radius:3px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:800;
    letter-spacing:.8px;
}

.gaviCitiesRegionCard h3{
    margin:0 0 12px;
    color:#061d3d;
    font-size:25px;
    line-height:1.3;
}

.gaviCitiesRegionCard p{
    margin:0;
    color:#58697c;
    font-size:15px;
    line-height:1.7;
}

.gaviCitiesCityList{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:23px;
}

.gaviCitiesCityList > div{
    padding:12px;
    border:1px solid #e4e9ef;
    border-radius:5px;
    background:#fafbfd;
}

.gaviCitiesCityList strong{
    display:block;
    margin-bottom:4px;
    color:#092f62;
    font-size:16px;
}

.gaviCitiesCityList span{
    display:block;
    color:#657386;
    font-size:15px;
    line-height:1.45;
}

.gaviCitiesRegionFooter{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:18px;
    padding-top:17px;
    border-top:1px solid #e7ebf0;
}

.gaviCitiesRegionFooter span{
    padding:6px 9px;
    border:1px solid #dce3eb;
    border-radius:3px;
    color:#092f62;
    font-size:15px;
    font-weight:700;
}


/* =========================================================
   SECTION 3
   WHY LOCATION MATTERS
========================================================= */

.gaviCitiesWhy{
    padding:90px 0 85px;
    background:
        radial-gradient(circle at 90% 20%,rgba(185,120,0,.09),transparent 25%),
        linear-gradient(135deg,#04152d,#061d3d 58%,#092f62);
    color:#fff;
}

.gaviCitiesWhyGrid{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:65px;
    align-items:start;
}

.gaviCitiesWhyIntro{
    position:sticky;
    top:30px;
}

.gaviCitiesWhy h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(32px,3.5vw,49px);
    line-height:1.13;
    letter-spacing:-1px;
}

.gaviCitiesWhy h2 strong{
    display:block;
    color:#f0b429;
}

.gaviCitiesWhyIntro > p{
    margin:0 0 17px;
    color:#c3cfdb;
    font-size:16px;
    line-height:1.8;
}

.gaviCitiesWhyIntro > p strong{
    color:#fff;
}

.gaviCitiesWhyCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:55px;
    margin-top:14px;
    padding:0 24px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviCitiesWhyCta span{
    font-size:21px;
}

.gaviCitiesWhyCta:hover{
    transform:translateY(-3px);
    box-shadow:0 13px 30px rgba(185,120,0,.3);
}

.gaviCitiesWhyPhone{
    display:block;
    margin-top:16px;
    color:#e1e8ef !important;
    font-size:15px;
    text-decoration:none !important;
}

.gaviCitiesWhyPhone strong{
    color:#f0b429;
}


/* =========================================================
   VALUATION MATRIX
========================================================= */

.gaviCitiesWhyMatrix{
    border:1px solid rgba(255,255,255,.12);
    border-radius:9px;
    background:rgba(255,255,255,.045);
    overflow:hidden;
}

.gaviCitiesMatrixHeader{
    display:grid;
    grid-template-columns:110px 1fr;
    gap:18px;
    padding:17px 23px;
    border-bottom:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.04);
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1px;
}

.gaviCitiesMatrixRow{
    display:grid;
    grid-template-columns:72px 1fr;
    gap:18px;
    padding:22px 23px;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.gaviCitiesMatrixRow:last-child{
    border-bottom:0;
}

.gaviCitiesMatrixIcon{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(240,180,41,.35);
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviCitiesMatrixRow strong{
    display:block;
    margin-bottom:5px;
    color:#fff;
    font-size:18px;
}

.gaviCitiesMatrixRow p{
    margin:0;
    color:#b7c4d1;
    font-size:15px;
    line-height:1.65;
}


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

.gaviCitiesFinalCta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:55px;
    padding:29px 32px;
    border:1px solid rgba(240,180,41,.35);
    border-radius:8px;
    background:linear-gradient(110deg,#092f62,#04152d);
}

.gaviCitiesFinalCta > div:first-child > span{
    display:block;
    margin-bottom:6px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviCitiesFinalCta h3{
    margin:0;
    color:#fff;
    font-size:24px;
    line-height:1.4;
}

.gaviCitiesFinalCta h3 strong{
    color:#f0b429;
}

.gaviCitiesFinalActions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

.gaviCitiesFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:52px;
    padding:0 21px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviCitiesFinalButton span{
    font-size:20px;
}

.gaviCitiesFinalPhone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    font-weight:750;
    text-decoration:none !important;
}

.gaviCitiesFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

    .gaviCitiesHeroGrid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .gaviCitiesHeroContent{
        text-align:center;
    }

    .gaviCitiesHeroEyebrow,
    .gaviCitiesHeroActions{
        justify-content:center;
    }

    .gaviCitiesHeroLead,
    .gaviCitiesHeroText{
        margin-left:auto;
        margin-right:auto;
    }

    .gaviCitiesHeroVisual{
        min-height:480px;
    }

    .gaviCitiesWhyGrid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .gaviCitiesWhyIntro{
        position:static;
        max-width:780px;
    }

}


@media (max-width:767px){

    .gaviCitiesHero{
        padding:62px 0 60px;
    }

    .gaviCitiesHero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .gaviCitiesHeroLead{
        font-size:16px;
    }

    .gaviCitiesHeroText{
        font-size:15px;
    }

    .gaviCitiesHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCitiesPrimaryCta,
    .gaviCitiesPhoneCta{
        width:100%;
    }

    .gaviCitiesHeroVisual{
        min-height:390px;
    }

    .gaviCitiesIndiaCircle{
        width:350px;
        height:350px;
    }

    .gaviCitiesCircleCore{
        width:110px;
        height:110px;
    }

    .gaviCitiesCircleCore strong{
        font-size:21px;
    }

    .gaviCityPin{
        padding:6px 8px;
        font-size:15px;
    }

    .gaviCityMumbai{
        left:0;
    }

    .gaviCityPune{
        left:13%;
    }

    .gaviCityAhmedabad{
        left:8%;
    }

    .gaviCityBengaluru{
        left:25%;
    }

    .gaviCityChennai{
        right:0;
    }

    .gaviCityHyderabad{
        right:0;
    }

    .gaviCityKolkata{
        right:-4%;
    }

    .gaviCitiesVisualLabel{
        right:0;
        bottom:0;
    }

    .gaviCitiesLandscape,
    .gaviCitiesWhy{
        padding:65px 0;
    }

    .gaviCitiesLandscapeHeader h2,
    .gaviCitiesWhy h2{
        font-size:32px;
    }

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

    .gaviCitiesRegionCard{
        padding:24px 20px;
    }

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

    .gaviCitiesFinalCta{
        flex-direction:column;
        align-items:flex-start;
        padding:25px 21px;
    }

    .gaviCitiesFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviCitiesFinalButton,
    .gaviCitiesFinalPhone{
        width:100%;
    }

    .gaviCitiesMatrixHeader{
        grid-template-columns:60px 1fr;
        padding:15px;
        gap:10px;
    }

    .gaviCitiesMatrixRow{
        grid-template-columns:48px 1fr;
        padding:19px 15px;
        gap:13px;
    }

    .gaviCitiesMatrixIcon{
        width:43px;
        height:43px;
    }

}


@media (max-width:480px){

    .gaviCitiesHeroStats{
        display:grid;
        grid-template-columns:1fr;
    }

    .gaviCitiesHeroStat{
        width:100%;
        text-align:left;
    }

    .gaviCitiesIndiaCircle{
        width:305px;
        height:305px;
    }

    .gaviCitiesCircleCore{
        width:96px;
        height:96px;
    }

    .gaviCitiesCircleCore strong{
        font-size:18px;
    }

    .gaviCityPin{
        padding:5px 6px;
        font-size:15px;
    }

    .gaviCityPin:before{
        width:5px;
        height:5px;
    }

    .gaviCitiesVisualLabel{
        display:none;
    }

}/* =========================================================
   THE NCR — A2Z VALUERS' HOME GEOGRAPHY
   SECTION 01 — HERO
   Namespace: gaviNcrHero
========================================================= */

.gaviNcrHero{
    position:relative;
    overflow:hidden;
    padding:92px 0 88px;
    background:
        radial-gradient(circle at 85% 15%,rgba(240,180,41,.14),transparent 30%),
        linear-gradient(135deg,#04152d 0%,#061d3d 52%,#092f62 100%);
    color:#fff;
    isolation:isolate;
}

.gaviNcrHeroPattern{
    position:absolute;
    inset:0;
    opacity:.28;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:55px 55px;
    mask-image:linear-gradient(90deg,transparent,#000 35%,#000 75%,transparent);
}

.gaviNcrHeroInner{
    position:relative;
    max-width:1080px;
    margin:0 auto;
    text-align:center;
}

.gaviNcrHeroEyebrow{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:2px;
}

.gaviNcrHeroEyebrow span{
    display:inline-block;
    width:42px;
    height:2px;
    background:linear-gradient(90deg,#b97800,#f0b429);
}

.gaviNcrHero h1{
    margin:0 0 25px;
    color:#fff;
    font-size:clamp(39px,5vw,67px);
    line-height:1.05;
    letter-spacing:-1.8px;
    font-weight:850;
}

.gaviNcrHero h1 strong{
    display:block;
    color:#f0b429;
}

.gaviNcrHeroLead{
    max-width:920px;
    margin:0 auto 20px;
    color:#e9eef5;
    font-size:19px;
    line-height:1.72;
}

.gaviNcrHeroLead strong{
    color:#f0b429;
}

.gaviNcrHeroText{
    max-width:870px;
    margin:0 auto;
    color:#bfcbd9;
    font-size:16px;
    line-height:1.8;
}

.gaviNcrHeroText strong{
    color:#fff;
}

.gaviNcrHeroStats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    max-width:820px;
    margin:42px auto 0;
    border:1px solid rgba(240,180,41,.25);
    border-radius:8px;
    overflow:hidden;
    background:rgba(255,255,255,.045);
    backdrop-filter:blur(7px);
}

.gaviNcrHeroStat{
    padding:18px 12px;
    border-right:1px solid rgba(255,255,255,.11);
}

.gaviNcrHeroStat:last-child{
    border-right:0;
}

.gaviNcrHeroStat strong{
    display:block;
    margin-bottom:4px;
    color:#f0b429;
    font-size:19px;
}

.gaviNcrHeroStat span{
    color:#b9c6d5;
    font-size:15px;
}

.gaviNcrHeroActions{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:32px;
}

.gaviNcrPrimaryCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:56px;
    padding:0 27px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:16px;
    font-weight:850;
    text-decoration:none !important;
    box-shadow:0 13px 30px rgba(185,120,0,.25);
    transition:all .3s ease;
}

.gaviNcrPrimaryCta:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 36px rgba(185,120,0,.35);
}

.gaviNcrPrimaryCta span{
    font-size:21px;
}

.gaviNcrPhoneCta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:56px;
    padding:0 21px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:5px;
    color:#fff !important;
    background:rgba(255,255,255,.055);
    font-size:16px;
    font-weight:750;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNcrPhoneCta:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}



/* =========================================================
   SECTION 02 — LANDSCAPE
   Namespace: gaviNcrLandscape
========================================================= */

.gaviNcrLandscape{
    padding:88px 0 92px;
    background:#f7f9fc;
    position:relative;
}

.gaviNcrLandscape:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(
        90deg,
        #061d3d,
        #092f62,
        #b97800,
        #f0b429,
        #092f62,
        #061d3d
    );
}

.gaviNcrLandscapeHeader{
    max-width:820px;
    margin:0 auto 48px;
    text-align:center;
}

.gaviNcrSectionEyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:13px;
    color:#b97800;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.8px;
}

.gaviNcrSectionEyebrow span{
    width:31px;
    height:2px;
    background:#b97800;
}

.gaviNcrLandscapeHeader h2{
    margin:0 0 15px;
    color:#061d3d;
    font-size:clamp(32px,3.7vw,49px);
    line-height:1.15;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviNcrLandscapeHeader h2 strong{
    color:#b97800;
}

.gaviNcrLandscapeHeader p{
    margin:0;
    color:#566579;
    font-size:16px;
    line-height:1.78;
}

.gaviNcrLandscapeHeader p strong{
    color:#092f62;
}

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

.gaviNcrLandscapeCard{
    position:relative;
    height:680px;
    padding:25px 22px 24px;
    border:1px solid #dce3ec;
    border-radius:9px;
    background:#fff;
    box-shadow:0 9px 27px rgba(6,29,61,.055);
    overflow:hidden;
    transition:all .3s ease;
}

.gaviNcrLandscapeCard:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,#092f62,#b97800);
}

.gaviNcrLandscapeCard:hover{
    transform:translateY(-7px);
    border-color:rgba(185,120,0,.45);
    box-shadow:0 20px 42px rgba(6,29,61,.11);
}

.gaviNcrLandscapeTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:21px;
}

.gaviNcrLandscapeNumber{
    color:#d5dce5;
    font-size:15px;
    font-weight:900;
}

.gaviNcrLandscapeTag{
    padding:6px 9px;
    border-radius:3px;
    background:#061d3d;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:.7px;
}

.gaviNcrLandscapeCard h3{
    margin:0 0 13px;
    color:#061d3d;
    font-size:22px;
    line-height:1.3;
    font-weight:800;
}

.gaviNcrLandscapeCard h3 strong{
    color:#b97800;
}

.gaviNcrLandscapeCard p{
    margin:0;
    color:#59697c;
    font-size:15px;
    line-height:1.72;
}

.gaviNcrLandscapeCard p strong{
    color:#092f62;
}

.gaviNcrLandscapeCard ul{
    margin:21px 0 0;
    padding:0;
    list-style:none;
}

.gaviNcrLandscapeCard li{
    position:relative;
    margin-bottom:10px;
    padding-left:17px;
    color:#46566a;
    font-size:15px;
    line-height:1.55;
}

.gaviNcrLandscapeCard li:before{
    content:"";
    position:absolute;
    left:0;
    top:9px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#b97800;
}

.gaviNcrLandscapeCard li strong{
    color:#092f62;
}

.gaviNcrLandscapeLink{
    position:absolute;
    left:22px;
    right:22px;
    bottom:22px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:14px;
    border-top:1px solid #e5eaf0;
    color:#092f62 !important;
    font-size:15px;
    font-weight:850;
    text-decoration:none !important;
}

.gaviNcrLandscapeLink span{
    color:#b97800;
    font-size:21px;
    transition:transform .25s ease;
}

.gaviNcrLandscapeLink:hover{
    color:#b97800 !important;
}

.gaviNcrLandscapeLink:hover span{
    transform:translateX(4px);
}



/* =========================================================
   SECTION 03 — PAN INDIA PRACTICE
   Namespace: gaviNcrPractice
========================================================= */

.gaviNcrPractice{
    position:relative;
    padding:90px 0 88px;
    background:
        radial-gradient(circle at 90% 20%,rgba(240,180,41,.09),transparent 28%),
        linear-gradient(135deg,#04152d,#061d3d 60%,#092f62);
    overflow:hidden;
}

.gaviNcrPractice:after{
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    right:-260px;
    bottom:-270px;
    border:1px solid rgba(240,180,41,.18);
    border-radius:50%;
}

.gaviNcrPracticeGrid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:65px;
    align-items:center;
}

.gaviNcrEyebrowLight{
    color:#f0b429;
}

.gaviNcrEyebrowLight span{
    background:#f0b429;
}

.gaviNcrPracticeContent h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(31px,3.6vw,49px);
    line-height:1.14;
    font-weight:850;
    letter-spacing:-1px;
}

.gaviNcrPracticeContent h2 strong{
    color:#f0b429;
}

.gaviNcrPracticeContent > p{
    margin:0 0 17px;
    color:#c5d0dd;
    font-size:16px;
    line-height:1.8;
}

.gaviNcrPracticeContent > p strong{
    color:#fff;
}

.gaviNcrPracticePoints{
    display:grid;
    gap:10px;
    margin-top:27px;
}

.gaviNcrPracticePoint{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:15px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:6px;
    background:rgba(255,255,255,.045);
}

.gaviNcrPracticePoint > span{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #b97800;
    border-radius:50%;
    color:#f0b429;
    font-size:15px;
    font-weight:900;
}

.gaviNcrPracticePoint strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:16px;
}

.gaviNcrPracticePoint small{
    display:block;
    color:#aebdcd;
    font-size:15px;
    line-height:1.55;
}


/* RIGHT PANEL */

.gaviNcrPracticePanel{
    position:relative;
    padding:31px;
    border:1px solid rgba(240,180,41,.28);
    border-radius:10px;
    background:rgba(255,255,255,.055);
    box-shadow:0 25px 55px rgba(0,0,0,.18);
    backdrop-filter:blur(9px);
}

.gaviNcrPanelLabel{
    display:inline-block;
    margin-bottom:15px;
    padding:7px 10px;
    border-radius:3px;
    background:#b97800;
    color:#061d3d;
    font-size:15px;
    font-weight:900;
    letter-spacing:1px;
}

.gaviNcrPracticePanel h3{
    margin:0 0 25px;
    color:#fff;
    font-size:26px;
    line-height:1.35;
    font-weight:750;
}

.gaviNcrPracticePanel h3 strong{
    color:#f0b429;
}

.gaviNcrIndiaGrid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    border-top:1px solid rgba(255,255,255,.1);
    border-left:1px solid rgba(255,255,255,.1);
}

.gaviNcrIndiaGrid div{
    min-height:76px;
    padding:14px;
    border-right:1px solid rgba(255,255,255,.1);
    border-bottom:1px solid rgba(255,255,255,.1);
}

.gaviNcrIndiaGrid strong{
    display:block;
    margin-bottom:3px;
    color:#f0b429;
    font-size:16px;
}

.gaviNcrIndiaGrid span{
    color:#aebdcd;
    font-size:15px;
}

.gaviNcrPanelBottom{
    margin-top:22px;
    padding-top:19px;
    border-top:1px solid rgba(240,180,41,.2);
}

.gaviNcrPanelBottom span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1px;
}

.gaviNcrPanelBottom strong{
    display:block;
    color:#fff;
    font-size:16px;
    line-height:1.55;
}


/* FINAL CTA */

.gaviNcrFinalCta{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:58px;
    padding:29px 32px;
    border:1px solid rgba(240,180,41,.38);
    border-radius:8px;
    background:linear-gradient(
        110deg,
        rgba(255,255,255,.065),
        rgba(255,255,255,.035)
    );
}

.gaviNcrFinalCta > div:first-child > span{
    display:block;
    margin-bottom:7px;
    color:#f0b429;
    font-size:15px;
    font-weight:850;
    letter-spacing:1.3px;
}

.gaviNcrFinalCta h3{
    margin:0;
    color:#fff;
    font-size:24px;
    line-height:1.35;
}

.gaviNcrFinalCta h3 strong{
    color:#f0b429;
}

.gaviNcrFinalActions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.gaviNcrFinalButton{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:53px;
    padding:0 22px;
    border:1px solid #f0b429;
    border-radius:5px;
    background:linear-gradient(135deg,#b97800,#f0b429);
    color:#061d3d !important;
    font-size:15px;
    font-weight:900;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNcrFinalButton:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(185,120,0,.3);
}

.gaviNcrFinalButton span{
    font-size:20px;
}

.gaviNcrFinalPhone{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-height:53px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:5px;
    color:#fff !important;
    font-size:15px;
    text-decoration:none !important;
    transition:all .3s ease;
}

.gaviNcrFinalPhone:hover{
    border-color:#f0b429;
    color:#f0b429 !important;
}

.gaviNcrFinalPhone strong{
    color:inherit;
}



/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1100px){

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

    .gaviNcrLandscapeCard{
        min-height:450px;
    }

    .gaviNcrPracticeGrid{
        gap:40px;
    }

}


@media (max-width:991px){

    .gaviNcrHero{
        padding:70px 0;
    }

    .gaviNcrHeroStats{
        max-width:700px;
    }

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

    .gaviNcrFinalCta{
        align-items:flex-start;
        flex-direction:column;
    }

}


@media (max-width:767px){

    .gaviNcrHero{
        padding:58px 0;
    }

    .gaviNcrHero h1{
        font-size:40px;
        letter-spacing:-1px;
    }

    .gaviNcrHeroLead{
        font-size:17px;
    }

    .gaviNcrHeroText{
        font-size:15px;
    }

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

    .gaviNcrHeroStat:nth-child(2){
        border-right:0;
    }

    .gaviNcrHeroStat:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,.11);
    }

    .gaviNcrHeroActions{
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNcrPrimaryCta,
    .gaviNcrPhoneCta{
        width:100%;
    }

    .gaviNcrLandscape{
        padding:65px 0;
    }

    .gaviNcrLandscapeHeader h2{
        font-size:32px;
    }

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

    .gaviNcrLandscapeCard{
        min-height:420px;
    }

    .gaviNcrPractice{
        padding:68px 0;
    }

    .gaviNcrPracticePanel{
        padding:23px 19px;
    }

    .gaviNcrPracticePanel h3{
        font-size:23px;
    }

    .gaviNcrFinalCta{
        padding:24px 20px;
    }

    .gaviNcrFinalCta h3{
        font-size:21px;
    }

    .gaviNcrFinalActions{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .gaviNcrFinalButton,
    .gaviNcrFinalPhone{
        width:100%;
    }

}


@media (max-width:480px){

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

    .gaviNcrHeroStat,
    .gaviNcrHeroStat:nth-child(2){
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.11);
    }

    .gaviNcrHeroStat:last-child{
        border-bottom:0;
    }

    .gaviNcrLandscapeCard{
        min-height:435px;
    }

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

}


/* =========================================================
   GOVERNMENT APPROVED VALUERS NOIDA
   Page: Five Characteristics — Distinct Valuation Geography
   Namespace: noidaGeo
   Palette: Royal Navy + Gold + White
   No hero image | Minimum text size: 15px
========================================================= */

.noidaGeoPage {
  --ng-navy: #092f62;
  --ng-deep: #061d3d;
  --ng-dark: #04152d;
  --ng-gold: #b97800;
  --ng-gold-mid: #d99a16;
  --ng-gold-light: #f0b429;
  --ng-cream: #fff9ec;
  --ng-white: #ffffff;
  --ng-text: #253650;
  --ng-muted: #56677d;
  --ng-border: #dce5f0;
  --ng-light: #f5f8fc;

  width: 100%;
  color: var(--ng-text);
  background: var(--ng-white);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.8;
  overflow-wrap: anywhere;
}

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

.noidaGeoPage a {
  text-decoration: none;
}

.noidaGeoContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW
========================================================= */

.noidaGeoEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0 0 17px;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.noidaGeoEyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--ng-gold-mid);
}

.noidaGeoEyebrowDark {
  color: var(--ng-gold);
}


/* =========================================================
   SHARED BUTTON SYSTEM
========================================================= */

.noidaGeoBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 55px;
  padding: 14px 22px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaGeoBtn:hover {
  transform: translateY(-3px);
}

.noidaGeoBtnGold {
  color: var(--ng-dark) !important;
  background: linear-gradient(
    135deg,
    #f0b429 0%,
    #d99a16 100%
  );
  border-color: var(--ng-gold-light);
  box-shadow: 0 8px 23px rgba(185,120,0,0.19);
}

.noidaGeoBtnGold:hover {
  color: var(--ng-dark) !important;
  background: #ffca48;
  box-shadow: 0 12px 28px rgba(185,120,0,0.27);
}

.noidaGeoBtnOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.45);
}

.noidaGeoBtnOutline:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.12);
  border-color: var(--ng-gold-light);
}

.noidaGeoBtnNavy {
  color: #ffffff !important;
  background: var(--ng-navy);
  border-color: var(--ng-navy);
}

.noidaGeoBtnNavy:hover {
  color: #ffffff !important;
  background: var(--ng-dark);
  border-color: var(--ng-dark);
  box-shadow: 0 10px 25px rgba(4,21,45,0.17);
}

.noidaGeoBtnWhite {
  color: var(--ng-navy) !important;
  background: #ffffff;
  border-color: #ffffff;
}

.noidaGeoBtnWhite:hover {
  color: var(--ng-deep) !important;
  background: var(--ng-cream);
  border-color: var(--ng-gold-light);
}

.noidaGeoPhoneIcon {
  font-size: 20px;
}


/* =========================================================
   PAGE INTRODUCTION
========================================================= */

.noidaGeoIntro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 69px 0 36px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 90% 12%,
      rgba(217,154,22,0.17),
      transparent 29%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 60%,
      #061d3d 100%
    );
}

.noidaGeoIntro::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.17;
  background-image:
    linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 42px 42px;
}

.noidaGeoIntroPanel {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.noidaGeoIntroPanel .noidaGeoEyebrow {
  justify-content: center;
  color: var(--ng-gold-light);
}

.noidaGeoIntroPanel .noidaGeoEyebrowLine {
  background: var(--ng-gold-light);
}

.noidaGeoIntroPanel h1 {
  max-width: 960px;
  margin: 0 auto 23px;
  color: #ffffff;
  font-size: clamp(34px, 4.4vw, 53px);
  font-weight: 900;
  line-height: 1.17;
  letter-spacing: -1.3px;
}

.noidaGeoIntroPanel h1 span {
  display: block;
  margin-top: 7px;
  color: var(--ng-gold-light);
}

.noidaGeoIntroText {
  max-width: 880px;
  margin: 0 auto;
  color: #e7edf7;
  font-size: 17px;
  line-height: 1.9;
}

.noidaGeoIntroText strong {
  color: var(--ng-gold-light);
  font-weight: 900;
}

.noidaGeoIntroMeta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 27px;
}

.noidaGeoIntroMeta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 41px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 7px;
  color: #f6f8fc;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.noidaGeoIntroMeta i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  color: var(--ng-dark);
  background: var(--ng-gold-light);
  font-size: 15px;
  font-style: normal;
  font-weight: 900;
}

.noidaGeoIntroActions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 29px;
}

.noidaGeoIntroFoot {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.16);
}

.noidaGeoIntroFootMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border: 1px solid var(--ng-gold-mid);
  border-radius: 50%;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaGeoIntroFoot p {
  margin: 0;
  color: #ffffff;
  font-size: 15px;
  line-height: 1.7;
  text-align: left;
}

.noidaGeoIntroFoot p strong {
  color: var(--ng-gold-light);
}

.noidaGeoIntroFoot p span {
  display: block;
  color: #d9e3f0;
}


/* =========================================================
   SHARED SECTION LAYOUT
========================================================= */

.noidaGeoSection {
  position: relative;
  padding: 76px 0;
}

.noidaGeoSection:nth-of-type(even) {
  background: #f8fbff;
}

.noidaGeoSectionHeader {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  align-items: start;
  gap: 25px;
  margin-bottom: 39px;
}

.noidaGeoSectionIndex {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding-top: 7px;
}

.noidaGeoSectionIndex span {
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 1px;
}

.noidaGeoSectionIndex strong {
  color: var(--ng-navy);
  font-size: 58px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -2px;
}

.noidaGeoSectionHeading h2 {
  max-width: 900px;
  margin: 0 0 15px;
  color: var(--ng-deep);
  font-size: clamp(29px, 3.3vw, 42px);
  font-weight: 900;
  line-height: 1.23;
  letter-spacing: -0.8px;
}

.noidaGeoSectionHeading h2 span {
  color: var(--ng-gold);
}

.noidaGeoSectionHeading > p {
  max-width: 850px;
  margin: 0;
  color: var(--ng-muted);
  font-size: 17px;
  line-height: 1.85;
}

.noidaGeoSectionHeading > p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoSection p {
  font-size: 16px;
  line-height: 1.9;
}

.noidaGeoSection h3 {
  line-height: 1.4;
}


/* =========================================================
   CHARACTERISTIC 1: AUTHORITY & SECTOR LAYOUT
========================================================= */

.noidaGeoAuthority {
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.055),
      transparent 28%
    ),
    #ffffff;
}

.noidaGeoAuthorityLayout {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(290px, 0.78fr);
  align-items: start;
  gap: 30px;
}

.noidaGeoAuthorityMain > p {
  margin: 0 0 20px;
  color: #4e6077;
}

.noidaGeoAuthorityMain > p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoCallout {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 27px;
  padding: 21px;
  border: 1px solid #ead7ac;
  border-radius: 10px;
  background: var(--ng-cream);
}

.noidaGeoCalloutIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ng-navy);
  font-size: 18px;
  font-weight: 900;
}

.noidaGeoCallout strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ng-deep);
  font-size: 17px;
  font-weight: 900;
}

.noidaGeoCallout p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaGeoSideCard {
  padding: 26px;
  border: 1px solid #d8e3f0;
  border-radius: 13px;
  background: linear-gradient(150deg, #f8fbff, #ffffff);
  box-shadow: 0 12px 32px rgba(9,47,98,0.07);
}

.noidaGeoSideCardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 16px;
}

.noidaGeoSideLabel {
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaGeoSideIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border-radius: 10px;
  color: var(--ng-gold);
  background: var(--ng-cream);
  font-size: 23px;
}

.noidaGeoSideCard h3 {
  margin: 0 0 18px;
  color: var(--ng-deep);
  font-size: 23px;
  font-weight: 900;
}

.noidaGeoCheckList {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.noidaGeoCheckList li {
  position: relative;
  padding-left: 27px;
  color: #465971;
  font-size: 15px;
  line-height: 1.7;
}

.noidaGeoCheckList li::before {
  position: absolute;
  top: 1px;
  left: 0;
  content: "✓";
  color: var(--ng-gold);
  font-size: 17px;
  font-weight: 900;
}

.noidaGeoTextLink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 23px;
  color: var(--ng-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.7;
  transition: color 0.2s ease;
}

.noidaGeoTextLink span {
  color: var(--ng-gold);
  font-size: 21px;
  transition: transform 0.2s ease;
}

.noidaGeoTextLink:hover {
  color: var(--ng-gold) !important;
}

.noidaGeoTextLink:hover span {
  transform: translateX(5px);
}


/* Documentation journey strip */

.noidaGeoProcessStrip {
  margin-top: 34px;
  padding: 24px;
  border-radius: 13px;
  color: #ffffff;
  background: linear-gradient(115deg, var(--ng-dark), var(--ng-navy));
}

.noidaGeoProcessTitle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.noidaGeoProcessTitle span {
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaGeoProcessTitle strong {
  color: #ffffff;
  font-size: 17px;
  font-weight: 900;
}

.noidaGeoProcessSteps {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1fr) 24px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.noidaGeoProcessStep {
  min-width: 0;
  padding: 15px;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 9px;
  background: rgba(255,255,255,0.055);
}

.noidaGeoProcessStep > span {
  display: block;
  margin-bottom: 7px;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaGeoProcessStep strong,
.noidaGeoProcessStep small {
  display: block;
}

.noidaGeoProcessStep strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaGeoProcessStep small {
  margin-top: 5px;
  color: #dbe5f1;
  font-size: 15px;
  line-height: 1.6;
}

.noidaGeoProcessArrow {
  color: var(--ng-gold-light);
  font-size: 23px;
  text-align: center;
}


/* =========================================================
   CHARACTERISTIC 2: DELHI-BORDER SECTORS
========================================================= */

.noidaGeoBorder {
  background: #f5f8fc;
}

.noidaGeoBorderGrid {
  display: grid;
  grid-template-columns: minmax(280px, 0.83fr) minmax(0, 1.17fr);
  gap: 35px;
  align-items: stretch;
}

.noidaGeoBorderVisual {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 440px;
  overflow: hidden;
  padding: 30px;
  border: 1px solid rgba(240,180,41,0.28);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 50% 42%,
      rgba(217,154,22,0.2),
      transparent 35%
    ),
    linear-gradient(145deg, var(--ng-dark), var(--ng-navy));
}

.noidaGeoBorderVisual::before,
.noidaGeoBorderVisual::after {
  position: absolute;
  content: "";
  pointer-events: none;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 50%;
}

.noidaGeoBorderVisual::before {
  top: 14%;
  left: -17%;
  width: 135%;
  aspect-ratio: 1;
}

.noidaGeoBorderVisual::after {
  top: 23%;
  left: -6%;
  width: 112%;
  aspect-ratio: 1;
}

.noidaGeoBorderVisualInner {
  position: relative;
  z-index: 1;
  width: 100%;
  text-align: center;
}

.noidaGeoBorderVisualEyebrow {
  display: block;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.noidaGeoBorderRing {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 178px;
  height: 178px;
  margin: 23px auto;
  border: 1px solid rgba(240,180,41,0.78);
  border-radius: 50%;
  box-shadow:
    0 0 0 12px rgba(240,180,41,0.07),
    0 0 0 26px rgba(255,255,255,0.035);
}

.noidaGeoBorderRingInner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 138px;
  height: 138px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
}

.noidaGeoBorderRingInner strong {
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoBorderRingInner small {
  margin-top: 3px;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.1px;
}

.noidaGeoBorderVisual h3 {
  margin: 24px 0 9px;
  color: #ffffff;
  font-size: 22px;
  font-weight: 900;
}

.noidaGeoBorderVisualInner > p {
  max-width: 380px;
  margin: 0 auto;
  color: #dce6f2;
  font-size: 15px;
  line-height: 1.8;
}

.noidaGeoLocationTags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.noidaGeoLocationTags span {
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 6px;
  color: #ffffff;
  background: rgba(255,255,255,0.06);
  font-size: 15px;
  font-weight: 700;
}

.noidaGeoBorderContent > p {
  margin: 0 0 19px;
  color: #4e6077;
}

.noidaGeoBorderContent > p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoMiniHeading {
  margin: 26px 0 16px;
  color: var(--ng-deep);
  font-size: 20px;
  font-weight: 900;
}

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

.noidaGeoFactor {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  min-width: 0;
  padding: 15px;
  border: 1px solid #e0e7f0;
  border-radius: 9px;
  background: #ffffff;
}

.noidaGeoFactorNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 7px;
  color: var(--ng-deep);
  background: #fff0c9;
  font-size: 15px;
  font-weight: 900;
}

.noidaGeoFactor strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ng-navy);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaGeoFactor p {
  margin: 0;
  color: var(--ng-muted);
  font-size: 15px;
  line-height: 1.7;
}

.noidaGeoNotice {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  margin-top: 30px;
  padding: 22px 25px;
  border: 1px solid #e9d8b3;
  border-radius: 10px;
  background: var(--ng-cream);
}

.noidaGeoNotice strong {
  color: var(--ng-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaGeoNotice p {
  margin: 0;
  color: #56677d;
  font-size: 15px;
}


/* =========================================================
   CHARACTERISTIC 3: FILM CITY
========================================================= */

.noidaGeoFilm {
  background: #ffffff;
}

.noidaGeoFilmIntro {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 35px;
  align-items: center;
}

.noidaGeoFilmIntroText p {
  margin: 0 0 19px;
  color: #4e6077;
}

.noidaGeoFilmIntroText p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoFilmHighlight {
  padding: 27px;
  border: 1px solid #ead7ac;
  border-radius: 13px;
  background: linear-gradient(145deg, #fffdf7, #fff6df);
  box-shadow: 0 10px 25px rgba(9,47,98,0.045);
}

.noidaGeoFilmHighlightLabel {
  display: block;
  margin-bottom: 13px;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaGeoFilmHighlight > strong {
  display: block;
  color: var(--ng-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaGeoFilmHighlightRule {
  display: block;
  width: 48px;
  height: 3px;
  margin: 17px 0;
  background: var(--ng-gold-mid);
}

.noidaGeoFilmHighlight p {
  margin: 0;
  color: #5a687a;
  font-size: 15px;
}

.noidaGeoFilmCards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 19px;
  margin-top: 33px;
}

.noidaGeoFilmCard {
  padding: 24px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 9px 25px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.noidaGeoFilmCard:hover {
  transform: translateY(-4px);
  border-color: #d8b15d;
  box-shadow: 0 15px 33px rgba(9,47,98,0.09);
}

.noidaGeoFilmCardNumber {
  display: block;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaGeoFilmCardIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  margin: 18px 0 16px;
  border: 1px solid #ead8b0;
  border-radius: 10px;
  color: var(--ng-gold);
  background: var(--ng-cream);
  font-size: 25px;
  font-weight: 900;
}

.noidaGeoFilmCard h3 {
  margin: 0 0 10px;
  color: var(--ng-deep);
  font-size: 21px;
  font-weight: 900;
}

.noidaGeoFilmCard p {
  margin: 0;
  color: #53647a;
  font-size: 15px;
  line-height: 1.85;
}

.noidaGeoFilmMethod {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 30px;
  padding: 27px;
  border-radius: 12px;
  background: #f5f8fc;
}

.noidaGeoFilmMethod > div {
  max-width: 760px;
}

.noidaGeoFilmMethodEyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoFilmMethod h3 {
  margin: 0 0 10px;
  color: var(--ng-deep);
  font-size: 23px;
  font-weight: 900;
}

.noidaGeoFilmMethod p {
  margin: 0;
  color: #53647a;
  font-size: 15px;
}

.noidaGeoFilmMethod .noidaGeoBtn {
  flex: 0 0 auto;
}


/* =========================================================
   CHARACTERISTIC 4: SECTOR 18
========================================================= */

.noidaGeoSector18 {
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.07),
      transparent 27%
    ),
    #f8fbff;
}

.noidaGeoSector18Intro {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-bottom: 30px;
}

.noidaGeoSector18Intro p {
  margin: 0;
  color: #4e6077;
}

.noidaGeoSector18Intro p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

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

.noidaGeoSector18Feature {
  padding: 24px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(9,47,98,0.04);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.noidaGeoSector18Feature:hover {
  transform: translateY(-4px);
  border-color: #d8b15d;
  box-shadow: 0 15px 32px rgba(9,47,98,0.08);
}

.noidaGeoSector18FeatureTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 21px;
}

.noidaGeoSector18FeatureIndex {
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoSector18FeatureIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  color: var(--ng-gold);
  background: var(--ng-cream);
  font-size: 23px;
  font-weight: 900;
}

.noidaGeoSector18Feature h3 {
  margin: 0 0 11px;
  color: var(--ng-deep);
  font-size: 21px;
  font-weight: 900;
}

.noidaGeoSector18Feature p {
  margin: 0;
  color: #53647a;
  font-size: 15px;
  line-height: 1.85;
}

.noidaGeoSector18Pill {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin-top: 20px;
  padding: 5px 10px;
  border: 1px solid #e8d5a7;
  border-radius: 20px;
  color: var(--ng-navy);
  background: #fff9ec;
  font-size: 15px;
  font-weight: 800;
}

.noidaGeoSector18Evidence {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: 28px;
  margin-top: 29px;
  padding: 26px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  background: #ffffff;
}

.noidaGeoSector18EvidenceTitle > span {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoSector18EvidenceTitle h3 {
  margin: 0;
  color: var(--ng-deep);
  font-size: 24px;
  font-weight: 900;
}

.noidaGeoSector18EvidenceList {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px 20px;
}

.noidaGeoSector18EvidenceList > div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.noidaGeoSector18EvidenceList > div > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ng-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaGeoSector18EvidenceList p {
  margin: 0;
  color: #53647a;
  font-size: 15px;
  line-height: 1.7;
}


/* Shared section CTA */

.noidaGeoSectionCTA {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 30px;
  padding: 28px;
  border: 1px solid rgba(240,180,41,0.35);
  border-radius: 13px;
  color: #ffffff;
  background: linear-gradient(115deg, var(--ng-dark), var(--ng-navy));
}

.noidaGeoSectionCTAContent {
  max-width: 680px;
}

.noidaGeoSectionCTAContent > span {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaGeoSectionCTAContent h3 {
  margin: 0 0 9px;
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
}

.noidaGeoSectionCTAContent p {
  margin: 0;
  color: #dce6f2;
  font-size: 15px;
}

.noidaGeoSectionCTAActions {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 10px;
  min-width: 220px;
}

.noidaGeoSectionCTAActions .noidaGeoBtn {
  width: 100%;
}

.noidaGeoCTAPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,0.27);
  border-radius: 8px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 900;
  transition: background 0.2s ease;
}

.noidaGeoCTAPhone:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08);
}


/* =========================================================
   CHARACTERISTIC 5: EXPRESSWAY CORRIDOR
========================================================= */

.noidaGeoExpressway {
  background: #ffffff;
}

.noidaGeoExpresswayIntro {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-bottom: 30px;
}

.noidaGeoExpresswayIntro p {
  margin: 0;
  color: #4e6077;
}

.noidaGeoExpresswayIntro p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoExpresswayRibbon {
  display: grid;
  grid-template-columns: 1.25fr repeat(4, minmax(0, 1fr));
  gap: 13px;
  align-items: stretch;
  margin: 29px 0 35px;
  padding: 21px;
  border: 1px solid #d9e3ef;
  border-radius: 13px;
  background: linear-gradient(135deg, #f8fbff, #ffffff);
}

.noidaGeoExpresswayRibbonLabel {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-right: 15px;
  border-right: 1px solid #dce5f0;
}

.noidaGeoExpresswayRibbonLabel > span {
  display: block;
  margin-bottom: 6px;
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoExpresswayRibbonLabel > strong {
  color: var(--ng-deep);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaGeoExpresswayCheckpoint {
  padding: 11px;
  border-radius: 8px;
  background: #ffffff;
}

.noidaGeoExpresswayCheckpoint > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  margin-bottom: 9px;
  border-radius: 8px;
  color: var(--ng-deep);
  background: #fff0c9;
  font-size: 15px;
  font-weight: 900;
}

.noidaGeoExpresswayCheckpoint strong,
.noidaGeoExpresswayCheckpoint small {
  display: block;
}

.noidaGeoExpresswayCheckpoint strong {
  color: var(--ng-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaGeoExpresswayCheckpoint small {
  margin-top: 4px;
  color: #617086;
  font-size: 15px;
  line-height: 1.6;
}

.noidaGeoExpresswayGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(290px, 0.7fr);
  gap: 31px;
  align-items: start;
}

.noidaGeoExpresswayMain h3 {
  margin: 0 0 17px;
  color: var(--ng-deep);
  font-size: 26px;
  font-weight: 900;
}

.noidaGeoExpresswayMain > p {
  margin: 0 0 19px;
  color: #4e6077;
}

.noidaGeoExpresswayMain > p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoExpresswayLegalNote {
  margin-top: 26px;
  padding: 22px;
  border: 1px solid #ead7ac;
  border-radius: 10px;
  background: var(--ng-cream);
}

.noidaGeoExpresswayLegalNote > strong {
  display: block;
  margin-bottom: 7px;
  color: var(--ng-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaGeoExpresswayLegalNote p {
  margin: 0;
  color: #53647a;
  font-size: 15px;
}

.noidaGeoExpresswayLegalNote p strong {
  color: var(--ng-navy);
  font-weight: 900;
}

.noidaGeoExpresswaySide {
  padding: 26px;
  border: 1px solid #d9e3ef;
  border-radius: 13px;
  background: linear-gradient(145deg, #f6f9fd, #ffffff);
  box-shadow: 0 10px 30px rgba(9,47,98,0.055);
}

.noidaGeoExpresswaySideTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 17px;
}

.noidaGeoExpresswaySideTop > span:first-child {
  color: var(--ng-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoExpresswaySideIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border-radius: 10px;
  color: var(--ng-gold);
  background: var(--ng-cream);
  font-size: 24px;
}

.noidaGeoExpresswaySide h3 {
  margin: 0 0 19px;
  color: var(--ng-deep);
  font-size: 23px;
  font-weight: 900;
}


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

.noidaGeoFinalCTA {
  padding: 25px 0 60px;
  background: #f5f8fc;
}

.noidaGeoFinalCTAPanel {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  overflow: hidden;
  padding: 39px;
  border: 1px solid rgba(240,180,41,0.35);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(217,154,22,0.19),
      transparent 30%
    ),
    linear-gradient(120deg, var(--ng-dark), var(--ng-navy));
  box-shadow: 0 17px 40px rgba(9,47,98,0.13);
}

.noidaGeoFinalCTAAccent {
  position: absolute;
  top: -65px;
  left: -60px;
  width: 175px;
  height: 175px;
  border: 1px solid rgba(240,180,41,0.23);
  border-radius: 50%;
  box-shadow:
    0 0 0 18px rgba(240,180,41,0.035),
    0 0 0 36px rgba(240,180,41,0.025);
  pointer-events: none;
}

.noidaGeoFinalCTAContent {
  position: relative;
  z-index: 1;
  max-width: 820px;
}

.noidaGeoFinalEyebrow {
  display: block;
  margin-bottom: 11px;
  color: var(--ng-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.noidaGeoFinalCTAContent h2 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: clamp(28px, 3.3vw, 40px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.6px;
}

.noidaGeoFinalCTAContent > p {
  margin: 0;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.9;
}

.noidaGeoFinalCTAContent > p strong {
  color: var(--ng-gold-light);
  font-weight: 900;
}

.noidaGeoFinalCTAButtons {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 25px;
}

.noidaGeoFinalCTAButtons .noidaGeoBtn {
  min-height: 57px;
}

.noidaGeoFinalCTASeal {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 142px;
  height: 142px;
  flex: 0 0 142px;
  border: 1px solid rgba(240,180,41,0.65);
  border-radius: 50%;
  background: rgba(255,255,255,0.035);
  box-shadow:
    0 0 0 12px rgba(255,255,255,0.025),
    inset 0 0 0 8px rgba(255,255,255,0.025);
}

.noidaGeoFinalCTASeal > span {
  color: var(--ng-gold-light);
  font-size: 33px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaGeoFinalCTASeal > small {
  margin-top: 3px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: 1px;
  text-align: center;
}

.noidaGeoDisclaimer {
  max-width: 950px;
  margin: 22px auto 0;
  color: #617086;
  font-size: 15px;
  line-height: 1.8;
  text-align: center;
}


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

.noidaGeoPage a:focus-visible {
  outline: 3px solid var(--ng-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1000px) {
  .noidaGeoSection {
    padding: 62px 0;
  }

  .noidaGeoAuthorityLayout,
  .noidaGeoExpresswayGrid {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.78fr);
    gap: 22px;
  }

  .noidaGeoBorderGrid {
    grid-template-columns: minmax(240px, 0.78fr) minmax(0, 1.22fr);
    gap: 25px;
  }

  .noidaGeoBorderVisual {
    padding: 23px;
  }

  .noidaGeoFilmCards,
  .noidaGeoSector18Features {
    gap: 14px;
  }

  .noidaGeoFilmCard,
  .noidaGeoSector18Feature {
    padding: 20px;
  }

  .noidaGeoExpresswayRibbon {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .noidaGeoExpresswayRibbonLabel {
    grid-column: 1 / -1;
    padding: 0 0 14px;
    border-right: 0;
    border-bottom: 1px solid #dce5f0;
  }

  .noidaGeoFinalCTAPanel {
    padding: 31px;
  }
}


/* =========================================================
   MOBILE AND SMALL TABLETS
========================================================= */

@media (max-width: 740px) {
  .noidaGeoContainer {
    width: calc(100% - 32px);
  }

  .noidaGeoIntro {
    padding: 49px 0 28px;
  }

  .noidaGeoIntroPanel h1 {
    font-size: clamp(31px, 8vw, 42px);
    letter-spacing: -0.7px;
  }

  .noidaGeoIntroText {
    font-size: 16px;
    text-align: left;
  }

  .noidaGeoIntroMeta {
    justify-content: flex-start;
  }

  .noidaGeoIntroActions {
    align-items: stretch;
    flex-direction: column;
  }

  .noidaGeoIntroActions .noidaGeoBtn {
    width: 100%;
  }

  .noidaGeoIntroFoot {
    justify-content: flex-start;
  }

  .noidaGeoSection {
    padding: 52px 0;
  }

  .noidaGeoSectionHeader {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 28px;
  }

  .noidaGeoSectionIndex {
    flex-direction: row;
    align-items: center;
    gap: 11px;
  }

  .noidaGeoSectionIndex strong {
    font-size: 35px;
    letter-spacing: -1px;
  }

  .noidaGeoSectionHeading h2 {
    font-size: clamp(28px, 7.2vw, 36px);
    letter-spacing: -0.5px;
  }

  .noidaGeoSectionHeading > p {
    font-size: 16px;
  }

  .noidaGeoAuthorityLayout,
  .noidaGeoBorderGrid,
  .noidaGeoFilmIntro,
  .noidaGeoSector18Intro,
  .noidaGeoExpresswayIntro,
  .noidaGeoExpresswayGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }

  .noidaGeoSideCard,
  .noidaGeoExpresswaySide {
    padding: 22px;
  }

  .noidaGeoProcessStrip {
    padding: 20px;
  }

  .noidaGeoProcessSteps {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  .noidaGeoProcessArrow {
    transform: rotate(90deg);
  }

  .noidaGeoBorderVisual {
    min-height: auto;
    padding: 28px 22px;
  }

  .noidaGeoFactorGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaGeoNotice {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 20px;
  }

  .noidaGeoFilmCards,
  .noidaGeoSector18Features {
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
  }

  .noidaGeoFilmMethod {
    align-items: stretch;
    flex-direction: column;
    padding: 22px;
  }

  .noidaGeoFilmMethod .noidaGeoBtn {
    width: 100%;
  }

  .noidaGeoSector18Evidence {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    padding: 21px;
  }

  .noidaGeoSector18EvidenceList {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaGeoSectionCTA {
    align-items: stretch;
    flex-direction: column;
    padding: 23px;
  }

  .noidaGeoSectionCTAActions {
    width: 100%;
  }

  .noidaGeoSectionCTAActions .noidaGeoBtn,
  .noidaGeoCTAPhone {
    width: 100%;
  }

  .noidaGeoExpresswayRibbon {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
  }

  .noidaGeoExpresswayRibbonLabel {
    grid-column: 1 / -1;
  }

  .noidaGeoExpresswayCheckpoint {
    padding: 13px;
    border: 1px solid #e0e7f0;
  }

  .noidaGeoFinalCTA {
    padding: 15px 0 40px;
  }

  .noidaGeoFinalCTAPanel {
    align-items: stretch;
    flex-direction: column;
    gap: 25px;
    padding: 27px 22px;
  }

  .noidaGeoFinalCTAContent h2 {
    font-size: 30px;
  }

  .noidaGeoFinalCTAButtons {
    align-items: stretch;
    flex-direction: column;
  }

  .noidaGeoFinalCTAButtons .noidaGeoBtn {
    width: 100%;
  }

  .noidaGeoFinalCTASeal {
    align-self: flex-start;
    width: 105px;
    height: 105px;
    flex-basis: 105px;
  }

  .noidaGeoFinalCTASeal > span {
    font-size: 26px;
  }
}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .noidaGeoContainer {
    width: calc(100% - 26px);
  }

  .noidaGeoEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaGeoEyebrowLine {
    width: 24px;
    flex-basis: 24px;
  }

  .noidaGeoIntroPanel h1 {
    font-size: 30px;
  }

  .noidaGeoIntroMeta span {
    width: 100%;
  }

  .noidaGeoFactor {
    padding: 13px;
  }

  .noidaGeoExpresswayRibbon {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaGeoExpresswayRibbonLabel {
    grid-column: auto;
  }

  .noidaGeoBtn {
    padding-inline: 15px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaGeoPage *,
  .noidaGeoPage *::before,
  .noidaGeoPage *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}


/* ==========================================================
   NOIDA SECTOR STRUCTURE GUIDE
   Unique namespace: noidaSectorGuide
   Royal navy + gold design system
   Minimum font size: 15px
========================================================== */

.noidaSectorGuide {
  --nsg-navy: #092f62;
  --nsg-navy-dark: #061d3d;
  --nsg-navy-deep: #04152d;
  --nsg-gold: #b97800;
  --nsg-gold-main: #d99a16;
  --nsg-gold-light: #f0b429;
  --nsg-gold-pale: #fff7e6;
  --nsg-white: #ffffff;
  --nsg-text: #253650;
  --nsg-muted: #586a80;
  --nsg-border: #dce5f0;
  --nsg-page: #f7f9fd;

  color: var(--nsg-text);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.8;
}

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

.noidaSectorGuide a {
  text-decoration: none;
}

.noidaSectorGuideContainer {
  width: min(1220px, calc(100% - 44px));
  margin-inline: auto;
}


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

.noidaSectorGuideBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 55px;
  padding: 14px 20px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaSectorGuideBtn:hover {
  transform: translateY(-3px);
}

.noidaSectorGuideBtnGold {
  color: var(--nsg-navy-deep) !important;
  background: linear-gradient(
    135deg,
    var(--nsg-gold-light),
    var(--nsg-gold-main)
  );
  border-color: var(--nsg-gold-light);
  box-shadow: 0 8px 22px rgba(217,154,22,0.22);
}

.noidaSectorGuideBtnGold:hover {
  color: var(--nsg-navy-deep) !important;
  background: #ffca48;
  box-shadow: 0 12px 27px rgba(217,154,22,0.32);
}

.noidaSectorGuideBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.055);
}

.noidaSectorGuideBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nsg-gold-light);
  background: rgba(255,255,255,0.12);
}

.noidaSectorGuideBtnArrow,
.noidaSectorGuidePhoneIcon {
  font-size: 21px;
  line-height: 1;
}


/* ==========================================================
   INNER-PAGE INTRO HERO — NO IMAGE
========================================================== */

.noidaSectorGuideHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 74px 0 67px;
  color: var(--nsg-white);
  background:
    radial-gradient(
      circle at 91% 14%,
      rgba(217,154,22,0.18),
      transparent 28%
    ),
    linear-gradient(
      125deg,
      var(--nsg-navy-deep) 0%,
      var(--nsg-navy) 55%,
      var(--nsg-navy-dark) 100%
    );
}

.noidaSectorGuideHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.24;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(110deg, #000, transparent 90%);
}

.noidaSectorGuideHeroInner {
  max-width: 1000px;
}

.noidaSectorGuideEyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1.6;
}

.noidaSectorGuideEyebrowLine {
  display: inline-block;
  width: 38px;
  height: 2px;
  flex: 0 0 38px;
  background: var(--nsg-gold-light);
}

.noidaSectorGuideHero h1 {
  max-width: 1000px;
  margin: 0 0 24px;
  color: #ffffff;
  font-size: clamp(36px, 5vw, 58px);
  font-weight: 900;
  line-height: 1.14;
  letter-spacing: -1.5px;
  overflow-wrap: anywhere;
}

.noidaSectorGuideHero h1 span {
  display: block;
  margin-top: 9px;
  color: var(--nsg-gold-light);
  font-size: 0.7em;
  line-height: 1.4;
  letter-spacing: -0.5px;
}

.noidaSectorGuideHeroText {
  max-width: 920px;
  margin: 0;
  color: #e6edf7;
  font-size: 18px;
  line-height: 1.9;
}

.noidaSectorGuideHeroText strong {
  color: var(--nsg-gold-light);
  font-weight: 850;
}

.noidaSectorGuideHeroPills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.noidaSectorGuideHeroPills span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid rgba(255,255,255,0.23);
  border-radius: 50px;
  color: #f6f8fc;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.45;
}

.noidaSectorGuideHeroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 31px;
}

.noidaSectorGuideHeroNote {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  max-width: 810px;
  margin-top: 28px;
  padding-top: 21px;
  border-top: 1px solid rgba(255,255,255,0.18);
}

.noidaSectorGuideHeroNoteMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 17px;
  font-weight: 900;
}

.noidaSectorGuideHeroNote p {
  margin: 0;
  color: #e4ebf5;
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideHeroNote strong {
  color: #ffffff;
}


/* ==========================================================
   QUICK NAVIGATION
========================================================== */

.noidaSectorGuideIndex {
  position: relative;
  z-index: 2;
  padding: 30px 0;
  border-bottom: 1px solid #e1e8f1;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(9,47,98,0.035);
}

.noidaSectorGuideIndexHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 25px;
  margin-bottom: 18px;
}

.noidaSectorGuideMiniLabel {
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.noidaSectorGuideIndexHeader p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
}

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

.noidaSectorGuideIndexItem {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 16px 13px;
  border: 1px solid var(--nsg-border);
  border-radius: 10px;
  color: var(--nsg-navy) !important;
  background: #ffffff;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaSectorGuideIndexItem:hover {
  transform: translateY(-3px);
  border-color: var(--nsg-gold-main);
  box-shadow: 0 9px 22px rgba(9,47,98,0.07);
}

.noidaSectorGuideIndexNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 9px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaSectorGuideIndexItem > span:nth-child(2) {
  min-width: 0;
}

.noidaSectorGuideIndexItem strong,
.noidaSectorGuideIndexItem small {
  display: block;
}

.noidaSectorGuideIndexItem strong {
  color: var(--nsg-navy);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaSectorGuideIndexItem small {
  margin-top: 4px;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.4;
}

.noidaSectorGuideIndexArrow {
  margin-left: auto;
  color: var(--nsg-gold);
  font-size: 20px;
}


/* ==========================================================
   SHARED SECTION STRUCTURE
========================================================== */

.noidaSectorGuideSection {
  padding: 80px 0;
  scroll-margin-top: 30px;
}

.noidaSectorGuidePhase {
  background: #f7f9fd;
}

.noidaSectorGuideBorder {
  background:
    radial-gradient(
      circle at 95% 6%,
      rgba(217,154,22,0.07),
      transparent 25%
    ),
    #ffffff;
}

.noidaSectorGuideResidential {
  background:
    linear-gradient(180deg, #f7f9fd 0%, #ffffff 100%);
}

.noidaSectorGuideExpressway {
  color: #ffffff;
  background:
    radial-gradient(
      circle at 90% 3%,
      rgba(217,154,22,0.12),
      transparent 28%
    ),
    linear-gradient(
      135deg,
      var(--nsg-navy-deep) 0%,
      var(--nsg-navy-dark) 100%
    );
}

.noidaSectorGuideSectionGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 315px;
  align-items: start;
  gap: 38px;
}

.noidaSectorGuideSectionEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 16px;
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
  line-height: 1.6;
}

.noidaSectorGuideSectionEyebrow > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaSectorGuideSection h2 {
  margin: 0 0 21px;
  color: var(--nsg-navy-deep);
  font-size: clamp(31px, 3.7vw, 45px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.8px;
}

.noidaSectorGuideSection h2 span {
  display: block;
  margin-top: 7px;
  color: var(--nsg-gold);
  font-size: 0.72em;
  line-height: 1.4;
}

.noidaSectorGuideSectionHeading {
  max-width: 900px;
  margin-bottom: 37px;
}

.noidaSectorGuideSectionHeading > p,
.noidaSectorGuideIntro {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaSectorGuideIntro {
  margin-bottom: 27px;
}

.noidaSectorGuideSection h3 {
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaSectorGuideSection h4 {
  font-size: 18px;
  font-weight: 900;
  line-height: 1.45;
}


/* ==========================================================
   SECTION 1: PHASE I INDUSTRIAL
========================================================== */

.noidaSectorGuideHighlight {
  display: flex;
  align-items: flex-start;
  gap: 17px;
  margin-bottom: 32px;
  padding: 23px;
  border: 1px solid #e7d6b0;
  border-radius: 12px;
  background: linear-gradient(120deg, #fffaf0, #ffffff);
}

.noidaSectorGuideHighlightIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  border-radius: 11px;
  color: #ffffff;
  background: var(--nsg-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaSectorGuideHighlight strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nsg-navy);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaSectorGuideHighlight p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideSectionMain > h3 {
  margin: 0 0 20px;
  color: var(--nsg-navy);
  font-size: 25px;
}

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

.noidaSectorGuideFeature {
  padding: 23px 21px;
  border: 1px solid #e1e8f1;
  border-radius: 12px;
  background: #ffffff;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaSectorGuideFeature:hover {
  transform: translateY(-3px);
  border-color: #d7b45d;
  box-shadow: 0 12px 27px rgba(9,47,98,0.07);
}

.noidaSectorGuideFeatureIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  margin-bottom: 13px;
  border: 1px solid #ead8b0;
  border-radius: 10px;
  color: var(--nsg-gold);
  background: var(--nsg-gold-pale);
  font-size: 23px;
}

.noidaSectorGuideFeature h4 {
  margin: 0 0 9px;
  color: var(--nsg-navy);
}

.noidaSectorGuideFeature p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideFeature p strong {
  color: var(--nsg-navy);
  font-weight: 850;
}

.noidaSectorGuideInfoPanel {
  margin-top: 25px;
  padding: 25px;
  border: 1px solid #d8e2ef;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 8px 23px rgba(9,47,98,0.035);
}

.noidaSectorGuideInfoPanelHeading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 12px;
}

.noidaSectorGuideInfoIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border-radius: 50%;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 19px;
  font-weight: 900;
}

.noidaSectorGuideInfoPanel h3 {
  margin: 0;
  color: var(--nsg-navy);
}

.noidaSectorGuideInfoPanel > p {
  margin: 0 0 14px;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.9;
}

.noidaSectorGuideInfoPanel > p strong {
  color: var(--nsg-navy);
  font-weight: 850;
}

.noidaSectorGuideTextLink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  margin-top: 4px;
  color: var(--nsg-navy) !important;
  font-size: 15px;
  font-weight: 900;
}

.noidaSectorGuideTextLink span {
  color: var(--nsg-gold);
  font-size: 21px;
  transition: transform 0.2s ease;
}

.noidaSectorGuideTextLink:hover span {
  transform: translateX(4px);
}

.noidaSectorGuideMethodNote {
  margin-top: 22px;
  padding: 20px 22px;
  border-left: 4px solid var(--nsg-gold-main);
  border-radius: 0 10px 10px 0;
  background: #edf3fa;
}

.noidaSectorGuideMethodLabel {
  display: block;
  margin-bottom: 7px;
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaSectorGuideMethodNote p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideMethodNote strong {
  color: var(--nsg-navy);
}


/* Industrial sidebar */

.noidaSectorGuideSide {
  position: sticky;
  top: 24px;
}

.noidaSectorGuideSideCard {
  overflow: hidden;
  padding: 28px 24px;
  border: 1px solid rgba(240,180,41,0.5);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.17),
      transparent 36%
    ),
    linear-gradient(145deg, var(--nsg-navy), var(--nsg-navy-deep));
  box-shadow: 0 16px 37px rgba(9,47,98,0.12);
}

.noidaSectorGuideSideOverline {
  color: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.noidaSectorGuideSideNumber {
  margin-top: 13px;
  color: var(--nsg-gold-light);
  font-size: 58px;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -2px;
}

.noidaSectorGuideSideCard h3 {
  margin: 5px 0 13px;
  color: #ffffff;
  font-size: 24px;
}

.noidaSectorGuideSideCard > p {
  margin: 0;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideSideDivider {
  height: 1px;
  margin: 22px 0;
  background: rgba(255,255,255,0.2);
}

.noidaSectorGuideSideCard > strong {
  display: block;
  margin-bottom: 10px;
  color: var(--nsg-gold-light);
  font-size: 16px;
  font-weight: 900;
}

.noidaSectorGuideSideCard ul {
  margin: 0 0 23px;
  padding-left: 20px;
  color: #e5edf7;
}

.noidaSectorGuideSideCard li {
  margin: 0 0 8px;
  padding-left: 2px;
  font-size: 15px;
  line-height: 1.65;
}

.noidaSectorGuideSideBtn {
  display: flex;
  width: 100%;
  padding-inline: 12px;
}

.noidaSectorGuideSidePhone {
  display: block;
  margin-top: 15px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 850;
  text-align: center;
}

.noidaSectorGuideSidePhone:hover {
  color: var(--nsg-gold-light) !important;
}


/* ==========================================================
   SECTION 2: DELHI-BORDER SECTORS
========================================================== */

.noidaSectorGuideBorder .noidaSectorGuideSectionHeading {
  max-width: 940px;
}

.noidaSectorGuideBorderLayout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 345px;
  align-items: start;
  gap: 27px;
}

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

.noidaSectorGuideLocationCard {
  padding: 22px;
  border: 1px solid #e0e7f0;
  border-radius: 12px;
  background: #ffffff;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaSectorGuideLocationCard:hover {
  transform: translateY(-3px);
  border-color: #d7b45d;
  box-shadow: 0 12px 27px rgba(9,47,98,0.07);
}

.noidaSectorGuideLocationGold {
  background: linear-gradient(140deg, #fffaf0, #ffffff);
  border-color: #ead9b4;
}

.noidaSectorGuideLocationTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 15px;
}

.noidaSectorGuideLocationNumber {
  color: var(--nsg-navy);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.7px;
}

.noidaSectorGuideLocationType {
  display: inline-block;
  padding: 6px 9px;
  border-radius: 6px;
  color: var(--nsg-gold);
  background: var(--nsg-gold-pale);
  font-size: 15px;
  font-weight: 850;
  line-height: 1.4;
}

.noidaSectorGuideLocationCard h3 {
  margin: 0 0 10px;
  color: var(--nsg-navy);
}

.noidaSectorGuideLocationCard p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideLocationCard p strong {
  color: var(--nsg-navy);
}

.noidaSectorGuideMetroPanel {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 20px;
  padding: 22px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  background: #f7f9fd;
}

.noidaSectorGuideMetroIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border-radius: 11px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 23px;
}

.noidaSectorGuideMetroPanel h3 {
  margin: 0 0 8px;
  color: var(--nsg-navy);
}

.noidaSectorGuideMetroPanel p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideMetroPanel strong {
  color: var(--nsg-navy);
}


/* Capital gains sidebar */

.noidaSectorGuideTaxCard {
  padding: 27px 24px;
  border: 1px solid #e5d0a2;
  border-radius: 14px;
  background: linear-gradient(145deg, #fffaf0, #ffffff);
  box-shadow: 0 12px 29px rgba(9,47,98,0.06);
}

.noidaSectorGuideTaxEyebrow {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaSectorGuideTaxCard h3 {
  margin: 0 0 14px;
  color: var(--nsg-navy);
  font-size: 25px;
  line-height: 1.35;
}

.noidaSectorGuideTaxCard > p {
  margin: 0 0 17px;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaSectorGuideTaxCard > p strong {
  color: var(--nsg-navy);
}

.noidaSectorGuideTaxSteps {
  display: grid;
  gap: 13px;
  margin: 21px 0;
}

.noidaSectorGuideTaxSteps > div {
  display: flex;
  align-items: flex-start;
  gap: 11px;
}

.noidaSectorGuideTaxSteps > div > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 8px;
  color: #ffffff;
  background: var(--nsg-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaSectorGuideTaxSteps p {
  margin: 0;
  color: var(--nsg-text);
  font-size: 15px;
  line-height: 1.7;
}

.noidaSectorGuideTaxCard .noidaSectorGuideTaxDisclaimer {
  padding-top: 15px;
  border-top: 1px solid #e9ddc4;
  color: #596a80;
  font-size: 15px;
}

.noidaSectorGuideTaxBtn {
  display: flex;
  width: 100%;
  padding-inline: 12px;
}


/* ==========================================================
   SECTION 3: ESTABLISHED RESIDENTIAL BELT
========================================================== */

.noidaSectorGuideResidentialTimeline {
  position: relative;
  display: grid;
  gap: 19px;
}

.noidaSectorGuideResidentialCard {
  position: relative;
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  gap: 21px;
  padding: 26px;
  border: 1px solid #e0e7f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(9,47,98,0.035);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaSectorGuideResidentialCard:hover {
  transform: translateY(-3px);
  border-color: #d7b45d;
  box-shadow: 0 14px 30px rgba(9,47,98,0.08);
}

.noidaSectorGuideResidentialMarker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 14px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 21px;
  font-weight: 900;
}

.noidaSectorGuideResidentialMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
}

.noidaSectorGuideResidentialMeta > span:first-child {
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaSectorGuideSectorBadge {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid #d8e2ef;
  border-radius: 7px;
  color: var(--nsg-navy);
  background: #f5f8fc;
  font-size: 15px;
  font-weight: 850;
}

.noidaSectorGuideResidentialContent h3 {
  margin: 0 0 12px;
  color: var(--nsg-navy);
  font-size: 25px;
}

.noidaSectorGuideResidentialContent > p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 16px;
  line-height: 1.9;
}

.noidaSectorGuideResidentialContent > p strong {
  color: var(--nsg-navy);
}

.noidaSectorGuideResidentialTags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
}

.noidaSectorGuideResidentialTags span {
  display: inline-block;
  padding: 7px 11px;
  border: 1px solid #e2e9f2;
  border-radius: 7px;
  color: var(--nsg-navy);
  background: #f7f9fd;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.5;
}

.noidaSectorGuideResidentialCardIT {
  border-color: #e8d7b2;
  background: linear-gradient(125deg, #fffaf0, #ffffff);
}

.noidaSectorGuideResidentialNote {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-top: 26px;
  padding: 24px;
  border: 1px solid #d9e3ef;
  border-radius: 13px;
  background: #ffffff;
}

.noidaSectorGuideResidentialNoteIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  border-radius: 11px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 22px;
}

.noidaSectorGuideResidentialNote h3 {
  margin: 0 0 8px;
  color: var(--nsg-navy);
}

.noidaSectorGuideResidentialNote p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.85;
}


/* Residential CTA */

.noidaSectorGuideSectionCTA {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
  margin-top: 31px;
  padding: 28px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.17),
      transparent 32%
    ),
    linear-gradient(120deg, var(--nsg-navy-deep), var(--nsg-navy));
}

.noidaSectorGuideSectionCTALabel {
  display: block;
  margin-bottom: 8px;
  color: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaSectorGuideSectionCTA h3 {
  margin: 0 0 9px;
  color: #ffffff;
  font-size: 25px;
}

.noidaSectorGuideSectionCTA p {
  margin: 0;
  color: #e1e9f4;
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideSectionCTAActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  flex: 0 0 auto;
}

.noidaSectorGuideCTAInlinePhone {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 850;
}

.noidaSectorGuideCTAInlinePhone:hover {
  color: var(--nsg-gold-light) !important;
}


/* ==========================================================
   SECTION 4: EXPRESSWAY CORRIDOR
========================================================== */

.noidaSectorGuideExpressway .noidaSectorGuideSectionHeading {
  max-width: 950px;
}

.noidaSectorGuideExpressway .noidaSectorGuideSectionEyebrow {
  color: var(--nsg-gold-light);
}

.noidaSectorGuideExpressway .noidaSectorGuideSection h2,
.noidaSectorGuideExpressway h2 {
  color: #ffffff;
}

.noidaSectorGuideExpressway .noidaSectorGuideSectionHeading h2 span {
  color: var(--nsg-gold-light);
}

.noidaSectorGuideExpressway .noidaSectorGuideSectionHeading > p {
  color: #dce6f3;
}

.noidaSectorGuideExpresswayRail {
  display: grid;
  gap: 19px;
}

.noidaSectorGuideExpresswayCard {
  display: grid;
  grid-template-columns: 75px minmax(0, 1fr);
  gap: 24px;
  padding: 26px;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 14px;
  background: rgba(255,255,255,0.055);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaSectorGuideExpresswayCard:hover {
  transform: translateY(-3px);
  border-color: rgba(240,180,41,0.6);
  background: rgba(255,255,255,0.08);
}

.noidaSectorGuideExpresswayCardFeatured {
  border-color: rgba(240,180,41,0.52);
  background:
    linear-gradient(
      120deg,
      rgba(217,154,22,0.10),
      rgba(255,255,255,0.055)
    );
}

.noidaSectorGuideExpresswayLeft {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.noidaSectorGuideExpresswayLetter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  border-radius: 13px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 21px;
  font-weight: 900;
}

.noidaSectorGuideExpresswayVertical {
  color: #c9d6e8;
  font-size: 15px;
  font-weight: 850;
  letter-spacing: 1px;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  text-align: center;
}

.noidaSectorGuideExpresswayBody {
  min-width: 0;
}

.noidaSectorGuideExpresswayTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
}

.noidaSectorGuideExpresswayTag {
  color: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaSectorGuideExpresswayRange {
  color: #e1e9f4;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.6;
}

.noidaSectorGuideExpresswayBody h3 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: 25px;
}

.noidaSectorGuideExpresswayBody > p {
  margin: 0 0 13px;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.9;
}

.noidaSectorGuideExpresswayBody > p strong {
  color: var(--nsg-gold-light);
}

.noidaSectorGuideExpresswayFactors {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 17px;
}

.noidaSectorGuideExpresswayFactors span {
  display: inline-block;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 7px;
  color: #ffffff;
  background: rgba(255,255,255,0.045);
  font-size: 15px;
  font-weight: 750;
  line-height: 1.5;
}


/* Expressway checklist */

.noidaSectorGuideChecklist {
  margin-top: 28px;
  padding: 29px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 14px;
  color: var(--nsg-text);
  background: #ffffff;
}

.noidaSectorGuideChecklistLabel {
  display: inline-block;
  margin-bottom: 9px;
  color: var(--nsg-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.noidaSectorGuideChecklistIntro h3 {
  margin: 0 0 9px;
  color: var(--nsg-navy);
  font-size: 27px;
}

.noidaSectorGuideChecklistIntro p {
  max-width: 780px;
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideChecklistGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px 24px;
  margin-top: 25px;
}

.noidaSectorGuideChecklistItem {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.noidaSectorGuideChecklistItem > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 8px;
  color: var(--nsg-navy-deep);
  background: var(--nsg-gold-light);
  font-size: 16px;
  font-weight: 900;
}

.noidaSectorGuideChecklistItem p {
  margin: 0;
  color: var(--nsg-muted);
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideChecklistItem strong {
  color: var(--nsg-navy);
}


/* Final CTA */

.noidaSectorGuideFinalCTA {
  display: grid;
  grid-template-columns: 75px minmax(0, 1fr) 245px;
  align-items: center;
  gap: 23px;
  margin-top: 30px;
  padding: 29px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 15px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.15),
      transparent 32%
    ),
    rgba(255,255,255,0.055);
}

.noidaSectorGuideFinalCTABadge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border: 1px solid rgba(240,180,41,0.6);
  border-radius: 17px;
  color: var(--nsg-gold-light);
  background: rgba(217,154,22,0.1);
  font-size: 19px;
  font-weight: 900;
}

.noidaSectorGuideFinalCTAContent > span {
  display: block;
  margin-bottom: 7px;
  color: var(--nsg-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaSectorGuideFinalCTAContent h3 {
  margin: 0 0 8px;
  color: #ffffff;
  font-size: 25px;
  line-height: 1.4;
}

.noidaSectorGuideFinalCTAContent p {
  margin: 0;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideFinalCTAActions {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.noidaSectorGuideFinalCTAActions .noidaSectorGuideBtn {
  width: 100%;
  padding-inline: 12px;
}

.noidaSectorGuideFinalPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 850;
}

.noidaSectorGuideFinalPhone > span:first-child {
  color: var(--nsg-gold-light);
  font-size: 22px;
}

.noidaSectorGuideFinalPhone small,
.noidaSectorGuideFinalPhone strong {
  display: block;
}

.noidaSectorGuideFinalPhone small {
  color: #dce6f3;
  font-size: 15px;
  font-weight: 500;
}

.noidaSectorGuideFinalPhone strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaSectorGuideDisclaimer {
  margin: 22px 0 0;
  color: #d5e0ee;
  font-size: 15px;
  line-height: 1.8;
}

.noidaSectorGuideDisclaimer strong {
  color: var(--nsg-gold-light);
}


/* ==========================================================
   KEYBOARD FOCUS
========================================================== */

.noidaSectorGuide a:focus-visible {
  outline: 3px solid var(--nsg-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1080px) {
  .noidaSectorGuideIndexGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .noidaSectorGuideSectionGrid {
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 25px;
  }

  .noidaSectorGuideBorderLayout {
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 20px;
  }

  .noidaSectorGuideFinalCTA {
    grid-template-columns: 65px minmax(0, 1fr);
  }

  .noidaSectorGuideFinalCTABadge {
    width: 62px;
    height: 62px;
  }

  .noidaSectorGuideFinalCTAActions {
    grid-column: 2;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }

  .noidaSectorGuideFinalCTAActions .noidaSectorGuideBtn {
    width: auto;
  }
}


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

@media (max-width: 760px) {
  .noidaSectorGuideContainer {
    width: min(100% - 32px, 600px);
  }

  .noidaSectorGuideHero {
    padding: 49px 0 43px;
  }

  .noidaSectorGuideHero h1 {
    font-size: clamp(34px, 8vw, 45px);
    line-height: 1.16;
    letter-spacing: -0.8px;
  }

  .noidaSectorGuideHero h1 span {
    font-size: 0.74em;
  }

  .noidaSectorGuideHeroText {
    font-size: 16px;
  }

  .noidaSectorGuideHeroPills {
    gap: 8px;
  }

  .noidaSectorGuideHeroPills span {
    font-size: 15px;
  }

  .noidaSectorGuideHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideHeroActions .noidaSectorGuideBtn {
    width: 100%;
  }

  .noidaSectorGuideIndex {
    padding: 24px 0;
  }

  .noidaSectorGuideIndexHeader {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaSectorGuideIndexGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideSection {
    padding: 57px 0;
  }

  .noidaSectorGuideSectionGrid,
  .noidaSectorGuideBorderLayout {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideSide {
    position: static;
  }

  .noidaSectorGuideFeatureGrid,
  .noidaSectorGuideLocationGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideSection h2 {
    font-size: clamp(30px, 7vw, 39px);
    letter-spacing: -0.5px;
  }

  .noidaSectorGuideSectionHeading > p,
  .noidaSectorGuideIntro {
    font-size: 16px;
  }

  .noidaSectorGuideResidentialCard {
    grid-template-columns: 45px minmax(0, 1fr);
    gap: 15px;
    padding: 21px 17px;
  }

  .noidaSectorGuideResidentialMarker {
    width: 43px;
    height: 43px;
    border-radius: 11px;
    font-size: 18px;
  }

  .noidaSectorGuideResidentialContent h3 {
    font-size: 22px;
  }

  .noidaSectorGuideResidentialMeta {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaSectorGuideSectionCTA {
    align-items: stretch;
    flex-direction: column;
    padding: 24px 20px;
  }

  .noidaSectorGuideSectionCTAActions {
    width: 100%;
  }

  .noidaSectorGuideSectionCTAActions .noidaSectorGuideBtn {
    width: 100%;
  }

  .noidaSectorGuideExpresswayCard {
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 15px;
    padding: 21px 16px;
  }

  .noidaSectorGuideExpresswayLetter {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    border-radius: 10px;
    font-size: 18px;
  }

  .noidaSectorGuideExpresswayVertical {
    font-size: 15px;
  }

  .noidaSectorGuideExpresswayBody h3 {
    font-size: 22px;
  }

  .noidaSectorGuideChecklist {
    padding: 23px 19px;
  }

  .noidaSectorGuideChecklistGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
  }

  .noidaSectorGuideFinalCTA {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    padding: 23px 20px;
  }

  .noidaSectorGuideFinalCTABadge {
    width: 57px;
    height: 57px;
    border-radius: 13px;
  }

  .noidaSectorGuideFinalCTAActions {
    grid-column: auto;
    flex-direction: column;
    align-items: stretch;
  }

  .noidaSectorGuideFinalCTAActions .noidaSectorGuideBtn {
    width: 100%;
  }

  .noidaSectorGuideFinalPhone {
    justify-content: flex-start;
  }
}


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

@media (max-width: 390px) {
  .noidaSectorGuideContainer {
    width: calc(100% - 26px);
  }

  .noidaSectorGuideEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaSectorGuideEyebrowLine {
    width: 25px;
    flex-basis: 25px;
  }

  .noidaSectorGuideHero h1 {
    font-size: 32px;
  }

  .noidaSectorGuideHighlight,
  .noidaSectorGuideMetroPanel,
  .noidaSectorGuideResidentialNote {
    padding: 18px;
  }

  .noidaSectorGuideResidentialCard {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideResidentialMarker {
    width: 43px;
    height: 43px;
  }

  .noidaSectorGuideExpresswayCard {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaSectorGuideExpresswayLeft {
    flex-direction: row;
    justify-content: flex-start;
  }

  .noidaSectorGuideExpresswayVertical {
    writing-mode: initial;
    transform: none;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaSectorGuide *,
  .noidaSectorGuide *::before,
  .noidaSectorGuide *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =====================================================
   DELHI–NOIDA BORDER PAGE
   Unique CSS namespace: noidaBorder
   Royal navy + gold; minimum text size: 15px
===================================================== */

.noidaBorderHero,
.noidaBorderWhy,
.noidaBorderMetro,
.noidaBorderFinalCta {
  --nb-navy: #092f62;
  --nb-deep: #061d3d;
  --nb-dark: #04152d;
  --nb-gold: #b97800;
  --nb-gold-mid: #d99a16;
  --nb-gold-light: #f0b429;
  --nb-white: #ffffff;
  --nb-text: #253650;
  --nb-muted: #596a80;
  --nb-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.noidaBorderHero *,
.noidaBorderHero *::before,
.noidaBorderHero *::after,
.noidaBorderWhy *,
.noidaBorderWhy *::before,
.noidaBorderWhy *::after,
.noidaBorderMetro *,
.noidaBorderMetro *::before,
.noidaBorderMetro *::after,
.noidaBorderFinalCta *,
.noidaBorderFinalCta *::before,
.noidaBorderFinalCta *::after {
  box-sizing: border-box;
}

.noidaBorderHero a,
.noidaBorderWhy a,
.noidaBorderMetro a,
.noidaBorderFinalCta a {
  text-decoration: none;
}

.noidaBorderContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


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

.noidaBorderHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 82px 0 0;
  color: var(--nb-white);
  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(217,154,22,0.16),
      transparent 32%
    ),
    linear-gradient(
      128deg,
      #04152d 0%,
      #092f62 57%,
      #061d3d 100%
    );
}

.noidaBorderHero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
}

.noidaBorderHeroOrb {
  position: absolute;
  z-index: -1;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  filter: blur(75px);
  pointer-events: none;
}

.noidaBorderHeroOrbOne {
  top: 15%;
  right: -120px;
  background: rgba(240,180,41,0.16);
}

.noidaBorderHeroOrbTwo {
  bottom: 5%;
  left: -150px;
  background: rgba(50,111,180,0.15);
}

.noidaBorderHeroInner {
  max-width: 1000px;
  margin-inline: auto;
  text-align: center;
}

.noidaBorderEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.8px;
}

.noidaBorderEyebrowLine {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--nb-gold-light);
}

.noidaBorderHero h1 {
  max-width: 1000px;
  margin: 0 auto 24px;
  color: var(--nb-white);
  font-size: clamp(37px, 5vw, 60px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.7px;
  overflow-wrap: anywhere;
}

.noidaBorderHero h1 span {
  display: block;
  margin-top: 12px;
  color: var(--nb-gold-light);
  font-size: 0.68em;
  line-height: 1.35;
  letter-spacing: -0.5px;
}

.noidaBorderIntro {
  max-width: 870px;
  margin: 0 auto;
  color: #e7edf7;
  font-size: 18px;
  line-height: 1.9;
}

.noidaBorderIntro strong {
  color: var(--nb-gold-light);
  font-weight: 800;
}


/* Hero highlights */

.noidaBorderHeroHighlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 37px;
  text-align: left;
}

.noidaBorderHighlight {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  padding: 19px;
  border: 1px solid rgba(255,255,255,0.17);
  border-radius: 12px;
  background: rgba(255,255,255,0.055);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    background 0.22s ease;
}

.noidaBorderHighlight:hover {
  transform: translateY(-3px);
  border-color: rgba(240,180,41,0.55);
  background: rgba(255,255,255,0.09);
}

.noidaBorderHighlightIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 10px;
  color: var(--nb-gold-light);
  background: rgba(217,154,22,0.1);
  font-size: 15px;
  font-weight: 900;
}

.noidaBorderHighlight strong,
.noidaBorderHighlight div span {
  display: block;
}

.noidaBorderHighlight strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaBorderHighlight div span {
  margin-top: 4px;
  color: #d7e2f1;
  font-size: 15px;
  line-height: 1.6;
}


/* Hero buttons */

.noidaBorderHeroActions {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 31px;
}

.noidaBorderBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 62px;
  padding: 13px 23px;
  border: 2px solid transparent;
  border-radius: 10px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: left;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaBorderBtn:hover {
  transform: translateY(-3px);
}

.noidaBorderBtnGold {
  color: var(--nb-dark) !important;
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  border-color: #f0b429;
  box-shadow: 0 9px 25px rgba(217,154,22,0.2);
}

.noidaBorderBtnGold:hover {
  color: var(--nb-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(217,154,22,0.3);
}

.noidaBorderBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 20px;
}

.noidaBorderBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.34);
  background: rgba(255,255,255,0.06);
}

.noidaBorderBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nb-gold-light);
  background: rgba(255,255,255,0.11);
}

.noidaBorderPhoneIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border-radius: 9px;
  color: var(--nb-gold-light);
  background: rgba(217,154,22,0.13);
  font-size: 21px;
}

.noidaBorderBtn strong,
.noidaBorderBtn small {
  display: block;
}

.noidaBorderBtn strong {
  font-size: 16px;
  font-weight: 900;
}

.noidaBorderBtn small {
  margin-top: 3px;
  color: inherit;
  font-size: 15px;
  font-weight: 500;
}


/* Hero trust line */

.noidaBorderTrustLine {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  max-width: 800px;
  margin: 24px auto 0;
  color: #e0e8f4;
  font-size: 15px;
  line-height: 1.8;
}

.noidaBorderTrustLine strong {
  color: var(--nb-gold-light);
}

.noidaBorderTrustCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 2px;
  border-radius: 50%;
  color: var(--nb-dark);
  background: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
}


/* Hero bottom rail */

.noidaBorderHeroBottom {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 17px;
  margin-top: 55px;
  padding: 20px 0;
  border-top: 1px solid rgba(255,255,255,0.16);
  color: #e7edf7;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 1.4px;
}

.noidaBorderHeroBottomLine {
  width: 34px;
  height: 2px;
  background: var(--nb-gold-light);
}


/* =====================================================
   SECTION 1: WHY THE BORDER PREMIUM EXISTS
===================================================== */

.noidaBorderWhy {
  padding: 83px 0 88px;
  color: var(--nb-text);
  background:
    radial-gradient(
      circle at 5% 10%,
      rgba(217,154,22,0.07),
      transparent 24%
    ),
    #f8fbff;
}

.noidaBorderSectionHeader {
  max-width: 850px;
  margin: 0 auto 43px;
  text-align: center;
}

.noidaBorderSectionKicker {
  display: inline-block;
  margin-bottom: 13px;
  color: var(--nb-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.6px;
  line-height: 1.6;
}

.noidaBorderSectionHeader h2,
.noidaBorderMetroHeader h2 {
  margin: 0 0 18px;
  color: var(--nb-deep);
  font-size: clamp(31px, 3.7vw, 45px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaBorderSectionHeader h2 span,
.noidaBorderMetroHeader h2 span {
  color: var(--nb-gold);
}

.noidaBorderSectionHeader > p {
  max-width: 800px;
  margin: 0 auto;
  color: var(--nb-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaBorderSectionHeader > p strong {
  color: var(--nb-navy);
}


/* Two-column layout */

.noidaBorderWhyGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  align-items: stretch;
  gap: 32px;
}

.noidaBorderWhyContent {
  padding: 12px 0;
}

.noidaBorderLocationLabel {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  color: var(--nb-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaBorderLocationDot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--nb-gold-mid);
  box-shadow: 0 0 0 5px rgba(217,154,22,0.13);
}

.noidaBorderWhyContent h3 {
  margin: 0 0 22px;
  color: var(--nb-deep);
  font-size: clamp(27px, 3vw, 36px);
  font-weight: 900;
  line-height: 1.28;
  letter-spacing: -0.6px;
}

.noidaBorderWhyContent h3 span {
  display: block;
  margin-top: 7px;
  color: var(--nb-gold);
}

.noidaBorderWhyContent > p {
  margin: 0 0 18px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaBorderWhyContent > p strong {
  color: var(--nb-navy);
  font-weight: 800;
}


/* Evidence note */

.noidaBorderEvidenceNote {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin: 25px 0;
  padding: 19px;
  border: 1px solid #ead7ad;
  border-radius: 11px;
  background: #fff9ec;
}

.noidaBorderEvidenceIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaBorderEvidenceNote strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nb-deep);
  font-size: 16px;
  font-weight: 900;
}

.noidaBorderEvidenceNote p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}


/* Inline CTA */

.noidaBorderInlineCta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 53px;
  margin-top: 4px;
  padding: 13px 20px;
  border-radius: 9px;
  color: #ffffff !important;
  background: var(--nb-navy);
  box-shadow: 0 7px 20px rgba(9,47,98,0.14);
  font-size: 16px;
  font-weight: 900;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.noidaBorderInlineCta span {
  color: var(--nb-gold-light);
  font-size: 22px;
}

.noidaBorderInlineCta:hover {
  transform: translateY(-2px);
  color: #ffffff !important;
  background: var(--nb-deep);
}


/* Factor panel */

.noidaBorderFactorPanel {
  overflow: hidden;
  border: 1px solid #dce5f0;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 16px 40px rgba(9,47,98,0.075);
}

.noidaBorderFactorPanelTop {
  padding: 26px 25px 23px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 5%,
      rgba(217,154,22,0.2),
      transparent 38%
    ),
    linear-gradient(130deg, #04152d, #092f62);
}

.noidaBorderFactorOverline {
  display: block;
  margin-bottom: 10px;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.noidaBorderFactorPanelTop h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaBorderFactorPanelTop p {
  margin: 0;
  color: #e0e8f4;
  font-size: 15px;
  line-height: 1.8;
}

.noidaBorderFactorList {
  padding: 5px 24px;
}

.noidaBorderFactor {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px 0;
}

.noidaBorderFactor + .noidaBorderFactor {
  border-top: 1px solid #e7edf4;
}

.noidaBorderFactorNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border: 1px solid #e7d6b0;
  border-radius: 9px;
  color: var(--nb-gold);
  background: #fff9ec;
  font-size: 15px;
  font-weight: 900;
}

.noidaBorderFactor strong {
  display: block;
  margin-bottom: 4px;
  color: var(--nb-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaBorderFactor p {
  margin: 0;
  color: #5a687b;
  font-size: 15px;
  line-height: 1.7;
}

.noidaBorderFactorFooter {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 17px 24px;
  border-top: 1px solid #e5ebf3;
  background: #f6f8fc;
}

.noidaBorderFactorFooter > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nb-gold);
  font-size: 15px;
  font-weight: 900;
}

.noidaBorderFactorFooter p {
  margin: 0;
  color: var(--nb-navy);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.65;
}


/* =====================================================
   SECTION 2: METRO CONNECTIVITY
===================================================== */

.noidaBorderMetro {
  padding: 82px 0 86px;
  color: var(--nb-text);
  background: #ffffff;
}

.noidaBorderMetroHeader {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 37px;
}

.noidaBorderMetroHeader > div:first-child {
  max-width: 800px;
}

.noidaBorderMetroHeader h2 {
  margin-bottom: 15px;
}

.noidaBorderMetroHeader p {
  margin: 0;
  color: var(--nb-muted);
  font-size: 17px;
  line-height: 1.85;
}

.noidaBorderMetroHeader p strong {
  color: var(--nb-navy);
}

.noidaBorderMetroBadge {
  display: flex;
  align-items: center;
  gap: 13px;
  flex: 0 0 auto;
  padding: 16px 19px;
  border: 1px solid #e6d3a8;
  border-radius: 12px;
  background: #fff9ec;
}

.noidaBorderMetroBadgeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 10px;
  color: var(--nb-gold-light);
  background: var(--nb-navy);
  font-size: 23px;
  font-weight: 900;
}

.noidaBorderMetroBadge strong,
.noidaBorderMetroBadge span:not(.noidaBorderMetroBadgeIcon) {
  display: block;
}

.noidaBorderMetroBadge strong {
  color: var(--nb-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaBorderMetroBadge div span {
  margin-top: 3px;
  color: #5b687b;
  font-size: 15px;
}


/* Metro cards */

.noidaBorderMetroGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.noidaBorderMetroCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 23px;
  border: 1px solid #e0e7f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 9px 28px rgba(9,47,98,0.05);
  transition:
    transform 0.23s ease,
    border-color 0.23s ease,
    box-shadow 0.23s ease;
}

.noidaBorderMetroCard:hover {
  transform: translateY(-4px);
  border-color: #d8b15d;
  box-shadow: 0 17px 36px rgba(9,47,98,0.1);
}

.noidaBorderMetroCardFeatured {
  border-color: #d7c18f;
  background: linear-gradient(145deg, #ffffff, #fffaf0);
}

.noidaBorderMetroCardHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.noidaBorderMetroNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaBorderMetroCardFeatured .noidaBorderMetroNumber {
  color: var(--nb-deep);
  background: var(--nb-gold-light);
}

.noidaBorderMetroIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid #e7d6b0;
  border-radius: 50%;
  color: var(--nb-gold);
  background: #fff9ec;
  font-size: 24px;
  font-weight: 800;
}

.noidaBorderMetroTag {
  display: block;
  margin-bottom: 9px;
  color: var(--nb-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaBorderMetroCard h3 {
  margin: 0 0 13px;
  color: var(--nb-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaBorderMetroCard > p {
  margin: 0 0 17px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaBorderMetroCard > p strong {
  color: var(--nb-navy);
  font-weight: 800;
}

.noidaBorderMetroList {
  display: grid;
  gap: 11px;
  margin: auto 0 0;
  padding: 17px 0 0;
  border-top: 1px solid #e6ecf3;
  list-style: none;
}

.noidaBorderMetroList li {
  position: relative;
  padding-left: 24px;
  color: #4e5e73;
  font-size: 15px;
  line-height: 1.7;
}

.noidaBorderMetroList li::before {
  position: absolute;
  top: 2px;
  left: 0;
  content: "✓";
  color: var(--nb-gold);
  font-size: 16px;
  font-weight: 900;
}


/* Metro caution callout */

.noidaBorderMetroCallout {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 27px;
  padding: 21px 23px;
  border: 1px solid #e6d3a8;
  border-radius: 12px;
  background: #fff9ec;
}

.noidaBorderMetroCalloutIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 50%;
  color: var(--nb-gold-light);
  background: var(--nb-navy);
  font-size: 20px;
  font-weight: 900;
}

.noidaBorderMetroCalloutText strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nb-deep);
  font-size: 16px;
  font-weight: 900;
}

.noidaBorderMetroCalloutText p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}


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

.noidaBorderFinalCta {
  padding: 0 0 80px;
  background: #ffffff;
}

.noidaBorderFinalCtaInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  padding: 35px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 17px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 92% 0%,
      rgba(217,154,22,0.18),
      transparent 35%
    ),
    linear-gradient(125deg, #04152d, #092f62);
  box-shadow: 0 18px 42px rgba(9,47,98,0.12);
}

.noidaBorderFinalCtaContent {
  max-width: 700px;
}

.noidaBorderFinalCtaKicker {
  display: block;
  margin-bottom: 10px;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.noidaBorderFinalCtaContent h2 {
  margin: 0 0 13px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 900;
  line-height: 1.25;
}

.noidaBorderFinalCtaContent p {
  margin: 0;
  color: #e0e8f4;
  font-size: 16px;
  line-height: 1.85;
}

.noidaBorderFinalCtaContent p strong {
  color: var(--nb-gold-light);
}

.noidaBorderFinalCtaActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 13px;
  flex: 0 0 auto;
}

.noidaBorderFinalCtaActions .noidaBorderBtn {
  justify-content: center;
  min-width: 245px;
}

.noidaBorderBtnWhite {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.3);
  background: rgba(255,255,255,0.055);
}

.noidaBorderBtnWhite:hover {
  color: #ffffff !important;
  border-color: var(--nb-gold-light);
  background: rgba(255,255,255,0.1);
}


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

.noidaBorderHero a:focus-visible,
.noidaBorderWhy a:focus-visible,
.noidaBorderMetro a:focus-visible,
.noidaBorderFinalCta a:focus-visible {
  outline: 3px solid var(--nb-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1000px) {
  .noidaBorderHero {
    padding-top: 65px;
  }

  .noidaBorderWhyGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }

  .noidaBorderWhyContent {
    padding: 0;
  }

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

  .noidaBorderMetroCard:last-child {
    grid-column: 1 / -1;
  }

  .noidaBorderFinalCtaInner {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaBorderFinalCtaActions {
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
  }

  .noidaBorderFinalCtaActions .noidaBorderBtn {
    min-width: 0;
  }
}


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

@media (max-width: 680px) {
  .noidaBorderContainer {
    width: calc(100% - 32px);
  }

  .noidaBorderHero {
    padding-top: 47px;
  }

  .noidaBorderHero h1 {
    font-size: clamp(34px, 8.7vw, 45px);
    letter-spacing: -0.8px;
  }

  .noidaBorderHero h1 span {
    font-size: 0.73em;
  }

  .noidaBorderIntro {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaBorderHeroHighlights {
    grid-template-columns: minmax(0, 1fr);
    gap: 11px;
    margin-top: 28px;
  }

  .noidaBorderHighlight {
    padding: 16px;
  }

  .noidaBorderHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaBorderBtn {
    width: 100%;
    min-height: 61px;
  }

  .noidaBorderTrustLine {
    text-align: left;
  }

  .noidaBorderHeroBottom {
    gap: 10px;
    margin-top: 36px;
    font-size: 15px;
    letter-spacing: 0.7px;
  }

  .noidaBorderHeroBottomLine {
    width: 18px;
  }

  .noidaBorderWhy,
  .noidaBorderMetro {
    padding: 58px 0 62px;
  }

  .noidaBorderSectionHeader {
    margin-bottom: 30px;
  }

  .noidaBorderSectionHeader h2,
  .noidaBorderMetroHeader h2 {
    font-size: clamp(29px, 7.4vw, 37px);
    letter-spacing: -0.5px;
  }

  .noidaBorderSectionHeader > p,
  .noidaBorderMetroHeader p {
    font-size: 16px;
  }

  .noidaBorderWhyContent h3 {
    font-size: 28px;
  }

  .noidaBorderFactorPanelTop {
    padding: 23px 20px;
  }

  .noidaBorderFactorList {
    padding-inline: 19px;
  }

  .noidaBorderFactorFooter {
    padding-inline: 19px;
  }

  .noidaBorderMetroHeader {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
  }

  .noidaBorderMetroGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .noidaBorderMetroCard:last-child {
    grid-column: auto;
  }

  .noidaBorderMetroCard {
    padding: 23px 21px;
  }

  .noidaBorderMetroCallout {
    padding: 18px;
  }

  .noidaBorderFinalCta {
    padding-bottom: 58px;
  }

  .noidaBorderFinalCtaInner {
    gap: 23px;
    padding: 25px 20px;
  }

  .noidaBorderFinalCtaActions {
    flex-direction: column;
  }

  .noidaBorderFinalCtaActions .noidaBorderBtn {
    width: 100%;
    min-width: 0;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaBorderHero *,
  .noidaBorderWhy *,
  .noidaBorderMetro *,
  .noidaBorderFinalCta * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}


/* =========================================================
   NOIDA FILM CITY PAGE
   Unique namespace: noidaFilm
   Royal Navy + Gold
   Minimum font size: 15px
========================================================= */

.noidaFilmHero,
.noidaFilmProfile,
.noidaFilmMethodology,
.noidaFilmFinalCta {
  --nf-navy: #092f62;
  --nf-deep: #061d3d;
  --nf-dark: #04152d;
  --nf-gold: #b97800;
  --nf-gold-mid: #d99a16;
  --nf-gold-light: #f0b429;
  --nf-white: #ffffff;
  --nf-cream: #fff9ec;
  --nf-text: #293950;
  --nf-muted: #596a80;
  --nf-border: #dce5f0;

  box-sizing: border-box;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

.noidaFilmHero *,
.noidaFilmHero *::before,
.noidaFilmHero *::after,
.noidaFilmProfile *,
.noidaFilmProfile *::before,
.noidaFilmProfile *::after,
.noidaFilmMethodology *,
.noidaFilmMethodology *::before,
.noidaFilmMethodology *::after,
.noidaFilmFinalCta *,
.noidaFilmFinalCta *::before,
.noidaFilmFinalCta *::after {
  box-sizing: border-box;
}

.noidaFilmHero a,
.noidaFilmProfile a,
.noidaFilmMethodology a,
.noidaFilmFinalCta a {
  text-decoration: none;
}

.noidaFilmContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   HERO SECTION — PREMIUM EDITORIAL DESIGN
========================================================= */

.noidaFilmHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 83px 0 78px;
  color: var(--nf-white);
  background:
    radial-gradient(
      ellipse at 92% 8%,
      rgba(217,154,22,0.16),
      transparent 31%
    ),
    radial-gradient(
      ellipse at 4% 100%,
      rgba(30,75,125,0.45),
      transparent 40%
    ),
    linear-gradient(
      125deg,
      var(--nf-dark) 0%,
      var(--nf-navy) 58%,
      var(--nf-deep) 100%
    );
}

.noidaFilmHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.2;
  background-image:
    linear-gradient(
      rgba(255,255,255,0.05) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,0.05) 1px,
      transparent 1px
    );
  background-size: 48px 48px;
  mask-image: linear-gradient(
    to bottom right,
    #000000,
    transparent 85%
  );
}

.noidaFilmHeroBottomLine {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--nf-gold),
    var(--nf-gold-light),
    var(--nf-gold),
    transparent
  );
}

.noidaFilmHeroInner {
  position: relative;
  max-width: 1030px;
  margin-inline: auto;
  text-align: center;
}


/* Hero eyebrow */

.noidaFilmEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 21px;
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.65;
  letter-spacing: 1.8px;
}

.noidaFilmEyebrowLine {
  display: inline-block;
  width: 32px;
  height: 2px;
  flex: 0 0 32px;
  background: var(--nf-gold-light);
}


/* Hero title */

.noidaFilmHero h1 {
  max-width: 1000px;
  margin: 0 auto 24px;
  color: var(--nf-white);
  font-size: clamp(39px, 5.3vw, 65px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.8px;
  overflow-wrap: anywhere;
}

.noidaFilmHero h1 span {
  display: block;
  max-width: 900px;
  margin: 15px auto 0;
  color: var(--nf-gold-light);
  font-size: 0.58em;
  font-weight: 750;
  line-height: 1.4;
  letter-spacing: -0.4px;
}

.noidaFilmHeroIntro {
  max-width: 870px;
  margin: 0 auto;
  color: #e7edf7;
  font-size: 18px;
  line-height: 1.9;
}

.noidaFilmHeroIntro strong {
  color: var(--nf-gold-light);
  font-weight: 800;
}


/* Hero highlight strip */

.noidaFilmHeroHighlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 38px 0 34px;
  border: 1px solid rgba(255,255,255,0.19);
  border-radius: 13px;
  background: rgba(255,255,255,0.045);
  text-align: left;
}

.noidaFilmHeroHighlight {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
  padding: 21px 20px;
}

.noidaFilmHeroHighlight + .noidaFilmHeroHighlight {
  border-left: 1px solid rgba(255,255,255,0.16);
}

.noidaFilmHighlightNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border: 1px solid rgba(240,180,41,0.52);
  border-radius: 10px;
  color: var(--nf-gold-light);
  background: rgba(217,154,22,0.08);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmHeroHighlight div strong,
.noidaFilmHeroHighlight div span {
  display: block;
}

.noidaFilmHeroHighlight div strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaFilmHeroHighlight div span {
  margin-top: 4px;
  color: #d8e2ef;
  font-size: 15px;
  line-height: 1.6;
}


/* Hero action buttons */

.noidaFilmHeroActions {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 30px;
}

.noidaFilmBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  min-height: 62px;
  padding: 14px 22px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaFilmBtn:hover {
  transform: translateY(-3px);
}

.noidaFilmBtnGold {
  color: var(--nf-dark) !important;
  border-color: var(--nf-gold-light);
  background: linear-gradient(
    135deg,
    var(--nf-gold-light),
    var(--nf-gold-mid)
  );
  box-shadow: 0 10px 27px rgba(217,154,22,0.2);
}

.noidaFilmBtnGold:hover {
  color: var(--nf-dark) !important;
  background: #ffca48;
  box-shadow: 0 14px 30px rgba(217,154,22,0.3);
}

.noidaFilmBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nf-navy);
  font-size: 19px;
  transition: transform 0.22s ease;
}

.noidaFilmBtnGold:hover .noidaFilmBtnArrow {
  transform: translateX(3px);
}

.noidaFilmBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.36);
  background: rgba(255,255,255,0.055);
}

.noidaFilmBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nf-gold-light);
  background: rgba(255,255,255,0.1);
}

.noidaFilmPhoneIcon {
  color: var(--nf-gold-light);
  font-size: 23px;
}

.noidaFilmBtnOutline strong,
.noidaFilmBtnOutline small {
  display: block;
  text-align: left;
}

.noidaFilmBtnOutline strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaFilmBtnOutline small {
  margin-top: 3px;
  color: #e0e8f3;
  font-size: 15px;
  font-weight: 500;
}


/* Hero footnote */

.noidaFilmHeroFootnote {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 11px;
  margin-top: 25px;
  color: #dfe8f4;
  font-size: 15px;
  line-height: 1.8;
}

.noidaFilmFootnoteMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  margin-top: 2px;
  border-radius: 50%;
  color: var(--nf-dark);
  background: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmHeroFootnote strong {
  color: var(--nf-gold-light);
}


/* =========================================================
   SECTION 1 — REAL ESTATE PROFILE
========================================================= */

.noidaFilmProfile {
  padding: 84px 0 88px;
  color: var(--nf-text);
  background:
    radial-gradient(
      ellipse at 0% 0%,
      rgba(217,154,22,0.07),
      transparent 30%
    ),
    #ffffff;
}

.noidaFilmSectionIntro {
  max-width: 830px;
  margin: 0 auto 43px;
  text-align: center;
}

.noidaFilmEyebrowLight {
  color: var(--nf-gold);
}

.noidaFilmEyebrowLight .noidaFilmEyebrowLine {
  background: var(--nf-gold);
}

.noidaFilmSectionIntro h2 {
  margin: 0 0 17px;
  color: var(--nf-deep);
  font-size: clamp(34px, 4vw, 47px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaFilmSectionIntro h2 span {
  color: var(--nf-gold);
}

.noidaFilmSectionIntro > p {
  max-width: 790px;
  margin: 0 auto;
  color: var(--nf-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaFilmSectionIntro > p strong {
  color: var(--nf-navy);
  font-weight: 800;
}


/* Main two-column profile layout */

.noidaFilmProfileLayout {
  display: grid;
  grid-template-columns: minmax(270px, 0.76fr) minmax(0, 1.55fr);
  align-items: start;
  gap: 31px;
}


/* Profile left panel */

.noidaFilmProfileAside {
  position: sticky;
  top: 24px;
  overflow: hidden;
  padding: 29px 26px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.17),
      transparent 36%
    ),
    linear-gradient(
      145deg,
      var(--nf-deep),
      var(--nf-navy)
    );
  box-shadow: 0 17px 40px rgba(9,47,98,0.12);
}

.noidaFilmAsideLabel {
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
  line-height: 1.6;
}

.noidaFilmAsideEmblem {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 25px 0 23px;
}

.noidaFilmAsideEmblem span {
  display: block;
  height: 4px;
  border-radius: 5px;
  background: var(--nf-gold-light);
}

.noidaFilmAsideEmblem span:nth-child(1) {
  width: 47px;
}

.noidaFilmAsideEmblem span:nth-child(2) {
  width: 17px;
  opacity: 0.7;
}

.noidaFilmAsideEmblem span:nth-child(3) {
  width: 7px;
  opacity: 0.45;
}

.noidaFilmProfileAside h3 {
  margin: 0 0 14px;
  color: #ffffff;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.noidaFilmProfileAside > p {
  margin: 0;
  color: #e1e9f4;
  font-size: 16px;
  line-height: 1.85;
}

.noidaFilmProfileAside > p strong {
  color: var(--nf-gold-light);
  font-weight: 800;
}

.noidaFilmAsideDivider {
  height: 1px;
  margin: 25px 0;
  background: rgba(255,255,255,0.18);
}

.noidaFilmAsideFact {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 19px;
}

.noidaFilmAsideFactIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 1px solid rgba(240,180,41,0.5);
  border-radius: 8px;
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmAsideFact div strong,
.noidaFilmAsideFact div span {
  display: block;
}

.noidaFilmAsideFact div strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaFilmAsideFact div span {
  margin-top: 3px;
  color: #dce5f1;
  font-size: 15px;
  line-height: 1.7;
}

.noidaFilmAsideLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 51px;
  margin-top: 24px;
  padding: 13px 15px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 8px;
  color: var(--nf-gold-light) !important;
  background: rgba(217,154,22,0.08);
  font-size: 15px;
  font-weight: 900;
  transition: background 0.2s ease;
}

.noidaFilmAsideLink:hover {
  color: var(--nf-dark) !important;
  background: var(--nf-gold-light);
}


/* Property category content */

.noidaFilmPropertyHeading {
  margin-bottom: 20px;
}

.noidaFilmPropertyHeadingLabel {
  display: block;
  margin-bottom: 7px;
  color: var(--nf-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
  line-height: 1.6;
}

.noidaFilmPropertyHeading h3 {
  margin: 0;
  color: var(--nf-deep);
  font-size: 27px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.4px;
}


/* Individual property cards */

.noidaFilmPropertyCard {
  display: grid;
  grid-template-columns: 51px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  margin-bottom: 17px;
  padding: 23px 23px 22px;
  border: 1px solid #e0e8f2;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 5px 18px rgba(9,47,98,0.035);
  transition:
    border-color 0.22s ease,
    box-shadow 0.22s ease,
    transform 0.22s ease;
}

.noidaFilmPropertyCard:hover {
  transform: translateY(-3px);
  border-color: #d9b96d;
  box-shadow: 0 12px 28px rgba(9,47,98,0.08);
}

.noidaFilmPropertyCardNumber {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid #ead6a8;
  border-radius: 10px;
  color: var(--nf-deep);
  background: var(--nf-cream);
  font-size: 16px;
  font-weight: 900;
}

.noidaFilmPropertyTag {
  margin-bottom: 5px;
  color: var(--nf-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.6px;
}

.noidaFilmPropertyCard h4 {
  margin: 0 0 9px;
  color: var(--nf-navy);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaFilmPropertyCardBody > p {
  margin: 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaFilmPropertyCardBody > p strong {
  color: var(--nf-navy);
  font-weight: 800;
}

.noidaFilmPropertyMeta {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 15px;
  padding-top: 13px;
  border-top: 1px solid #edf1f6;
  color: #526176;
  font-size: 15px;
  line-height: 1.75;
}

.noidaFilmMetaDot {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  margin-top: 8px;
  border-radius: 50%;
  background: var(--nf-gold);
}


/* Regulatory note */

.noidaFilmRegulatoryNote {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  margin-top: 26px;
  padding: 25px 26px;
  border: 1px solid #e7d6b0;
  border-radius: 12px;
  background: linear-gradient(
    110deg,
    #fff9ec,
    #ffffff
  );
}

.noidaFilmRegulatoryIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--nf-navy);
  font-size: 24px;
  font-weight: 800;
}

.noidaFilmRegulatoryNote h3 {
  margin: 0 0 7px;
  color: var(--nf-deep);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaFilmRegulatoryNote p {
  margin: 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaFilmRegulatoryNote p strong {
  color: var(--nf-navy);
  font-weight: 800;
}


/* =========================================================
   SECTION 2 — VALUATION METHODOLOGY
========================================================= */

.noidaFilmMethodology {
  position: relative;
  overflow: hidden;
  padding: 85px 0 87px;
  color: var(--nf-text);
  background:
    radial-gradient(
      ellipse at 100% 0%,
      rgba(217,154,22,0.08),
      transparent 31%
    ),
    #f5f8fc;
}

.noidaFilmMethodHeader {
  max-width: 850px;
  margin: 0 auto 43px;
  text-align: center;
}

.noidaFilmMethodHeader h2 {
  margin: 0 0 17px;
  color: var(--nf-deep);
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaFilmMethodHeader h2 span {
  display: block;
  margin-top: 7px;
  color: var(--nf-gold);
  font-size: 0.83em;
  letter-spacing: -0.5px;
}

.noidaFilmMethodHeader > p {
  margin: 0 auto;
  max-width: 790px;
  color: var(--nf-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaFilmMethodHeader > p strong {
  color: var(--nf-navy);
  font-weight: 800;
}


/* Methodology grid */

.noidaFilmMethodGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.noidaFilmMethodCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 26px 23px 24px;
  border: 1px solid #dfe7f1;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 23px rgba(9,47,98,0.04);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.noidaFilmMethodCard:hover {
  transform: translateY(-5px);
  border-color: #d7b25d;
  box-shadow: 0 17px 35px rgba(9,47,98,0.09);
}

.noidaFilmMethodCardFeatured {
  border-color: #d8b25c;
  background: linear-gradient(
    155deg,
    #ffffff 0%,
    #fffaf0 100%
  );
  box-shadow: 0 10px 28px rgba(185,120,0,0.08);
}

.noidaFilmMethodTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 24px;
}

.noidaFilmMethodIndex {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--nf-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmMethodCardFeatured .noidaFilmMethodIndex {
  color: var(--nf-dark);
  background: var(--nf-gold-light);
}

.noidaFilmMethodPill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 5px 10px;
  border: 1px solid #e6d5b0;
  border-radius: 5px;
  color: var(--nf-gold);
  background: var(--nf-cream);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.4px;
}

.noidaFilmMethodIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 63px;
  height: 63px;
  margin-bottom: 19px;
  border: 1px solid #e8d6ae;
  border-radius: 13px;
  color: var(--nf-gold);
  background: #fffaf0;
}

.noidaFilmMethodIcon svg {
  display: block;
  width: 39px;
  height: 39px;
}

.noidaFilmMethodCard h3 {
  margin: 0 0 12px;
  color: var(--nf-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.35px;
}

.noidaFilmMethodCard > p {
  margin: 0 0 19px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaFilmMethodCard > p strong {
  color: var(--nf-navy);
  font-weight: 800;
}


/* Methodology lists */

.noidaFilmMethodList {
  display: grid;
  gap: 12px;
  margin: 0 0 23px;
  padding: 0;
  list-style: none;
}

.noidaFilmMethodList li {
  position: relative;
  padding-left: 24px;
  color: #44546b;
  font-size: 15px;
  line-height: 1.75;
}

.noidaFilmMethodList li::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  border: 2px solid var(--nf-gold);
  border-radius: 50%;
  content: "";
}


/* Evidence callout */

.noidaFilmMethodCallout {
  margin-top: auto;
  padding: 16px;
  border-left: 3px solid var(--nf-gold);
  border-radius: 0 8px 8px 0;
  background: #f5f8fc;
}

.noidaFilmMethodCardFeatured .noidaFilmMethodCallout {
  background: #fff3d7;
}

.noidaFilmMethodCallout strong {
  display: block;
  margin-bottom: 6px;
  color: var(--nf-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmMethodCallout span {
  display: block;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   METHODOLOGY WORKFLOW
========================================================= */

.noidaFilmWorkflow {
  margin-top: 42px;
  padding: 30px;
  border: 1px solid rgba(240,180,41,0.38);
  border-radius: 14px;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.13),
      transparent 33%
    ),
    linear-gradient(
      120deg,
      var(--nf-dark),
      var(--nf-navy)
    );
  color: #ffffff;
}

.noidaFilmWorkflowHeading {
  margin-bottom: 25px;
  text-align: center;
}

.noidaFilmWorkflowEyebrow {
  display: block;
  margin-bottom: 8px;
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.noidaFilmWorkflowHeading h3 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(23px, 2.6vw, 30px);
  font-weight: 900;
  line-height: 1.35;
}

.noidaFilmWorkflowSteps {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr) 28px minmax(0, 1fr);
  align-items: center;
  gap: 15px;
}

.noidaFilmWorkflowStep {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
}

.noidaFilmWorkflowNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border: 1px solid rgba(240,180,41,0.65);
  border-radius: 9px;
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaFilmWorkflowStep strong {
  display: block;
  margin-bottom: 5px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaFilmWorkflowStep p {
  margin: 0;
  color: #dce5f1;
  font-size: 15px;
  line-height: 1.75;
}

.noidaFilmWorkflowConnector {
  color: var(--nf-gold-light);
  font-size: 24px;
  text-align: center;
}


/* Methodology note */

.noidaFilmMethodNotice {
  display: grid;
  grid-template-columns: 39px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  margin-top: 25px;
  padding: 20px 22px;
  border: 1px solid #e3e9f1;
  border-radius: 10px;
  background: #ffffff;
}

.noidaFilmNoticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nf-navy);
  font-size: 18px;
  font-weight: 900;
}

.noidaFilmMethodNotice p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.85;
}

.noidaFilmMethodNotice p strong {
  color: var(--nf-navy);
  font-weight: 900;
}


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

.noidaFilmFinalCta {
  padding: 67px 0;
  color: #ffffff;
  background: #ffffff;
}

.noidaFilmFinalCtaInner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr);
  align-items: center;
  gap: 35px;
  overflow: hidden;
  padding: 38px 40px;
  border: 1px solid rgba(240,180,41,0.48);
  border-radius: 16px;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.18),
      transparent 36%
    ),
    linear-gradient(
      125deg,
      var(--nf-dark),
      var(--nf-navy)
    );
  box-shadow: 0 17px 42px rgba(9,47,98,0.13);
}

.noidaFilmFinalCtaContent {
  position: relative;
  z-index: 1;
}

.noidaFilmFinalCtaEyebrow {
  display: block;
  margin-bottom: 10px;
  color: var(--nf-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.4px;
}

.noidaFilmFinalCtaContent h2 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: clamp(27px, 3vw, 37px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.6px;
}

.noidaFilmFinalCtaContent p {
  margin: 0;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.85;
}

.noidaFilmFinalCtaContent p strong {
  color: var(--nf-gold-light);
  font-weight: 800;
}

.noidaFilmFinalCtaActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 13px;
  min-width: 0;
}

.noidaFilmFinalCtaActions .noidaFilmBtn {
  width: 100%;
  justify-content: space-between;
}

.noidaFilmFinalPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 62px;
  padding: 12px 15px;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 9px;
  color: #ffffff !important;
  transition:
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaFilmFinalPhone:hover {
  color: #ffffff !important;
  border-color: var(--nf-gold-light);
  background: rgba(255,255,255,0.08);
}

.noidaFilmFinalPhoneIcon {
  color: var(--nf-gold-light);
  font-size: 25px;
}

.noidaFilmFinalPhone small,
.noidaFilmFinalPhone strong {
  display: block;
  text-align: left;
}

.noidaFilmFinalPhone small {
  color: #dce5f1;
  font-size: 15px;
  line-height: 1.5;
}

.noidaFilmFinalPhone strong {
  color: #ffffff;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaFilmFinalEmail {
  display: inline-block;
  padding: 6px;
  color: var(--nf-gold-light) !important;
  font-size: 15px;
  font-weight: 800;
  text-align: center;
  overflow-wrap: anywhere;
}

.noidaFilmFinalEmail:hover {
  color: #ffffff !important;
}


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

.noidaFilmHero a:focus-visible,
.noidaFilmProfile a:focus-visible,
.noidaFilmMethodology a:focus-visible,
.noidaFilmFinalCta a:focus-visible {
  outline: 3px solid var(--nf-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1050px) {
  .noidaFilmHero {
    padding: 68px 0 65px;
  }

  .noidaFilmHeroHighlights {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaFilmHeroHighlight + .noidaFilmHeroHighlight {
    border-top: 1px solid rgba(255,255,255,0.16);
    border-left: 0;
  }

  .noidaFilmProfileLayout {
    grid-template-columns: minmax(240px, 0.72fr) minmax(0, 1.4fr);
    gap: 22px;
  }

  .noidaFilmProfileAside {
    padding: 24px 21px;
  }

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

  .noidaFilmWorkflowSteps {
    grid-template-columns: minmax(0, 1fr);
    gap: 19px;
  }

  .noidaFilmWorkflowConnector {
    display: none;
  }

  .noidaFilmFinalCtaInner {
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.85fr);
    gap: 25px;
    padding: 30px;
  }
}


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

@media (max-width: 720px) {
  .noidaFilmContainer {
    width: calc(100% - 32px);
  }

  .noidaFilmHero {
    padding: 51px 0 47px;
  }

  .noidaFilmEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaFilmEyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .noidaFilmHero h1 {
    font-size: clamp(35px, 9vw, 47px);
    letter-spacing: -1px;
    line-height: 1.14;
  }

  .noidaFilmHero h1 span {
    margin-top: 12px;
    font-size: 0.68em;
  }

  .noidaFilmHeroIntro {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaFilmHeroHighlights {
    margin: 27px 0;
  }

  .noidaFilmHeroHighlight {
    padding: 17px 15px;
  }

  .noidaFilmHeroActions {
    flex-direction: column;
    align-items: stretch;
  }

  .noidaFilmHeroActions .noidaFilmBtn {
    width: 100%;
  }

  .noidaFilmBtn {
    min-height: 60px;
  }

  .noidaFilmHeroFootnote {
    text-align: left;
  }

  .noidaFilmProfile {
    padding: 58px 0 61px;
  }

  .noidaFilmSectionIntro {
    margin-bottom: 30px;
  }

  .noidaFilmSectionIntro h2 {
    font-size: clamp(31px, 8vw, 39px);
    letter-spacing: -0.5px;
  }

  .noidaFilmSectionIntro > p {
    font-size: 16px;
  }

  .noidaFilmProfileLayout {
    grid-template-columns: minmax(0, 1fr);
    gap: 27px;
  }

  .noidaFilmProfileAside {
    position: relative;
    top: auto;
    padding: 25px 22px;
  }

  .noidaFilmProfileAside h3 {
    font-size: 25px;
  }

  .noidaFilmPropertyHeading h3 {
    font-size: 25px;
  }

  .noidaFilmPropertyCard {
    grid-template-columns: 41px minmax(0, 1fr);
    gap: 13px;
    padding: 19px 16px;
  }

  .noidaFilmPropertyCardNumber {
    width: 40px;
    height: 40px;
  }

  .noidaFilmPropertyCard h4 {
    font-size: 21px;
  }

  .noidaFilmRegulatoryNote {
    grid-template-columns: minmax(0, 1fr);
    gap: 13px;
    padding: 21px 18px;
  }

  .noidaFilmRegulatoryNote h3 {
    font-size: 20px;
  }

  .noidaFilmMethodology {
    padding: 60px 0 63px;
  }

  .noidaFilmMethodHeader {
    margin-bottom: 30px;
  }

  .noidaFilmMethodHeader h2 {
    font-size: clamp(30px, 7.5vw, 38px);
    letter-spacing: -0.5px;
  }

  .noidaFilmMethodHeader > p {
    font-size: 16px;
  }

  .noidaFilmMethodGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 17px;
  }

  .noidaFilmMethodCard {
    padding: 23px 20px;
  }

  .noidaFilmMethodCard h3 {
    font-size: 23px;
  }

  .noidaFilmWorkflow {
    margin-top: 26px;
    padding: 24px 19px;
  }

  .noidaFilmWorkflowHeading h3 {
    font-size: 24px;
  }

  .noidaFilmWorkflowStep {
    gap: 12px;
  }

  .noidaFilmMethodNotice {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 11px;
    padding: 17px 14px;
  }

  .noidaFilmNoticeIcon {
    width: 32px;
    height: 32px;
  }

  .noidaFilmFinalCta {
    padding: 46px 0;
  }

  .noidaFilmFinalCtaInner {
    grid-template-columns: minmax(0, 1fr);
    gap: 25px;
    padding: 26px 20px;
  }

  .noidaFilmFinalCtaContent h2 {
    font-size: 28px;
  }
}


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

@media (max-width: 380px) {
  .noidaFilmContainer {
    width: calc(100% - 26px);
  }

  .noidaFilmHero h1 {
    font-size: 34px;
  }

  .noidaFilmHero h1 span {
    font-size: 0.7em;
  }

  .noidaFilmHeroHighlight {
    gap: 11px;
    padding-inline: 12px;
  }

  .noidaFilmPropertyCard {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaFilmPropertyCardNumber {
    width: 42px;
    height: 42px;
  }

  .noidaFilmMethodTop {
    align-items: flex-start;
  }

  .noidaFilmFinalCtaContent h2 {
    font-size: 26px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaFilmHero *,
  .noidaFilmProfile *,
  .noidaFilmMethodology *,
  .noidaFilmFinalCta * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   SECTOR 18 COMMERCIAL VALUATION PAGE
   Unique namespace: s18Val
   Royal navy + gold design system
   Minimum text size: 15px
========================================================= */

.s18ValHero,
.s18ValEcosystem,
.s18ValMethodology,
.s18ValFinalCta {
  --s18-navy: #092f62;
  --s18-deep: #061d3d;
  --s18-dark: #04152d;
  --s18-gold: #b97800;
  --s18-gold-mid: #d99a16;
  --s18-gold-bright: #f0b429;
  --s18-white: #ffffff;
  --s18-text: #263750;
  --s18-muted: #596b82;
  --s18-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.s18ValHero *,
.s18ValHero *::before,
.s18ValHero *::after,
.s18ValEcosystem *,
.s18ValEcosystem *::before,
.s18ValEcosystem *::after,
.s18ValMethodology *,
.s18ValMethodology *::before,
.s18ValMethodology *::after,
.s18ValFinalCta *,
.s18ValFinalCta *::before,
.s18ValFinalCta *::after {
  box-sizing: border-box;
}

.s18ValHero a,
.s18ValEcosystem a,
.s18ValMethodology a,
.s18ValFinalCta a {
  text-decoration: none;
}

.s18ValContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


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

.s18ValHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 83px 0 0;
  color: var(--s18-white);
  background:
    radial-gradient(
      ellipse at 90% 0%,
      rgba(217,154,22,0.17),
      transparent 36%
    ),
    linear-gradient(
      130deg,
      #04152d 0%,
      #092f62 58%,
      #061d3d 100%
    );
}

.s18ValHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(
      rgba(255,255,255,0.045) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,0.045) 1px,
      transparent 1px
    );
  background-size: 46px 46px;
  mask-image: linear-gradient(
    to bottom,
    black 0%,
    transparent 95%
  );
}

.s18ValHeroInner {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.s18ValEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--s18-gold-bright);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.8px;
}

.s18ValEyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--s18-gold-bright);
}

.s18ValHero h1 {
  max-width: 1000px;
  margin: 0 auto 23px;
  color: #ffffff;
  font-size: clamp(39px, 5vw, 61px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.7px;
}

.s18ValHero h1 span {
  display: block;
  margin-top: 10px;
  color: var(--s18-gold-bright);
}

.s18ValHeroIntro {
  max-width: 900px;
  margin: 0 auto 17px;
  color: #f1f5fb;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
}

.s18ValHeroIntro strong {
  color: var(--s18-gold-bright);
  font-weight: 900;
}

.s18ValHeroText {
  max-width: 900px;
  margin: 0 auto;
  color: #dce7f5;
  font-size: 16px;
  line-height: 1.9;
}

.s18ValHeroText strong {
  color: #ffffff;
  font-weight: 800;
}

.s18ValHeroTags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.s18ValHeroTags span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 39px;
  padding: 8px 14px;
  border: 1px solid rgba(240,180,41,0.36);
  border-radius: 30px;
  color: #fff5da;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.s18ValHeroActions {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 31px;
}


/* =========================================================
   SHARED CTA BUTTONS
========================================================= */

.s18ValBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 61px;
  padding: 13px 21px;
  border: 2px solid transparent;
  border-radius: 10px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  text-align: left;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.s18ValBtn:hover {
  transform: translateY(-3px);
}

.s18ValBtnGold {
  color: #04152d !important;
  background: linear-gradient(
    135deg,
    #f0b429 0%,
    #d99a16 100%
  );
  border-color: #f0b429;
  box-shadow: 0 10px 25px rgba(217,154,22,0.2);
}

.s18ValBtnGold:hover {
  color: #04152d !important;
  background: #ffca48;
  box-shadow: 0 14px 32px rgba(217,154,22,0.3);
}

.s18ValBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.36);
  background: rgba(255,255,255,0.055);
}

.s18ValBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--s18-gold-bright);
  background: rgba(255,255,255,0.1);
}

.s18ValBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--s18-navy);
  font-size: 20px;
  transition: transform 0.2s ease;
}

.s18ValBtnGold:hover .s18ValBtnArrow {
  transform: translateX(3px);
}

.s18ValPhoneIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
  color: var(--s18-gold-bright);
  background: rgba(217,154,22,0.13);
  font-size: 21px;
}

.s18ValBtnOutline strong,
.s18ValBtnOutline small,
.s18ValBtnLight strong,
.s18ValBtnLight small {
  display: block;
}

.s18ValBtnOutline strong,
.s18ValBtnLight strong {
  font-size: 16px;
  font-weight: 900;
}

.s18ValBtnOutline small,
.s18ValBtnLight small {
  margin-top: 3px;
  font-size: 15px;
  font-weight: 500;
  opacity: 0.9;
}


/* Hero supporting note */

.s18ValHeroFoot {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 820px;
  margin: 25px auto 0;
  color: #dce7f5;
}

.s18ValHeroFootMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 50%;
  color: var(--s18-gold-bright);
  font-size: 15px;
  font-weight: 900;
}

.s18ValHeroFoot p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  text-align: left;
  color: #ffffff;
}


/* Hero bottom navigation strip */

.s18ValHeroBottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 60px;
  border-top: 1px solid rgba(255,255,255,0.16);
  background: rgba(0,0,0,0.08);
}

.s18ValHeroBottom > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-width: 0;
  padding: 23px 15px;
}

.s18ValHeroBottom > div + div {
  border-left: 1px solid rgba(255,255,255,0.14);
}

.s18ValHeroBottomNum {
  color: var(--s18-gold-bright);
  font-size: 17px;
  font-weight: 900;
}

.s18ValHeroBottomText {
  color: #f0f4fa;
  font-size: 15px;
  font-weight: 700;
}


/* =========================================================
   SECTION 1: COMMERCIAL ECOSYSTEM
========================================================= */

.s18ValEcosystem {
  position: relative;
  padding: 84px 0 86px;
  color: var(--s18-text);
  background:
    radial-gradient(
      circle at 5% 4%,
      rgba(217,154,22,0.07),
      transparent 24%
    ),
    #f8fbff;
}

.s18ValSectionHeader {
  max-width: 850px;
  margin: 0 auto 42px;
  text-align: center;
}

.s18ValEyebrowLight {
  color: var(--s18-gold);
}

.s18ValEyebrowLight .s18ValEyebrowLine {
  background: var(--s18-gold);
}

.s18ValSectionHeader h2 {
  margin: 0 0 17px;
  color: var(--s18-deep);
  font-size: clamp(32px, 3.7vw, 45px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.s18ValSectionHeader h2 span {
  color: var(--s18-gold);
}

.s18ValSectionHeader > p {
  margin: 0;
  color: var(--s18-muted);
  font-size: 17px;
  line-height: 1.85;
}

.s18ValSectionHeader > p strong {
  color: var(--s18-navy);
  font-weight: 900;
}


/* Ecosystem cards */

.s18ValEcosystemGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.s18ValMarketCard {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 24px 22px;
  border: 1px solid #dfe7f1;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(9,47,98,0.045);
  transition:
    transform 0.23s ease,
    border-color 0.23s ease,
    box-shadow 0.23s ease;
}

.s18ValMarketCard:hover {
  transform: translateY(-5px);
  border-color: #d5b36b;
  box-shadow: 0 18px 38px rgba(9,47,98,0.1);
}

.s18ValMarketCardFeatured {
  border-color: #d6bd83;
  background: linear-gradient(
    145deg,
    #ffffff,
    #fffaf0
  );
}

.s18ValMarketCardWide {
  grid-column: span 2;
  background: linear-gradient(
    145deg,
    #ffffff,
    #f5f8fd
  );
}

.s18ValMarketCardEvidence {
  border-color: #d5bd85;
  background: linear-gradient(
    145deg,
    #fffdf8,
    #fff7e6
  );
}

.s18ValMarketCardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.s18ValMarketIndex {
  color: var(--s18-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 1px;
}

.s18ValMarketIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  border: 1px solid #ead9b3;
  border-radius: 50%;
  color: var(--s18-gold);
  background: #fff9ec;
  font-size: 24px;
  font-weight: 800;
}

.s18ValMarketCard h3 {
  margin: 0 0 13px;
  color: var(--s18-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.35px;
}

.s18ValMarketCard > p {
  margin: 0 0 20px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.s18ValMarketCard > p strong {
  color: var(--s18-navy);
  font-weight: 900;
}

.s18ValMarketFact {
  margin-top: auto;
  padding: 15px 16px;
  border-left: 3px solid var(--s18-gold-mid);
  border-radius: 0 8px 8px 0;
  background: #f5f7fb;
}

.s18ValMarketFactLabel {
  display: block;
  margin-bottom: 5px;
  color: var(--s18-navy);
  font-size: 15px;
  font-weight: 900;
}

.s18ValMarketFact p {
  margin: 0;
  color: #4d5d72;
  font-size: 15px;
  line-height: 1.8;
}

.s18ValTextLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 45px;
  margin-top: 17px;
  padding-top: 12px;
  border-top: 1px solid #e4eaf2;
  color: var(--s18-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  transition: color 0.2s ease;
}

.s18ValTextLink span {
  color: var(--s18-gold);
  font-size: 21px;
  transition: transform 0.2s ease;
}

.s18ValTextLink:hover {
  color: var(--s18-gold) !important;
}

.s18ValTextLink:hover span {
  transform: translateX(4px);
}


/* Ecosystem disclaimer */

.s18ValEcosystemNote {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 28px;
  padding: 19px 21px;
  border: 1px solid #e7d8b6;
  border-radius: 11px;
  background: #fffaf0;
}

.s18ValEcosystemNoteIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--s18-navy);
  font-size: 16px;
  font-weight: 900;
}

.s18ValEcosystemNote p {
  margin: 0;
  color: #4b5b70;
  font-size: 15px;
  line-height: 1.8;
}

.s18ValEcosystemNote p strong {
  color: var(--s18-navy);
  font-weight: 900;
}


/* =========================================================
   SECTION 2: METHODOLOGY
========================================================= */

.s18ValMethodology {
  padding: 83px 0 87px;
  color: var(--s18-text);
  background: #ffffff;
}

.s18ValMethodIntro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  margin-bottom: 38px;
  padding-bottom: 32px;
  border-bottom: 1px solid #e1e8f1;
}

.s18ValMethodIntroContent {
  max-width: 850px;
}

.s18ValMethodIntro .s18ValEyebrow {
  justify-content: flex-start;
  color: var(--s18-gold);
}

.s18ValMethodIntro .s18ValEyebrowLine {
  background: var(--s18-gold);
}

.s18ValMethodIntro h2 {
  margin: 0 0 17px;
  color: var(--s18-deep);
  font-size: clamp(32px, 3.5vw, 45px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.s18ValMethodIntro h2 span {
  color: var(--s18-gold);
}

.s18ValMethodIntroContent > p {
  margin: 0;
  color: var(--s18-muted);
  font-size: 17px;
  line-height: 1.85;
}


/* Methodology seal */

.s18ValMethodSeal {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 145px;
  height: 145px;
  flex: 0 0 145px;
  border: 1px solid #d7b35c;
  border-radius: 50%;
  color: var(--s18-navy);
  background:
    radial-gradient(
      circle,
      #ffffff 52%,
      #fff8e8 53%,
      #fff8e8 100%
    );
  box-shadow:
    0 0 0 7px #ffffff,
    0 0 0 8px #ead9b2;
}

.s18ValMethodSealTop,
.s18ValMethodSealBottom {
  color: var(--s18-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.s18ValMethodSealIcon {
  margin: 3px 0;
  color: var(--s18-navy);
  font-size: 34px;
  font-weight: 900;
}


/* Method cards */

.s18ValMethodGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

.s18ValMethodCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 27px 27px 25px;
  border: 1px solid #dfe7f1;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 26px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.s18ValMethodCard:hover {
  transform: translateY(-4px);
  border-color: #d7b45f;
  box-shadow: 0 17px 35px rgba(9,47,98,0.09);
}

.s18ValMethodCardAccent {
  border-color: #e4d1a5;
  background: linear-gradient(
    145deg,
    #ffffff 0%,
    #fffaf0 100%
  );
}

.s18ValMethodCardHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.s18ValMethodNum {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--s18-navy);
  font-size: 15px;
  font-weight: 900;
}

.s18ValMethodCardAccent .s18ValMethodNum {
  color: var(--s18-deep);
  background: var(--s18-gold-bright);
}

.s18ValMethodType {
  color: var(--s18-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.7px;
  text-align: right;
}

.s18ValMethodCard h3 {
  margin: 0 0 13px;
  color: var(--s18-deep);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.s18ValMethodCard > p {
  margin: 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.s18ValMethodCard > p strong {
  color: var(--s18-navy);
  font-weight: 900;
}

.s18ValMethodDivider {
  width: 100%;
  height: 1px;
  margin: 21px 0 18px;
  background: #e4eaf2;
}

.s18ValMethodCard h4 {
  margin: 0 0 11px;
  color: var(--s18-navy);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}

.s18ValMethodList {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.s18ValMethodList li {
  position: relative;
  padding-left: 26px;
  color: #4e5e73;
  font-size: 15px;
  line-height: 1.75;
}

.s18ValMethodList li::before {
  position: absolute;
  top: 2px;
  left: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  content: "✓";
  color: #ffffff;
  background: var(--s18-navy);
  font-size: 12px;
  font-weight: 900;
}

.s18ValMethodCallout {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: auto;
  padding: 16px 17px;
  border-left: 3px solid var(--s18-gold);
  border-radius: 0 8px 8px 0;
  background: #f4f7fb;
}

.s18ValMethodCardAccent .s18ValMethodCallout {
  background: #fff5db;
}

.s18ValMethodCallout strong {
  color: var(--s18-navy);
  font-size: 15px;
  font-weight: 900;
}

.s18ValMethodCallout span {
  color: #4d5c71;
  font-size: 15px;
  line-height: 1.75;
}


/* Methodology note */

.s18ValMethodNotice {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 29px;
  padding: 22px 23px;
  border: 1px solid #e7d6ad;
  border-radius: 12px;
  background: #fffaf0;
}

.s18ValMethodNoticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--s18-navy);
  font-size: 20px;
  font-weight: 900;
}

.s18ValMethodNotice h3 {
  margin: 0 0 7px;
  color: var(--s18-deep);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.5;
}

.s18ValMethodNotice p {
  margin: 0;
  color: #4e5d72;
  font-size: 15px;
  line-height: 1.85;
}


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

.s18ValFinalCta {
  padding: 0 0 84px;
  background: #ffffff;
}

.s18ValFinalCtaPanel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 38px;
  padding: 37px 38px;
  border: 1px solid rgba(240,180,41,0.38);
  border-radius: 17px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.17),
      transparent 34%
    ),
    linear-gradient(
      120deg,
      #04152d,
      #092f62
    );
  box-shadow: 0 20px 45px rgba(9,47,98,0.13);
}

.s18ValFinalCtaContent {
  max-width: 710px;
}

.s18ValFinalCtaEyebrow {
  display: block;
  margin-bottom: 10px;
  color: var(--s18-gold-bright);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.s18ValFinalCtaContent h2 {
  margin: 0 0 14px;
  color: #ffffff;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 900;
  line-height: 1.22;
  letter-spacing: -0.7px;
}

.s18ValFinalCtaContent p {
  margin: 0;
  color: #e1eaf6;
  font-size: 16px;
  line-height: 1.85;
}

.s18ValFinalCtaActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 13px;
  width: 290px;
  flex: 0 0 290px;
}

.s18ValFinalCtaActions .s18ValBtn {
  width: 100%;
  min-height: 57px;
}

.s18ValBtnLight {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.35);
  background: rgba(255,255,255,0.06);
}

.s18ValBtnLight:hover {
  color: #ffffff !important;
  border-color: var(--s18-gold-bright);
  background: rgba(255,255,255,0.11);
}

.s18ValEmailLink {
  display: block;
  padding: 7px 4px;
  color: #fff0c5 !important;
  font-size: 15px;
  font-weight: 800;
  text-align: center;
  overflow-wrap: anywhere;
}

.s18ValEmailLink:hover {
  color: #ffffff !important;
  text-decoration: underline;
}


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

.s18ValHero a:focus-visible,
.s18ValEcosystem a:focus-visible,
.s18ValMethodology a:focus-visible,
.s18ValFinalCta a:focus-visible {
  outline: 3px solid var(--s18-gold-bright);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE: TABLET
========================================================= */

@media (max-width: 1000px) {
  .s18ValEcosystemGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .s18ValMarketCardWide {
    grid-column: auto;
  }

  .s18ValMethodIntro {
    align-items: flex-start;
  }

  .s18ValMethodSeal {
    width: 125px;
    height: 125px;
    flex-basis: 125px;
  }

  .s18ValFinalCtaPanel {
    gap: 25px;
    padding: 31px 28px;
  }

  .s18ValFinalCtaActions {
    width: 270px;
    flex-basis: 270px;
  }
}


/* =========================================================
   RESPONSIVE: MOBILE
========================================================= */

@media (max-width: 700px) {
  .s18ValContainer {
    width: calc(100% - 32px);
  }

  .s18ValHero {
    padding-top: 53px;
  }

  .s18ValEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .s18ValEyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .s18ValHero h1 {
    font-size: clamp(35px, 9vw, 45px);
    letter-spacing: -0.9px;
  }

  .s18ValHeroIntro {
    font-size: 18px;
    line-height: 1.75;
  }

  .s18ValHeroText {
    font-size: 16px;
    line-height: 1.85;
  }

  .s18ValHeroTags {
    gap: 8px;
  }

  .s18ValHeroTags span {
    padding: 8px 11px;
  }

  .s18ValHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .s18ValBtn {
    width: 100%;
    min-height: 61px;
  }

  .s18ValHeroFoot {
    align-items: flex-start;
  }

  .s18ValHeroBottom {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 39px;
  }

  .s18ValHeroBottom > div {
    justify-content: flex-start;
    padding: 16px 7px;
  }

  .s18ValHeroBottom > div + div {
    border-top: 1px solid rgba(255,255,255,0.14);
    border-left: 0;
  }

  .s18ValEcosystem,
  .s18ValMethodology {
    padding: 58px 0 61px;
  }

  .s18ValSectionHeader {
    margin-bottom: 29px;
  }

  .s18ValSectionHeader h2,
  .s18ValMethodIntro h2 {
    font-size: clamp(30px, 7.6vw, 37px);
    letter-spacing: -0.6px;
  }

  .s18ValSectionHeader > p,
  .s18ValMethodIntroContent > p {
    font-size: 16px;
  }

  .s18ValEcosystemGrid,
  .s18ValMethodGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 17px;
  }

  .s18ValMarketCard,
  .s18ValMethodCard {
    padding: 23px 21px;
  }

  .s18ValMarketCard h3,
  .s18ValMethodCard h3 {
    font-size: 23px;
  }

  .s18ValMethodIntro {
    flex-direction: column;
    gap: 24px;
    padding-bottom: 26px;
  }

  .s18ValMethodSeal {
    width: 118px;
    height: 118px;
    flex-basis: 118px;
    align-self: center;
  }

  .s18ValMethodNotice {
    padding: 19px 17px;
  }

  .s18ValMethodNotice h3 {
    font-size: 18px;
  }

  .s18ValFinalCta {
    padding-bottom: 58px;
  }

  .s18ValFinalCtaPanel {
    align-items: stretch;
    flex-direction: column;
    gap: 25px;
    padding: 25px 21px;
  }

  .s18ValFinalCtaContent h2 {
    font-size: 29px;
  }

  .s18ValFinalCtaActions {
    width: 100%;
    flex-basis: auto;
  }
}


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

@media (max-width: 380px) {
  .s18ValContainer {
    width: calc(100% - 26px);
  }

  .s18ValHero h1 {
    font-size: 33px;
  }

  .s18ValHeroTags span {
    width: 100%;
    text-align: center;
  }

  .s18ValMarketCard,
  .s18ValMethodCard {
    padding: 21px 17px;
  }

  .s18ValMethodType {
    max-width: 65%;
    font-size: 15px;
  }

  .s18ValFinalCtaPanel {
    padding: 22px 17px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .s18ValHero *,
  .s18ValEcosystem *,
  .s18ValMethodology *,
  .s18ValFinalCta * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA IT CORRIDOR PAGE
   Namespace: noidaIT
   Royal Navy + Gold visual system
   Minimum font size: 15px
========================================================= */

.noidaIT-hero,
.noidaIT-cluster,
.noidaIT-expressway {
  --it-navy: #092f62;
  --it-deep: #061d3d;
  --it-dark: #04152d;
  --it-gold: #b97800;
  --it-gold-mid: #d99a16;
  --it-gold-light: #f0b429;
  --it-white: #ffffff;
  --it-text: #263850;
  --it-muted: #586980;
  --it-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.noidaIT-hero *,
.noidaIT-hero *::before,
.noidaIT-hero *::after,
.noidaIT-cluster *,
.noidaIT-cluster *::before,
.noidaIT-cluster *::after,
.noidaIT-expressway *,
.noidaIT-expressway *::before,
.noidaIT-expressway *::after {
  box-sizing: border-box;
}

.noidaIT-hero a,
.noidaIT-cluster a,
.noidaIT-expressway a {
  text-decoration: none;
}

.noidaIT-container {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW
========================================================= */

.noidaIT-eyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  color: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.7px;
  line-height: 1.6;
}

.noidaIT-eyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--it-gold-light);
}


/* =========================================================
   SHARED BUTTON SYSTEM
========================================================= */

.noidaIT-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 58px;
  padding: 13px 20px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaIT-btn:hover {
  transform: translateY(-3px);
}

.noidaIT-btnGold {
  color: var(--it-dark) !important;
  background: linear-gradient(
    135deg,
    #f0b429 0%,
    #d99a16 100%
  );
  border-color: var(--it-gold-light);
  box-shadow: 0 9px 25px rgba(217,154,22,0.2);
}

.noidaIT-btnGold:hover {
  color: var(--it-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 29px rgba(217,154,22,0.3);
}

.noidaIT-btnArrow {
  font-size: 22px;
  line-height: 1;
  transition: transform 0.2s ease;
}

.noidaIT-btnGold:hover .noidaIT-btnArrow {
  transform: translateX(4px);
}

.noidaIT-btnOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.045);
  border-color: rgba(255,255,255,0.38);
}

.noidaIT-btnOutline:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.11);
  border-color: var(--it-gold-light);
}

.noidaIT-callSymbol {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 50%;
  color: var(--it-gold-light);
  background: rgba(217,154,22,0.15);
  font-size: 19px;
}

.noidaIT-btnOutline strong,
.noidaIT-btnOutline small {
  display: block;
  text-align: left;
}

.noidaIT-btnOutline strong {
  color: #ffffff;
  font-size: 16px;
}

.noidaIT-btnOutline small {
  margin-top: 2px;
  color: #e1e9f5;
  font-size: 15px;
}


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

.noidaIT-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 78px 0 82px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 87% 18%,
      rgba(217,154,22,0.17),
      transparent 29%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 57%,
      #061d3d 100%
    );
}

.noidaIT-heroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.19;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to bottom, #000 0%, transparent 90%);
}

.noidaIT-heroGlow {
  position: absolute;
  z-index: -1;
  top: 10%;
  right: -100px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: rgba(217,154,22,0.11);
  filter: blur(75px);
  pointer-events: none;
}

.noidaIT-heroInner {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
  align-items: center;
  gap: clamp(38px, 5vw, 76px);
}

.noidaIT-heroCopy {
  min-width: 0;
}

.noidaIT-heroCopy h1 {
  margin: 0 0 23px;
  color: #ffffff;
  font-size: clamp(40px, 4.5vw, 58px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.6px;
  overflow-wrap: anywhere;
}

.noidaIT-heroCopy h1 span {
  display: block;
  margin-top: 12px;
  color: var(--it-gold-light);
  font-size: 0.65em;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.noidaIT-heroIntro {
  max-width: 760px;
  margin: 0;
  padding-left: 18px;
  border-left: 3px solid var(--it-gold-light);
  color: #e8eef7;
  font-size: 17px;
  line-height: 1.9;
}

.noidaIT-heroIntro strong {
  color: var(--it-gold-light);
  font-weight: 900;
}

.noidaIT-heroHighlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 29px;
}

.noidaIT-highlight {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 14px 11px;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 10px;
  background: rgba(255,255,255,0.045);
}

.noidaIT-highlightNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  flex: 0 0 33px;
  border: 1px solid rgba(240,180,41,0.48);
  border-radius: 7px;
  color: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-highlight > span:last-child {
  min-width: 0;
}

.noidaIT-highlight strong,
.noidaIT-highlight small {
  display: block;
}

.noidaIT-highlight strong {
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaIT-highlight small {
  margin-top: 5px;
  color: #d6e1ef;
  font-size: 15px;
  line-height: 1.55;
}

.noidaIT-heroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 28px;
}

.noidaIT-heroTrust {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 24px;
}

.noidaIT-trustCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 3px;
  border-radius: 50%;
  color: var(--it-dark);
  background: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-heroTrust p {
  margin: 0;
  color: #dfe8f4;
  font-size: 15px;
  line-height: 1.7;
}

.noidaIT-heroTrust strong {
  color: #ffffff;
}


/* =========================================================
   HERO: DECORATIVE COMMERCIAL OVERVIEW PANEL
========================================================= */

.noidaIT-heroSide {
  position: relative;
  min-width: 0;
  padding: 0 0 27px;
}

.noidaIT-sideCard {
  padding: 27px 25px 23px;
  border: 1px solid rgba(240,180,41,0.48);
  border-radius: 17px;
  background: linear-gradient(
    150deg,
    rgba(255,255,255,0.12),
    rgba(255,255,255,0.045)
  );
  box-shadow:
    0 28px 65px rgba(0,0,0,0.22),
    inset 0 1px 0 rgba(255,255,255,0.12);
  backdrop-filter: blur(10px);
}

.noidaIT-sideCardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding-bottom: 21px;
  border-bottom: 1px solid rgba(255,255,255,0.15);
}

.noidaIT-sideLabel {
  color: #f8e8be;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaIT-sideEmblem {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 1px solid var(--it-gold-light);
  border-radius: 50%;
  color: var(--it-gold-light);
  font-size: 16px;
  font-weight: 900;
}

.noidaIT-sideTitle {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 29px 0 24px;
}

.noidaIT-sideTitle > span {
  margin-bottom: 5px;
  color: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 3px;
}

.noidaIT-sideTitle strong {
  color: #ffffff;
  font-size: clamp(24px, 2.4vw, 31px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

.noidaIT-sideRule {
  width: 65px;
  height: 3px;
  margin-bottom: 23px;
  border-radius: 5px;
  background: linear-gradient(
    90deg,
    var(--it-gold),
    var(--it-gold-light)
  );
}

.noidaIT-sidePoint {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255,255,255,0.12);
}

.noidaIT-sidePointIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 8px;
  color: var(--it-gold-light);
  background: rgba(217,154,22,0.09);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-sidePoint strong {
  display: block;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaIT-sidePoint p {
  margin: 4px 0 0;
  color: #d8e3f1;
  font-size: 15px;
  line-height: 1.6;
}

.noidaIT-sideCardFooter {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 21px;
  color: #f5e8c8;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaIT-footerAccent {
  width: 27px;
  height: 2px;
  background: var(--it-gold-light);
}

.noidaIT-sideFloating {
  position: absolute;
  right: -15px;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 275px;
  padding: 14px 17px;
  border: 1px solid #e9cc83;
  border-radius: 11px;
  color: var(--it-dark);
  background: #ffffff;
  box-shadow: 0 15px 35px rgba(0,0,0,0.19);
}

.noidaIT-floatingIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--it-navy);
  font-size: 21px;
  font-weight: 900;
}

.noidaIT-sideFloating strong,
.noidaIT-sideFloating small {
  display: block;
}

.noidaIT-sideFloating strong {
  color: var(--it-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-sideFloating small {
  margin-top: 3px;
  color: #596a80;
  font-size: 15px;
  line-height: 1.5;
}


/* =========================================================
   SECTION 1: ESTABLISHED IT CLUSTER
========================================================= */

.noidaIT-cluster {
  padding: 84px 0 86px;
  color: var(--it-text);
  background:
    radial-gradient(
      circle at 3% 5%,
      rgba(217,154,22,0.07),
      transparent 24%
    ),
    #f8fbff;
}

.noidaIT-sectionIntro {
  max-width: 880px;
  margin-bottom: 39px;
}

.noidaIT-eyebrowLight {
  color: var(--it-gold);
}

.noidaIT-eyebrowLight .noidaIT-eyebrowLine {
  background: var(--it-gold);
}

.noidaIT-sectionIntro h2,
.noidaIT-expresswayHeader h2 {
  margin: 0 0 18px;
  color: var(--it-dark);
  font-size: clamp(33px, 3.6vw, 46px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaIT-sectionIntro h2 span,
.noidaIT-expresswayHeader h2 span {
  display: block;
  margin-top: 9px;
  color: var(--it-gold);
  font-size: 0.72em;
  line-height: 1.4;
  letter-spacing: -0.3px;
}

.noidaIT-sectionIntro > p,
.noidaIT-expresswayHeader > p {
  max-width: 830px;
  margin: 0;
  color: var(--it-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaIT-sectionIntro > p strong,
.noidaIT-expresswayHeader > p strong {
  color: var(--it-navy);
  font-weight: 900;
}

.noidaIT-clusterLayout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  align-items: start;
  gap: 26px;
}

.noidaIT-clusterMain {
  min-width: 0;
}

.noidaIT-propertyGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.noidaIT-propertyCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
  border: 1px solid #e0e8f2;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 8px 23px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.noidaIT-propertyCard:hover {
  transform: translateY(-4px);
  border-color: #d9b765;
  box-shadow: 0 15px 34px rgba(9,47,98,0.09);
}

.noidaIT-propertyCardWide {
  grid-column: 1 / -1;
  border-color: #e4d6b8;
  background: linear-gradient(140deg, #ffffff, #fffaf0);
}

.noidaIT-propertyTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 21px;
}

.noidaIT-propertyIndex {
  color: var(--it-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaIT-propertyIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border: 1px solid #ead7ac;
  border-radius: 10px;
  color: var(--it-gold);
  background: #fff9ec;
  font-size: 23px;
  font-weight: 800;
}

.noidaIT-propertyCard h3 {
  margin: 0 0 12px;
  color: var(--it-navy);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaIT-propertyCard > p {
  margin: 0 0 22px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaIT-propertyCard > p strong {
  color: var(--it-navy);
  font-weight: 900;
}

.noidaIT-propertyMeta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
}

.noidaIT-propertyMeta span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #dce5f0;
  border-radius: 5px;
  color: var(--it-navy);
  background: #f5f8fc;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}


/* Methodology panel */

.noidaIT-methodPanel {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin-top: 22px;
  padding: 25px;
  border: 1px solid #d8e2ef;
  border-radius: 13px;
  background: #eef4fb;
}

.noidaIT-methodIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  flex: 0 0 49px;
  border-radius: 11px;
  color: #ffffff;
  background: var(--it-navy);
  font-size: 25px;
  font-weight: 900;
}

.noidaIT-methodEyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--it-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaIT-methodPanel h3 {
  margin: 0 0 9px;
  color: var(--it-dark);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaIT-methodPanel p {
  margin: 0;
  color: #4e6077;
  font-size: 15px;
  line-height: 1.85;
}

.noidaIT-methodPanel p strong {
  color: var(--it-navy);
  font-weight: 900;
}


/* =========================================================
   SECTION 1: RESIDENTIAL CATCHMENT SIDEBAR
========================================================= */

.noidaIT-clusterAside {
  position: sticky;
  top: 25px;
  overflow: hidden;
  border: 1px solid #d8e3f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(9,47,98,0.07);
}

.noidaIT-asideHeader {
  padding: 24px 22px;
  color: #ffffff;
  background: linear-gradient(
    140deg,
    #04152d,
    #092f62
  );
}

.noidaIT-asideKicker {
  display: block;
  margin-bottom: 10px;
  color: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaIT-asideHeader h3 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaIT-asideHeader > p {
  margin: 0;
  color: #e0e9f5;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIT-catchmentList {
  padding: 8px 22px;
}

.noidaIT-catchmentItem {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 17px 0;
  border-bottom: 1px solid #e7edf5;
}

.noidaIT-catchmentDot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--it-gold-mid);
  box-shadow: 0 0 0 4px #fff5db;
}

.noidaIT-catchmentItem strong {
  display: block;
  color: var(--it-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaIT-catchmentItem p {
  margin: 5px 0 0;
  color: var(--it-muted);
  font-size: 15px;
  line-height: 1.65;
}

.noidaIT-asideNote {
  margin: 0 22px 20px;
  padding: 15px;
  border-left: 3px solid var(--it-gold);
  border-radius: 0 7px 7px 0;
  background: #fff9ec;
}

.noidaIT-asideNote > strong {
  display: block;
  margin-bottom: 5px;
  color: var(--it-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-asideNote p {
  margin: 0;
  color: #4f5e71;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIT-asideNote p strong {
  color: var(--it-navy);
}

.noidaIT-asideCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 54px;
  margin: 0 22px 23px;
  padding: 13px 16px;
  border-radius: 8px;
  color: var(--it-dark) !important;
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  font-size: 16px;
  font-weight: 900;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaIT-asideCta:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(217,154,22,0.25);
}

.noidaIT-asideCta span {
  font-size: 22px;
}


/* =========================================================
   SECTION 1: BOTTOM CTA
========================================================= */

.noidaIT-sectionCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 35px;
  padding: 29px 31px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 5%,
      rgba(217,154,22,0.15),
      transparent 35%
    ),
    linear-gradient(
      115deg,
      #04152d,
      #092f62
    );
}

.noidaIT-sectionCtaText {
  max-width: 670px;
}

.noidaIT-sectionCtaText > span {
  display: block;
  margin-bottom: 8px;
  color: var(--it-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaIT-sectionCtaText h3 {
  margin: 0 0 9px;
  color: #ffffff;
  font-size: clamp(23px, 2.4vw, 29px);
  font-weight: 900;
  line-height: 1.35;
}

.noidaIT-sectionCtaText p {
  margin: 0;
  color: #dfe8f4;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIT-sectionCtaActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 11px;
  flex: 0 0 auto;
}

.noidaIT-sectionCtaActions .noidaIT-btn {
  min-height: 54px;
}

.noidaIT-ctaPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 47px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 8px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 900;
  transition: background 0.2s ease;
}

.noidaIT-ctaPhone:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.09);
}

.noidaIT-ctaPhone span {
  color: var(--it-gold-light);
  font-size: 20px;
}


/* =========================================================
   SECTION 2: EXPRESSWAY IT PARKS
========================================================= */

.noidaIT-expressway {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 84px 0 86px;
  color: var(--it-text);
  background: #ffffff;
}

.noidaIT-expresswayPattern {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 45%;
  height: 390px;
  pointer-events: none;
  opacity: 0.55;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.11),
      transparent 65%
    );
}

.noidaIT-expresswayHeader {
  max-width: 920px;
  margin-bottom: 40px;
}

.noidaIT-expresswayGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(310px, 0.85fr);
  align-items: start;
  gap: 28px;
}

.noidaIT-expresswayMain {
  padding: 28px 29px;
  border: 1px solid #e0e7f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 9px 28px rgba(9,47,98,0.05);
}

.noidaIT-expresswayFeature {
  display: flex;
  align-items: flex-start;
  gap: 19px;
}

.noidaIT-featureNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border: 1px solid #e6cf96;
  border-radius: 11px;
  color: var(--it-navy);
  background: #fff8e8;
  font-size: 16px;
  font-weight: 900;
}

.noidaIT-featureLabel {
  display: block;
  margin: 2px 0 8px;
  color: var(--it-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.9px;
  line-height: 1.6;
}

.noidaIT-expresswayFeature h3 {
  margin: 0 0 10px;
  color: var(--it-navy);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaIT-expresswayFeature p {
  margin: 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaIT-expresswayFeature p strong {
  color: var(--it-navy);
  font-weight: 900;
}

.noidaIT-expresswayDivider {
  height: 1px;
  margin: 25px 0;
  background: linear-gradient(
    90deg,
    #d7b765,
    #e8edf4 70%,
    transparent
  );
}


/* =========================================================
   SECTION 2: VALUATION CHECKLIST SIDEBAR
========================================================= */

.noidaIT-expresswayAside {
  padding: 27px 25px;
  border: 1px solid #d7e1ee;
  border-radius: 14px;
  background: #f5f8fc;
}

.noidaIT-corridorBadge {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 21px;
  color: var(--it-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.6px;
  line-height: 1.6;
}

.noidaIT-corridorBadgeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--it-navy);
  font-size: 22px;
}

.noidaIT-expresswayAside > h3 {
  margin: 0 0 12px;
  color: var(--it-dark);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaIT-expresswayAside > p {
  margin: 0 0 20px;
  color: #526176;
  font-size: 15px;
  line-height: 1.85;
}

.noidaIT-checkList {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.noidaIT-checkList li {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 13px 0;
  border-top: 1px solid #e0e7f0;
  color: #4c5d73;
  font-size: 15px;
  line-height: 1.75;
}

.noidaIT-checkList li > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  margin-top: 2px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--it-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaIT-checkList li strong {
  color: var(--it-navy);
  font-weight: 900;
}

.noidaIT-asideGoldNote {
  margin-top: 19px;
  padding: 16px;
  border: 1px solid #ead7ac;
  border-radius: 9px;
  background: #fff9ec;
}

.noidaIT-asideGoldNote > strong {
  display: block;
  margin-bottom: 6px;
  color: var(--it-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaIT-asideGoldNote p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIT-asideButton {
  width: 100%;
  justify-content: space-between;
  margin-top: 20px;
}

.noidaIT-expresswayCall {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 49px;
  margin-top: 11px;
  padding: 10px;
  border: 1px solid #cdd9e8;
  border-radius: 8px;
  color: var(--it-navy) !important;
  background: #ffffff;
  font-size: 16px;
  font-weight: 900;
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaIT-expresswayCall:hover {
  color: var(--it-gold) !important;
  border-color: var(--it-gold-mid);
  background: #fffdf8;
}

.noidaIT-expresswayCall span {
  color: var(--it-gold);
  font-size: 19px;
}


/* =========================================================
   SECTION 2: FINAL CTA STRIP
========================================================= */

.noidaIT-expresswayBottom {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 32px;
  padding: 27px;
  border: 1px solid #e6d5ae;
  border-radius: 13px;
  background: linear-gradient(
    120deg,
    #fffdf8,
    #fff7e6
  );
}

.noidaIT-expresswayBottomMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  border-radius: 12px;
  color: var(--it-gold-light);
  background: var(--it-navy);
  font-size: 19px;
  font-weight: 900;
}

.noidaIT-expresswayBottomCopy {
  flex: 1 1 auto;
  min-width: 0;
}

.noidaIT-expresswayBottomCopy h3 {
  margin: 0 0 6px;
  color: var(--it-navy);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaIT-expresswayBottomCopy p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIT-expresswayBottomCopy p strong {
  color: var(--it-navy);
  font-weight: 900;
}

.noidaIT-expresswayBottom > .noidaIT-btn {
  flex: 0 0 auto;
}


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

.noidaIT-hero a:focus-visible,
.noidaIT-cluster a:focus-visible,
.noidaIT-expressway a:focus-visible {
  outline: 3px solid var(--it-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE: TABLET
========================================================= */

@media (max-width: 1050px) {
  .noidaIT-heroInner {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.8fr);
    gap: 30px;
  }

  .noidaIT-heroCopy h1 {
    font-size: clamp(37px, 4.5vw, 48px);
  }

  .noidaIT-heroHighlights {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  .noidaIT-highlight {
    align-items: center;
  }

  .noidaIT-clusterLayout {
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 18px;
  }

  .noidaIT-propertyGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIT-propertyCardWide {
    grid-column: auto;
  }

  .noidaIT-expresswayGrid {
    grid-template-columns: minmax(0, 1fr) minmax(285px, 0.85fr);
    gap: 19px;
  }

  .noidaIT-expresswayBottom {
    flex-wrap: wrap;
  }

  .noidaIT-expresswayBottom > .noidaIT-btn {
    margin-left: 78px;
  }
}


/* =========================================================
   RESPONSIVE: MOBILE
========================================================= */

@media (max-width: 760px) {
  .noidaIT-container {
    width: min(100% - 32px, 570px);
  }

  .noidaIT-hero {
    padding: 52px 0 57px;
  }

  .noidaIT-heroInner {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
  }

  .noidaIT-heroCopy h1 {
    font-size: clamp(35px, 9vw, 46px);
    letter-spacing: -0.9px;
  }

  .noidaIT-heroCopy h1 span {
    font-size: 0.7em;
  }

  .noidaIT-heroIntro {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaIT-heroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIT-heroActions .noidaIT-btn {
    width: 100%;
  }

  .noidaIT-heroSide {
    width: min(100%, 470px);
    justify-self: center;
  }

  .noidaIT-sideFloating {
    right: 0;
  }

  .noidaIT-cluster {
    padding: 58px 0 61px;
  }

  .noidaIT-sectionIntro {
    margin-bottom: 28px;
  }

  .noidaIT-sectionIntro h2,
  .noidaIT-expresswayHeader h2 {
    font-size: clamp(30px, 7.5vw, 38px);
    letter-spacing: -0.6px;
  }

  .noidaIT-sectionIntro > p,
  .noidaIT-expresswayHeader > p {
    font-size: 16px;
  }

  .noidaIT-clusterLayout {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIT-propertyGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIT-propertyCard {
    padding: 22px;
  }

  .noidaIT-clusterAside {
    position: static;
  }

  .noidaIT-sectionCta {
    align-items: stretch;
    flex-direction: column;
    gap: 21px;
    padding: 23px 20px;
  }

  .noidaIT-sectionCtaActions {
    width: 100%;
  }

  .noidaIT-sectionCtaActions .noidaIT-btn {
    width: 100%;
  }

  .noidaIT-expressway {
    padding: 59px 0 62px;
  }

  .noidaIT-expresswayGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIT-expresswayMain {
    padding: 22px 19px;
  }

  .noidaIT-expresswayFeature {
    gap: 13px;
  }

  .noidaIT-featureNumber {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    font-size: 15px;
  }

  .noidaIT-expresswayFeature h3 {
    font-size: 22px;
  }

  .noidaIT-expresswayAside {
    padding: 23px 20px;
  }

  .noidaIT-expresswayBottom {
    align-items: flex-start;
    flex-direction: column;
    padding: 23px 20px;
  }

  .noidaIT-expresswayBottom > .noidaIT-btn {
    width: 100%;
    margin-left: 0;
  }

  .noidaIT-expresswayBottomCopy h3 {
    font-size: 22px;
  }
}


/* =========================================================
   RESPONSIVE: SMALL MOBILE
========================================================= */

@media (max-width: 390px) {
  .noidaIT-container {
    width: calc(100% - 26px);
  }

  .noidaIT-eyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaIT-eyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .noidaIT-heroCopy h1 {
    font-size: 33px;
  }

  .noidaIT-highlight {
    padding: 12px 9px;
  }

  .noidaIT-sideCard {
    padding: 22px 18px;
  }

  .noidaIT-sideFloating {
    max-width: calc(100% - 8px);
  }

  .noidaIT-methodPanel {
    flex-direction: column;
    padding: 20px;
  }

  .noidaIT-propertyCard {
    padding: 20px 17px;
  }

  .noidaIT-expresswayFeature {
    flex-direction: column;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaIT-hero *,
  .noidaIT-cluster *,
  .noidaIT-expressway * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NG EXPRESSWAY VALUATION PAGE
   Unique namespace: ngxValuation
   Royal Navy + Gold design system
   Minimum body / supporting text: 15px
========================================================= */

.ngxValuationIntro,
.ngxValuationJaypee,
.ngxValuationDevelopers,
.ngxValuationLandscape,
.ngxValuationOC,
.ngxValuationEvidence,
.ngxValuationFinalCTA {
  --ngx-navy: #092f62;
  --ngx-deep: #061d3d;
  --ngx-dark: #04152d;
  --ngx-gold: #b97800;
  --ngx-gold-mid: #d99a16;
  --ngx-gold-light: #f0b429;
  --ngx-cream: #fff9ec;
  --ngx-white: #ffffff;
  --ngx-text: #26364d;
  --ngx-muted: #596a80;
  --ngx-border: #dce5f0;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

.ngxValuationIntro *,
.ngxValuationIntro *::before,
.ngxValuationIntro *::after,
.ngxValuationJaypee *,
.ngxValuationJaypee *::before,
.ngxValuationJaypee *::after,
.ngxValuationDevelopers *,
.ngxValuationDevelopers *::before,
.ngxValuationDevelopers *::after,
.ngxValuationLandscape *,
.ngxValuationLandscape *::before,
.ngxValuationLandscape *::after,
.ngxValuationOC *,
.ngxValuationOC *::before,
.ngxValuationOC *::after,
.ngxValuationEvidence *,
.ngxValuationEvidence *::before,
.ngxValuationEvidence *::after,
.ngxValuationFinalCTA *,
.ngxValuationFinalCTA *::before,
.ngxValuationFinalCTA *::after {
  box-sizing: border-box;
}

.ngxValuationIntro a,
.ngxValuationJaypee a,
.ngxValuationDevelopers a,
.ngxValuationLandscape a,
.ngxValuationOC a,
.ngxValuationEvidence a,
.ngxValuationFinalCTA a {
  text-decoration: none;
}

.ngxValuationContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW + BUTTONS
========================================================= */

.ngxValuationEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  color: var(--ngx-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.6px;
}

.ngxValuationEyebrowLine {
  display: inline-block;
  width: 33px;
  height: 2px;
  flex: 0 0 33px;
  background: currentColor;
}

.ngxValuationEyebrowGold {
  color: var(--ngx-gold);
}

.ngxValuationButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 54px;
  padding: 14px 21px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background-color 0.22s ease;
}

.ngxValuationButton:hover {
  transform: translateY(-3px);
}

.ngxValuationButtonGold {
  color: var(--ngx-dark) !important;
  border-color: var(--ngx-gold-light);
  background: linear-gradient(
    135deg,
    var(--ngx-gold-light),
    var(--ngx-gold-mid)
  );
  box-shadow: 0 9px 24px rgba(185,120,0,0.2);
}

.ngxValuationButtonGold:hover {
  color: var(--ngx-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(185,120,0,0.28);
}

.ngxValuationButton span {
  font-size: 21px;
  line-height: 1;
}


/* =========================================================
   PAGE INTRO / EDITORIAL HEADER
========================================================= */

.ngxValuationIntro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 34px 0 76px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 90% 5%,
      rgba(217,154,22,0.15),
      transparent 28%
    ),
    linear-gradient(
      130deg,
      #04152d 0%,
      #092f62 57%,
      #061d3d 100%
    );
}

.ngxValuationIntroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, black, transparent 85%);
}

.ngxValuationBreadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 11px;
  margin-bottom: 48px;
  color: #dbe5f1;
  font-size: 15px;
}

.ngxValuationBreadcrumb a {
  color: #f0b429 !important;
  font-size: 15px;
  font-weight: 700;
}

.ngxValuationBreadcrumb a:hover {
  color: #ffffff !important;
}

.ngxValuationBreadcrumb span {
  color: rgba(255,255,255,0.55);
}

.ngxValuationIntroGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(310px, 0.7fr);
  align-items: center;
  gap: clamp(38px, 6vw, 80px);
}

.ngxValuationIntroContent h1 {
  margin: 0 0 25px;
  color: #ffffff;
  font-size: clamp(36px, 4.5vw, 58px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.5px;
  overflow-wrap: anywhere;
}

.ngxValuationIntroContent h1 span {
  display: block;
  margin-top: 13px;
  color: var(--ngx-gold-light);
  font-size: 0.68em;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.5px;
}

.ngxValuationIntroLead {
  margin: 0 0 19px;
  padding-left: 18px;
  border-left: 3px solid var(--ngx-gold-light);
  color: #ffffff;
  font-size: 18px;
  line-height: 1.85;
}

.ngxValuationIntroLead strong,
.ngxValuationIntroText strong {
  color: var(--ngx-gold-light);
  font-weight: 900;
}

.ngxValuationIntroText {
  margin: 0 0 24px;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.9;
}

.ngxValuationIntroTags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 25px;
}

.ngxValuationIntroTags span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid rgba(240,180,41,0.37);
  border-radius: 5px;
  color: #fff6df;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}


/* Intro sidebar */

.ngxValuationIntroAside {
  padding: 28px 25px;
  border: 1px solid rgba(240,180,41,0.5);
  border-radius: 15px;
  color: var(--ngx-text);
  background: linear-gradient(145deg, #ffffff, #fff9ec);
  box-shadow: 0 24px 55px rgba(0,0,0,0.22);
}

.ngxValuationAsideTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 17px;
  border-bottom: 1px solid #e8d8b6;
}

.ngxValuationAsideKicker {
  color: var(--ngx-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.ngxValuationAsideNumber {
  color: #7a8aa0;
  font-size: 15px;
  font-weight: 900;
}

.ngxValuationIntroAside h2 {
  margin: 20px 0 22px;
  color: var(--ngx-deep);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.ngxValuationFocusList {
  display: grid;
  gap: 19px;
  margin: 0 0 25px;
  padding: 0;
  list-style: none;
}

.ngxValuationFocusList li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.ngxValuationCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border-radius: 8px;
  color: #ffffff;
  background: var(--ngx-navy);
  font-size: 15px;
  font-weight: 900;
}

.ngxValuationFocusList li strong,
.ngxValuationFocusList li small {
  display: block;
}

.ngxValuationFocusList li strong {
  margin-bottom: 3px;
  color: var(--ngx-deep);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.ngxValuationFocusList li small {
  color: var(--ngx-muted);
  font-size: 15px;
  line-height: 1.65;
}

.ngxValuationIntroAside > .ngxValuationButton {
  display: flex;
  width: 100%;
}

.ngxValuationAsidePhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  margin-top: 11px;
  border: 1px solid #d8e1ed;
  border-radius: 8px;
  color: var(--ngx-navy) !important;
  font-size: 16px;
  font-weight: 900;
  transition: background 0.2s ease;
}

.ngxValuationAsidePhone:hover {
  background: #eef4fb;
}


/* =========================================================
   SHARED SECTION HEADINGS
========================================================= */

.ngxValuationSectionHeading {
  max-width: 900px;
  margin: 0 0 37px;
}

.ngxValuationSectionHeadingCenter {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.ngxValuationSectionHeadingCenter .ngxValuationEyebrow {
  justify-content: center;
}

.ngxValuationSectionHeading h2 {
  margin: 0 0 18px;
  color: var(--ngx-deep);
  font-size: clamp(31px, 3.5vw, 44px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.8px;
}

.ngxValuationSectionHeading h2 span {
  color: var(--ngx-gold);
}

.ngxValuationSectionHeading > p {
  margin: 0;
  color: var(--ngx-muted);
  font-size: 17px;
  line-height: 1.85;
}

.ngxValuationSectionHeading > p strong {
  color: var(--ngx-navy);
  font-weight: 900;
}


/* =========================================================
   SECTION 1: JAYPEE WISH TOWN
========================================================= */

.ngxValuationJaypee {
  padding: 82px 0;
  color: var(--ngx-text);
  background: #ffffff;
}

.ngxValuationJaypeeLayout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.55fr);
  align-items: start;
  gap: 28px;
}

.ngxValuationJaypeeMain {
  min-width: 0;
  padding: 30px;
  border: 1px solid #e0e7f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 12px 36px rgba(9,47,98,0.055);
}

.ngxValuationLegalNote {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 31px;
  padding: 19px;
  border: 1px solid #ead9b4;
  border-radius: 10px;
  background: #fff9ec;
}

.ngxValuationLegalIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ngx-gold);
  font-size: 20px;
  font-weight: 900;
}

.ngxValuationLegalNote strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ngx-deep);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}

.ngxValuationLegalNote p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationJaypeeMain > h3 {
  margin: 0 0 21px;
  color: var(--ngx-deep);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.ngxValuationJaypeeFactors {
  display: grid;
  gap: 0;
}

.ngxValuationFactor {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 16px;
  padding: 23px 0;
  border-top: 1px solid #e6ecf3;
}

.ngxValuationFactorNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border: 1px solid #e5c780;
  border-radius: 9px;
  color: var(--ngx-gold);
  background: #fff9ec;
  font-size: 15px;
  font-weight: 900;
}

.ngxValuationFactor h4 {
  margin: 0 0 8px;
  color: var(--ngx-navy);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.45;
}

.ngxValuationFactor p {
  margin: 0;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.ngxValuationFactor p strong {
  color: var(--ngx-deep);
  font-weight: 900;
}


/* Jaypee sidebar */

.ngxValuationJaypeeSidebar {
  padding: 27px 24px;
  border: 1px solid #d8e1ed;
  border-top: 4px solid var(--ngx-gold);
  border-radius: 12px;
  background: #f8fbff;
}

.ngxValuationSidebarBadge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 17px;
  padding: 7px 10px;
  border-radius: 5px;
  color: var(--ngx-navy);
  background: #e9f0f9;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
}

.ngxValuationSidebarBadge span {
  color: var(--ngx-gold);
  font-size: 18px;
}

.ngxValuationJaypeeSidebar h3 {
  margin: 0 0 12px;
  color: var(--ngx-deep);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.ngxValuationJaypeeSidebar > p {
  margin: 0 0 18px;
  color: var(--ngx-muted);
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationDocumentList {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ngxValuationDocumentList li {
  position: relative;
  padding-left: 23px;
  color: #35465d;
  font-size: 15px;
  line-height: 1.7;
}

.ngxValuationDocumentList li::before {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--ngx-gold);
  content: "✓";
  font-size: 16px;
  font-weight: 900;
}

.ngxValuationSidebarDivider {
  height: 1px;
  margin: 22px 0;
  background: #dce5f0;
}

.ngxValuationJaypeeSidebar .ngxValuationSidebarFootnote {
  color: #596a80;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationJaypeeSidebar > .ngxValuationButton {
  display: flex;
  width: 100%;
  margin-top: 20px;
}

.ngxValuationSidebarCall {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 58px;
  margin-top: 12px;
  border: 1px solid #d6e0ec;
  border-radius: 8px;
  color: var(--ngx-navy) !important;
  background: #ffffff;
}

.ngxValuationSidebarCall > span:first-child {
  color: var(--ngx-gold);
  font-size: 22px;
}

.ngxValuationSidebarCall small,
.ngxValuationSidebarCall strong {
  display: block;
}

.ngxValuationSidebarCall small {
  color: var(--ngx-muted);
  font-size: 15px;
  line-height: 1.5;
}

.ngxValuationSidebarCall strong {
  color: var(--ngx-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}


/* =========================================================
   SECTION 2: DEVELOPER CARDS
========================================================= */

.ngxValuationDevelopers {
  padding: 82px 0;
  color: var(--ngx-text);
  background:
    radial-gradient(
      circle at 5% 10%,
      rgba(217,154,22,0.06),
      transparent 26%
    ),
    #f8fbff;
}

.ngxValuationDeveloperGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 22px;
}

.ngxValuationDeveloperCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 27px 24px;
  border: 1px solid #dfe7f1;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 9px 28px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.ngxValuationDeveloperCard:hover {
  transform: translateY(-4px);
  border-color: #d8b15d;
  box-shadow: 0 17px 38px rgba(9,47,98,0.09);
}

.ngxValuationDeveloperCardFeatured {
  border-color: #d9bd7c;
  background: linear-gradient(145deg, #ffffff, #fffaf0);
}

.ngxValuationDeveloperTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 22px;
}

.ngxValuationDeveloperIndex {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--ngx-navy);
  font-size: 18px;
  font-weight: 900;
}

.ngxValuationDeveloperCardFeatured .ngxValuationDeveloperIndex {
  color: var(--ngx-deep);
  background: var(--ngx-gold-light);
}

.ngxValuationDeveloperLabel {
  color: var(--ngx-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.55;
  letter-spacing: 0.7px;
  text-align: right;
}

.ngxValuationDeveloperCard h3 {
  margin: 0 0 13px;
  color: var(--ngx-deep);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.35;
}

.ngxValuationDeveloperCard > p {
  margin: 0 0 22px;
  color: var(--ngx-muted);
  font-size: 16px;
  line-height: 1.85;
}

.ngxValuationDeveloperCard > p strong {
  color: var(--ngx-navy);
  font-weight: 900;
}

.ngxValuationDeveloperCallout {
  margin-top: auto;
  padding: 16px;
  border-left: 3px solid var(--ngx-gold);
  border-radius: 0 8px 8px 0;
  background: #f5f8fc;
}

.ngxValuationDeveloperCallout strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ngx-navy);
  font-size: 15px;
  font-weight: 900;
}

.ngxValuationDeveloperCallout span {
  display: block;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationDeveloperNotice {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 28px;
  padding: 19px 21px;
  border: 1px solid #e7d6b0;
  border-radius: 10px;
  background: #fff9ec;
}

.ngxValuationNoticeMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ngx-gold);
  font-size: 17px;
  font-weight: 900;
}

.ngxValuationDeveloperNotice p {
  margin: 0;
  color: #4d5b6e;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationDeveloperNotice p strong {
  color: var(--ngx-deep);
}


/* =========================================================
   SECTION 3: FMV LANDSCAPE
========================================================= */

.ngxValuationLandscape {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 82px 0;
  color: var(--ngx-text);
  background: #ffffff;
}

.ngxValuationLandscapeAccent {
  position: absolute;
  z-index: -1;
  top: -150px;
  right: -150px;
  width: 400px;
  height: 400px;
  border: 1px solid rgba(185,120,0,0.12);
  border-radius: 50%;
  box-shadow:
    0 0 0 30px rgba(185,120,0,0.025),
    0 0 0 65px rgba(185,120,0,0.02);
  pointer-events: none;
}

.ngxValuationLandscapeGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(290px, 0.75fr);
  align-items: stretch;
  gap: 27px;
}

.ngxValuationLandscapeMain {
  padding: 30px;
  border: 1px solid #e0e7f0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 12px 34px rgba(9,47,98,0.055);
}

.ngxValuationLandscapeHeader {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 24px;
  padding-bottom: 23px;
  border-bottom: 1px solid #e3eaf2;
}

.ngxValuationLandscapeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  flex: 0 0 55px;
  border-radius: 12px;
  color: var(--ngx-deep);
  background: var(--ngx-gold-light);
  font-size: 27px;
  font-weight: 900;
}

.ngxValuationLandscapeKicker {
  display: block;
  margin-bottom: 4px;
  color: var(--ngx-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.8px;
}

.ngxValuationLandscapeHeader h3 {
  margin: 0;
  color: var(--ngx-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.ngxValuationBenchmarkList {
  display: grid;
  gap: 0;
}

.ngxValuationBenchmark {
  padding: 19px 0;
  border-bottom: 1px solid #e8edf4;
}

.ngxValuationBenchmark:first-child {
  padding-top: 0;
}

.ngxValuationBenchmark:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.ngxValuationBenchmarkLabel {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 7px;
}

.ngxValuationBenchmarkDot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: var(--ngx-gold);
  box-shadow: 0 0 0 4px rgba(217,154,22,0.13);
}

.ngxValuationBenchmarkLabel strong {
  color: var(--ngx-navy);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}

.ngxValuationBenchmark p {
  margin: 0 0 0 21px;
  color: var(--ngx-muted);
  font-size: 15px;
  line-height: 1.8;
}


/* Evidence sidebar */

.ngxValuationLandscapeSide {
  padding: 29px 25px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.15),
      transparent 36%
    ),
    linear-gradient(145deg, #04152d, #092f62);
  box-shadow: 0 15px 38px rgba(9,47,98,0.13);
}

.ngxValuationLandscapeSideLabel {
  display: inline-block;
  margin-bottom: 15px;
  color: var(--ngx-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 1.1px;
}

.ngxValuationLandscapeSide h3 {
  margin: 0 0 13px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.ngxValuationLandscapeSide > p {
  margin: 0 0 22px;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationEvidenceStat {
  padding: 17px 0;
  border-top: 1px solid rgba(255,255,255,0.16);
}

.ngxValuationEvidenceStat strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ngx-gold-light);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.4;
}

.ngxValuationEvidenceStat span {
  display: block;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.75;
}

.ngxValuationEvidenceWarning {
  margin: 13px 0 21px;
  padding: 13px;
  border: 1px solid rgba(240,180,41,0.35);
  border-radius: 7px;
  color: #fff5d9;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  line-height: 1.75;
}

.ngxValuationLandscapeSide > .ngxValuationButton {
  display: flex;
  width: 100%;
}


/* =========================================================
   SECTION 4: OC STATUS
========================================================= */

.ngxValuationOC {
  padding: 82px 0;
  color: var(--ngx-text);
  background: #f8fbff;
}

.ngxValuationOCGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 22px;
}

.ngxValuationOCItem {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 29px 25px 25px;
  border: 1px solid #dfe7f1;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 9px 26px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.ngxValuationOCItem:hover {
  transform: translateY(-4px);
  border-color: #d8b15d;
  box-shadow: 0 16px 34px rgba(9,47,98,0.09);
}

.ngxValuationOCItemFeatured {
  border-color: #d8bd7f;
  background: linear-gradient(145deg, #ffffff, #fffaf0);
}

.ngxValuationOCNumber {
  position: absolute;
  top: 19px;
  right: 21px;
  color: #c2cddd;
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.ngxValuationOCIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 57px;
  height: 57px;
  margin-bottom: 22px;
  border-radius: 12px;
  color: #ffffff;
  background: var(--ngx-navy);
  font-size: 25px;
  font-weight: 900;
}

.ngxValuationOCItemFeatured .ngxValuationOCIcon {
  color: var(--ngx-deep);
  background: var(--ngx-gold-light);
}

.ngxValuationOCItem h3 {
  margin: 0 0 12px;
  color: var(--ngx-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.ngxValuationOCItem p {
  margin: 0 0 23px;
  color: var(--ngx-muted);
  font-size: 16px;
  line-height: 1.85;
}

.ngxValuationOCBottom {
  display: block;
  margin-top: auto;
  padding-top: 15px;
  border-top: 1px solid #e4eaf2;
  color: var(--ngx-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
}

.ngxValuationOCDisclaimer {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 27px;
  padding: 19px 21px;
  border: 1px solid #e7d6b0;
  border-radius: 10px;
  background: #fff9ec;
}

.ngxValuationOCDisclaimer > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ngx-gold);
  font-size: 18px;
  font-weight: 900;
}

.ngxValuationOCDisclaimer p {
  margin: 0;
  color: #4c5b6f;
  font-size: 15px;
  line-height: 1.8;
}

.ngxValuationOCDisclaimer p strong {
  color: var(--ngx-deep);
}


/* =========================================================
   SECTION 5: IGRS UP EVIDENCE
========================================================= */

.ngxValuationEvidence {
  padding: 82px 0;
  color: var(--ngx-text);
  background: #ffffff;
}

.ngxValuationEvidenceGrid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  align-items: start;
  gap: clamp(35px, 5vw, 70px);
}

.ngxValuationEvidenceContent h2 {
  margin: 0 0 20px;
  color: var(--ngx-deep);
  font-size: clamp(31px, 3.4vw, 43px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.8px;
}

.ngxValuationEvidenceContent h2 span {
  color: var(--ngx-gold);
}

.ngxValuationEvidenceContent > p {
  margin: 0 0 17px;
  color: var(--ngx-muted);
  font-size: 16px;
  line-height: 1.9;
}

.ngxValuationEvidenceContent > p strong {
  color: var(--ngx-navy);
  font-weight: 900;
}

.ngxValuationEvidenceContent > .ngxValuationButton {
  margin-top: 10px;
}

.ngxValuationEvidencePhone {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  margin: 10px 0 0 8px;
  color: var(--ngx-navy) !important;
  font-size: 16px;
  font-weight: 900;
}

.ngxValuationEvidencePhone span {
  color: var(--ngx-gold);
  font-size: 22px;
}


/* Evidence steps */

.ngxValuationEvidenceSteps {
  position: relative;
  display: grid;
  gap: 0;
  padding: 7px 25px;
  border: 1px solid #dfe7f1;
  border-radius: 14px;
  background: #f8fbff;
}

.ngxValuationEvidenceStep {
  position: relative;
  display: grid;
  grid-template-columns: 47px minmax(0, 1fr);
  gap: 16px;
  padding: 22px 0;
}

.ngxValuationEvidenceStep + .ngxValuationEvidenceStep {
  border-top: 1px solid #e0e7f0;
}

.ngxValuationEvidenceStepNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border: 1px solid #e5c780;
  border-radius: 9px;
  color: var(--ngx-gold);
  background: #fff9ec;
  font-size: 15px;
  font-weight: 900;
}

.ngxValuationEvidenceStep h3 {
  margin: 0 0 6px;
  color: var(--ngx-deep);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.45;
}

.ngxValuationEvidenceStep p {
  margin: 0;
  color: var(--ngx-muted);
  font-size: 15px;
  line-height: 1.8;
}


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

.ngxValuationFinalCTA {
  padding: 0 0 82px;
  color: #ffffff;
  background: #ffffff;
}

.ngxValuationFinalCTAInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  padding: 36px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 16px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(217,154,22,0.17),
      transparent 35%
    ),
    linear-gradient(125deg, #04152d, #092f62);
  box-shadow: 0 18px 40px rgba(9,47,98,0.14);
}

.ngxValuationFinalCTAContent {
  max-width: 690px;
}

.ngxValuationFinalEyebrow {
  display: block;
  margin-bottom: 10px;
  color: var(--ngx-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.2px;
}

.ngxValuationFinalCTAContent h2 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 900;
  line-height: 1.25;
}

.ngxValuationFinalCTAContent p {
  margin: 0;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.8;
}

.ngxValuationFinalCTAActions {
  display: flex;
  flex: 0 0 260px;
  flex-direction: column;
  gap: 12px;
}

.ngxValuationFinalCTAActions > .ngxValuationButton {
  width: 100%;
}

.ngxValuationFinalPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 57px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 8px;
  color: #ffffff !important;
  transition: background 0.2s ease;
}

.ngxValuationFinalPhone:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08);
}

.ngxValuationFinalPhone > span:first-child {
  color: var(--ngx-gold-light);
  font-size: 23px;
}

.ngxValuationFinalPhone small,
.ngxValuationFinalPhone strong {
  display: block;
}

.ngxValuationFinalPhone small {
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.5;
}

.ngxValuationFinalPhone strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.ngxValuationFinalEmail {
  display: block;
  color: #fff0c7 !important;
  font-size: 15px;
  font-weight: 800;
  text-align: center;
  overflow-wrap: anywhere;
}

.ngxValuationFinalEmail:hover {
  color: #ffffff !important;
}


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

.ngxValuationIntro a:focus-visible,
.ngxValuationJaypee a:focus-visible,
.ngxValuationDevelopers a:focus-visible,
.ngxValuationLandscape a:focus-visible,
.ngxValuationOC a:focus-visible,
.ngxValuationEvidence a:focus-visible,
.ngxValuationFinalCTA a:focus-visible {
  outline: 3px solid var(--ngx-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE: TABLET
========================================================= */

@media (max-width: 1020px) {
  .ngxValuationIntroGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 35px;
  }

  .ngxValuationIntroAside {
    max-width: 650px;
  }

  .ngxValuationJaypeeLayout,
  .ngxValuationLandscapeGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .ngxValuationJaypeeSidebar {
    max-width: none;
  }

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

  .ngxValuationDeveloperCard:last-child {
    grid-column: 1 / -1;
  }

  .ngxValuationEvidenceGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 35px;
  }

  .ngxValuationFinalCTAInner {
    align-items: flex-start;
    flex-direction: column;
  }

  .ngxValuationFinalCTAActions {
    width: 100%;
    max-width: 420px;
    flex-basis: auto;
  }
}


/* =========================================================
   RESPONSIVE: MOBILE
========================================================= */

@media (max-width: 680px) {
  .ngxValuationContainer {
    width: calc(100% - 32px);
  }

  .ngxValuationIntro,
  .ngxValuationJaypee,
  .ngxValuationDevelopers,
  .ngxValuationLandscape,
  .ngxValuationOC,
  .ngxValuationEvidence {
    padding-top: 54px;
    padding-bottom: 55px;
  }

  .ngxValuationIntro {
    padding-top: 28px;
  }

  .ngxValuationBreadcrumb {
    margin-bottom: 34px;
  }

  .ngxValuationIntroContent h1 {
    font-size: clamp(34px, 8.4vw, 43px);
    letter-spacing: -0.9px;
  }

  .ngxValuationIntroContent h1 span {
    font-size: 0.73em;
  }

  .ngxValuationIntroLead {
    font-size: 17px;
  }

  .ngxValuationIntroAside {
    padding: 23px 19px;
  }

  .ngxValuationSectionHeading h2,
  .ngxValuationEvidenceContent h2 {
    font-size: clamp(29px, 7.4vw, 36px);
    letter-spacing: -0.5px;
  }

  .ngxValuationSectionHeading > p {
    font-size: 16px;
  }

  .ngxValuationJaypeeMain {
    padding: 22px 18px;
  }

  .ngxValuationLegalNote {
    padding: 15px;
  }

  .ngxValuationFactor {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
  }

  .ngxValuationFactorNumber {
    width: 37px;
    height: 37px;
  }

  .ngxValuationFactor h4 {
    font-size: 18px;
  }

  .ngxValuationDeveloperGrid,
  .ngxValuationOCGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .ngxValuationDeveloperCard:last-child {
    grid-column: auto;
  }

  .ngxValuationDeveloperCard {
    padding: 23px 20px;
  }

  .ngxValuationLandscapeMain {
    padding: 23px 18px;
  }

  .ngxValuationLandscapeHeader {
    align-items: flex-start;
  }

  .ngxValuationLandscapeHeader h3 {
    font-size: 21px;
  }

  .ngxValuationLandscapeSide {
    padding: 25px 21px;
  }

  .ngxValuationEvidenceSteps {
    padding: 5px 18px;
  }

  .ngxValuationEvidenceStep {
    grid-template-columns: 39px minmax(0, 1fr);
    gap: 12px;
  }

  .ngxValuationEvidenceStepNumber {
    width: 37px;
    height: 37px;
  }

  .ngxValuationEvidencePhone {
    margin-left: 0;
  }

  .ngxValuationFinalCTA {
    padding-bottom: 55px;
  }

  .ngxValuationFinalCTAInner {
    gap: 24px;
    padding: 25px 20px;
  }

  .ngxValuationFinalCTAContent h2 {
    font-size: 28px;
  }

  .ngxValuationFinalCTAActions {
    max-width: none;
  }

  .ngxValuationFinalCTAActions > a {
    width: 100%;
  }
}


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

@media (max-width: 380px) {
  .ngxValuationContainer {
    width: calc(100% - 26px);
  }

  .ngxValuationEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .ngxValuationEyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .ngxValuationIntroContent h1 {
    font-size: 32px;
  }

  .ngxValuationIntroAside h2,
  .ngxValuationJaypeeSidebar h3 {
    font-size: 23px;
  }

  .ngxValuationDeveloperCard,
  .ngxValuationOCItem {
    padding: 22px 18px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .ngxValuationIntro *,
  .ngxValuationJaypee *,
  .ngxValuationDevelopers *,
  .ngxValuationLandscape *,
  .ngxValuationOC *,
  .ngxValuationEvidence *,
  .ngxValuationFinalCTA * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA INDUSTRIAL VALUATION PAGE
   Unique namespace: noidaIndustrial
   Palette: Royal Navy + Gold + White
   Minimum font size: 15px
========================================================= */

.noidaIndustrialHero,
.noidaIndustrialPhase,
.noidaIndustrialNsez {
  --ni-navy: #092f62;
  --ni-navy-dark: #061d3d;
  --ni-deep: #04152d;
  --ni-gold: #b97800;
  --ni-gold-mid: #d99a16;
  --ni-gold-light: #f0b429;
  --ni-white: #ffffff;
  --ni-cream: #fff9ec;
  --ni-text: #253650;
  --ni-muted: #596a80;
  --ni-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.noidaIndustrialHero *,
.noidaIndustrialHero *::before,
.noidaIndustrialHero *::after,
.noidaIndustrialPhase *,
.noidaIndustrialPhase *::before,
.noidaIndustrialPhase *::after,
.noidaIndustrialNsez *,
.noidaIndustrialNsez *::before,
.noidaIndustrialNsez *::after {
  box-sizing: border-box;
}

.noidaIndustrialHero a,
.noidaIndustrialPhase a,
.noidaIndustrialNsez a {
  text-decoration: none;
}

.noidaIndustrialContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW
========================================================= */

.noidaIndustrialEyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  color: var(--ni-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.7px;
}

.noidaIndustrialEyebrowLine {
  display: inline-block;
  width: 35px;
  height: 2px;
  flex: 0 0 35px;
  background: var(--ni-gold-light);
}

.noidaIndustrialEyebrowLight {
  color: var(--ni-gold);
}

.noidaIndustrialEyebrowLight .noidaIndustrialEyebrowLine {
  background: var(--ni-gold);
}


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

.noidaIndustrialHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 83px 0 76px;
  color: var(--ni-white);
  background:
    radial-gradient(
      circle at 90% 8%,
      rgba(240,180,41,0.16),
      transparent 29%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 58%,
      #061d3d 100%
    );
}

.noidaIndustrialHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.24;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 45px 45px;
  mask-image: linear-gradient(to bottom, black, transparent 90%);
}

.noidaIndustrialHeroInner {
  max-width: 1040px;
  margin-inline: auto;
}

.noidaIndustrialHero h1 {
  max-width: 980px;
  margin: 0 0 24px;
  color: #ffffff;
  font-size: clamp(37px, 5vw, 59px);
  font-weight: 900;
  line-height: 1.13;
  letter-spacing: -1.5px;
  overflow-wrap: anywhere;
}

.noidaIndustrialHero h1 span {
  display: block;
  margin-top: 12px;
  color: var(--ni-gold-light);
  font-size: 0.66em;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.noidaIndustrialHeroLead {
  max-width: 920px;
  margin: 0;
  padding-left: 21px;
  border-left: 3px solid var(--ni-gold-light);
  color: #e8eff9;
  font-size: 18px;
  line-height: 1.9;
}

.noidaIndustrialHeroLead strong {
  color: var(--ni-gold-light);
  font-weight: 800;
}

.noidaIndustrialHeroTags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 29px;
}

.noidaIndustrialHeroTags span {
  display: inline-flex;
  align-items: center;
  min-height: 39px;
  padding: 8px 13px;
  border: 1px solid rgba(240,180,41,0.35);
  border-radius: 6px;
  color: #f5f7fb;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.noidaIndustrialHeroBottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 37px;
  padding: 24px 0;
  border-top: 1px solid rgba(255,255,255,0.17);
  border-bottom: 1px solid rgba(255,255,255,0.17);
}

.noidaIndustrialHeroCredentials {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  max-width: 500px;
}

.noidaIndustrialCredentialMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border-radius: 10px;
  color: var(--ni-deep);
  background: var(--ni-gold-light);
  font-size: 23px;
  font-weight: 900;
}

.noidaIndustrialHeroCredentials > div > strong {
  display: block;
  color: #ffffff;
  font-size: 18px;
  font-weight: 900;
}

.noidaIndustrialHeroCredentials p {
  margin: 5px 0 0;
  color: #dfe8f5;
  font-size: 15px;
  line-height: 1.75;
}

.noidaIndustrialHeroCredentials p strong {
  color: var(--ni-gold-light);
}

.noidaIndustrialHeroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}


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

.noidaIndustrialBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 55px;
  padding: 14px 20px;
  border: 2px solid transparent;
  border-radius: 8px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.noidaIndustrialBtn:hover {
  transform: translateY(-3px);
}

.noidaIndustrialBtnGold {
  color: var(--ni-deep) !important;
  border-color: var(--ni-gold-light);
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  box-shadow: 0 9px 24px rgba(217,154,22,0.2);
}

.noidaIndustrialBtnGold:hover {
  color: var(--ni-deep) !important;
  background: #ffca48;
  box-shadow: 0 13px 28px rgba(217,154,22,0.28);
}

.noidaIndustrialBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.43);
  background: rgba(255,255,255,0.055);
}

.noidaIndustrialBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--ni-gold-light);
  background: rgba(255,255,255,0.11);
}

.noidaIndustrialHeroOffice {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 20px;
  color: #e0e9f5;
}

.noidaIndustrialHeroOffice > span {
  color: var(--ni-gold-light);
  font-size: 20px;
}

.noidaIndustrialHeroOffice p {
  flex: 1 1 440px;
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialHeroOffice p strong {
  color: #ffffff;
}

.noidaIndustrialHeroOffice > a {
  color: var(--ni-gold-light);
  font-size: 15px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.noidaIndustrialHeroOffice > a:hover {
  text-decoration: underline;
}


/* =========================================================
   PHASE I SECTION
========================================================= */

.noidaIndustrialPhase {
  padding: 85px 0 90px;
  color: var(--ni-text);
  background:
    radial-gradient(
      circle at 0% 15%,
      rgba(217,154,22,0.075),
      transparent 25%
    ),
    #f8fbff;
}

.noidaIndustrialSectionHead {
  max-width: 870px;
  margin-bottom: 43px;
}

.noidaIndustrialSectionHead h2 {
  margin: 0 0 18px;
  color: var(--ni-deep);
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.8px;
}

.noidaIndustrialSectionHead h2 span {
  display: block;
  margin-top: 7px;
  color: var(--ni-gold);
  font-size: 0.76em;
  line-height: 1.4;
}

.noidaIndustrialSectionHead > p {
  margin: 0;
  color: var(--ni-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaIndustrialSectionHead > p strong {
  color: var(--ni-navy);
  font-weight: 800;
}

.noidaIndustrialPhaseGrid {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
  gap: 25px;
  align-items: stretch;
}


/* Phase introduction card */

.noidaIndustrialPhaseIntro {
  padding: 31px;
  border: 1px solid #dce5f0;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(9,47,98,0.055);
}

.noidaIndustrialSectionIndex {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 25px;
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.noidaIndustrialSectionIndex span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--ni-navy);
  font-size: 16px;
  letter-spacing: 0;
}

.noidaIndustrialPhaseIntro h3 {
  margin: 0 0 16px;
  color: var(--ni-deep);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaIndustrialPhaseIntro > p {
  margin: 0 0 17px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaIndustrialPhaseIntro > p strong {
  color: var(--ni-navy);
  font-weight: 800;
}

.noidaIndustrialInfoBand {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 26px;
  padding: 17px;
  border: 1px solid #ecd9ab;
  border-radius: 9px;
  background: #fff9ec;
}

.noidaIndustrialInfoIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ni-gold);
  font-size: 16px;
  font-weight: 900;
}

.noidaIndustrialInfoBand p {
  margin: 0;
  color: #4c5360;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialInfoBand p strong {
  color: var(--ni-deep);
}


/* Industrial assessment panel */

.noidaIndustrialFocusPanel {
  overflow: hidden;
  border: 1px solid #d6e0ed;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(9,47,98,0.055);
}

.noidaIndustrialFocusHeader {
  padding: 28px 29px 24px;
  color: #ffffff;
  background: linear-gradient(
    125deg,
    #04152d,
    #092f62
  );
}

.noidaIndustrialFocusKicker {
  display: block;
  margin-bottom: 8px;
  color: var(--ni-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
}

.noidaIndustrialFocusHeader h3 {
  margin: 0 0 9px;
  color: #ffffff;
  font-size: 27px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaIndustrialFocusHeader p {
  margin: 0;
  color: #dce7f5;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialFocusList {
  padding: 7px 26px 0;
}

.noidaIndustrialFocusItem {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 20px 0;
  border-bottom: 1px solid #e6edf5;
}

.noidaIndustrialFocusItem:last-child {
  border-bottom: 0;
}

.noidaIndustrialFocusNo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 1px solid #e6cf95;
  border-radius: 8px;
  color: var(--ni-gold);
  background: #fff9ec;
  font-size: 15px;
  font-weight: 900;
}

.noidaIndustrialFocusItem h4 {
  margin: 0 0 5px;
  color: var(--ni-navy);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaIndustrialFocusItem p {
  margin: 0;
  color: #58677a;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialInlineCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 26px 25px;
  padding: 14px 16px;
  border: 1px solid #d9e2ee;
  border-radius: 8px;
  color: var(--ni-navy) !important;
  background: #f7faff;
  font-size: 15px;
  font-weight: 900;
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaIndustrialInlineCta span {
  color: var(--ni-gold);
  font-size: 22px;
}

.noidaIndustrialInlineCta:hover {
  color: var(--ni-gold) !important;
  border-color: var(--ni-gold-mid);
  background: #fff9ec;
}


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

.noidaIndustrialSarfaesi {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.7fr);
  gap: 30px;
  margin-top: 34px;
  padding: 36px;
  border: 1px solid #d4dfed;
  border-radius: 17px;
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(9,47,98,0.075);
}

.noidaIndustrialSarfaesiLabel {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.5px;
  line-height: 1.6;
}

.noidaIndustrialSarfaesiContent h3 {
  margin: 0 0 17px;
  color: var(--ni-deep);
  font-size: clamp(27px, 3vw, 36px);
  font-weight: 900;
  line-height: 1.25;
}

.noidaIndustrialSarfaesiContent h3 span {
  color: var(--ni-gold);
}

.noidaIndustrialSarfaesiContent > p {
  margin: 0 0 16px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaIndustrialSarfaesiContent > p strong {
  color: var(--ni-navy);
  font-weight: 800;
}

.noidaIndustrialSarfaesiNote {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 22px;
  padding: 17px;
  border-left: 3px solid var(--ni-gold);
  border-radius: 0 8px 8px 0;
  background: #fff9ec;
}

.noidaIndustrialSarfaesiNote strong {
  color: var(--ni-deep);
  font-size: 15px;
  font-weight: 900;
}

.noidaIndustrialSarfaesiNote span {
  color: #536176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialSarfaesiAside {
  align-self: stretch;
  padding: 27px 24px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 13px;
  color: #ffffff;
  background: linear-gradient(
    145deg,
    #04152d,
    #092f62
  );
}

.noidaIndustrialSarfaesiBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 62px;
  margin-bottom: 18px;
  border: 1px solid var(--ni-gold-light);
  border-radius: 13px;
  color: var(--ni-deep);
  background: var(--ni-gold-light);
  font-size: 19px;
  font-weight: 900;
}

.noidaIndustrialSarfaesiAside h4 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: 23px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaIndustrialSarfaesiAside ul {
  display: grid;
  gap: 11px;
  margin: 0 0 23px;
  padding: 0;
  list-style: none;
}

.noidaIndustrialSarfaesiAside li {
  position: relative;
  padding-left: 23px;
  color: #e4ecf7;
  font-size: 15px;
  line-height: 1.7;
}

.noidaIndustrialSarfaesiAside li::before {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--ni-gold-light);
  content: "✓";
  font-weight: 900;
}

.noidaIndustrialFullBtn {
  display: flex;
  width: 100%;
}

.noidaIndustrialAsidePhone {
  display: block;
  margin-top: 15px;
  color: var(--ni-gold-light) !important;
  font-size: 16px;
  font-weight: 900;
  text-align: center;
}

.noidaIndustrialAsidePhone:hover {
  text-decoration: underline;
}


/* =========================================================
   NSEZ SECTION
========================================================= */

.noidaIndustrialNsez {
  padding: 87px 0 90px;
  color: var(--ni-text);
  background:
    radial-gradient(
      circle at 100% 4%,
      rgba(217,154,22,0.09),
      transparent 25%
    ),
    #ffffff;
}

.noidaIndustrialNsezHeader {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.65fr);
  align-items: center;
  gap: 45px;
  margin-bottom: 40px;
}

.noidaIndustrialNsezHeading h2 {
  margin: 0 0 20px;
  color: var(--ni-deep);
  font-size: clamp(34px, 4vw, 48px);
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: -0.8px;
}

.noidaIndustrialNsezHeading h2 span {
  display: block;
  margin-top: 7px;
  color: var(--ni-gold);
  font-size: 0.78em;
  line-height: 1.4;
}

.noidaIndustrialNsezHeading > p {
  margin: 0 0 15px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaIndustrialNsezHeading > p strong {
  color: var(--ni-navy);
  font-weight: 800;
}

.noidaIndustrialNsezFact {
  padding: 28px;
  border: 1px solid #e5cf96;
  border-radius: 14px;
  background: linear-gradient(
    145deg,
    #fffdf8,
    #fff5dd
  );
  box-shadow: 0 12px 30px rgba(9,47,98,0.06);
}

.noidaIndustrialNsezFactLabel {
  display: block;
  margin-bottom: 12px;
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaIndustrialNsezFact > strong {
  display: block;
  color: var(--ni-deep);
  font-size: 27px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaIndustrialNsezFactRule {
  display: block;
  width: 52px;
  height: 3px;
  margin: 16px 0;
  background: var(--ni-gold);
}

.noidaIndustrialNsezFact > p {
  margin: 0 0 18px;
  color: #59677a;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialNsezFact > a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--ni-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaIndustrialNsezFact > a:hover {
  color: var(--ni-gold) !important;
}


/* =========================================================
   NSEZ CARDS
========================================================= */

.noidaIndustrialNsezGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 23px;
  align-items: stretch;
}

.noidaIndustrialNsezCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 29px;
  border: 1px solid #dce5f0;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(9,47,98,0.055);
  transition:
    transform 0.23s ease,
    box-shadow 0.23s ease,
    border-color 0.23s ease;
}

.noidaIndustrialNsezCard:hover {
  transform: translateY(-4px);
  border-color: #d9bb75;
  box-shadow: 0 19px 38px rgba(9,47,98,0.09);
}

.noidaIndustrialNsezCardFeatured {
  border-color: #e6d2a1;
  background: linear-gradient(
    145deg,
    #ffffff 0%,
    #fffdf8 100%
  );
}

.noidaIndustrialNsezCardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.noidaIndustrialNsezNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--ni-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaIndustrialNsezIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid #e9d7ac;
  border-radius: 50%;
  color: var(--ni-gold);
  background: #fff9ec;
  font-size: 25px;
}

.noidaIndustrialNsezCardTag {
  display: block;
  margin-bottom: 11px;
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaIndustrialNsezCard h3 {
  margin: 0 0 15px;
  color: var(--ni-deep);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaIndustrialNsezCard > p {
  margin: 0 0 19px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaIndustrialNsezCard > p strong {
  color: var(--ni-navy);
  font-weight: 800;
}

.noidaIndustrialNsezDetail {
  margin-top: 2px;
  padding: 18px;
  border: 1px solid #e3eaf3;
  border-radius: 9px;
  background: #f7faff;
}

.noidaIndustrialNsezDetail > strong {
  display: block;
  margin-bottom: 12px;
  color: var(--ni-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaIndustrialNsezDetail ul {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.noidaIndustrialNsezDetail li {
  position: relative;
  padding-left: 22px;
  color: #536176;
  font-size: 15px;
  line-height: 1.75;
}

.noidaIndustrialNsezDetail li::before {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--ni-gold);
  content: "✓";
  font-weight: 900;
}

.noidaIndustrialNsezWarning,
.noidaIndustrialNsezNote {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 19px;
  padding: 17px;
  border-left: 3px solid var(--ni-gold);
  border-radius: 0 8px 8px 0;
  background: #fff9ec;
}

.noidaIndustrialNsezWarning strong,
.noidaIndustrialNsezNote strong {
  color: var(--ni-deep);
  font-size: 15px;
  font-weight: 900;
}

.noidaIndustrialNsezWarning {
  color: #536176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaIndustrialNsezNote span {
  color: #536176;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   DOCUMENT CHECKLIST
========================================================= */

.noidaIndustrialDocuments {
  margin-top: 42px;
  padding: 36px;
  border: 1px solid rgba(240,180,41,0.36);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.15),
      transparent 32%
    ),
    linear-gradient(
      125deg,
      #04152d,
      #092f62
    );
}

.noidaIndustrialDocumentsHead {
  max-width: 790px;
  margin-bottom: 25px;
}

.noidaIndustrialDocumentsHead h3 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 900;
  line-height: 1.3;
}

.noidaIndustrialDocumentsHead > p {
  margin: 0;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.85;
}

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

.noidaIndustrialDocumentItem {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  min-width: 0;
  padding: 17px;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 9px;
  background: rgba(255,255,255,0.055);
}

.noidaIndustrialDocumentItem > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border-radius: 50%;
  color: var(--ni-deep);
  background: var(--ni-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaIndustrialDocumentItem p {
  margin: 0;
  color: #f1f5fb;
  font-size: 15px;
  line-height: 1.75;
}


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

.noidaIndustrialFinalCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 31px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,0.2);
}

.noidaIndustrialFinalCtaContent {
  max-width: 700px;
}

.noidaIndustrialFinalCtaContent > span {
  display: block;
  margin-bottom: 8px;
  color: var(--ni-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.3px;
}

.noidaIndustrialFinalCtaContent h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 900;
  line-height: 1.3;
}

.noidaIndustrialFinalCtaContent p {
  margin: 0;
  color: #dce7f5;
  font-size: 16px;
  line-height: 1.8;
}

.noidaIndustrialFinalCtaActions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 auto;
}

.noidaIndustrialFinalCtaActions .noidaIndustrialBtn {
  width: 100%;
  white-space: normal;
}


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

.noidaIndustrialHero a:focus-visible,
.noidaIndustrialPhase a:focus-visible,
.noidaIndustrialNsez a:focus-visible {
  outline: 3px solid var(--ni-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1020px) {
  .noidaIndustrialHeroBottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaIndustrialHeroActions {
    width: 100%;
  }

  .noidaIndustrialPhaseGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIndustrialSarfaesi {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIndustrialNsezHeader {
    grid-template-columns: minmax(0, 1fr);
    gap: 25px;
  }

  .noidaIndustrialNsezFact {
    max-width: 550px;
  }

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

  .noidaIndustrialFinalCta {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaIndustrialFinalCtaActions {
    flex-direction: row;
    flex-wrap: wrap;
  }
}


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

@media (max-width: 650px) {
  .noidaIndustrialContainer {
    width: calc(100% - 32px);
  }

  .noidaIndustrialHero {
    padding: 52px 0 49px;
  }

  .noidaIndustrialHero h1 {
    font-size: clamp(34px, 9vw, 44px);
    letter-spacing: -0.8px;
  }

  .noidaIndustrialHero h1 span {
    font-size: 0.73em;
  }

  .noidaIndustrialHeroLead {
    padding-left: 15px;
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaIndustrialHeroTags {
    gap: 8px;
    margin-top: 23px;
  }

  .noidaIndustrialHeroTags span {
    max-width: 100%;
    font-size: 15px;
  }

  .noidaIndustrialHeroBottom {
    gap: 23px;
    margin-top: 28px;
    padding: 22px 0;
  }

  .noidaIndustrialHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIndustrialBtn {
    width: 100%;
    min-height: 56px;
  }

  .noidaIndustrialHeroOffice {
    flex-direction: column;
  }

  .noidaIndustrialHeroOffice p {
    flex-basis: auto;
  }

  .noidaIndustrialPhase,
  .noidaIndustrialNsez {
    padding: 58px 0 62px;
  }

  .noidaIndustrialSectionHead {
    margin-bottom: 29px;
  }

  .noidaIndustrialSectionHead h2,
  .noidaIndustrialNsezHeading h2 {
    font-size: clamp(30px, 8vw, 39px);
    letter-spacing: -0.5px;
  }

  .noidaIndustrialSectionHead > p,
  .noidaIndustrialNsezHeading > p {
    font-size: 16px;
  }

  .noidaIndustrialPhaseIntro,
  .noidaIndustrialNsezCard {
    padding: 23px 20px;
  }

  .noidaIndustrialPhaseIntro h3 {
    font-size: 25px;
  }

  .noidaIndustrialFocusHeader {
    padding: 23px 20px;
  }

  .noidaIndustrialFocusList {
    padding-inline: 19px;
  }

  .noidaIndustrialInlineCta {
    margin-inline: 19px;
  }

  .noidaIndustrialSarfaesi {
    gap: 22px;
    margin-top: 23px;
    padding: 22px 18px;
  }

  .noidaIndustrialSarfaesiContent h3 {
    font-size: 29px;
  }

  .noidaIndustrialSarfaesiAside {
    padding: 23px 19px;
  }

  .noidaIndustrialNsezGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 17px;
  }

  .noidaIndustrialNsezFact {
    padding: 23px;
  }

  .noidaIndustrialDocuments {
    margin-top: 27px;
    padding: 25px 18px;
  }

  .noidaIndustrialDocumentGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaIndustrialFinalCta {
    gap: 21px;
    margin-top: 24px;
    padding-top: 24px;
  }

  .noidaIndustrialFinalCtaActions {
    width: 100%;
    flex-direction: column;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaIndustrialHero *,
  .noidaIndustrialPhase *,
  .noidaIndustrialNsez * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA UP CIRCLE RATE PAGE
   Unique namespace: noidaRate
   Royal Navy + Gold visual identity
   Minimum text size: 15px
========================================================= */

.noidaRateIntro,
.noidaRateStructure,
.noidaRateSection50C,
.noidaRateRecords {
  --nr-navy: #092f62;
  --nr-deep: #061d3d;
  --nr-dark: #04152d;
  --nr-gold: #b97800;
  --nr-gold-bright: #d99a16;
  --nr-gold-light: #f0b429;
  --nr-white: #ffffff;
  --nr-text: #253650;
  --nr-muted: #56677d;
  --nr-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.noidaRateIntro *,
.noidaRateIntro *::before,
.noidaRateIntro *::after,
.noidaRateStructure *,
.noidaRateStructure *::before,
.noidaRateStructure *::after,
.noidaRateSection50C *,
.noidaRateSection50C *::before,
.noidaRateSection50C *::after,
.noidaRateRecords *,
.noidaRateRecords *::before,
.noidaRateRecords *::after {
  box-sizing: border-box;
}

.noidaRateIntro a,
.noidaRateStructure a,
.noidaRateSection50C a,
.noidaRateRecords a {
  text-decoration: none;
}

.noidaRateContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW AND BUTTONS
========================================================= */

.noidaRateEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.noidaRateEyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--nr-gold-bright);
}

.noidaRateEyebrowCentered {
  justify-content: center;
}

.noidaRateBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 56px;
  padding: 14px 21px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.noidaRateBtn:hover {
  transform: translateY(-3px);
}

.noidaRateBtnGold {
  color: var(--nr-dark) !important;
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  border-color: var(--nr-gold-bright);
  box-shadow: 0 8px 22px rgba(185,120,0,0.22);
}

.noidaRateBtnGold:hover {
  color: var(--nr-dark) !important;
  background: #ffca48;
  box-shadow: 0 12px 27px rgba(185,120,0,0.3);
}

.noidaRateBtnArrow {
  font-size: 22px;
  line-height: 1;
}

.noidaRateBtnOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.045);
  border-color: rgba(255,255,255,0.43);
}

.noidaRateBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nr-gold-light);
  background: rgba(255,255,255,0.1);
}

.noidaRateIntro a:focus-visible,
.noidaRateStructure a:focus-visible,
.noidaRateSection50C a:focus-visible,
.noidaRateRecords a:focus-visible {
  outline: 3px solid var(--nr-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   SECTION 1: INTRODUCTION
========================================================= */

.noidaRateIntro {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 76px 0 80px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 92% 8%,
      rgba(217,154,22,0.16),
      transparent 31%
    ),
    linear-gradient(
      130deg,
      #04152d 0%,
      #092f62 60%,
      #061d3d 100%
    );
}

.noidaRateIntro::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.17;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 45px 45px;
  mask-image: linear-gradient(to bottom, #000, transparent 92%);
}

.noidaRateIntroGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(310px, 0.8fr);
  align-items: center;
  gap: clamp(32px, 5vw, 68px);
}

.noidaRateIntroContent h1 {
  margin: 0 0 23px;
  color: #ffffff;
  font-size: clamp(35px, 4vw, 52px);
  font-weight: 900;
  line-height: 1.17;
  letter-spacing: -1.2px;
  overflow-wrap: anywhere;
}

.noidaRateIntroContent h1 span {
  color: var(--nr-gold-light);
}

.noidaRateIntroLead {
  margin: 0 0 17px;
  padding-left: 17px;
  border-left: 3px solid var(--nr-gold-light);
  color: #f5f7fc;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.85;
}

.noidaRateIntroText {
  margin: 0;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.9;
}

.noidaRateIntroLead strong,
.noidaRateIntroText strong {
  color: var(--nr-gold-light);
  font-weight: 900;
}

.noidaRateIntroHighlights {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin-top: 27px;
}

.noidaRateIntroHighlight {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 10px;
  background: rgba(255,255,255,0.045);
}

.noidaRateHighlightIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 8px;
  color: var(--nr-gold-light);
  background: rgba(217,154,22,0.08);
  font-size: 15px;
  font-weight: 900;
}

.noidaRateIntroHighlight strong,
.noidaRateIntroHighlight span:not(.noidaRateHighlightIcon) {
  display: block;
}

.noidaRateIntroHighlight strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaRateIntroHighlight div span {
  margin-top: 3px;
  color: #d9e4f2;
  font-size: 15px;
  line-height: 1.6;
}

.noidaRateIntroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 27px;
}

.noidaRatePhoneIcon {
  font-size: 20px;
}


/* =========================================================
   SECTION 1: COMPARISON PANEL
========================================================= */

.noidaRateIntroPanel {
  position: relative;
  padding: 29px;
  border: 1px solid rgba(240,180,41,0.46);
  border-radius: 16px;
  color: var(--nr-text);
  background: linear-gradient(
    150deg,
    #ffffff 0%,
    #fff9ed 100%
  );
  box-shadow: 0 25px 65px rgba(0,0,0,0.2);
}

.noidaRatePanelTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.noidaRatePanelLabel {
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaRatePanelSymbol {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  color: var(--nr-gold-light);
  background: var(--nr-navy);
  font-size: 26px;
  font-weight: 900;
}

.noidaRateIntroPanel h2 {
  margin: 0 0 13px;
  color: var(--nr-deep);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

.noidaRateIntroPanel > p {
  margin: 0;
  color: #53647a;
  font-size: 16px;
  line-height: 1.85;
}

.noidaRatePanelComparison {
  display: grid;
  gap: 13px;
  margin-top: 23px;
}

.noidaRateComparisonItem {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px;
  border: 1px solid #e0e7f1;
  border-radius: 9px;
  background: #ffffff;
}

.noidaRateComparisonDot {
  width: 11px;
  height: 11px;
  flex: 0 0 11px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--nr-navy);
  box-shadow: 0 0 0 4px #e9eff8;
}

.noidaRateComparisonDotGold {
  background: var(--nr-gold-bright);
  box-shadow: 0 0 0 4px #fff1ce;
}

.noidaRateComparisonItem strong,
.noidaRateComparisonItem div span {
  display: block;
}

.noidaRateComparisonItem strong {
  color: var(--nr-deep);
  font-size: 16px;
  font-weight: 900;
}

.noidaRateComparisonItem div span {
  margin-top: 3px;
  color: var(--nr-muted);
  font-size: 15px;
  line-height: 1.65;
}

.noidaRatePanelNote {
  margin-top: 20px;
  padding: 15px 16px;
  border-left: 3px solid var(--nr-gold);
  border-radius: 0 8px 8px 0;
  background: #fff2d5;
}

.noidaRatePanelNote strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nr-deep);
  font-size: 15px;
  font-weight: 900;
}

.noidaRatePanelNote p {
  margin: 0;
  color: #4b5360;
  font-size: 15px;
  line-height: 1.75;
}

.noidaRateOfficialLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 21px;
  padding-top: 17px;
  border-top: 1px solid #e3e8ef;
  color: var(--nr-navy) !important;
  font-size: 15px;
  font-weight: 900;
}

.noidaRateOfficialLink span {
  color: var(--nr-gold);
  font-size: 20px;
}


/* =========================================================
   SECTION 2: CIRCLE RATE STRUCTURE
========================================================= */

.noidaRateStructure {
  padding: 80px 0;
  color: var(--nr-text);
  background:
    radial-gradient(
      circle at 4% 5%,
      rgba(217,154,22,0.065),
      transparent 26%
    ),
    #f8fbff;
}

.noidaRateSectionHeading {
  max-width: 830px;
  margin: 0 auto 42px;
  text-align: center;
}

.noidaRateSectionHeading h2 {
  margin: 0 0 17px;
  color: var(--nr-deep);
  font-size: clamp(31px, 3.5vw, 44px);
  font-weight: 900;
  line-height: 1.23;
  letter-spacing: -0.8px;
}

.noidaRateSectionHeading h2 span {
  color: var(--nr-gold);
}

.noidaRateSectionHeading > p {
  margin: 0 auto;
  color: var(--nr-muted);
  font-size: 17px;
  line-height: 1.85;
}

.noidaRateSectionHeading > p strong {
  color: var(--nr-navy);
  font-weight: 900;
}

.noidaRateStructureGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.noidaRateStructureCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 27px 25px;
  border: 1px solid #dce6f2;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.noidaRateStructureCard:hover {
  transform: translateY(-5px);
  border-color: #d7b15c;
  box-shadow: 0 17px 35px rgba(9,47,98,0.09);
}

.noidaRateStructureCardHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 23px;
}

.noidaRateStep {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaRateStructureIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  border: 1px solid #ead7ad;
  border-radius: 50%;
  color: var(--nr-gold);
  background: #fff9eb;
  font-size: 25px;
  font-weight: 800;
}

.noidaRateStructureCard h3 {
  margin: 0 0 13px;
  color: var(--nr-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaRateStructureCard > p {
  margin: 0 0 22px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaRateStructureCard > p strong {
  color: var(--nr-navy);
  font-weight: 900;
}

.noidaRateCardFooter {
  display: grid;
  gap: 5px;
  margin-top: auto;
  padding: 15px;
  border-left: 3px solid var(--nr-gold);
  border-radius: 0 8px 8px 0;
  background: #f4f7fc;
}

.noidaRateMiniLabel {
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.9px;
}

.noidaRateCardFooter strong {
  color: var(--nr-navy);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.65;
}

.noidaRateSectionNotice {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 27px;
  padding: 20px 22px;
  border: 1px solid #e5d4ad;
  border-radius: 11px;
  background: #fff9ed;
}

.noidaRateNoticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  flex: 0 0 33px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaRateSectionNotice p {
  margin: 0;
  color: #4d5a6d;
  font-size: 15px;
  line-height: 1.85;
}

.noidaRateSectionNotice p strong {
  color: var(--nr-deep);
  font-weight: 900;
}


/* =========================================================
   SECTION 3: SECTION 50C
========================================================= */

.noidaRateSection50C {
  padding: 82px 0;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 12%,
      rgba(217,154,22,0.14),
      transparent 31%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 65%,
      #061d3d 100%
    );
}

.noidaRateSection50CGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(310px, 0.9fr);
  align-items: start;
  gap: clamp(32px, 5vw, 65px);
}

.noidaRateSection50CContent h2 {
  margin: 0 0 22px;
  color: #ffffff;
  font-size: clamp(31px, 3.4vw, 43px);
  font-weight: 900;
  line-height: 1.24;
  letter-spacing: -0.8px;
}

.noidaRateSection50CContent h2 span {
  color: var(--nr-gold-light);
}

.noidaRateSection50CContent > p {
  margin: 0 0 17px;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.9;
}

.noidaRateSection50CContent > p strong {
  color: var(--nr-gold-light);
  font-weight: 900;
}

.noidaRateSection50CChecklist {
  margin: 25px 0 27px;
  padding: 22px;
  border: 1px solid rgba(255,255,255,0.17);
  border-radius: 12px;
  background: rgba(255,255,255,0.055);
}

.noidaRateSection50CChecklist h3 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: 19px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaRateSection50CChecklist ul {
  display: grid;
  gap: 13px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.noidaRateSection50CChecklist li {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.8;
}

.noidaRateSection50CChecklist li > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  margin-top: 2px;
  border-radius: 50%;
  color: var(--nr-dark);
  background: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaRateSection50CChecklist li strong {
  color: #ffffff;
  font-weight: 900;
}


/* Section 50C review panel */

.noidaRateSection50CPanel {
  padding: 27px;
  border: 1px solid rgba(240,180,41,0.48);
  border-radius: 15px;
  color: var(--nr-text);
  background: linear-gradient(
    145deg,
    #ffffff,
    #fff9ec
  );
  box-shadow: 0 22px 48px rgba(0,0,0,0.19);
}

.noidaRate50CPanelTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.noidaRate50CPanelTop span:last-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  border-radius: 50%;
  color: var(--nr-gold-light);
  background: var(--nr-navy);
  font-size: 20px;
}

.noidaRateSection50CPanel h3 {
  margin: 0 0 12px;
  color: var(--nr-deep);
  font-size: 26px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaRateSection50CPanel > p {
  margin: 0 0 22px;
  color: #53647a;
  font-size: 16px;
  line-height: 1.8;
}

.noidaRate50CStep {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 16px 0;
  border-top: 1px solid #e1e7f0;
}

.noidaRate50CStep > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 8px;
  color: var(--nr-deep);
  background: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaRate50CStep strong {
  display: block;
  margin-bottom: 4px;
  color: var(--nr-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaRate50CStep p {
  margin: 0;
  color: #59677a;
  font-size: 15px;
  line-height: 1.7;
}

.noidaRate50CPhone {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-top: 15px;
  padding: 16px;
  border: 1px solid #e4d3ac;
  border-radius: 10px;
  background: #fff5dc;
  color: var(--nr-deep) !important;
}

.noidaRate50CPhoneIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 50%;
  color: var(--nr-gold-light);
  background: var(--nr-navy);
  font-size: 21px;
}

.noidaRate50CPhone small,
.noidaRate50CPhone strong {
  display: block;
}

.noidaRate50CPhone small {
  color: #586477;
  font-size: 15px;
  line-height: 1.5;
}

.noidaRate50CPhone strong {
  color: var(--nr-navy);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.5;
}


/* =========================================================
   SECTION 4: IGRS UP AND HISTORICAL RECORDS
========================================================= */

.noidaRateRecords {
  padding: 82px 0 88px;
  color: var(--nr-text);
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.07),
      transparent 25%
    ),
    #f8fbff;
}

.noidaRateRecordsHeader {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 36px;
}

.noidaRateRecordsHeading {
  max-width: 780px;
}

.noidaRateRecordsHeading h2 {
  margin: 0 0 16px;
  color: var(--nr-deep);
  font-size: clamp(31px, 3.5vw, 44px);
  font-weight: 900;
  line-height: 1.24;
  letter-spacing: -0.8px;
}

.noidaRateRecordsHeading h2 span {
  color: var(--nr-gold);
}

.noidaRateRecordsHeading > p {
  margin: 0;
  color: var(--nr-muted);
  font-size: 16px;
  line-height: 1.85;
}

.noidaRateRecordsBadge {
  display: flex;
  align-items: center;
  gap: 13px;
  flex: 0 0 290px;
  padding: 17px;
  border: 1px solid #e6d4aa;
  border-radius: 11px;
  background: #fff9ec;
}

.noidaRateRecordsBadgeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  border-radius: 10px;
  color: var(--nr-gold-light);
  background: var(--nr-navy);
  font-size: 25px;
  font-weight: 900;
}

.noidaRateRecordsBadge strong,
.noidaRateRecordsBadge div span {
  display: block;
}

.noidaRateRecordsBadge strong {
  color: var(--nr-deep);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaRateRecordsBadge div span {
  margin-top: 4px;
  color: #59677a;
  font-size: 15px;
  line-height: 1.6;
}

.noidaRateRecordsGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.noidaRateRecordCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 26px 24px;
  border: 1px solid #dfe7f1;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(9,47,98,0.04);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.noidaRateRecordCard:hover {
  transform: translateY(-4px);
  border-color: #d9b76c;
  box-shadow: 0 16px 34px rgba(9,47,98,0.085);
}

.noidaRateRecordCardNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  margin-bottom: 21px;
  border-radius: 10px;
  color: var(--nr-deep);
  background: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaRateRecordCard h3 {
  margin: 0 0 13px;
  color: var(--nr-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaRateRecordCard > p {
  margin: 0 0 15px;
  color: #536176;
  font-size: 15px;
  line-height: 1.9;
}

.noidaRateRecordCard > p strong {
  color: var(--nr-navy);
  font-weight: 900;
}

.noidaRateRecordLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid #e5ebf3;
  color: var(--nr-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaRateRecordLink span {
  color: var(--nr-gold);
  font-size: 20px;
}


/* =========================================================
   SECTION 4: FINAL CTA
========================================================= */

.noidaRateRecordsCTA {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 34px;
  padding: 30px 32px;
  border: 1px solid rgba(240,180,41,0.43);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 5%,
      rgba(217,154,22,0.15),
      transparent 33%
    ),
    linear-gradient(
      120deg,
      #04152d,
      #092f62
    );
  box-shadow: 0 17px 37px rgba(9,47,98,0.12);
}

.noidaRateRecordsCTAContent {
  max-width: 700px;
}

.noidaRateRecordsCTALabel {
  display: block;
  margin-bottom: 8px;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
  line-height: 1.6;
}

.noidaRateRecordsCTAContent h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: clamp(23px, 2.5vw, 30px);
  font-weight: 900;
  line-height: 1.35;
}

.noidaRateRecordsCTAContent p {
  margin: 0;
  color: #e1e9f4;
  font-size: 16px;
  line-height: 1.8;
}

.noidaRateRecordsCTAActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  flex: 0 0 auto;
}

.noidaRateRecordsCTAActions .noidaRateBtn {
  justify-content: center;
}

.noidaRateRecordsPhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 49px;
  padding: 11px 16px;
  border: 1px solid rgba(255,255,255,0.35);
  border-radius: 9px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 900;
  transition: background 0.2s ease;
}

.noidaRateRecordsPhone:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.09);
}

.noidaRateRecordsPhone:first-letter {
  color: var(--nr-gold-light);
}


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

@media (max-width: 1000px) {
  .noidaRateIntroGrid,
  .noidaRateSection50CGrid {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.85fr);
    gap: 28px;
  }

  .noidaRateIntroPanel,
  .noidaRateSection50CPanel {
    padding: 23px;
  }

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

  .noidaRateRecordsHeader {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaRateRecordsBadge {
    flex-basis: auto;
    width: min(100%, 430px);
  }
}


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

@media (max-width: 720px) {
  .noidaRateContainer {
    width: calc(100% - 32px);
  }

  .noidaRateIntro,
  .noidaRateStructure,
  .noidaRateSection50C,
  .noidaRateRecords {
    padding-top: 55px;
    padding-bottom: 58px;
  }

  .noidaRateIntroGrid,
  .noidaRateSection50CGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }

  .noidaRateIntroContent h1 {
    font-size: clamp(32px, 8.4vw, 43px);
    letter-spacing: -0.7px;
  }

  .noidaRateIntroLead {
    font-size: 17px;
  }

  .noidaRateIntroText,
  .noidaRateSection50CContent > p {
    font-size: 16px;
  }

  .noidaRateIntroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaRateIntroActions .noidaRateBtn {
    width: 100%;
  }

  .noidaRateIntroPanel {
    padding: 24px 21px;
  }

  .noidaRateIntroPanel h2 {
    font-size: 26px;
  }

  .noidaRateSectionHeading {
    margin-bottom: 29px;
  }

  .noidaRateSectionHeading h2,
  .noidaRateRecordsHeading h2,
  .noidaRateSection50CContent h2 {
    font-size: clamp(29px, 7.4vw, 37px);
    letter-spacing: -0.5px;
  }

  .noidaRateSectionHeading > p {
    font-size: 16px;
  }

  .noidaRateStructureGrid,
  .noidaRateRecordsGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .noidaRateStructureCard,
  .noidaRateRecordCard {
    padding: 23px 21px;
  }

  .noidaRateSectionNotice {
    padding: 17px;
  }

  .noidaRateSection50CPanel {
    padding: 24px 21px;
  }

  .noidaRateRecordsBadge {
    width: 100%;
  }

  .noidaRateRecordsCTA {
    align-items: stretch;
    flex-direction: column;
    gap: 22px;
    padding: 24px 20px;
  }

  .noidaRateRecordsCTAActions {
    width: 100%;
  }

  .noidaRateRecordsCTAActions .noidaRateBtn,
  .noidaRateRecordsPhone {
    width: 100%;
  }
}


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

@media (max-width: 380px) {
  .noidaRateContainer {
    width: calc(100% - 26px);
  }

  .noidaRateEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaRateEyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .noidaRateIntroContent h1 {
    font-size: 31px;
  }

  .noidaRateIntroPanel,
  .noidaRateSection50CPanel {
    padding: 21px 17px;
  }

  .noidaRateStructureCard,
  .noidaRateRecordCard {
    padding: 21px 17px;
  }

  .noidaRateBtn {
    padding-inline: 15px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaRateIntro *,
  .noidaRateStructure *,
  .noidaRateSection50C *,
  .noidaRateRecords * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   UP RERA NOIDA PAGE
   Unique namespace: nrUp
   Royal navy + gold design
   Minimum font size: 15px
========================================================= */

.nrUpHero,
.nrUpJurisdiction,
.nrUpRemedies,
.nrUpCertificate {
  --nr-navy: #092f62;
  --nr-deep: #061d3d;
  --nr-dark: #04152d;
  --nr-gold: #b97800;
  --nr-gold-bright: #d99a16;
  --nr-gold-light: #f0b429;
  --nr-cream: #fff9ec;
  --nr-white: #ffffff;
  --nr-text: #293a52;
  --nr-muted: #5b6b80;
  --nr-border: #dce5f0;

  position: relative;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.8;
  box-sizing: border-box;
}

.nrUpHero *,
.nrUpHero *::before,
.nrUpHero *::after,
.nrUpJurisdiction *,
.nrUpJurisdiction *::before,
.nrUpJurisdiction *::after,
.nrUpRemedies *,
.nrUpRemedies *::before,
.nrUpRemedies *::after,
.nrUpCertificate *,
.nrUpCertificate *::before,
.nrUpCertificate *::after {
  box-sizing: border-box;
}

.nrUpHero a,
.nrUpJurisdiction a,
.nrUpRemedies a,
.nrUpCertificate a {
  text-decoration: none;
}

.nrUpContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SECTION 1: HERO
========================================================= */

.nrUpHero {
  isolation: isolate;
  overflow: hidden;
  padding: 58px 0 68px;
  color: var(--nr-white);
  background:
    radial-gradient(
      ellipse at 88% 5%,
      rgba(217,154,22,0.16),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      #04152d 0%,
      #092f62 57%,
      #061d3d 100%
    );
}

.nrUpHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.2;
  background-image:
    linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, #000, transparent 90%);
}

.nrUpHero::after {
  position: absolute;
  z-index: -1;
  right: -100px;
  bottom: -210px;
  width: 440px;
  height: 440px;
  border: 1px solid rgba(240,180,41,0.16);
  border-radius: 50%;
  content: "";
  pointer-events: none;
  box-shadow:
    0 0 0 35px rgba(240,180,41,0.025),
    0 0 0 75px rgba(240,180,41,0.02);
}

.nrUpHeroInner {
  max-width: 1000px;
  margin-inline: auto;
}

.nrUpBreadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 11px;
  margin-bottom: 35px;
  color: #e0e9f5;
  font-size: 15px;
  line-height: 1.6;
}

.nrUpBreadcrumb a {
  color: #ffffff;
  font-weight: 700;
  transition: color 0.2s ease;
}

.nrUpBreadcrumb a:hover {
  color: var(--nr-gold-light);
}

.nrUpBreadcrumb > span:nth-child(2) {
  color: var(--nr-gold-light);
}

.nrUpEyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.7px;
  line-height: 1.7;
}

.nrUpEyebrowLine {
  display: inline-block;
  width: 36px;
  height: 2px;
  flex: 0 0 36px;
  background: var(--nr-gold-light);
}

.nrUpHero h1 {
  max-width: 950px;
  margin: 0 0 24px;
  color: #ffffff;
  font-size: clamp(37px, 5vw, 59px);
  font-weight: 900;
  line-height: 1.13;
  letter-spacing: -1.5px;
  overflow-wrap: anywhere;
}

.nrUpHero h1 span {
  display: block;
  margin-top: 14px;
  color: var(--nr-gold-light);
  font-size: 0.65em;
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.nrUpHeroLead {
  max-width: 920px;
  margin: 0;
  padding-left: 21px;
  border-left: 3px solid var(--nr-gold-light);
  color: #eaf0f8;
  font-size: 18px;
  line-height: 1.9;
}

.nrUpHeroLead strong {
  color: var(--nr-gold-light);
  font-weight: 850;
}


/* Hero highlights */

.nrUpHeroHighlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 35px;
}

.nrUpHeroHighlight {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
  padding: 20px 17px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 11px;
  background: rgba(255,255,255,0.055);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    background 0.22s ease;
}

.nrUpHeroHighlight:hover {
  transform: translateY(-3px);
  border-color: rgba(240,180,41,0.55);
  background: rgba(255,255,255,0.085);
}

.nrUpHighlightNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 9px;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.nrUpHeroHighlight > span:last-child {
  min-width: 0;
}

.nrUpHeroHighlight strong,
.nrUpHeroHighlight small {
  display: block;
}

.nrUpHeroHighlight strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.55;
}

.nrUpHeroHighlight small {
  margin-top: 5px;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.65;
}


/* Hero CTA buttons */

.nrUpHeroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 31px;
}

.nrUpBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 57px;
  padding: 14px 21px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}

.nrUpBtn:hover {
  transform: translateY(-3px);
}

.nrUpBtnGold {
  color: #061d3d !important;
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  border-color: #f0b429;
  box-shadow: 0 8px 22px rgba(217,154,22,0.2);
}

.nrUpBtnGold:hover {
  color: #04152d !important;
  background: #ffca48;
  box-shadow: 0 12px 28px rgba(217,154,22,0.3);
}

.nrUpBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 19px;
  line-height: 1;
}

.nrUpBtnOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.045);
  border-color: rgba(255,255,255,0.38);
}

.nrUpBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nr-gold-light);
  background: rgba(255,255,255,0.1);
}

.nrUpPhoneIcon {
  color: var(--nr-gold-light);
  font-size: 20px;
}

.nrUpHeroNote {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  max-width: 900px;
  margin: 24px 0 0;
  color: #d7e2f0;
  font-size: 15px;
  line-height: 1.8;
}

.nrUpNoteMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  margin-top: 2px;
  border: 1px solid rgba(240,180,41,0.6);
  border-radius: 50%;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}


/* =========================================================
   SHARED SECTION INTRO
========================================================= */

.nrUpSectionIntro {
  max-width: 830px;
  margin: 0 auto 42px;
  text-align: center;
}

.nrUpSectionKicker {
  display: block;
  margin-bottom: 13px;
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.55px;
  line-height: 1.65;
}

.nrUpSectionIntro h2 {
  margin: 0 0 17px;
  color: var(--nr-deep);
  font-size: clamp(31px, 3.5vw, 45px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.8px;
}

.nrUpSectionIntro h2 span {
  color: var(--nr-gold);
}

.nrUpSectionIntro > p {
  margin: 0;
  color: var(--nr-muted);
  font-size: 17px;
  line-height: 1.85;
}


/* =========================================================
   SECTION 2: JURISDICTION
========================================================= */

.nrUpJurisdiction {
  padding: 83px 0 88px;
  color: var(--nr-text);
  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(217,154,22,0.065),
      transparent 27%
    ),
    #f8fbff;
}

.nrUpJurisdictionLayout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr);
  align-items: start;
  gap: 25px;
}

.nrUpJurisdictionMain {
  display: grid;
  gap: 22px;
}

.nrUpContentCard {
  min-width: 0;
  padding: 29px;
  border: 1px solid #dfe7f1;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 9px 28px rgba(9,47,98,0.055);
}

.nrUpCardHeading {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 21px;
}

.nrUpCardIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  flex: 0 0 47px;
  border-radius: 11px;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 16px;
  font-weight: 900;
}

.nrUpCardIconGold {
  color: var(--nr-deep);
  background: var(--nr-gold-light);
}

.nrUpCardHeading > div {
  min-width: 0;
}

.nrUpCardKicker {
  display: block;
  margin-bottom: 5px;
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.55;
}

.nrUpCardHeading h3 {
  margin: 0;
  color: var(--nr-deep);
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.nrUpContentCard > p {
  margin: 0 0 17px;
  color: #4d5d72;
  font-size: 16px;
  line-height: 1.9;
}

.nrUpContentCard > p:last-of-type {
  margin-bottom: 0;
}

.nrUpContentCard > p strong {
  color: var(--nr-navy);
  font-weight: 850;
}


/* Highlighted valuation principle */

.nrUpInlineCallout {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 23px;
  padding: 18px;
  border: 1px solid #ead8ae;
  border-radius: 10px;
  background: #fff9ec;
}

.nrUpCalloutSymbol {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 17px;
  font-weight: 900;
}

.nrUpInlineCallout p {
  margin: 0;
  color: #46566d;
  font-size: 15px;
  line-height: 1.8;
}

.nrUpInlineCallout p strong {
  color: var(--nr-navy);
}


/* Jaypee card */

.nrUpJaypeeCard {
  border-top: 3px solid var(--nr-gold);
}

.nrUpJaypeeTags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 21px;
}

.nrUpJaypeeTags span {
  display: inline-flex;
  align-items: center;
  min-height: 35px;
  padding: 7px 11px;
  border: 1px solid #dbe4f0;
  border-radius: 6px;
  color: var(--nr-navy);
  background: #f5f8fc;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.5;
}

.nrUpTextLink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 21px;
  color: var(--nr-navy) !important;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}

.nrUpTextLink span {
  color: var(--nr-gold);
  font-size: 22px;
  transition: transform 0.2s ease;
}

.nrUpTextLink:hover {
  color: var(--nr-gold) !important;
}

.nrUpTextLink:hover span {
  transform: translateX(5px);
}


/* =========================================================
   SECTION 2: DOCUMENT CHECKLIST PANEL
========================================================= */

.nrUpJurisdictionAside {
  min-width: 0;
}

.nrUpAsidePanel {
  position: sticky;
  top: 25px;
  overflow: hidden;
  padding: 28px 25px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.17),
      transparent 37%
    ),
    linear-gradient(
      145deg,
      #061d3d,
      #092f62
    );
  box-shadow: 0 17px 36px rgba(9,47,98,0.14);
}

.nrUpAsideEyebrow {
  display: block;
  margin-bottom: 12px;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
  line-height: 1.65;
}

.nrUpAsidePanel h3 {
  margin: 0 0 13px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.nrUpAsidePanel > p {
  margin: 0 0 19px;
  color: #e0e9f5;
  font-size: 15px;
  line-height: 1.8;
}

.nrUpChecklist {
  display: grid;
  gap: 15px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.nrUpChecklist li {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  color: #f4f7fb;
  font-size: 15px;
  line-height: 1.75;
}

.nrUpChecklist li > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  margin-top: 2px;
  border-radius: 50%;
  color: var(--nr-deep);
  background: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.nrUpAsideDivider {
  height: 1px;
  margin: 24px 0 18px;
  background: rgba(255,255,255,0.18);
}

.nrUpAsidePanel .nrUpAsideSmall {
  color: #d6e1f0;
  font-size: 15px;
  line-height: 1.8;
}

.nrUpAsideBtn {
  display: flex;
  width: 100%;
  margin-top: 21px;
}

.nrUpAsidePhone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  margin-top: 12px;
  border: 1px solid rgba(255,255,255,0.27);
  border-radius: 8px;
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 850;
  transition: background 0.2s ease;
}

.nrUpAsidePhone > span {
  color: var(--nr-gold-light);
  font-size: 20px;
}

.nrUpAsidePhone:hover {
  background: rgba(255,255,255,0.09);
}


/* =========================================================
   SECTION 3: REMEDIES AND VALUATION SUPPORT
========================================================= */

.nrUpRemedies {
  padding: 82px 0 84px;
  color: var(--nr-text);
  background: #ffffff;
}

.nrUpRemediesIntro {
  max-width: 860px;
}

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

.nrUpRemedyCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px;
  border: 1px solid #e0e7f0;
  border-radius: 13px;
  background: linear-gradient(
    145deg,
    #ffffff,
    #f8fbff
  );
  box-shadow: 0 8px 24px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.nrUpRemedyCard:hover {
  transform: translateY(-4px);
  border-color: #d7b45f;
  box-shadow: 0 15px 34px rgba(9,47,98,0.09);
}

.nrUpRemedyTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.nrUpRemedyNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 41px;
  height: 41px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 15px;
  font-weight: 900;
}

.nrUpRemedyIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  border: 1px solid #e9d7ac;
  border-radius: 50%;
  color: var(--nr-gold);
  background: #fff9ec;
  font-size: 25px;
  font-weight: 800;
}

.nrUpRemedyCard h3 {
  margin: 0 0 13px;
  color: var(--nr-deep);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.35;
}

.nrUpRemedyCard > p {
  margin: 0 0 22px;
  color: #536277;
  font-size: 16px;
  line-height: 1.85;
}

.nrUpRemedyCard > p strong {
  color: var(--nr-navy);
  font-weight: 850;
}

.nrUpRemedyFooter {
  display: grid;
  gap: 5px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid #e1e8f1;
}

.nrUpRemedyFooter span {
  color: var(--nr-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.5px;
}

.nrUpRemedyFooter strong {
  color: var(--nr-navy);
  font-size: 15px;
  font-weight: 850;
  line-height: 1.65;
}


/* Evidence banner */

.nrUpEvidenceBanner {
  display: flex;
  align-items: flex-start;
  gap: 17px;
  margin-top: 27px;
  padding: 24px;
  border: 1px solid #e7d5ad;
  border-radius: 12px;
  background: #fff9ec;
}

.nrUpEvidenceIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 19px;
  font-weight: 900;
}

.nrUpEvidenceBanner h3 {
  margin: 0 0 7px;
  color: var(--nr-deep);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.45;
}

.nrUpEvidenceBanner p {
  margin: 0;
  color: #4d5d72;
  font-size: 15px;
  line-height: 1.85;
}


/* =========================================================
   SECTION 4: VALUATION CERTIFICATE + CTA
========================================================= */

.nrUpCertificate {
  padding: 80px 0;
  color: var(--nr-text);
  background:
    radial-gradient(
      circle at 12% 90%,
      rgba(217,154,22,0.065),
      transparent 27%
    ),
    #f5f8fc;
}

.nrUpCertificateGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  align-items: center;
  gap: 50px;
}

.nrUpCertificateContent h2 {
  margin: 0 0 20px;
  color: var(--nr-deep);
  font-size: clamp(31px, 3.5vw, 44px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.7px;
}

.nrUpCertificateContent h2 span {
  color: var(--nr-gold);
}

.nrUpCertificateContent > p {
  margin: 0 0 20px;
  color: #536277;
  font-size: 16px;
  line-height: 1.85;
}

.nrUpCertificateList {
  display: grid;
  gap: 15px;
  margin: 25px 0;
  padding: 0;
  list-style: none;
}

.nrUpCertificateList li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: #46566c;
  font-size: 16px;
  line-height: 1.75;
}

.nrUpCertificateList li > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  margin-top: 2px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nr-navy);
  font-size: 15px;
  font-weight: 900;
}

.nrUpCertificateList li strong {
  color: var(--nr-navy);
  font-weight: 850;
}

.nrUpCertificateContent .nrUpCertificateDisclaimer {
  margin: 23px 0 0;
  padding: 17px 19px;
  border-left: 3px solid var(--nr-gold);
  border-radius: 0 8px 8px 0;
  color: #4b5c72;
  background: #ffffff;
  font-size: 15px;
  line-height: 1.85;
}


/* Certificate CTA panel */

.nrUpCertificateAction {
  position: relative;
  overflow: hidden;
  padding: 34px 29px 29px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.19),
      transparent 36%
    ),
    linear-gradient(
      145deg,
      #04152d,
      #092f62
    );
  box-shadow: 0 22px 48px rgba(9,47,98,0.15);
}

.nrUpActionOrnament {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 22px;
  border: 1px solid rgba(240,180,41,0.75);
  border-radius: 50%;
  color: var(--nr-gold-light);
  background: rgba(255,255,255,0.04);
  font-size: 17px;
  font-weight: 900;
  letter-spacing: 1px;
}

.nrUpActionEyebrow {
  display: block;
  margin-bottom: 12px;
  color: var(--nr-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.2px;
  line-height: 1.65;
}

.nrUpCertificateAction h3 {
  margin: 0 0 15px;
  color: #ffffff;
  font-size: 27px;
  font-weight: 900;
  line-height: 1.35;
}

.nrUpCertificateAction > p {
  margin: 0 0 23px;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.85;
}

.nrUpActionMainBtn,
.nrUpBtnWhite {
  display: flex;
  width: 100%;
  margin-top: 12px;
}

.nrUpBtnWhite {
  color: var(--nr-deep) !important;
  background: #ffffff;
  border-color: #ffffff;
}

.nrUpBtnWhite:hover {
  color: var(--nr-navy) !important;
  background: #fff9ec;
  border-color: var(--nr-gold-light);
}

.nrUpActionEmail {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  margin-top: 12px;
  color: #f3f6fb !important;
  font-size: 15px;
  font-weight: 750;
  overflow-wrap: anywhere;
  transition: color 0.2s ease;
}

.nrUpActionEmail > span {
  color: var(--nr-gold-light);
  font-size: 18px;
}

.nrUpActionEmail:hover {
  color: var(--nr-gold-light) !important;
}

.nrUpActionTrustLine {
  margin-top: 20px;
  padding-top: 17px;
  border-top: 1px solid rgba(255,255,255,0.19);
  color: #d9e3f0;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
}


/* =========================================================
   ACCESSIBILITY: KEYBOARD FOCUS
========================================================= */

.nrUpHero a:focus-visible,
.nrUpJurisdiction a:focus-visible,
.nrUpRemedies a:focus-visible,
.nrUpCertificate a:focus-visible {
  outline: 3px solid var(--nr-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE: TABLET
========================================================= */

@media (max-width: 1000px) {
  .nrUpHeroHighlights {
    grid-template-columns: minmax(0, 1fr);
  }

  .nrUpHeroHighlight {
    padding: 16px;
  }

  .nrUpJurisdictionLayout {
    grid-template-columns: minmax(0, 1fr);
  }

  .nrUpJurisdictionAside {
    order: -1;
  }

  .nrUpAsidePanel {
    position: static;
  }

  .nrUpCertificateGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }

  .nrUpCertificateAction {
    max-width: 650px;
  }
}


/* =========================================================
   RESPONSIVE: MOBILE
========================================================= */

@media (max-width: 650px) {
  .nrUpContainer {
    width: calc(100% - 32px);
  }

  .nrUpHero {
    padding: 39px 0 49px;
  }

  .nrUpBreadcrumb {
    margin-bottom: 28px;
  }

  .nrUpEyebrow {
    align-items: flex-start;
    gap: 9px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .nrUpEyebrowLine {
    width: 24px;
    flex-basis: 24px;
    margin-top: 10px;
  }

  .nrUpHero h1 {
    font-size: clamp(33px, 8.3vw, 43px);
    letter-spacing: -0.8px;
  }

  .nrUpHero h1 span {
    font-size: 0.72em;
  }

  .nrUpHeroLead {
    padding-left: 15px;
    font-size: 16px;
    line-height: 1.85;
  }

  .nrUpHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .nrUpBtn {
    width: 100%;
    min-height: 57px;
  }

  .nrUpHeroNote {
    font-size: 15px;
  }

  .nrUpJurisdiction,
  .nrUpRemedies,
  .nrUpCertificate {
    padding: 58px 0;
  }

  .nrUpSectionIntro {
    margin-bottom: 30px;
  }

  .nrUpSectionIntro h2,
  .nrUpCertificateContent h2 {
    font-size: clamp(29px, 7.5vw, 37px);
    letter-spacing: -0.5px;
  }

  .nrUpSectionIntro > p {
    font-size: 16px;
  }

  .nrUpContentCard {
    padding: 22px 19px;
  }

  .nrUpCardHeading {
    gap: 12px;
  }

  .nrUpCardIcon {
    width: 41px;
    height: 41px;
    flex-basis: 41px;
  }

  .nrUpCardHeading h3 {
    font-size: 22px;
  }

  .nrUpContentCard > p {
    font-size: 16px;
  }

  .nrUpInlineCallout {
    padding: 15px;
  }

  .nrUpAsidePanel {
    padding: 24px 20px;
  }

  .nrUpRemedyGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .nrUpRemedyCard {
    padding: 22px 20px;
  }

  .nrUpRemedyCard h3 {
    font-size: 23px;
  }

  .nrUpEvidenceBanner {
    gap: 12px;
    padding: 19px 16px;
  }

  .nrUpEvidenceIcon {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
  }

  .nrUpCertificateAction {
    padding: 27px 21px 23px;
  }

  .nrUpCertificateAction h3 {
    font-size: 25px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .nrUpHero *,
  .nrUpJurisdiction *,
  .nrUpRemedies *,
  .nrUpCertificate * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA BLUE LINE PAGE
   Unique CSS namespace: noidaBlue
   Royal navy + gold visual system
   Minimum font size: 15px
========================================================= */

.noidaBlueHero,
.noidaBlueZones,
.noidaBlueInterchange {
  --nb-navy: #092f62;
  --nb-deep: #061d3d;
  --nb-dark: #04152d;
  --nb-gold: #b97800;
  --nb-gold-mid: #d99a16;
  --nb-gold-light: #f0b429;
  --nb-white: #ffffff;
  --nb-text: #26374e;
  --nb-muted: #586980;
  --nb-border: #dce5f0;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
  box-sizing: border-box;
}

.noidaBlueHero *,
.noidaBlueHero *::before,
.noidaBlueHero *::after,
.noidaBlueZones *,
.noidaBlueZones *::before,
.noidaBlueZones *::after,
.noidaBlueInterchange *,
.noidaBlueInterchange *::before,
.noidaBlueInterchange *::after {
  box-sizing: border-box;
}

.noidaBlueHero a,
.noidaBlueZones a,
.noidaBlueInterchange a {
  text-decoration: none;
}

.noidaBlueContainer {
  width: min(1220px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW
========================================================= */

.noidaBlueEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 20px;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.7px;
  line-height: 1.6;
}

.noidaBlueEyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--nb-gold-light);
}

.noidaBlueEyebrowDark {
  color: var(--nb-gold);
}

.noidaBlueEyebrowDark .noidaBlueEyebrowLine {
  background: var(--nb-gold);
}


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

.noidaBlueHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 35px 0 27px;
  color: var(--nb-white);
  background:
    radial-gradient(
      circle at 83% 17%,
      rgba(217,154,22,0.16),
      transparent 28%
    ),
    linear-gradient(
      128deg,
      var(--nb-dark) 0%,
      var(--nb-navy) 57%,
      var(--nb-deep) 100%
    );
}

.noidaBlueHero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.15;
  background-image:
    linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, black, transparent 90%);
}

.noidaBlueHeroOrb {
  position: absolute;
  z-index: -1;
  width: 270px;
  height: 270px;
  border-radius: 50%;
  filter: blur(75px);
  pointer-events: none;
}

.noidaBlueHeroOrbOne {
  top: 13%;
  right: -100px;
  background: rgba(240,180,41,0.15);
}

.noidaBlueHeroOrbTwo {
  bottom: -130px;
  left: -100px;
  background: rgba(48,105,171,0.22);
}


/* Breadcrumb */

.noidaBlueBreadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 37px;
  color: #d8e4f3;
  font-size: 15px;
  line-height: 1.6;
}

.noidaBlueBreadcrumb a {
  color: #f2c75f;
  transition: color 0.2s ease;
}

.noidaBlueBreadcrumb a:hover {
  color: #ffffff;
}

.noidaBlueBreadcrumb > span:last-child {
  color: #ffffff;
}


/* Hero layout */

.noidaBlueHeroGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr);
  align-items: center;
  gap: clamp(38px, 5.2vw, 72px);
}

.noidaBlueHeroContent {
  min-width: 0;
}

.noidaBlueHeroContent h1 {
  margin: 0 0 23px;
  color: #ffffff;
  font-size: clamp(37px, 4.4vw, 57px);
  font-weight: 900;
  line-height: 1.13;
  letter-spacing: -1.6px;
  overflow-wrap: anywhere;
}

.noidaBlueHeroContent h1 span {
  display: block;
  margin-top: 13px;
  color: var(--nb-gold-light);
  font-size: 0.68em;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.5px;
}

.noidaBlueHeroIntro {
  margin: 0 0 18px;
  color: #e6edf7;
  font-size: 16px;
  line-height: 1.9;
}

.noidaBlueHeroIntro strong {
  color: var(--nb-gold-light);
  font-weight: 800;
}


/* Hero topic pills */

.noidaBlueHeroPills {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 24px 0 27px;
}

.noidaBlueHeroPills span {
  display: inline-flex;
  align-items: center;
  min-height: 37px;
  padding: 7px 12px;
  border: 1px solid rgba(240,180,41,0.34);
  border-radius: 6px;
  color: #fff5db;
  background: rgba(255,255,255,0.045);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}


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

.noidaBlueHeroActions,
.noidaBlueInterchangeActions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 27px;
}

.noidaBlueBtn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 66px;
  padding: 12px 17px;
  border: 2px solid transparent;
  border-radius: 10px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.45;
  text-align: left;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease;
}

.noidaBlueBtn:hover {
  transform: translateY(-3px);
}

.noidaBlueBtnGold {
  color: var(--nb-dark) !important;
  border-color: var(--nb-gold-light);
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  box-shadow: 0 9px 24px rgba(217,154,22,0.2);
}

.noidaBlueBtnGold:hover {
  color: var(--nb-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 29px rgba(217,154,22,0.3);
}

.noidaBlueBtnOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.34);
  background: rgba(255,255,255,0.055);
}

.noidaBlueBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--nb-gold-light);
  background: rgba(255,255,255,0.12);
}

.noidaBlueBtnText {
  display: block;
}

.noidaBlueBtnText strong,
.noidaBlueBtnText small {
  display: block;
}

.noidaBlueBtnText strong {
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaBlueBtnText small {
  margin-top: 3px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}

.noidaBlueBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 8px;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 20px;
}

.noidaBluePhoneIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
  color: var(--nb-gold-light);
  background: rgba(217,154,22,0.14);
  font-size: 21px;
}


/* Hero contact links */

.noidaBlueHeroContact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 13px;
  margin-top: 20px;
}

.noidaBlueHeroContact a {
  color: #f6e3b0;
  font-size: 15px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.noidaBlueHeroContact a:hover {
  color: #ffffff;
}

.noidaBlueHeroContact > span {
  width: 1px;
  height: 17px;
  background: rgba(255,255,255,0.32);
}


/* Hero bottom signature */

.noidaBlueHeroFoot {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 38px;
  padding-top: 19px;
  border-top: 1px solid rgba(255,255,255,0.16);
}

.noidaBlueHeroFootLine {
  width: 35px;
  height: 2px;
  flex: 0 0 35px;
  background: var(--nb-gold-light);
}

.noidaBlueHeroFoot p {
  margin: 0;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.7;
}

.noidaBlueHeroFoot strong {
  color: var(--nb-gold-light);
}


/* =========================================================
   HERO: METRO ROUTE PANEL
========================================================= */

.noidaBlueHeroPanel {
  min-width: 0;
  padding: 22px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 17px;
  background: linear-gradient(
    145deg,
    rgba(255,255,255,0.105),
    rgba(255,255,255,0.035)
  );
  box-shadow:
    0 25px 60px rgba(0,0,0,0.2),
    inset 0 1px 0 rgba(255,255,255,0.1);
  backdrop-filter: blur(12px);
}

.noidaBluePanelTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 17px;
  border-bottom: 1px solid rgba(255,255,255,0.15);
}

.noidaBluePanelLabel {
  color: #f6e3b0;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaBluePanelBadge {
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaBlueMetroGraphic {
  padding: 23px 4px 16px;
}

.noidaBlueMetroGraphicHeading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 24px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaBlueMetroDot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: var(--nb-gold-light);
  box-shadow: 0 0 0 5px rgba(240,180,41,0.12);
}

.noidaBlueMetroRoute {
  position: relative;
  padding-left: 8px;
}

.noidaBlueMetroRoute::before {
  position: absolute;
  top: 9px;
  bottom: 18px;
  left: 14px;
  width: 3px;
  content: "";
  border-radius: 5px;
  background: linear-gradient(
    to bottom,
    #f0b429,
    #d99a16 65%,
    rgba(240,180,41,0.32)
  );
}

.noidaBlueRouteStop {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 17px;
  min-height: 75px;
}

.noidaBlueRouteNode {
  position: relative;
  z-index: 1;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  margin-top: 4px;
  border: 3px solid var(--nb-gold-light);
  border-radius: 50%;
  background: var(--nb-deep);
  box-shadow: 0 0 0 4px rgba(240,180,41,0.1);
}

.noidaBlueRouteStop strong,
.noidaBlueRouteStop small {
  display: block;
}

.noidaBlueRouteStop strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaBlueRouteStop small {
  margin-top: 3px;
  color: #d4dfed;
  font-size: 15px;
  line-height: 1.6;
}

.noidaBlueRouteStopLast {
  min-height: auto;
}

.noidaBluePanelBottom {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 17px;
  border: 1px solid rgba(240,180,41,0.3);
  border-radius: 10px;
  background: rgba(4,21,45,0.38);
}

.noidaBluePanelBottomIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border-radius: 9px;
  color: var(--nb-dark);
  background: var(--nb-gold-light);
  font-size: 22px;
}

.noidaBluePanelBottom strong {
  display: block;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaBluePanelBottom p {
  margin: 4px 0 0;
  color: #dbe5f1;
  font-size: 15px;
  line-height: 1.65;
}


/* =========================================================
   SECTION 1: STATION INFLUENCE ZONES
========================================================= */

.noidaBlueZones {
  padding: 82px 0 85px;
  color: var(--nb-text);
  background:
    radial-gradient(
      circle at 5% 8%,
      rgba(217,154,22,0.075),
      transparent 26%
    ),
    #f8fbff;
}

.noidaBlueSectionHeader {
  max-width: 850px;
  margin: 0 auto 41px;
  text-align: center;
}

.noidaBlueSectionHeader .noidaBlueEyebrow {
  justify-content: center;
}

.noidaBlueSectionHeader h2 {
  margin: 0 0 17px;
  color: var(--nb-deep);
  font-size: clamp(32px, 3.7vw, 46px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaBlueSectionHeader h2 span {
  display: block;
  margin-top: 7px;
  color: var(--nb-gold);
}

.noidaBlueSectionHeader > p {
  max-width: 790px;
  margin: 0 auto;
  color: var(--nb-muted);
  font-size: 17px;
  line-height: 1.85;
}

.noidaBlueSectionHeader > p strong {
  color: var(--nb-navy);
  font-weight: 900;
}


/* Zone cards */

.noidaBlueZoneGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  align-items: stretch;
}

.noidaBlueZoneCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 23px 23px;
  border: 1px solid #e0e8f2;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(9,47,98,0.045);
  transition:
    transform 0.23s ease,
    border-color 0.23s ease,
    box-shadow 0.23s ease;
}

.noidaBlueZoneCard:hover {
  transform: translateY(-5px);
  border-color: #d7b25f;
  box-shadow: 0 17px 36px rgba(9,47,98,0.105);
}

.noidaBlueZoneTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 21px;
}

.noidaBlueZoneIndex {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaBlueZoneIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  border: 1px solid #e8d7b2;
  border-radius: 50%;
  color: var(--nb-gold);
  background: #fff9ed;
  font-size: 25px;
  font-weight: 800;
}

.noidaBlueZoneCategory {
  display: block;
  margin-bottom: 10px;
  color: var(--nb-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.7px;
  line-height: 1.6;
}

.noidaBlueZoneCard h3 {
  margin: 0 0 12px;
  color: var(--nb-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.3px;
}

.noidaBlueZoneCard > p {
  margin: 0 0 20px;
  color: #53637a;
  font-size: 16px;
  line-height: 1.85;
}

.noidaBlueZoneCard > p strong {
  color: var(--nb-navy);
  font-weight: 900;
}

.noidaBlueZoneFactors {
  margin-top: auto;
  padding: 15px;
  border-left: 3px solid var(--nb-gold);
  border-radius: 0 8px 8px 0;
  background: #f5f8fc;
}

.noidaBlueZoneFactors strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nb-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaBlueZoneFactors span {
  display: block;
  color: #526176;
  font-size: 15px;
  line-height: 1.75;
}


/* Featured station cards */

.noidaBlueZoneCardFeatured {
  border-color: #d7c18f;
  background: linear-gradient(
    145deg,
    #ffffff,
    #fffaf0
  );
}

.noidaBlueZoneCardFeatured .noidaBlueZoneIndex,
.noidaBlueZoneCardGold .noidaBlueZoneIndex {
  color: var(--nb-dark);
  background: var(--nb-gold-light);
}

.noidaBlueZoneCardGold {
  border-color: #d7c18f;
  background: linear-gradient(
    145deg,
    #ffffff,
    #fffaf0
  );
}


/* Insight notice */

.noidaBlueInsight {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 30px;
  padding: 22px 24px;
  border: 1px solid #e8d5a7;
  border-radius: 12px;
  background: #fffaf0;
}

.noidaBlueInsightIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nb-navy);
  font-size: 19px;
  font-weight: 900;
}

.noidaBlueInsight strong {
  display: block;
  margin-bottom: 5px;
  color: var(--nb-deep);
  font-size: 17px;
  font-weight: 900;
}

.noidaBlueInsight p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   SECTION 1: CTA STRIP
========================================================= */

.noidaBlueSectionCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 36px;
  padding: 30px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.16),
      transparent 32%
    ),
    linear-gradient(
      120deg,
      var(--nb-dark),
      var(--nb-navy)
    );
  box-shadow: 0 15px 35px rgba(9,47,98,0.12);
}

.noidaBlueSectionCtaText {
  max-width: 690px;
}

.noidaBlueSectionCtaText > span {
  display: block;
  margin-bottom: 7px;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.3px;
}

.noidaBlueSectionCtaText h3 {
  margin: 0 0 9px;
  color: #ffffff;
  font-size: clamp(23px, 2.4vw, 30px);
  font-weight: 900;
  line-height: 1.3;
}

.noidaBlueSectionCtaText p {
  margin: 0;
  color: #e0e9f5;
  font-size: 16px;
  line-height: 1.8;
}

.noidaBlueSectionCtaActions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 auto;
}

.noidaBlueSectionCtaActions .noidaBlueBtn {
  min-width: 260px;
}

.noidaBlueCallLink {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 54px;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,0.27);
  border-radius: 9px;
  color: #ffffff !important;
  transition: background 0.2s ease;
}

.noidaBlueCallLink:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08);
}

.noidaBlueCallLink > span:first-child {
  color: var(--nb-gold-light);
  font-size: 22px;
}

.noidaBlueCallLink small,
.noidaBlueCallLink strong {
  display: block;
}

.noidaBlueCallLink small {
  color: #dbe5f1;
  font-size: 15px;
  line-height: 1.5;
}

.noidaBlueCallLink strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}


/* =========================================================
   SECTION 2: SECTOR 52 INTERCHANGE
========================================================= */

.noidaBlueInterchange {
  position: relative;
  overflow: hidden;
  padding: 84px 0;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 87% 30%,
      rgba(217,154,22,0.12),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      var(--nb-dark),
      var(--nb-navy) 58%,
      var(--nb-deep)
    );
}

.noidaBlueInterchange::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.12;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to right, transparent, black 50%);
}

.noidaBlueInterchangeGrid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.9fr);
  align-items: center;
  gap: clamp(35px, 5vw, 70px);
}

.noidaBlueInterchangeContent {
  min-width: 0;
}

.noidaBlueInterchangeContent h2 {
  margin: 0 0 24px;
  color: #ffffff;
  font-size: clamp(33px, 3.7vw, 47px);
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: -1px;
}

.noidaBlueInterchangeContent h2 span {
  display: block;
  margin-top: 8px;
  color: var(--nb-gold-light);
}

.noidaBlueInterchangeContent > p {
  margin: 0 0 18px;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.9;
}

.noidaBlueInterchangeContent > p strong {
  color: var(--nb-gold-light);
  font-weight: 900;
}


/* Interchange callout */

.noidaBlueInterchangeCallout {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 24px;
  padding: 19px;
  border: 1px solid rgba(240,180,41,0.38);
  border-radius: 11px;
  background: rgba(255,255,255,0.055);
}

.noidaBlueInterchangeCalloutIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border-radius: 9px;
  color: var(--nb-dark);
  background: var(--nb-gold-light);
  font-size: 21px;
  font-weight: 900;
}

.noidaBlueInterchangeCallout strong {
  display: block;
  margin-bottom: 5px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaBlueInterchangeCallout p {
  margin: 0;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   SECTION 2: CONNECTIVITY VISUAL PANEL
========================================================= */

.noidaBlueInterchangeVisual {
  min-width: 0;
}

.noidaBlueInterchangePanel {
  padding: 23px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 16px;
  background: linear-gradient(
    145deg,
    rgba(255,255,255,0.11),
    rgba(255,255,255,0.04)
  );
  box-shadow:
    0 24px 55px rgba(0,0,0,0.22),
    inset 0 1px 0 rgba(255,255,255,0.1);
}

.noidaBlueInterchangePanelHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,0.15);
  color: #f5e5bb;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.6;
}

.noidaBlueLiveMark {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: var(--nb-gold-light);
  box-shadow: 0 0 0 5px rgba(240,180,41,0.12);
}

.noidaBlueNetworkNode {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 22px 17px;
  border-radius: 11px;
}

.noidaBlueNetworkBlue {
  margin-top: 22px;
  border: 1px solid rgba(255,255,255,0.17);
  background: rgba(255,255,255,0.065);
}

.noidaBlueNetworkGold {
  border: 1px solid rgba(240,180,41,0.36);
  background: rgba(217,154,22,0.08);
}

.noidaBlueNetworkSymbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  flex: 0 0 49px;
  border-radius: 12px;
  color: var(--nb-dark);
  background: var(--nb-gold-light);
  font-size: 22px;
  font-weight: 900;
}

.noidaBlueNetworkNode small,
.noidaBlueNetworkNode strong,
.noidaBlueNetworkNode p {
  display: block;
}

.noidaBlueNetworkNode small {
  margin-bottom: 3px;
  color: #e5c97e;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.6;
}

.noidaBlueNetworkNode strong {
  color: #ffffff;
  font-size: 21px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaBlueNetworkNode p {
  margin: 4px 0 0;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.6;
}


/* Transfer connector */

.noidaBlueNetworkConnector {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 15px 8px;
}

.noidaBlueConnectorLine {
  height: 1px;
  flex: 1;
  background: rgba(240,180,41,0.5);
}

.noidaBlueConnectorLabel {
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.5px;
  text-align: center;
}

.noidaBlueNetworkFooter {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 20px;
  padding: 18px;
  border-radius: 10px;
  background: rgba(4,21,45,0.45);
}

.noidaBlueNetworkFooterIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 37px;
  height: 37px;
  flex: 0 0 37px;
  border-radius: 9px;
  color: var(--nb-dark);
  background: var(--nb-gold-light);
  font-size: 22px;
}

.noidaBlueNetworkFooter p {
  margin: 0;
}

.noidaBlueNetworkFooter strong,
.noidaBlueNetworkFooter p span {
  display: block;
}

.noidaBlueNetworkFooter strong {
  margin-bottom: 4px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaBlueNetworkFooter p span {
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.7;
}

.noidaBlueInterchangeNote {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 17px;
}

.noidaBlueInterchangeNote > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 50%;
  color: var(--nb-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaBlueInterchangeNote p {
  margin: 0;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.75;
}


/* =========================================================
   ACCESSIBILITY: KEYBOARD FOCUS
========================================================= */

.noidaBlueHero a:focus-visible,
.noidaBlueZones a:focus-visible,
.noidaBlueInterchange a:focus-visible {
  outline: 3px solid var(--nb-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1020px) {
  .noidaBlueHeroGrid,
  .noidaBlueInterchangeGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }

  .noidaBlueHeroPanel {
    max-width: 680px;
  }

  .noidaBlueInterchangeVisual {
    max-width: 680px;
  }

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

  .noidaBlueSectionCta {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaBlueSectionCtaActions {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .noidaBlueSectionCtaActions .noidaBlueBtn {
    min-width: 0;
  }
}


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

@media (max-width: 680px) {
  .noidaBlueContainer {
    width: calc(100% - 32px);
  }

  .noidaBlueHero {
    padding: 25px 0 24px;
  }

  .noidaBlueBreadcrumb {
    gap: 7px;
    margin-bottom: 29px;
  }

  .noidaBlueHeroContent h1 {
    font-size: clamp(33px, 8.4vw, 43px);
    letter-spacing: -0.8px;
  }

  .noidaBlueHeroContent h1 span {
    font-size: 0.73em;
  }

  .noidaBlueHeroIntro {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaBlueHeroPills {
    gap: 8px;
  }

  .noidaBlueHeroPills span {
    font-size: 15px;
  }

  .noidaBlueHeroActions,
  .noidaBlueInterchangeActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaBlueBtn {
    width: 100%;
    min-height: 64px;
  }

  .noidaBlueHeroContact {
    align-items: flex-start;
    flex-direction: column;
    gap: 9px;
  }

  .noidaBlueHeroContact > span {
    display: none;
  }

  .noidaBlueHeroFoot {
    align-items: flex-start;
    margin-top: 30px;
  }

  .noidaBlueHeroPanel {
    padding: 17px;
  }

  .noidaBluePanelLabel {
    letter-spacing: 0.5px;
  }

  .noidaBlueZones {
    padding: 57px 0 60px;
  }

  .noidaBlueSectionHeader {
    margin-bottom: 29px;
  }

  .noidaBlueSectionHeader h2 {
    font-size: clamp(30px, 7.5vw, 38px);
    letter-spacing: -0.6px;
  }

  .noidaBlueSectionHeader > p {
    font-size: 16px;
  }

  .noidaBlueZoneGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .noidaBlueZoneCard {
    padding: 23px 21px;
  }

  .noidaBlueZoneCard h3 {
    font-size: 23px;
  }

  .noidaBlueInsight {
    padding: 18px 16px;
  }

  .noidaBlueSectionCta {
    padding: 23px 19px;
  }

  .noidaBlueSectionCtaActions {
    flex-direction: column;
  }

  .noidaBlueSectionCtaActions .noidaBlueBtn {
    width: 100%;
  }

  .noidaBlueInterchange {
    padding: 58px 0;
  }

  .noidaBlueInterchangeContent h2 {
    font-size: clamp(31px, 7.8vw, 39px);
  }

  .noidaBlueInterchangeContent > p {
    font-size: 16px;
  }

  .noidaBlueInterchangePanel {
    padding: 17px;
  }

  .noidaBlueNetworkNode {
    padding: 18px 13px;
  }

  .noidaBlueNetworkNode strong {
    font-size: 20px;
  }

  .noidaBlueConnectorLabel {
    font-size: 15px;
    letter-spacing: 0;
  }
}


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

@media (max-width: 380px) {
  .noidaBlueContainer {
    width: calc(100% - 26px);
  }

  .noidaBlueEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.7px;
  }

  .noidaBlueEyebrowLine {
    width: 23px;
    flex-basis: 23px;
  }

  .noidaBlueHeroContent h1 {
    font-size: 32px;
  }

  .noidaBlueHeroPanel {
    padding: 14px;
  }

  .noidaBluePanelTop {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaBlueZoneCard {
    padding: 20px 17px;
  }

  .noidaBlueInterchangePanel {
    padding: 14px;
  }

  .noidaBlueNetworkSymbol {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaBlueHero *,
  .noidaBlueZones *,
  .noidaBlueInterchange * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   CAPITAL GAIN IN NOIDA
   Unique namespace: noidaCG
   Royal Navy + Gold visual system
   Minimum font size: 15px
========================================================= */

.noidaCGHero,
.noidaCGSection {
  --cg-navy: #092f62;
  --cg-deep: #061d3d;
  --cg-dark: #04152d;
  --cg-gold: #b97800;
  --cg-gold-main: #d99a16;
  --cg-gold-light: #f0b429;
  --cg-cream: #fff9ec;
  --cg-white: #ffffff;
  --cg-text: #26364e;
  --cg-muted: #596b82;
  --cg-border: #dce5f0;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

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

.noidaCGHero a,
.noidaCGSection a {
  text-decoration: none;
}

.noidaCGContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW AND BUTTONS
========================================================= */

.noidaCGEyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.7px;
}

.noidaCGEyebrowLine {
  display: inline-block;
  width: 35px;
  height: 2px;
  flex: 0 0 35px;
  background: var(--cg-gold-light);
}

.noidaCGEyebrowLight {
  color: var(--cg-gold);
}

.noidaCGEyebrowLight .noidaCGEyebrowLine {
  background: var(--cg-gold-main);
}

.noidaCGButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 55px;
  padding: 14px 21px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease;
}

.noidaCGButton:hover {
  transform: translateY(-3px);
}

.noidaCGButtonGold {
  color: var(--cg-dark) !important;
  border-color: var(--cg-gold-light);
  background: linear-gradient(
    135deg,
    var(--cg-gold-light),
    var(--cg-gold-main)
  );
  box-shadow: 0 9px 24px rgba(217,154,22,0.2);
}

.noidaCGButtonGold:hover {
  color: var(--cg-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(217,154,22,0.3);
}

.noidaCGButtonNavy {
  color: #ffffff !important;
  border-color: var(--cg-navy);
  background: linear-gradient(135deg, var(--cg-navy), var(--cg-deep));
}

.noidaCGButtonNavy:hover {
  color: #ffffff !important;
  background: var(--cg-deep);
  box-shadow: 0 10px 24px rgba(6,29,61,0.17);
}

.noidaCGButtonOutline {
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.42);
  background: rgba(255,255,255,0.045);
}

.noidaCGButtonOutline:hover {
  color: #ffffff !important;
  border-color: var(--cg-gold-light);
  background: rgba(255,255,255,0.1);
}

.noidaCGButtonArrow {
  font-size: 22px;
  line-height: 1;
}

.noidaCGPhoneIcon {
  color: var(--cg-gold-light);
  font-size: 21px;
  line-height: 1;
}


/* =========================================================
   HERO: NO IMAGE, EDITORIAL NAVY DESIGN
========================================================= */

.noidaCGHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 83px 0 28px;
  color: #ffffff;
  background:
    radial-gradient(
      ellipse at 90% 5%,
      rgba(217,154,22,0.17),
      transparent 32%
    ),
    radial-gradient(
      ellipse at 0% 100%,
      rgba(39,100,164,0.2),
      transparent 37%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 54%,
      #061d3d 100%
    );
}

.noidaCGHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
  background-size: 50px 50px;
  mask-image: linear-gradient(to bottom, black, transparent 94%);
}

.noidaCGHeroInner {
  max-width: 990px;
  margin: 0 auto;
  padding: clamp(25px, 4vw, 53px);
  border: 1px solid rgba(240,180,41,0.28);
  border-radius: 18px;
  background: linear-gradient(
    140deg,
    rgba(255,255,255,0.065),
    rgba(255,255,255,0.025)
  );
  box-shadow:
    0 28px 70px rgba(0,0,0,0.17),
    inset 0 1px 0 rgba(255,255,255,0.07);
}

.noidaCGHero h1 {
  max-width: 900px;
  margin: 0 0 25px;
  color: #ffffff;
  font-size: clamp(36px, 4.6vw, 57px);
  font-weight: 900;
  line-height: 1.14;
  letter-spacing: -1.5px;
  overflow-wrap: anywhere;
}

.noidaCGHero h1 span {
  display: block;
  margin-top: 13px;
  color: var(--cg-gold-light);
  font-size: 0.65em;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.4px;
}

.noidaCGHeroIntro {
  max-width: 900px;
  margin: 0 0 17px;
  color: #e7edf7;
  font-size: 17px;
  line-height: 1.9;
}

.noidaCGHeroIntro strong {
  color: var(--cg-gold-light);
  font-weight: 900;
}

.noidaCGHeroHighlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
  margin-top: 31px;
}

.noidaCGHeroHighlight {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
  padding: 17px 15px;
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 10px;
  background: rgba(255,255,255,0.045);
}

.noidaCGHeroHighlightNo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border: 1px solid rgba(240,180,41,0.55);
  border-radius: 9px;
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaCGHeroHighlight strong,
.noidaCGHeroHighlight small {
  display: block;
}

.noidaCGHeroHighlight strong {
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaCGHeroHighlight small {
  margin-top: 4px;
  color: #d6e0ee;
  font-size: 15px;
  line-height: 1.5;
}

.noidaCGHeroActions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 31px;
}

.noidaCGHeroActions .noidaCGButton {
  min-height: 60px;
}

.noidaCGHeroTrust {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.16);
}

.noidaCGTrustCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: 50%;
  color: var(--cg-dark);
  background: var(--cg-gold-light);
  font-size: 16px;
  font-weight: 900;
}

.noidaCGHeroTrust p {
  margin: 0;
  color: #e3ebf6;
  font-size: 15px;
  line-height: 1.8;
}

.noidaCGHeroTrust strong {
  color: #ffffff;
  font-weight: 900;
}

.noidaCGHeroBottom {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-top: 29px;
  color: #dce6f4;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.6px;
  text-align: center;
}

.noidaCGHeroBottomRule {
  width: 43px;
  height: 2px;
  background: var(--cg-gold-main);
}


/* =========================================================
   SHARED SECTION HEADER
========================================================= */

.noidaCGSectionHeader {
  max-width: 900px;
  margin: 0 auto 39px;
}

.noidaCGSectionHeader h2 {
  margin: 0 0 17px;
  color: var(--cg-dark);
  font-size: clamp(31px, 3.6vw, 45px);
  font-weight: 900;
  line-height: 1.22;
  letter-spacing: -0.9px;
}

.noidaCGSectionHeader h2 span {
  color: var(--cg-gold);
}

.noidaCGSectionHeader > p {
  margin: 0;
  color: var(--cg-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaCGSectionHeader > p strong {
  color: var(--cg-navy);
  font-weight: 900;
}


/* =========================================================
   SECTION 1: FMV
========================================================= */

.noidaCGSectionFMV {
  padding: 82px 0 88px;
  color: var(--cg-text);
  background:
    radial-gradient(
      circle at 100% 10%,
      rgba(217,154,22,0.07),
      transparent 28%
    ),
    #f8fbff;
}

.noidaCGFMVLayout {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr);
  gap: 25px;
  align-items: stretch;
}

.noidaCGFMVMain {
  padding: 32px;
  border: 1px solid var(--cg-border);
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(9,47,98,0.045);
}

.noidaCGSectionKicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--cg-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.1px;
}

.noidaCGKickerIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--cg-navy);
  font-size: 21px;
}

.noidaCGFMVMain h3 {
  margin: 21px 0 15px;
  color: var(--cg-deep);
  font-size: 29px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaCGFMVMain > p {
  margin: 0 0 17px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaCGFMVMain > p strong {
  color: var(--cg-navy);
  font-weight: 900;
}

.noidaCGEvidenceBox {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 25px;
  padding: 20px;
  border: 1px solid #ead9b5;
  border-radius: 10px;
  background: var(--cg-cream);
}

.noidaCGEvidenceIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--cg-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaCGEvidenceBox strong {
  display: block;
  margin-bottom: 5px;
  color: var(--cg-deep);
  font-size: 16px;
  font-weight: 900;
}

.noidaCGEvidenceBox p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaCGTextLink {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 23px;
  color: var(--cg-navy) !important;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaCGTextLink span {
  color: var(--cg-gold);
  font-size: 22px;
  transition: transform 0.2s ease;
}

.noidaCGTextLink:hover {
  color: var(--cg-gold) !important;
}

.noidaCGTextLink:hover span {
  transform: translateX(5px);
}


/* FMV side card */

.noidaCGFMVSide {
  padding: 27px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.17),
      transparent 37%
    ),
    linear-gradient(145deg, var(--cg-navy), var(--cg-dark));
  box-shadow: 0 15px 35px rgba(6,29,61,0.13);
}

.noidaCGFMVSideTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.noidaCGSideLabel {
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1px;
}

.noidaCGSideSeal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border: 1px solid rgba(240,180,41,0.7);
  border-radius: 50%;
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaCGFMVSide h3 {
  margin: 21px 0 11px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaCGFMVSideIntro {
  margin: 0 0 19px;
  color: #dce6f4;
  font-size: 15px;
  line-height: 1.8;
}

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

.noidaCGPropertyFacts > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 13px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.13);
}

.noidaCGPropertyFacts span {
  color: #d6e1f0;
  font-size: 15px;
  line-height: 1.6;
}

.noidaCGPropertyFacts strong {
  color: #ffffff;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  text-align: right;
}

.noidaCGFMVSideNote {
  margin: 19px 0;
  padding: 15px;
  border-left: 3px solid var(--cg-gold-light);
  border-radius: 0 8px 8px 0;
  background: rgba(255,255,255,0.07);
}

.noidaCGFMVSideNote strong,
.noidaCGFMVSideNote span {
  display: block;
}

.noidaCGFMVSideNote strong {
  margin-bottom: 4px;
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaCGFMVSideNote span {
  color: #e7edf7;
  font-size: 15px;
  line-height: 1.7;
}

.noidaCGFMVSide > .noidaCGButton {
  width: 100%;
}


/* =========================================================
   SECTION 1: CALCULATION PANEL
========================================================= */

.noidaCGCalculation {
  margin-top: 32px;
  padding: clamp(23px, 3.5vw, 37px);
  border: 1px solid #d8e2ef;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(9,47,98,0.055);
}

.noidaCGCalculationHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 13px;
}

.noidaCGCalculationHeader h3 {
  margin: 9px 0 0;
  color: var(--cg-deep);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 900;
  line-height: 1.3;
}

.noidaCGCalculationBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 35px;
  padding: 7px 12px;
  border: 1px solid #ead6a9;
  border-radius: 30px;
  color: var(--cg-navy);
  background: var(--cg-cream);
  font-size: 15px;
  font-weight: 900;
  white-space: nowrap;
}

.noidaCGCalculationIntro {
  max-width: 900px;
  margin: 0 0 23px;
  color: var(--cg-muted);
  font-size: 16px;
  line-height: 1.85;
}

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

.noidaCGCalculationCard {
  min-width: 0;
  padding: 22px;
  border: 1px solid #dce5f0;
  border-radius: 11px;
  background: #f8fbff;
}

.noidaCGCalculationLabel {
  display: block;
  color: var(--cg-muted);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.7px;
}

.noidaCGCalculationValue {
  display: block;
  margin: 12px 0 9px;
  color: var(--cg-navy);
  font-size: clamp(24px, 2.4vw, 31px);
  font-weight: 900;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.noidaCGCalculationDescription {
  display: block;
  color: #596a80;
  font-size: 15px;
  line-height: 1.7;
}

.noidaCGCalculationCardGold {
  border-color: #e8d4a6;
  background: linear-gradient(145deg, #fffaf0, #ffffff);
}

.noidaCGCalculationCardGold .noidaCGCalculationValue {
  color: var(--cg-gold);
}

.noidaCGFormulaPanel {
  margin-top: 21px;
  padding: 21px 23px;
  border-radius: 11px;
  color: #ffffff;
  background: linear-gradient(125deg, var(--cg-dark), var(--cg-navy));
}

.noidaCGFormulaRow {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255,255,255,0.14);
}

.noidaCGFormulaRow span {
  color: #dce6f4;
  font-size: 15px;
  line-height: 1.7;
}

.noidaCGFormulaRow strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.7;
  text-align: right;
}

.noidaCGFormulaResult {
  padding-top: 17px;
  border-bottom: 0;
}

.noidaCGFormulaResult span,
.noidaCGFormulaResult strong {
  color: var(--cg-gold-light);
  font-weight: 900;
}

.noidaCGCalculationDisclaimer {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 20px;
  padding: 18px;
  border: 1px solid #ead7b0;
  border-radius: 10px;
  background: #fffaf0;
}

.noidaCGDisclaimerIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--cg-gold);
  font-size: 16px;
  font-weight: 900;
}

.noidaCGCalculationDisclaimer p {
  margin: 0;
  color: #4f5d70;
  font-size: 15px;
  line-height: 1.85;
}

.noidaCGCalculationDisclaimer strong {
  color: var(--cg-deep);
  font-weight: 900;
}

.noidaCGExternalResource {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 22px;
  padding: 23px;
  border: 1px solid #dce5f0;
  border-radius: 11px;
  background: #f8fbff;
}

.noidaCGExternalEyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--cg-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1px;
}

.noidaCGExternalResource h4 {
  margin: 0 0 7px;
  color: var(--cg-deep);
  font-size: 21px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaCGExternalResource p {
  max-width: 620px;
  margin: 0;
  color: var(--cg-muted);
  font-size: 15px;
  line-height: 1.8;
}

.noidaCGExternalResource .noidaCGButton {
  flex: 0 0 auto;
}


/* =========================================================
   SECTION 2: FINANCE ACT 2024
========================================================= */

.noidaCGSectionMethods {
  padding: 82px 0 85px;
  color: var(--cg-text);
  background:
    radial-gradient(
      circle at 0% 15%,
      rgba(217,154,22,0.065),
      transparent 27%
    ),
    #ffffff;
}

.noidaCGMethodsIntro {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 26px;
  padding: 24px;
  border: 1px solid #e4d3ad;
  border-radius: 12px;
  background: linear-gradient(120deg, #fffaf0, #ffffff);
}

.noidaCGMethodsIntroIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  flex: 0 0 49px;
  border-radius: 12px;
  color: var(--cg-gold-light);
  background: var(--cg-navy);
  font-size: 26px;
  font-weight: 900;
}

.noidaCGMethodsIntro h3 {
  margin: 0 0 7px;
  color: var(--cg-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaCGMethodsIntro p {
  margin: 0;
  color: var(--cg-muted);
  font-size: 16px;
  line-height: 1.8;
}

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

.noidaCGMethodCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 29px;
  border: 1px solid #dce5f0;
  border-radius: 14px;
  background: #f8fbff;
  box-shadow: 0 9px 25px rgba(9,47,98,0.045);
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease;
}

.noidaCGMethodCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 17px 34px rgba(9,47,98,0.09);
}

.noidaCGMethodCardFeatured {
  border-color: #e7d4a8;
  background: linear-gradient(145deg, #fffaf0, #ffffff);
}

.noidaCGMethodTop {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}

.noidaCGMethodNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  flex: 0 0 49px;
  border-radius: 12px;
  color: #ffffff;
  background: var(--cg-navy);
  font-size: 23px;
  font-weight: 900;
}

.noidaCGMethodCardFeatured .noidaCGMethodNumber {
  color: var(--cg-dark);
  background: var(--cg-gold-light);
}

.noidaCGMethodTag {
  color: var(--cg-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.6px;
}

.noidaCGMethodCard h3 {
  margin: 0 0 13px;
  color: var(--cg-deep);
  font-size: 29px;
  font-weight: 900;
  line-height: 1.3;
}

.noidaCGMethodCard > p {
  margin: 0 0 19px;
  color: #526176;
  font-size: 16px;
  line-height: 1.85;
}

.noidaCGMethodCard > p strong {
  color: var(--cg-navy);
  font-weight: 900;
}

.noidaCGMethodList {
  display: grid;
  gap: 12px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.noidaCGMethodList li {
  position: relative;
  padding-left: 28px;
  color: #4d5e74;
  font-size: 15px;
  line-height: 1.8;
}

.noidaCGMethodList li::before {
  position: absolute;
  top: 1px;
  left: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--cg-navy);
  content: "✓";
  font-size: 15px;
  font-weight: 900;
}

.noidaCGMethodCardFeatured .noidaCGMethodList li::before {
  color: var(--cg-dark);
  background: var(--cg-gold-light);
}

.noidaCGMethodFooter {
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid #dce5f0;
}

.noidaCGMethodFooter span {
  display: inline-block;
  color: var(--cg-navy);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaCGMethodsNotice {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 24px;
  padding: 19px;
  border: 1px solid #e6d5b0;
  border-radius: 10px;
  background: #fffaf0;
}

.noidaCGNoticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--cg-gold);
  font-size: 16px;
  font-weight: 900;
}

.noidaCGMethodsNotice p {
  margin: 0;
  color: #526176;
  font-size: 15px;
  line-height: 1.85;
}

.noidaCGMethodsNotice strong {
  color: var(--cg-deep);
  font-weight: 900;
}


/* Methods section lower banner */

.noidaCGNoidaPropertyBand {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 27px;
  margin-top: 34px;
  padding: 29px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 0%,
      rgba(217,154,22,0.17),
      transparent 35%
    ),
    linear-gradient(120deg, var(--cg-dark), var(--cg-navy));
}

.noidaCGNoidaPropertyContent {
  max-width: 760px;
}

.noidaCGNoidaPropertyContent .noidaCGExternalEyebrow {
  color: var(--cg-gold-light);
}

.noidaCGNoidaPropertyContent h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 27px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaCGNoidaPropertyContent p {
  margin: 0;
  color: #e1eaf5;
  font-size: 16px;
  line-height: 1.85;
}

.noidaCGNoidaPropertyContent p strong {
  color: var(--cg-gold-light);
  font-weight: 900;
}

.noidaCGNoidaPropertyBand > .noidaCGButton {
  flex: 0 0 auto;
}


/* =========================================================
   SECTION 3: NRI SELLERS
========================================================= */

.noidaCGSectionNRI {
  padding: 82px 0 88px;
  color: var(--cg-text);
  background:
    radial-gradient(
      circle at 95% 10%,
      rgba(217,154,22,0.07),
      transparent 28%
    ),
    #f8fbff;
}

.noidaCGNRILayout {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
  align-items: start;
  gap: 39px;
}

.noidaCGNRIContent {
  padding: 9px 0;
}

.noidaCGNRIContent h2 {
  margin: 0 0 21px;
  color: var(--cg-deep);
  font-size: clamp(32px, 3.5vw, 44px);
  font-weight: 900;
  line-height: 1.22;
  letter-spacing: -0.8px;
}

.noidaCGNRIContent h2 span {
  display: block;
  margin-top: 9px;
  color: var(--cg-gold);
  font-size: 0.74em;
  letter-spacing: -0.2px;
}

.noidaCGNRIContent > p {
  margin: 0 0 17px;
  color: #526176;
  font-size: 16px;
  line-height: 1.9;
}

.noidaCGNRIContent > p strong {
  color: var(--cg-navy);
  font-weight: 900;
}

.noidaCGDestinations,
.noidaCGNRIDestinations {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 24px;
}

.noidaCGNRIDestinations span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 37px;
  padding: 8px 13px;
  border: 1px solid #e3d2ac;
  border-radius: 30px;
  color: var(--cg-navy);
  background: #fffaf0;
  font-size: 15px;
  font-weight: 900;
}

.noidaCGNRIActions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 29px;
}

.noidaCGNRIActions .noidaCGButtonOutline {
  color: var(--cg-navy) !important;
  border-color: #c8d4e3;
  background: #ffffff;
}

.noidaCGNRIActions .noidaCGButtonOutline .noidaCGPhoneIcon {
  color: var(--cg-gold);
}

.noidaCGNRIActions .noidaCGButtonOutline:hover {
  border-color: var(--cg-gold-main);
  background: #fffaf0;
}


/* NRI checklist card */

.noidaCGNRISide {
  padding: 28px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.17),
      transparent 35%
    ),
    linear-gradient(145deg, var(--cg-navy), var(--cg-dark));
  box-shadow: 0 17px 38px rgba(6,29,61,0.12);
}

.noidaCGNRISideHeader {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 23px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(255,255,255,0.16);
}

.noidaCGNRISideIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  border: 1px solid rgba(240,180,41,0.6);
  border-radius: 13px;
  color: var(--cg-gold-light);
  font-size: 18px;
  font-weight: 900;
}

.noidaCGNRISideHeader .noidaCGSideLabel {
  display: block;
  margin-bottom: 5px;
  color: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.7px;
}

.noidaCGNRISideHeader h3 {
  margin: 0;
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaCGNRICheckItem {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 19px 0;
  border-bottom: 1px solid rgba(255,255,255,0.13);
}

.noidaCGNRICheckNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
  color: var(--cg-dark);
  background: var(--cg-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaCGNRICheckItem h4 {
  margin: 0 0 7px;
  color: #ffffff;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaCGNRICheckItem p {
  margin: 0;
  color: #dbe5f2;
  font-size: 15px;
  line-height: 1.8;
}

.noidaCGNRISideFooter {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 21px;
  color: #e2eaf5;
  font-size: 15px;
  line-height: 1.7;
}

.noidaCGNRIFooterDot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--cg-gold-light);
}


/* NRI final CTA */

.noidaCGNRIFinalCTA {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 37px;
  padding: 28px;
  border: 1px solid #e6d4ac;
  border-radius: 14px;
  background: linear-gradient(120deg, #fffaf0, #ffffff);
}

.noidaCGNRIFinalCTA > div {
  max-width: 750px;
}

.noidaCGNRIFinalCTA h3 {
  margin: 0 0 9px;
  color: var(--cg-deep);
  font-size: 26px;
  font-weight: 900;
  line-height: 1.35;
}

.noidaCGNRIFinalCTA p {
  margin: 0;
  color: var(--cg-muted);
  font-size: 16px;
  line-height: 1.8;
}

.noidaCGNRIFinalCTA > .noidaCGButton {
  flex: 0 0 auto;
}


/* =========================================================
   ACCESSIBILITY: FOCUS STATES
========================================================= */

.noidaCGHero a:focus-visible,
.noidaCGSection a:focus-visible {
  outline: 3px solid var(--cg-gold-light);
  outline-offset: 4px;
}


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

@media (max-width: 1000px) {
  .noidaCGFMVLayout,
  .noidaCGNRILayout {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaCGFMVSide {
    max-width: none;
  }

  .noidaCGMethodsGrid {
    gap: 17px;
  }

  .noidaCGMethodCard {
    padding: 24px;
  }

  .noidaCGNoidaPropertyBand,
  .noidaCGNRIFinalCTA {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaCGNoidaPropertyBand > .noidaCGButton,
  .noidaCGNRIFinalCTA > .noidaCGButton {
    width: 100%;
  }
}


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

@media (max-width: 700px) {
  .noidaCGContainer {
    width: min(100% - 32px, 560px);
  }

  .noidaCGHero {
    padding: 45px 0 24px;
  }

  .noidaCGHeroInner {
    padding: 24px 19px;
    border-radius: 13px;
  }

  .noidaCGEyebrow {
    gap: 9px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaCGEyebrowLine {
    width: 25px;
    flex-basis: 25px;
  }

  .noidaCGHero h1 {
    font-size: clamp(33px, 8.2vw, 42px);
    letter-spacing: -0.8px;
  }

  .noidaCGHero h1 span {
    font-size: 0.71em;
  }

  .noidaCGHeroIntro {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaCGHeroHighlights {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    margin-top: 23px;
  }

  .noidaCGHeroHighlight {
    padding: 14px;
  }

  .noidaCGHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 11px;
    margin-top: 25px;
  }

  .noidaCGHeroActions .noidaCGButton {
    width: 100%;
  }

  .noidaCGHeroBottom {
    flex-wrap: wrap;
    gap: 9px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaCGSectionFMV,
  .noidaCGSectionMethods,
  .noidaCGSectionNRI {
    padding: 57px 0 61px;
  }

  .noidaCGSectionHeader {
    margin-bottom: 27px;
  }

  .noidaCGSectionHeader h2,
  .noidaCGNRIContent h2 {
    font-size: clamp(30px, 7.3vw, 38px);
    letter-spacing: -0.5px;
  }

  .noidaCGSectionHeader > p {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaCGFMVMain,
  .noidaCGFMVSide,
  .noidaCGMethodCard,
  .noidaCGNRISide {
    padding: 22px 19px;
  }

  .noidaCGFMVMain h3 {
    font-size: 25px;
  }

  .noidaCGFMVLayout {
    gap: 17px;
  }

  .noidaCGCalculation {
    margin-top: 21px;
    padding: 21px 17px;
  }

  .noidaCGCalculationHeader {
    flex-direction: column;
    gap: 10px;
  }

  .noidaCGCalculationGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaCGCalculationValue {
    font-size: 28px;
  }

  .noidaCGFormulaPanel {
    padding: 15px;
  }

  .noidaCGFormulaRow {
    gap: 13px;
  }

  .noidaCGFormulaRow span,
  .noidaCGFormulaRow strong {
    font-size: 15px;
  }

  .noidaCGExternalResource {
    align-items: stretch;
    flex-direction: column;
    padding: 19px;
  }

  .noidaCGExternalResource .noidaCGButton {
    width: 100%;
  }

  .noidaCGMethodsIntro {
    padding: 18px;
  }

  .noidaCGMethodsGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaCGMethodCard h3 {
    font-size: 27px;
  }

  .noidaCGMethodsNotice {
    padding: 16px;
  }

  .noidaCGNoidaPropertyBand,
  .noidaCGNRIFinalCTA {
    padding: 22px 19px;
  }

  .noidaCGNoidaPropertyContent h3,
  .noidaCGNRIFinalCTA h3 {
    font-size: 24px;
  }

  .noidaCGNRILayout {
    gap: 27px;
  }

  .noidaCGNRIContent > p {
    font-size: 16px;
  }

  .noidaCGNRIActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaCGNRIActions .noidaCGButton {
    width: 100%;
  }

  .noidaCGNRISideHeader h3 {
    font-size: 22px;
  }

  .noidaCGNRIFinalCTA > .noidaCGButton {
    width: 100%;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaCGHero *,
  .noidaCGSection * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA FIVE VALUATION PROFILES
   Unique namespace: noidaProfiles
   Royal navy + gold design system
   Minimum body text: 15px
========================================================= */

.noidaProfiles {
  --np-navy: #092f62;
  --np-navy-deep: #061d3d;
  --np-navy-dark: #04152d;
  --np-gold: #b97800;
  --np-gold-mid: #d99a16;
  --np-gold-light: #f0b429;
  --np-gold-pale: #fff8e9;
  --np-white: #ffffff;
  --np-page: #f5f8fc;
  --np-ink: #24354d;
  --np-muted: #58697f;
  --np-border: #dfe7f1;
  --np-success: #1c654b;

  position: relative;
  overflow: hidden;
  padding: 76px 0 85px;
  color: var(--np-ink);
  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(217,154,22,0.07),
      transparent 25%
    ),
    var(--np-page);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

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

.noidaProfiles a {
  text-decoration: none;
}

.noidaProfiles__container {
  width: min(1120px, calc(100% - 44px));
  margin-inline: auto;
}


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

.noidaProfiles__intro {
  position: relative;
  max-width: 930px;
  margin: 0 auto 43px;
  text-align: center;
}

.noidaProfiles__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-bottom: 19px;
  color: var(--np-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.8px;
}

.noidaProfiles__eyebrow span {
  display: inline-block;
  width: 33px;
  height: 2px;
  flex: 0 0 33px;
  background: var(--np-gold-mid);
}

.noidaProfiles__intro h1 {
  margin: 0 0 22px;
  color: var(--np-navy-dark);
  font-size: clamp(34px, 4.3vw, 51px);
  font-weight: 900;
  line-height: 1.17;
  letter-spacing: -1.2px;
  overflow-wrap: anywhere;
}

.noidaProfiles__intro h1 span {
  display: block;
  margin-top: 8px;
  color: var(--np-gold);
}

.noidaProfiles__introText {
  max-width: 850px;
  margin: 0 auto;
  color: var(--np-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaProfiles__introText strong {
  color: var(--np-navy);
  font-weight: 800;
}

.noidaProfiles__introChips {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 25px;
}

.noidaProfiles__introChips span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 7px 13px;
  border: 1px solid #e4d2a9;
  border-radius: 50px;
  color: var(--np-navy);
  background: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}

.noidaProfiles__introNotice {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 29px;
  padding: 17px 20px;
  border: 1px solid #e8d7b3;
  border-radius: 12px;
  text-align: left;
  background: #fffaf0;
}

.noidaProfiles__noticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  margin-top: 2px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaProfiles__introNotice p {
  margin: 0;
  color: #536176;
  font-size: 15px;
  line-height: 1.8;
}

.noidaProfiles__introNotice strong {
  color: var(--np-navy);
  font-weight: 900;
}


/* =========================================================
   PROFILE CARD SHELL
========================================================= */

.noidaProfiles__card {
  position: relative;
  overflow: hidden;
  margin-top: 30px;
  border: 1px solid var(--np-border);
  border-radius: 17px;
  background: var(--np-white);
  box-shadow: 0 12px 34px rgba(4,21,45,0.055);
  transition:
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease;
}

.noidaProfiles__card:hover {
  border-color: #d8c08e;
  box-shadow: 0 20px 45px rgba(4,21,45,0.09);
  transform: translateY(-2px);
}

.noidaProfiles__cardHead {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 58px;
  align-items: center;
  gap: 20px;
  padding: 28px 32px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 92% 0%,
      rgba(217,154,22,0.18),
      transparent 35%
    ),
    linear-gradient(
      115deg,
      var(--np-navy-dark),
      var(--np-navy) 72%,
      #103e75
    );
}

.noidaProfiles__profileNo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(240,180,41,0.7);
  border-radius: 12px;
  color: var(--np-navy-dark);
  background: linear-gradient(
    135deg,
    var(--np-gold-light),
    var(--np-gold-mid)
  );
  font-size: 19px;
  font-weight: 900;
}

.noidaProfiles__headText {
  min-width: 0;
}

.noidaProfiles__category {
  display: block;
  margin-bottom: 7px;
  color: var(--np-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.4px;
}

.noidaProfiles__headText h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(23px, 2.5vw, 31px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

.noidaProfiles__headText p {
  margin: 9px 0 0;
  color: #e1eaf5;
  font-size: 15px;
  line-height: 1.75;
}

.noidaProfiles__headIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 57px;
  height: 57px;
  border: 1px solid rgba(240,180,41,0.4);
  border-radius: 50%;
  color: var(--np-gold-light);
  background: rgba(255,255,255,0.055);
  font-size: 27px;
  font-weight: 800;
}

.noidaProfiles__cardBody {
  padding: 31px 32px 33px;
}


/* =========================================================
   SCENARIO SUMMARY
========================================================= */

.noidaProfiles__scenario {
  padding: 20px 22px;
  border-left: 4px solid var(--np-gold-mid);
  border-radius: 0 10px 10px 0;
  background: #f7f9fd;
}

.noidaProfiles__miniLabel {
  display: block;
  margin-bottom: 7px;
  color: var(--np-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.2px;
}

.noidaProfiles__scenario p {
  margin: 0;
  color: #4e5e73;
  font-size: 16px;
  line-height: 1.85;
}

.noidaProfiles__scenario strong {
  color: var(--np-navy);
  font-weight: 900;
}


/* =========================================================
   KEY FACTS GRID
========================================================= */

.noidaProfiles__factGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0 31px;
}

.noidaProfiles__fact {
  min-width: 0;
  padding: 17px 15px;
  border: 1px solid #e3eaf3;
  border-radius: 10px;
  background: #ffffff;
}

.noidaProfiles__fact span {
  display: block;
  margin-bottom: 6px;
  color: var(--np-muted);
  font-size: 15px;
  line-height: 1.55;
}

.noidaProfiles__fact strong {
  display: block;
  color: var(--np-navy);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.45;
  overflow-wrap: anywhere;
}


/* =========================================================
   ANALYSIS AND EVIDENCE
========================================================= */

.noidaProfiles__analysis {
  margin-top: 27px;
}

.noidaProfiles__analysis > h3 {
  position: relative;
  margin: 0 0 13px;
  padding-bottom: 12px;
  color: var(--np-navy-dark);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaProfiles__analysis > h3::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 52px;
  height: 3px;
  border-radius: 3px;
  content: "";
  background: var(--np-gold-mid);
}

.noidaProfiles__analysis > p {
  margin: 0 0 20px;
  color: var(--np-muted);
  font-size: 16px;
  line-height: 1.85;
}

.noidaProfiles__evidence {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 13px;
  padding: 18px;
  border: 1px solid #e5ebf3;
  border-radius: 11px;
  background: #ffffff;
}

.noidaProfiles__evidenceIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border-radius: 10px;
  color: var(--np-gold);
  background: var(--np-gold-pale);
  font-size: 15px;
  font-weight: 900;
}

.noidaProfiles__evidence > div:last-child {
  min-width: 0;
}

.noidaProfiles__evidence strong {
  display: block;
  margin-bottom: 4px;
  color: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.55;
}

.noidaProfiles__evidence p {
  margin: 0;
  color: #56657a;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   VALUE BANNER
========================================================= */

.noidaProfiles__valueBanner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 25px 0;
  padding: 23px 25px;
  border: 1px solid rgba(217,154,22,0.5);
  border-radius: 12px;
  background:
    radial-gradient(
      circle at 90% 20%,
      rgba(217,154,22,0.16),
      transparent 35%
    ),
    linear-gradient(115deg, #fffdf8, #fff7e5);
}

.noidaProfiles__valueBanner > div:first-child {
  min-width: 0;
}

.noidaProfiles__valueBanner > div:first-child > strong {
  display: block;
  margin: 1px 0 4px;
  color: var(--np-navy-dark);
  font-size: clamp(29px, 3.4vw, 39px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.8px;
  overflow-wrap: anywhere;
}

.noidaProfiles__valueBanner p {
  margin: 5px 0 0;
  color: #5b6472;
  font-size: 15px;
  line-height: 1.65;
}

.noidaProfiles__valueBadge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 85px;
  height: 85px;
  flex: 0 0 85px;
  border: 1px solid #dfbd70;
  border-radius: 50%;
  color: var(--np-gold);
  background: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}

.noidaProfiles__valueBadge strong {
  color: var(--np-navy);
  font-size: 20px;
  font-weight: 900;
}


/* =========================================================
   SUBHEADING AND CALCULATION TABLE
========================================================= */

.noidaProfiles__subheading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 31px 0 17px;
}

.noidaProfiles__subheading > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--np-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaProfiles__subheading h3 {
  margin: 0;
  color: var(--np-navy-dark);
  font-size: 21px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaProfiles__tableWrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--np-border);
  border-radius: 11px;
  background: #ffffff;
}

.noidaProfiles__table {
  width: 100%;
  min-width: 540px;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.65;
  text-align: left;
}

.noidaProfiles__table thead {
  color: #ffffff;
  background: var(--np-navy);
}

.noidaProfiles__table th {
  padding: 15px 17px;
  font-size: 15px;
  font-weight: 900;
  vertical-align: top;
}

.noidaProfiles__table td {
  padding: 14px 17px;
  border-bottom: 1px solid #e7edf4;
  color: #4f5d70;
  vertical-align: top;
}

.noidaProfiles__table tbody tr:last-child td {
  border-bottom: 0;
}

.noidaProfiles__table td:first-child {
  color: var(--np-navy);
  font-weight: 800;
}

.noidaProfiles__tableHighlight td {
  color: var(--np-navy-dark);
  background: #fff7e5;
  font-weight: 900;
}


/* =========================================================
   CALCULATION PANELS
========================================================= */

.noidaProfiles__calculation {
  overflow: hidden;
  margin-top: 17px;
  border: 1px solid #dfe7f1;
  border-radius: 12px;
  background: #ffffff;
}

.noidaProfiles__calculationHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 15px 19px;
  border-bottom: 1px solid #e4eaf2;
  background: #f6f8fc;
}

.noidaProfiles__calculationHeader > span {
  color: var(--np-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaProfiles__calculationHeader > strong {
  color: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaProfiles__calculationBody {
  padding: 5px 19px;
}

.noidaProfiles__formula {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 0;
  border-bottom: 1px solid #edf1f6;
}

.noidaProfiles__formula:last-child {
  border-bottom: 0;
}

.noidaProfiles__formula > span {
  color: #56657a;
  font-size: 15px;
  line-height: 1.7;
}

.noidaProfiles__formula > strong {
  color: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
  text-align: right;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.noidaProfiles__formulaTotal {
  margin: 0 -19px;
  padding: 16px 19px;
  background: #fff8e9;
}

.noidaProfiles__formulaTotal > strong {
  color: var(--np-gold);
  font-size: 18px;
}


/* =========================================================
   METRIC CARDS
========================================================= */

.noidaProfiles__metricGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
  margin: 24px 0;
}

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

.noidaProfiles__metric {
  min-width: 0;
  padding: 20px 18px;
  border: 1px solid #dfe7f1;
  border-radius: 11px;
  background: #f8fafd;
}

.noidaProfiles__metric > span {
  display: block;
  margin-bottom: 7px;
  color: #59697e;
  font-size: 15px;
  line-height: 1.6;
}

.noidaProfiles__metric > strong {
  display: block;
  color: var(--np-navy);
  font-size: clamp(23px, 2.7vw, 31px);
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: -0.5px;
  overflow-wrap: anywhere;
}

.noidaProfiles__metric > small {
  display: block;
  margin-top: 6px;
  color: #657286;
  font-size: 15px;
  line-height: 1.6;
}


/* =========================================================
   CAUTION / VERIFICATION PANELS
========================================================= */

.noidaProfiles__caution {
  margin-top: 22px;
  padding: 18px 20px;
  border: 1px solid #e9d6ad;
  border-left: 4px solid var(--np-gold-mid);
  border-radius: 0 10px 10px 0;
  background: #fffaf0;
}

.noidaProfiles__caution > strong {
  display: block;
  margin-bottom: 5px;
  color: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaProfiles__caution p {
  margin: 0;
  color: #596579;
  font-size: 15px;
  line-height: 1.85;
}


/* =========================================================
   PROFILE SUMMARY
========================================================= */

.noidaProfiles__profileSummary {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 24px;
  padding: 20px;
  border: 1px solid #d8e5dc;
  border-radius: 11px;
  background: #f5faf7;
}

.noidaProfiles__summaryMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--np-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaProfiles__profileSummary p {
  margin: 0;
  color: #4c5f57;
  font-size: 15px;
  line-height: 1.85;
}

.noidaProfiles__profileSummary strong {
  color: var(--np-navy);
  font-weight: 900;
}


/* =========================================================
   VARIANT ACCENTS
========================================================= */

.noidaProfiles__card--capital .noidaProfiles__category,
.noidaProfiles__card--capital .noidaProfiles__headIcon {
  color: var(--np-gold-light);
}

.noidaProfiles__card--border .noidaProfiles__profileNo {
  border-radius: 50%;
}

.noidaProfiles__card--film .noidaProfiles__headIcon {
  border-radius: 12px;
}

.noidaProfiles__card--insolvency .noidaProfiles__headIcon {
  border-radius: 12px 12px 12px 3px;
}

.noidaProfiles__card--commercial .noidaProfiles__headIcon {
  border-radius: 12px;
}


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

.noidaProfiles__cta {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 32px;
  overflow: hidden;
  margin-top: 42px;
  padding: 36px 35px;
  border: 1px solid rgba(240,180,41,0.5);
  border-radius: 17px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 95% 0%,
      rgba(217,154,22,0.2),
      transparent 36%
    ),
    linear-gradient(
      120deg,
      var(--np-navy-dark),
      var(--np-navy)
    );
  box-shadow: 0 17px 40px rgba(4,21,45,0.15);
}

.noidaProfiles__ctaOrnament {
  position: absolute;
  z-index: -1;
  top: -90px;
  right: 23%;
  width: 210px;
  height: 210px;
  border: 1px solid rgba(240,180,41,0.15);
  border-radius: 50%;
  box-shadow:
    0 0 0 22px rgba(240,180,41,0.035),
    0 0 0 45px rgba(240,180,41,0.025);
}

.noidaProfiles__ctaContent {
  max-width: 650px;
}

.noidaProfiles__ctaEyebrow {
  display: block;
  margin-bottom: 9px;
  color: var(--np-gold-light);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.noidaProfiles__ctaContent h2 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.7px;
}

.noidaProfiles__ctaContent p {
  margin: 0;
  color: #e1eaf5;
  font-size: 16px;
  line-height: 1.85;
}

.noidaProfiles__ctaContent p strong {
  color: var(--np-gold-light);
  font-weight: 900;
}

.noidaProfiles__ctaActions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 13px;
  min-width: 235px;
}

.noidaProfiles__ctaButton {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 57px;
  padding: 14px 19px;
  border: 2px solid var(--np-gold-light);
  border-radius: 9px;
  color: var(--np-navy-dark) !important;
  background: linear-gradient(
    135deg,
    var(--np-gold-light),
    var(--np-gold-mid)
  );
  box-shadow: 0 8px 22px rgba(217,154,22,0.2);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease;
}

.noidaProfiles__ctaButton:hover {
  transform: translateY(-3px);
  color: var(--np-navy-dark) !important;
  background: #ffca48;
  box-shadow: 0 12px 27px rgba(217,154,22,0.3);
}

.noidaProfiles__ctaButton span {
  font-size: 22px;
  transition: transform 0.2s ease;
}

.noidaProfiles__ctaButton:hover span {
  transform: translateX(4px);
}

.noidaProfiles__ctaCall {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 59px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,0.32);
  border-radius: 9px;
  color: #ffffff !important;
  background: rgba(255,255,255,0.045);
  transition:
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaProfiles__ctaCall:hover {
  color: #ffffff !important;
  border-color: var(--np-gold-light);
  background: rgba(255,255,255,0.1);
}

.noidaProfiles__ctaPhoneIcon {
  color: var(--np-gold-light);
  font-size: 23px;
}

.noidaProfiles__ctaCall small,
.noidaProfiles__ctaCall strong {
  display: block;
  text-align: left;
}

.noidaProfiles__ctaCall small {
  color: #e0e8f3;
  font-size: 15px;
  line-height: 1.5;
}

.noidaProfiles__ctaCall strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}


/* =========================================================
   FINAL DISCLAIMER
========================================================= */

.noidaProfiles__disclaimer {
  margin: 23px 0 0;
  padding: 0 5px;
  color: #68768a;
  font-size: 15px;
  line-height: 1.85;
}

.noidaProfiles__disclaimer strong {
  color: var(--np-navy);
  font-weight: 900;
}


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

.noidaProfiles a:focus-visible {
  outline: 3px solid var(--np-gold-mid);
  outline-offset: 4px;
}


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

@media (max-width: 900px) {
  .noidaProfiles {
    padding: 61px 0 70px;
  }

  .noidaProfiles__cardHead {
    grid-template-columns: 52px minmax(0, 1fr) 48px;
    gap: 15px;
    padding: 25px 24px;
  }

  .noidaProfiles__profileNo {
    width: 50px;
    height: 50px;
  }

  .noidaProfiles__headIcon {
    width: 47px;
    height: 47px;
  }

  .noidaProfiles__cardBody {
    padding: 25px 24px 27px;
  }

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

  .noidaProfiles__cta {
    grid-template-columns: minmax(0, 1fr);
    gap: 23px;
  }

  .noidaProfiles__ctaActions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
}


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

@media (max-width: 600px) {
  .noidaProfiles {
    padding: 46px 0 55px;
  }

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

  .noidaProfiles__intro {
    margin-bottom: 30px;
  }

  .noidaProfiles__eyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaProfiles__eyebrow span {
    width: 19px;
    flex-basis: 19px;
  }

  .noidaProfiles__intro h1 {
    font-size: clamp(30px, 8vw, 39px);
    letter-spacing: -0.7px;
  }

  .noidaProfiles__introText {
    font-size: 16px;
    line-height: 1.8;
  }

  .noidaProfiles__introChips {
    gap: 8px;
  }

  .noidaProfiles__introChips span {
    padding: 7px 11px;
  }

  .noidaProfiles__introNotice {
    padding: 15px;
  }

  .noidaProfiles__card {
    margin-top: 22px;
    border-radius: 13px;
  }

  .noidaProfiles__cardHead {
    grid-template-columns: 45px minmax(0, 1fr);
    gap: 13px;
    padding: 21px 17px;
  }

  .noidaProfiles__profileNo {
    width: 44px;
    height: 44px;
    border-radius: 9px;
    font-size: 17px;
  }

  .noidaProfiles__headIcon {
    display: none;
  }

  .noidaProfiles__category {
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaProfiles__headText h2 {
    font-size: 23px;
    line-height: 1.35;
  }

  .noidaProfiles__headText p {
    font-size: 15px;
  }

  .noidaProfiles__cardBody {
    padding: 19px 16px 22px;
  }

  .noidaProfiles__scenario {
    padding: 16px;
  }

  .noidaProfiles__scenario p {
    font-size: 15px;
    line-height: 1.8;
  }

  .noidaProfiles__factGrid {
    gap: 9px;
    margin: 15px 0 24px;
  }

  .noidaProfiles__fact {
    padding: 14px 12px;
  }

  .noidaProfiles__fact span {
    font-size: 15px;
  }

  .noidaProfiles__fact strong {
    font-size: 17px;
  }

  .noidaProfiles__analysis > h3 {
    font-size: 21px;
  }

  .noidaProfiles__evidence {
    gap: 11px;
    padding: 14px;
  }

  .noidaProfiles__evidenceIcon {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }

  .noidaProfiles__evidence strong {
    font-size: 15px;
  }

  .noidaProfiles__evidence p {
    font-size: 15px;
  }

  .noidaProfiles__valueBanner {
    align-items: flex-start;
    gap: 12px;
    padding: 18px 16px;
  }

  .noidaProfiles__valueBadge {
    width: 68px;
    height: 68px;
    flex-basis: 68px;
    font-size: 15px;
  }

  .noidaProfiles__valueBadge strong {
    font-size: 18px;
  }

  .noidaProfiles__valueBanner > div:first-child > strong {
    font-size: 29px;
  }

  .noidaProfiles__subheading {
    align-items: flex-start;
    gap: 10px;
  }

  .noidaProfiles__subheading h3 {
    font-size: 19px;
  }

  .noidaProfiles__metricGrid,
  .noidaProfiles__metricGrid--two {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .noidaProfiles__metric {
    padding: 16px;
  }

  .noidaProfiles__metric > strong {
    font-size: 27px;
  }

  .noidaProfiles__formula {
    flex-direction: column;
    gap: 4px;
  }

  .noidaProfiles__formula > strong {
    text-align: left;
  }

  .noidaProfiles__calculationHeader {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaProfiles__caution {
    padding: 15px;
  }

  .noidaProfiles__profileSummary {
    gap: 10px;
    padding: 15px;
  }

  .noidaProfiles__cta {
    gap: 22px;
    margin-top: 29px;
    padding: 25px 19px;
    border-radius: 13px;
  }

  .noidaProfiles__ctaContent h2 {
    font-size: 27px;
  }

  .noidaProfiles__ctaActions {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaProfiles__ctaButton,
  .noidaProfiles__ctaCall {
    width: 100%;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaProfiles *,
  .noidaProfiles *::before,
  .noidaProfiles *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   THREE STEPS — NOIDA ENGAGEMENT GUIDE
   Unique namespace: noidaEngage
   Royal navy + gold palette
   Minimum font size: 15px
========================================================= */

.noidaEngagePage {
  --ne-navy: #092f62;
  --ne-deep: #061d3d;
  --ne-dark: #04152d;
  --ne-gold: #b97800;
  --ne-gold-main: #d99a16;
  --ne-gold-light: #f0b429;
  --ne-cream: #fff9ec;
  --ne-white: #ffffff;
  --ne-text: #28384e;
  --ne-muted: #5a6b81;
  --ne-border: #dfe7f1;
  --ne-light: #f7faff;

  width: 100%;
  overflow: hidden;
  color: var(--ne-text);
  background: var(--ne-white);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

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

.noidaEngagePage a {
  text-decoration: none;
}

.noidaEngageContainer {
  width: min(1180px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   HERO — ROYAL NAVY INTRODUCTION
========================================================= */

.noidaEngageHero {
  position: relative;
  isolation: isolate;
  padding: 76px 0 67px;
  overflow: hidden;
  color: var(--ne-white);
  background:
    radial-gradient(
      circle at 90% 5%,
      rgba(240,180,41,0.16),
      transparent 29%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 60%,
      #061d3d 100%
    );
}

.noidaEngageHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: 0.16;
  background-image:
    linear-gradient(rgba(255,255,255,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px);
  background-size: 43px 43px;
  mask-image: linear-gradient(to bottom, black, transparent 95%);
}

.noidaEngageHeroInner {
  max-width: 1000px;
  margin-inline: auto;
  text-align: center;
}

.noidaEngageEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-bottom: 20px;
  color: var(--ne-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1.6;
}

.noidaEngageEyebrowLine {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--ne-gold-light);
}

.noidaEngageHero h1 {
  margin: 0 0 22px;
  color: #ffffff;
  font-size: clamp(38px, 5vw, 60px);
  font-weight: 900;
  line-height: 1.14;
  letter-spacing: -1.7px;
}

.noidaEngageHero h1 span {
  display: block;
  margin-top: 10px;
  color: var(--ne-gold-light);
  font-size: 0.73em;
  line-height: 1.35;
  letter-spacing: -0.6px;
}

.noidaEngageHeroText {
  max-width: 850px;
  margin: 0 auto;
  color: #e7eef8;
  font-size: 18px;
  line-height: 1.9;
}

.noidaEngageHeroText strong {
  color: var(--ne-gold-light);
  font-weight: 800;
}


/* Hero journey highlights */

.noidaEngageHeroHighlights {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 36px;
  padding: 20px 24px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 13px;
  background: rgba(255,255,255,0.055);
}

.noidaEngageHeroHighlight {
  display: flex;
  align-items: center;
  gap: 11px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}

.noidaEngageHighlightIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 1px solid rgba(240,180,41,0.7);
  border-radius: 9px;
  color: var(--ne-gold-light);
  background: rgba(217,154,22,0.1);
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageHighlightDivider {
  width: 1px;
  height: 29px;
  background: rgba(255,255,255,0.22);
}


/* =========================================================
   REUSABLE CTA BUTTONS
========================================================= */

.noidaEngageHeroActions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.noidaEngageBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 57px;
  padding: 14px 22px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease;
}

.noidaEngageBtn:hover {
  transform: translateY(-3px);
}

.noidaEngageBtnGold {
  color: var(--ne-deep) !important;
  background: linear-gradient(
    135deg,
    #f0b429 0%,
    #d99a16 100%
  );
  border-color: #f0b429;
  box-shadow: 0 9px 23px rgba(217,154,22,0.23);
}

.noidaEngageBtnGold:hover {
  color: var(--ne-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(217,154,22,0.32);
}

.noidaEngageBtnArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 23px;
  line-height: 1;
  transition: transform 0.2s ease;
}

.noidaEngageBtnGold:hover .noidaEngageBtnArrow {
  transform: translateX(4px);
}

.noidaEngageBtnOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.42);
}

.noidaEngageBtnOutline:hover {
  color: #ffffff !important;
  border-color: var(--ne-gold-light);
  background: rgba(255,255,255,0.1);
}

.noidaEngageBtnPhone {
  color: var(--ne-gold-light);
  font-size: 21px;
  line-height: 1;
}

.noidaEngageHeroTrust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 26px;
}

.noidaEngageTrustCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border-radius: 50%;
  color: var(--ne-deep);
  background: var(--ne-gold-light);
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageHeroTrust p {
  margin: 0;
  color: #dfe8f5;
  font-size: 15px;
  line-height: 1.7;
}

.noidaEngageHeroTrust strong {
  color: #ffffff;
  font-weight: 800;
}


/* =========================================================
   JOURNEY OVERVIEW
========================================================= */

.noidaEngageOverview {
  padding: 69px 0 74px;
  background:
    radial-gradient(
      circle at 5% 10%,
      rgba(217,154,22,0.08),
      transparent 24%
    ),
    #ffffff;
}

.noidaEngageSectionIntro {
  max-width: 830px;
  margin: 0 auto 35px;
  text-align: center;
}

.noidaEngageSectionKicker {
  display: block;
  margin-bottom: 12px;
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.8px;
  line-height: 1.6;
}

.noidaEngageSectionIntro h2 {
  margin: 0 0 16px;
  color: var(--ne-deep);
  font-size: clamp(30px, 3.6vw, 43px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.8px;
}

.noidaEngageSectionIntro h2 span {
  color: var(--ne-gold);
}

.noidaEngageSectionIntro > p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 17px;
  line-height: 1.85;
}


/* Journey steps */

.noidaEngageJourney {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 45px minmax(0, 1fr) 45px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 24px;
  border: 1px solid var(--ne-border);
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 13px 35px rgba(9,47,98,0.055);
}

.noidaEngageJourneyItem {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
}

.noidaEngageJourneyNumber {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 53px;
  height: 53px;
  flex: 0 0 53px;
  border-radius: 13px;
  color: var(--ne-deep);
  background: linear-gradient(
    135deg,
    var(--ne-gold-light),
    var(--ne-gold-main)
  );
  font-size: 17px;
  font-weight: 900;
}

.noidaEngageJourneyText h3 {
  margin: 0 0 4px;
  color: var(--ne-navy);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaEngageJourneyText p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.6;
}

.noidaEngageJourneyConnector {
  width: 100%;
  height: 2px;
  background: repeating-linear-gradient(
    90deg,
    var(--ne-gold-main) 0 6px,
    transparent 6px 11px
  );
}


/* =========================================================
   STEP SECTIONS
========================================================= */

.noidaEngageStep {
  position: relative;
  padding: 76px 0;
}

.noidaEngageStepOne {
  background: #f6f9fe;
}

.noidaEngageStepTwo {
  background: #ffffff;
}

.noidaEngageStepThree {
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.06),
      transparent 27%
    ),
    #f6f9fe;
}

.noidaEngageStepGrid {
  display: grid;
  grid-template-columns: 225px minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}


/* Step side panel */

.noidaEngageStepSide {
  position: sticky;
  top: 25px;
  min-width: 0;
  padding: 27px 23px;
  border: 1px solid #e2d3b2;
  border-radius: 15px;
  background: linear-gradient(
    155deg,
    #ffffff 0%,
    #fff9ec 100%
  );
  box-shadow: 0 12px 30px rgba(9,47,98,0.05);
}

.noidaEngageStepNumber {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.noidaEngageStepNumber span {
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1.5;
}

.noidaEngageStepNumber strong {
  display: block;
  margin-top: 2px;
  color: var(--ne-navy);
  font-size: 70px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -3px;
}

.noidaEngageStepSideRule {
  width: 58px;
  height: 4px;
  margin: 21px 0 19px;
  border-radius: 4px;
  background: linear-gradient(
    90deg,
    var(--ne-gold),
    var(--ne-gold-light)
  );
}

.noidaEngageStepSideLabel {
  margin: 0;
  color: var(--ne-navy);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.7;
}

.noidaEngageStepSideBadge {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 24px;
  padding-top: 17px;
  border-top: 1px solid #e8dcc5;
  color: var(--ne-muted);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
}

.noidaEngageStepSideBadge span:first-child {
  color: var(--ne-gold);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.3;
}


/* Step headings and copy */

.noidaEngageStepContent {
  min-width: 0;
}

.noidaEngageStepKicker {
  display: block;
  margin-bottom: 12px;
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.7px;
  line-height: 1.6;
}

.noidaEngageStepContent > h2 {
  margin: 0 0 19px;
  color: var(--ne-deep);
  font-size: clamp(30px, 3.4vw, 43px);
  font-weight: 900;
  line-height: 1.23;
  letter-spacing: -0.8px;
}

.noidaEngageStepContent > h2 span {
  display: block;
  color: var(--ne-gold);
}

.noidaEngageStepLead {
  margin: 0 0 25px;
  color: var(--ne-muted);
  font-size: 17px;
  line-height: 1.9;
}

.noidaEngageStepLead strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STEP 1: CONTACT STRIP
========================================================= */

.noidaEngageContactStrip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 25px 0 30px;
}

.noidaEngageContactStrip > a {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  padding: 15px 12px;
  border: 1px solid var(--ne-border);
  border-radius: 10px;
  color: var(--ne-navy);
  background: #ffffff;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

.noidaEngageContactStrip > a:hover {
  transform: translateY(-2px);
  border-color: var(--ne-gold-main);
  box-shadow: 0 8px 22px rgba(9,47,98,0.07);
}

.noidaEngageContactIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 9px;
  color: var(--ne-gold);
  background: var(--ne-cream);
  font-size: 20px;
}

.noidaEngageContactStrip small,
.noidaEngageContactStrip strong {
  display: block;
  overflow-wrap: anywhere;
}

.noidaEngageContactStrip small {
  margin-bottom: 3px;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.4;
}

.noidaEngageContactStrip strong {
  color: var(--ne-navy);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
}


/* Step 1: information cards */

.noidaEngageInfoGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 13px;
}

.noidaEngageInfoCard {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 15px;
  padding: 20px;
  border: 1px solid var(--ne-border);
  border-radius: 12px;
  background: #ffffff;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.noidaEngageInfoCard:hover {
  border-color: #d8b15d;
  box-shadow: 0 10px 24px rgba(9,47,98,0.055);
}

.noidaEngageInfoCardNumber {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  color: var(--ne-deep);
  background: #f7e8c2;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageInfoCard h3 {
  margin: 0 0 7px;
  color: var(--ne-navy);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaEngageInfoCard p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngageInfoCard p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* Insight panel */

.noidaEngageInsight {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 14px;
  margin-top: 21px;
  padding: 21px;
  border: 1px solid #e5d1a5;
  border-radius: 12px;
  background: #fff9ec;
}

.noidaEngageInsightIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaEngageInsight strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ne-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaEngageInsight p {
  margin: 0;
  color: #58657a;
  font-size: 15px;
  line-height: 1.85;
}


/* =========================================================
   STEP 2: ESTIMATE BANNER
========================================================= */

.noidaEngageEstimateBanner {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 25px 0 31px;
  padding: 22px;
  border: 1px solid #e7d3a7;
  border-radius: 13px;
  background: linear-gradient(
    110deg,
    #fff9ec,
    #ffffff
  );
}

.noidaEngageEstimateIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 76px;
  flex: 0 0 76px;
  border-radius: 15px;
  color: var(--ne-deep);
  background: linear-gradient(
    135deg,
    var(--ne-gold-light),
    var(--ne-gold-main)
  );
  font-size: 23px;
  font-weight: 900;
  letter-spacing: -0.6px;
  box-shadow: 0 8px 18px rgba(185,120,0,0.15);
}

.noidaEngageEstimateBanner strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ne-navy);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaEngageEstimateBanner p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.8;
}

.noidaEngageSubheading {
  margin: 0 0 18px;
  color: var(--ne-deep);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}


/* Scope checklist grid */

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

.noidaEngageScopeItem {
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 17px;
  border: 1px solid var(--ne-border);
  border-radius: 11px;
  background: #ffffff;
  transition:
    border-color 0.2s ease,
    transform 0.2s ease;
}

.noidaEngageScopeItem:hover {
  transform: translateY(-2px);
  border-color: #d8b15d;
}

.noidaEngageScopeCheck {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: var(--ne-deep);
  background: #f7e8c2;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageScopeItem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ne-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaEngageScopeItem p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.75;
}


/* Fee note */

.noidaEngageFeeNote {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 12px;
  margin-top: 21px;
  padding: 19px;
  border-left: 4px solid var(--ne-gold-main);
  border-radius: 0 10px 10px 0;
  background: #f6f8fc;
}

.noidaEngageFeeNoteIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageFeeNote p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngageFeeNote p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STEP 3: PROCESS TIMELINE
========================================================= */

.noidaEngageProcessTimeline {
  position: relative;
  margin: 30px 0;
}

.noidaEngageProcessTimeline::before {
  position: absolute;
  top: 23px;
  bottom: 37px;
  left: 22px;
  width: 2px;
  content: "";
  background: linear-gradient(
    to bottom,
    var(--ne-gold-main),
    #e2d2ad
  );
}

.noidaEngageTimelineItem {
  position: relative;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 18px;
  padding-bottom: 27px;
}

.noidaEngageTimelineItem:last-child {
  padding-bottom: 0;
}

.noidaEngageTimelineMarker {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 3px solid #ffffff;
  border-radius: 50%;
  color: var(--ne-deep);
  background: var(--ne-gold-light);
  box-shadow: 0 0 0 1px #e3c77e;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngageTimelineContent {
  padding: 3px 0 0;
}

.noidaEngageTimelineContent h3 {
  margin: 0 0 8px;
  color: var(--ne-navy);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaEngageTimelineContent p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.9;
}

.noidaEngageTimelineContent p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* Standards panel */

.noidaEngageStandardsPanel {
  display: grid;
  grid-template-columns: 53px minmax(0, 1fr);
  gap: 17px;
  margin: 30px 0;
  padding: 25px;
  border: 1px solid #e5d1a5;
  border-radius: 13px;
  background: linear-gradient(
    125deg,
    #fff9ec,
    #ffffff
  );
}

.noidaEngageStandardsIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 51px;
  height: 51px;
  border-radius: 13px;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 25px;
  font-weight: 900;
}

.noidaEngageStandardsKicker {
  display: block;
  margin-bottom: 6px;
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 1.5;
}

.noidaEngageStandardsPanel h3 {
  margin: 0 0 8px;
  color: var(--ne-navy);
  font-size: 21px;
  font-weight: 900;
  line-height: 1.45;
}

.noidaEngageStandardsPanel p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngageStandardsPanel p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STEP 3: POST-ENGAGEMENT SUPPORT
========================================================= */

.noidaEngagePostSupport {
  margin-top: 30px;
  padding: 25px;
  border: 1px solid #d9e3f0;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 9px 24px rgba(9,47,98,0.04);
}

.noidaEngagePostSupportHeader {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.noidaEngagePostSupportIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  flex: 0 0 47px;
  border-radius: 12px;
  color: var(--ne-deep);
  background: #f7e8c2;
  font-size: 24px;
  font-weight: 900;
}

.noidaEngagePostSupportHeader .noidaEngageStepKicker {
  margin-bottom: 4px;
}

.noidaEngagePostSupportHeader h3 {
  margin: 0;
  color: var(--ne-navy);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaEngagePostSupport > p {
  margin: 0 0 19px;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngageSupportTags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.noidaEngageSupportTags span {
  display: inline-flex;
  align-items: center;
  min-height: 39px;
  padding: 8px 12px;
  border: 1px solid #dbe5f1;
  border-radius: 7px;
  color: var(--ne-navy);
  background: #f6f9fe;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}


/* =========================================================
   STEP CTA ACTIONS
========================================================= */

.noidaEngageStepActions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 22px;
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid #dfe6ef;
}

.noidaEngageTextCall {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  color: var(--ne-navy) !important;
  font-size: 16px;
  font-weight: 900;
  transition: color 0.2s ease;
}

.noidaEngageTextCall span {
  color: var(--ne-gold);
  font-size: 21px;
}

.noidaEngageTextCall:hover {
  color: var(--ne-gold) !important;
}


/* =========================================================
   FINAL CTA — HIGH-CONTRAST CONVERSION PANEL
========================================================= */

.noidaEngageFinalCta {
  padding: 74px 0;
  background:
    radial-gradient(
      circle at 4% 10%,
      rgba(217,154,22,0.09),
      transparent 25%
    ),
    #ffffff;
}

.noidaEngageFinalPanel {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 35px;
  overflow: hidden;
  padding: 42px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 18px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.2),
      transparent 34%
    ),
    linear-gradient(
      120deg,
      #04152d,
      #092f62
    );
  box-shadow: 0 22px 48px rgba(9,47,98,0.15);
}

.noidaEngageFinalDecor {
  position: absolute;
  z-index: -1;
  right: 30%;
  bottom: -100px;
  display: flex;
  align-items: center;
  gap: 13px;
  transform: rotate(-28deg);
  opacity: 0.13;
}

.noidaEngageFinalDecor span {
  display: block;
  width: 34px;
  height: 350px;
  border: 2px solid var(--ne-gold-light);
  border-radius: 30px;
}

.noidaEngageFinalContent {
  max-width: 700px;
}

.noidaEngageFinalKicker {
  display: block;
  margin-bottom: 10px;
  color: var(--ne-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.8px;
  line-height: 1.5;
}

.noidaEngageFinalContent h2 {
  margin: 0 0 14px;
  color: #ffffff;
  font-size: clamp(29px, 3.3vw, 41px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.7px;
}

.noidaEngageFinalContent h2 span {
  color: var(--ne-gold-light);
}

.noidaEngageFinalContent > p {
  margin: 0;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.85;
}

.noidaEngageFinalContact {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 19px;
}

.noidaEngageFinalContact > span {
  color: var(--ne-gold-light);
  font-size: 21px;
}

.noidaEngageFinalContact a {
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.noidaEngageFinalContact a:hover {
  color: var(--ne-gold-light) !important;
}

.noidaEngageFinalActions {
  display: flex;
  flex: 0 0 245px;
  flex-direction: column;
  gap: 13px;
}

.noidaEngageFinalActions .noidaEngageBtn {
  width: 100%;
  min-height: 57px;
}

.noidaEngageBtnLight {
  color: var(--ne-navy) !important;
  background: #ffffff;
  border-color: #ffffff;
}

.noidaEngageBtnLight:hover {
  color: var(--ne-deep) !important;
  background: var(--ne-cream);
  border-color: var(--ne-gold-light);
}


/* =========================================================
   ACCESSIBILITY — KEYBOARD FOCUS
========================================================= */

.noidaEngagePage a:focus-visible {
  outline: 3px solid var(--ne-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE — TABLET
========================================================= */

@media (max-width: 1000px) {
  .noidaEngageStepGrid {
    grid-template-columns: 165px minmax(0, 1fr);
    gap: 30px;
  }

  .noidaEngageStepSide {
    padding: 22px 17px;
  }

  .noidaEngageStepNumber strong {
    font-size: 59px;
  }

  .noidaEngageJourney {
    grid-template-columns: minmax(0, 1fr);
    gap: 17px;
  }

  .noidaEngageJourneyConnector {
    width: 2px;
    height: 18px;
    margin-left: 25px;
    background: repeating-linear-gradient(
      to bottom,
      var(--ne-gold-main) 0 5px,
      transparent 5px 9px
    );
  }

  .noidaEngageFinalPanel {
    align-items: flex-start;
    flex-direction: column;
  }

  .noidaEngageFinalActions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    flex: auto;
  }
}


/* =========================================================
   RESPONSIVE — MOBILE
========================================================= */

@media (max-width: 700px) {
  .noidaEngageContainer {
    width: calc(100% - 32px);
  }

  .noidaEngageHero {
    padding: 51px 0 48px;
  }

  .noidaEngageHero h1 {
    font-size: clamp(34px, 8.5vw, 43px);
    letter-spacing: -0.9px;
  }

  .noidaEngageHero h1 span {
    font-size: 0.74em;
  }

  .noidaEngageHeroText {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaEngageHeroHighlights {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
    padding: 19px;
  }

  .noidaEngageHighlightDivider {
    width: 100%;
    height: 1px;
  }

  .noidaEngageHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .noidaEngageBtn {
    width: 100%;
    min-height: 56px;
  }

  .noidaEngageHeroTrust {
    align-items: flex-start;
    text-align: left;
  }

  .noidaEngageOverview {
    padding: 53px 0 56px;
  }

  .noidaEngageSectionIntro h2 {
    font-size: clamp(29px, 7.3vw, 36px);
  }

  .noidaEngageSectionIntro > p {
    font-size: 16px;
  }

  .noidaEngageJourney {
    padding: 19px;
  }

  .noidaEngageStep {
    padding: 54px 0;
  }

  .noidaEngageStepGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 27px;
  }

  .noidaEngageStepSide {
    position: relative;
    top: auto;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0 19px;
    padding: 17px 20px;
  }

  .noidaEngageStepNumber {
    grid-row: span 2;
  }

  .noidaEngageStepNumber strong {
    font-size: 46px;
    letter-spacing: -1.5px;
  }

  .noidaEngageStepNumber span {
    font-size: 15px;
  }

  .noidaEngageStepSideRule {
    display: none;
  }

  .noidaEngageStepSideLabel {
    align-self: end;
    font-size: 15px;
  }

  .noidaEngageStepSideBadge {
    align-self: start;
    margin-top: 5px;
    padding-top: 0;
    border-top: 0;
  }

  .noidaEngageStepContent > h2 {
    font-size: clamp(29px, 7.3vw, 37px);
    letter-spacing: -0.5px;
  }

  .noidaEngageStepLead {
    font-size: 16px;
  }

  .noidaEngageContactStrip {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaEngageContactStrip > a {
    padding: 14px;
  }

  .noidaEngageInfoCard {
    padding: 17px;
  }

  .noidaEngageScopeGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaEngageEstimateBanner {
    align-items: flex-start;
    padding: 18px;
  }

  .noidaEngageEstimateIcon {
    width: 64px;
    height: 64px;
    flex-basis: 64px;
    font-size: 21px;
  }

  .noidaEngageStandardsPanel,
  .noidaEngagePostSupport {
    padding: 19px;
  }

  .noidaEngageTimelineItem {
    gap: 13px;
  }

  .noidaEngageTimelineContent h3 {
    font-size: 19px;
  }

  .noidaEngageStepActions {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }

  .noidaEngageTextCall {
    justify-content: center;
  }

  .noidaEngageFinalCta {
    padding: 53px 0;
  }

  .noidaEngageFinalPanel {
    gap: 24px;
    padding: 26px 21px;
  }

  .noidaEngageFinalContent h2 {
    font-size: clamp(28px, 7vw, 35px);
  }

  .noidaEngageFinalActions {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* =========================================================
   RESPONSIVE — SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .noidaEngageContainer {
    width: calc(100% - 26px);
  }

  .noidaEngageEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaEngageEyebrowLine {
    width: 22px;
    flex-basis: 22px;
  }

  .noidaEngageHero h1 {
    font-size: 33px;
  }

  .noidaEngageStepSide {
    gap: 0 12px;
    padding: 15px;
  }

  .noidaEngageInfoCard {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 11px;
    padding: 15px;
  }

  .noidaEngageInfoCardNumber {
    width: 34px;
    height: 34px;
  }

  .noidaEngageTimelineItem {
    grid-template-columns: 39px minmax(0, 1fr);
    gap: 11px;
  }

  .noidaEngageTimelineMarker {
    width: 39px;
    height: 39px;
  }

  .noidaEngageProcessTimeline::before {
    left: 18px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaEngagePage *,
  .noidaEngagePage *::before,
  .noidaEngagePage *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

/* =========================================================
   GOVERNMENT APPROVED VALUERS NOIDA
   PAGE: THE NOIDA ENGAGEMENT — SIX STAGES
   Unique CSS namespace: noidaEngagement
   Palette: Royal Navy + Gold + White
   Minimum font size: 15px
========================================================= */

.noidaEngagement {
  --ne-navy: #092f62;
  --ne-navy-mid: #0d3c75;
  --ne-deep: #061d3d;
  --ne-dark: #04152d;
  --ne-gold: #b97800;
  --ne-gold-rich: #d99a16;
  --ne-gold-light: #f0b429;
  --ne-white: #ffffff;
  --ne-cream: #fff9ec;
  --ne-text: #263850;
  --ne-muted: #586b82;
  --ne-border: #dce5f0;
  --ne-soft: #f5f8fd;

  position: relative;
  width: 100%;
  overflow: hidden;
  color: var(--ne-text);
  background: #ffffff;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.8;
}

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

.noidaEngagement a {
  text-decoration: none;
}

.noidaEngagement p {
  overflow-wrap: anywhere;
}

.noidaEngagementContainer {
  width: min(1160px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   01. PAGE INTRO / HERO
========================================================= */

.noidaEngagementHero {
  position: relative;
  isolation: isolate;
  padding: 83px 0 68px;
  overflow: hidden;
  color: var(--ne-white);
  background:
    radial-gradient(
      circle at 90% 14%,
      rgba(240,180,41,0.16),
      transparent 28%
    ),
    linear-gradient(
      125deg,
      #04152d 0%,
      #092f62 58%,
      #061d3d 100%
    );
}

.noidaEngagementHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.19;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 45px 45px;
  mask-image: linear-gradient(to bottom, #000 0%, transparent 90%);
}

.noidaEngagementHero::after {
  position: absolute;
  z-index: -1;
  right: -125px;
  bottom: -205px;
  width: 430px;
  height: 430px;
  border: 1px solid rgba(240,180,41,0.2);
  border-radius: 50%;
  box-shadow:
    0 0 0 30px rgba(240,180,41,0.025),
    0 0 0 65px rgba(240,180,41,0.02);
  content: "";
  pointer-events: none;
}

.noidaEngagementHeroInner {
  max-width: 950px;
  margin-inline: auto;
  text-align: center;
}

.noidaEngagementEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 21px;
  color: var(--ne-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1.6;
}

.noidaEngagementEyebrowLine {
  display: inline-block;
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: var(--ne-gold-light);
}

.noidaEngagementHero h1 {
  margin: 0 0 23px;
  color: #ffffff;
  font-size: clamp(37px, 5vw, 59px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -1.5px;
}

.noidaEngagementHero h1 span {
  display: block;
  margin-top: 11px;
  color: var(--ne-gold-light);
  font-size: 0.78em;
  line-height: 1.3;
  letter-spacing: -0.7px;
}

.noidaEngagementHeroLead {
  max-width: 840px;
  margin: 0 auto 17px;
  color: #ffffff;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.8;
}

.noidaEngagementHeroLead strong {
  color: var(--ne-gold-light);
  font-weight: 900;
}

.noidaEngagementHeroText {
  max-width: 850px;
  margin: 0 auto;
  color: #e1eaf6;
  font-size: 16px;
  line-height: 1.9;
}

.noidaEngagementHeroText strong {
  color: #ffffff;
  font-weight: 800;
}


/* =========================================================
   SHARED CTA BUTTONS
========================================================= */

.noidaEngagementHeroActions {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 31px;
}

.noidaEngagementButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 59px;
  padding: 15px 22px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease;
}

.noidaEngagementButton:hover {
  transform: translateY(-3px);
}

.noidaEngagementButtonGold {
  color: #061d3d !important;
  background: linear-gradient(
    135deg,
    #f0b429,
    #d99a16
  );
  border-color: #f0b429;
  box-shadow: 0 9px 25px rgba(217,154,22,0.22);
}

.noidaEngagementButtonGold:hover {
  color: #04152d !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(217,154,22,0.31);
}

.noidaEngagementButtonOutline {
  color: #ffffff !important;
  background: rgba(255,255,255,0.055);
  border-color: rgba(255,255,255,0.43);
}

.noidaEngagementButtonOutline:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.13);
  border-color: var(--ne-gold-light);
}

.noidaEngagementButtonArrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 20px;
  transition: transform 0.22s ease;
}

.noidaEngagementButtonGold:hover .noidaEngagementButtonArrow {
  transform: translateX(3px);
}

.noidaEngagementPhoneIcon {
  font-size: 20px;
  line-height: 1;
}

.noidaEngagementHeroBottom {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--ne-gold),
    var(--ne-gold-light),
    var(--ne-gold),
    transparent
  );
}


/* Hero trust details */

.noidaEngagementHeroMeta {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 13px 25px;
  margin-top: 30px;
}

.noidaEngagementHeroMeta span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #e5edf7;
  font-size: 15px;
  font-weight: 700;
}

.noidaEngagementHeroMeta span i {
  display: inline-block;
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--ne-gold-light);
}


/* =========================================================
   02. SIX-STAGE OVERVIEW
========================================================= */

.noidaEngagementOverview {
  padding: 68px 0 70px;
  background:
    radial-gradient(
      circle at 8% 8%,
      rgba(217,154,22,0.07),
      transparent 25%
    ),
    #ffffff;
}

.noidaEngagementSectionHeading {
  max-width: 820px;
  margin: 0 auto 35px;
  text-align: center;
}

.noidaEngagementSectionKicker {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.7px;
}

.noidaEngagementSectionHeading h2 {
  margin: 0 0 15px;
  color: var(--ne-dark);
  font-size: clamp(30px, 3.7vw, 43px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.9px;
}

.noidaEngagementSectionHeading h2 span {
  color: var(--ne-gold);
}

.noidaEngagementSectionHeading > p {
  max-width: 740px;
  margin: 0 auto;
  color: var(--ne-muted);
  font-size: 16px;
  line-height: 1.85;
}


/* Progress links */

.noidaEngagementProgress {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border: 1px solid var(--ne-border);
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 10px 32px rgba(9,47,98,0.065);
}

.noidaEngagementProgressItem {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  min-height: 145px;
  padding: 19px 10px;
  color: var(--ne-navy) !important;
  text-align: center;
  transition: background 0.2s ease;
}

.noidaEngagementProgressItem + .noidaEngagementProgressItem {
  border-left: 1px solid #e7edf5;
}

.noidaEngagementProgressItem:hover {
  background: var(--ne-cream);
}

.noidaEngagementProgressNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 1px solid #e4c47d;
  border-radius: 50%;
  color: var(--ne-deep);
  background: linear-gradient(
    135deg,
    #fff9ec,
    #f0b429
  );
  font-size: 16px;
  font-weight: 900;
  transition:
    color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease;
}

.noidaEngagementProgressItem:hover .noidaEngagementProgressNumber {
  transform: translateY(-2px);
  color: #ffffff;
  background: var(--ne-navy);
}

.noidaEngagementProgressText {
  color: var(--ne-navy);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}


/* =========================================================
   03. SIX-STAGE TIMELINE
========================================================= */

.noidaEngagementStages {
  padding: 76px 0 80px;
  background:
    linear-gradient(
      180deg,
      #f5f8fd 0%,
      #ffffff 24%,
      #f8fbff 100%
    );
}

.noidaEngagementStagesHeading {
  margin-bottom: 48px;
}

.noidaEngagementStagesHeading h2 span {
  display: inline;
}

.noidaEngagementStage {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 22px;
  align-items: stretch;
  scroll-margin-top: 35px;
}

.noidaEngagementStage + .noidaEngagementStage {
  margin-top: 22px;
}

.noidaEngagementStageRail {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.noidaEngagementStageNumber {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 63px;
  height: 63px;
  flex: 0 0 63px;
  border: 4px solid #ffffff;
  border-radius: 50%;
  color: var(--ne-deep);
  background: linear-gradient(
    135deg,
    var(--ne-gold-light),
    var(--ne-gold-rich)
  );
  box-shadow:
    0 0 0 1px #d6ae57,
    0 7px 20px rgba(9,47,98,0.1);
  font-size: 17px;
  font-weight: 900;
}

.noidaEngagementStageRailLine {
  display: block;
  width: 2px;
  flex: 1 1 auto;
  min-height: 30px;
  margin-top: 12px;
  background: linear-gradient(
    to bottom,
    var(--ne-gold-rich),
    #dce5f0
  );
}

.noidaEngagementStageFinal .noidaEngagementStageRailLine {
  opacity: 0;
}

.noidaEngagementStageCard {
  min-width: 0;
  padding: 31px 34px;
  border: 1px solid #dfe7f1;
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 9px 28px rgba(9,47,98,0.045);
  transition:
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.noidaEngagementStageCard:hover {
  border-color: #dfc27d;
  box-shadow: 0 16px 38px rgba(9,47,98,0.085);
}

.noidaEngagementStageTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 15px;
}

.noidaEngagementStageLabel {
  color: var(--ne-gold);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.8px;
  line-height: 1.6;
}

.noidaEngagementStageIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border: 1px solid #ead7ae;
  border-radius: 12px;
  color: var(--ne-gold);
  background: #fff9ec;
  font-size: 25px;
  font-weight: 800;
}

.noidaEngagementStageCard h3 {
  margin: 0 0 12px;
  color: var(--ne-deep);
  font-size: clamp(23px, 2.7vw, 30px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.45px;
}

.noidaEngagementStageIntro {
  max-width: 850px;
  margin: 0 0 23px;
  color: #4e6077;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.8;
}

.noidaEngagementStageBody > p {
  margin: 0 0 20px;
  color: var(--ne-text);
  font-size: 16px;
  line-height: 1.9;
}

.noidaEngagementStageBody > p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* Stage 1 and 2 detail cards */

.noidaEngagementDetailGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 21px 0;
}

.noidaEngagementDetail {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
  padding: 18px;
  border: 1px solid #e3eaf3;
  border-radius: 10px;
  background: #f8fafd;
}

.noidaEngagementDetailMark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 8px;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaEngagementDetail strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ne-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaEngagementDetail p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.75;
}


/* Gold-highlight information panel */

.noidaEngagementStageHighlight {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 21px;
  padding: 19px 20px;
  border: 1px solid #ead5a4;
  border-left: 4px solid var(--ne-gold);
  border-radius: 9px;
  background: linear-gradient(
    100deg,
    #fff9ec,
    #ffffff
  );
}

.noidaEngagementHighlightIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 17px;
  font-weight: 900;
}

.noidaEngagementStageHighlight p {
  margin: 0;
  color: #394a60;
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngagementStageHighlight p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STAGE 3: INSPECTION CHECKLIST
========================================================= */

.noidaEngagementChecklist {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  margin-top: 20px;
}

.noidaEngagementChecklistItem {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 14px 16px;
  border: 1px solid #e5ebf3;
  border-radius: 9px;
  background: #fbfcfe;
}

.noidaEngagementChecklistItem > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  margin-top: 1px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaEngagementChecklistItem p {
  margin: 0;
  color: #475970;
  font-size: 15px;
  line-height: 1.8;
}

.noidaEngagementChecklistItem p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STAGE 4: RESEARCH GRID
========================================================= */

.noidaEngagementResearchGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin-top: 22px;
}

.noidaEngagementResearchItem {
  min-width: 0;
  padding: 21px;
  border: 1px solid #e1e8f2;
  border-radius: 11px;
  background: linear-gradient(
    145deg,
    #ffffff,
    #f7f9fd
  );
  transition:
    transform 0.2s ease,
    border-color 0.2s ease;
}

.noidaEngagementResearchItem:hover {
  transform: translateY(-3px);
  border-color: #d9bd7d;
}

.noidaEngagementResearchIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  margin-bottom: 13px;
  border-radius: 9px;
  color: var(--ne-deep);
  background: #f5dfaa;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngagementResearchItem > strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ne-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}

.noidaEngagementResearchItem > p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   STAGE 5: REVIEW PANEL
========================================================= */

.noidaEngagementReviewPanel {
  margin-top: 23px;
  padding: 24px;
  border: 1px solid #dce5f0;
  border-radius: 12px;
  background: #f7f9fd;
}

.noidaEngagementReviewHeading {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 19px;
  border-bottom: 1px solid #dfe6f0;
}

.noidaEngagementReviewSeal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  flex: 0 0 49px;
  border: 1px solid #e5c36d;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 23px;
  font-weight: 900;
}

.noidaEngagementReviewHeading strong {
  display: block;
  color: var(--ne-navy);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaEngagementReviewHeading p {
  margin: 3px 0 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.6;
}

.noidaEngagementReviewList {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.noidaEngagementReviewList li {
  display: grid;
  grid-template-columns: 37px minmax(0, 1fr);
  align-items: start;
  gap: 13px;
  padding: 17px 0;
}

.noidaEngagementReviewList li + li {
  border-top: 1px solid #e3e9f1;
}

.noidaEngagementReviewList li > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  color: var(--ne-gold);
  background: #fff0c9;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngagementReviewList li p {
  margin: 0;
  color: #4b5d73;
  font-size: 15px;
  line-height: 1.85;
}

.noidaEngagementReviewList li p strong {
  color: var(--ne-navy);
  font-weight: 900;
}


/* =========================================================
   STAGE 6: DELIVERY AND SUPPORT
========================================================= */

.noidaEngagementDeliveryGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 20px 0 25px;
}

.noidaEngagementDeliveryItem {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 19px;
  border: 1px solid #dfe8f2;
  border-radius: 10px;
  background: #f8fafd;
}

.noidaEngagementDeliveryIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 10px;
  color: var(--ne-deep);
  background: #f5dfaa;
  font-size: 15px;
  font-weight: 900;
}

.noidaEngagementDeliveryItem strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ne-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaEngagementDeliveryItem p {
  margin: 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.75;
}

.noidaEngagementSupportPanel {
  padding: 25px;
  border: 1px solid #e3ce9d;
  border-radius: 12px;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(240,180,41,0.11),
      transparent 35%
    ),
    #fffaf0;
}

.noidaEngagementSupportHeading {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 20px;
}

.noidaEngagementSupportIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  border-radius: 10px;
  color: #ffffff;
  background: var(--ne-navy);
  font-size: 23px;
  font-weight: 900;
}

.noidaEngagementSupportHeading strong {
  display: block;
  color: var(--ne-deep);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaEngagementSupportHeading p {
  margin: 4px 0 0;
  color: var(--ne-muted);
  font-size: 15px;
  line-height: 1.7;
}

.noidaEngagementSupportTags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.noidaEngagementSupportTags span {
  display: inline-flex;
  align-items: center;
  min-height: 39px;
  padding: 9px 13px;
  border: 1px solid #e1cfaa;
  border-radius: 7px;
  color: var(--ne-navy);
  background: #ffffff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.5;
}

.noidaEngagementSupportNote {
  margin: 19px 0 0;
  padding-top: 16px;
  border-top: 1px solid #eadcbd;
  color: #59677a;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================================
   04. FINAL CONVERSION CTA
========================================================= */

.noidaEngagementFinalCta {
  position: relative;
  isolation: isolate;
  padding: 65px 0 70px;
  overflow: hidden;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 5% 100%,
      rgba(217,154,22,0.15),
      transparent 33%
    ),
    linear-gradient(
      125deg,
      #04152d,
      #092f62 60%,
      #061d3d
    );
}

.noidaEngagementFinalCtaPattern {
  position: absolute;
  z-index: -1;
  top: -100px;
  right: -80px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(240,180,41,0.25);
  border-radius: 50%;
  box-shadow:
    0 0 0 25px rgba(240,180,41,0.025),
    0 0 0 55px rgba(240,180,41,0.018);
  pointer-events: none;
}

.noidaEngagementFinalCtaBox {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
  align-items: center;
  gap: 45px;
  padding: 38px;
  border: 1px solid rgba(240,180,41,0.38);
  border-radius: 17px;
  background: rgba(255,255,255,0.045);
  box-shadow: 0 20px 55px rgba(0,0,0,0.14);
}

.noidaEngagementFinalCtaEyebrow {
  display: inline-block;
  margin-bottom: 13px;
  color: var(--ne-gold-light);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1.7px;
  line-height: 1.6;
}

.noidaEngagementFinalCtaContent h2 {
  margin: 0 0 17px;
  color: #ffffff;
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.7px;
}

.noidaEngagementFinalCtaContent h2 span {
  display: block;
  margin-top: 5px;
  color: var(--ne-gold-light);
}

.noidaEngagementFinalCtaContent > p {
  max-width: 650px;
  margin: 0;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.9;
}

.noidaEngagementFinalCtaTrust {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
  color: #e5edf7;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.7;
}

.noidaEngagementFinalCtaDot {
  display: inline-block;
  width: 5px;
  height: 5px;
  flex: 0 0 5px;
  border-radius: 50%;
  background: var(--ne-gold-light);
}

.noidaEngagementFinalCtaActions {
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-width: 0;
}

.noidaEngagementFinalCtaActions .noidaEngagementButton {
  width: 100%;
  min-height: 59px;
}

.noidaEngagementButtonWhite {
  color: var(--ne-deep) !important;
  background: #ffffff;
  border-color: #ffffff;
}

.noidaEngagementButtonWhite:hover {
  color: var(--ne-navy) !important;
  background: #fff9ec;
  border-color: var(--ne-gold-light);
}

.noidaEngagementEmailLink {
  display: block;
  margin-top: 3px;
  color: #e3ebf6 !important;
  font-size: 15px;
  line-height: 1.8;
  text-align: center;
  overflow-wrap: anywhere;
}

.noidaEngagementEmailLink strong {
  color: var(--ne-gold-light);
  font-weight: 900;
}

.noidaEngagementEmailLink:hover {
  color: #ffffff !important;
}


/* =========================================================
   ACCESSIBILITY: KEYBOARD FOCUS
========================================================= */

.noidaEngagement a:focus-visible {
  outline: 3px solid var(--ne-gold-light);
  outline-offset: 4px;
}


/* =========================================================
   RESPONSIVE: TABLET
========================================================= */

@media (max-width: 1000px) {
  .noidaEngagementProgress {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .noidaEngagementProgressItem:nth-child(4) {
    border-left: 0;
  }

  .noidaEngagementProgressItem:nth-child(n + 4) {
    border-top: 1px solid #e7edf5;
  }

  .noidaEngagementFinalCtaBox {
    grid-template-columns: minmax(0, 1fr) minmax(250px, 0.72fr);
    gap: 28px;
    padding: 30px;
  }
}


/* =========================================================
   RESPONSIVE: MOBILE
========================================================= */

@media (max-width: 700px) {
  .noidaEngagementContainer {
    width: calc(100% - 32px);
  }

  .noidaEngagementHero {
    padding: 55px 0 48px;
  }

  .noidaEngagementHero h1 {
    font-size: clamp(34px, 8vw, 44px);
    letter-spacing: -0.8px;
  }

  .noidaEngagementHero h1 span {
    font-size: 0.76em;
  }

  .noidaEngagementHeroLead {
    font-size: 17px;
  }

  .noidaEngagementHeroText {
    font-size: 16px;
  }

  .noidaEngagementHeroActions {
    align-items: stretch;
    flex-direction: column;
  }

  .noidaEngagementHeroActions .noidaEngagementButton {
    width: 100%;
  }

  .noidaEngagementHeroMeta {
    align-items: flex-start;
    flex-direction: column;
    gap: 11px;
    max-width: 350px;
    margin-inline: auto;
    margin-top: 25px;
  }

  .noidaEngagementOverview {
    padding: 52px 0;
  }

  .noidaEngagementSectionHeading h2 {
    font-size: clamp(28px, 7vw, 35px);
  }

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

  .noidaEngagementProgressItem {
    min-height: 120px;
    padding: 15px 8px;
  }

  .noidaEngagementProgressItem:nth-child(odd) {
    border-left: 0;
  }

  .noidaEngagementProgressItem:nth-child(even) {
    border-left: 1px solid #e7edf5;
  }

  .noidaEngagementProgressItem:nth-child(n + 3) {
    border-top: 1px solid #e7edf5;
  }

  .noidaEngagementProgressText {
    font-size: 15px;
  }

  .noidaEngagementStages {
    padding: 55px 0;
  }

  .noidaEngagementStagesHeading {
    margin-bottom: 32px;
  }

  .noidaEngagementStage {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
  }

  .noidaEngagementStage + .noidaEngagementStage {
    margin-top: 17px;
  }

  .noidaEngagementStageNumber {
    width: 41px;
    height: 41px;
    flex-basis: 41px;
    border-width: 3px;
    font-size: 15px;
  }

  .noidaEngagementStageRailLine {
    margin-top: 9px;
  }

  .noidaEngagementStageCard {
    padding: 23px 19px;
    border-radius: 12px;
  }

  .noidaEngagementStageCard h3 {
    font-size: 24px;
  }

  .noidaEngagementStageIntro {
    font-size: 16px;
  }

  .noidaEngagementStageBody > p {
    font-size: 16px;
  }

  .noidaEngagementDetailGrid,
  .noidaEngagementResearchGrid,
  .noidaEngagementDeliveryGrid {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaEngagementReviewPanel,
  .noidaEngagementSupportPanel {
    padding: 18px;
  }

  .noidaEngagementReviewList li {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
  }

  .noidaEngagementReviewList li > span {
    width: 31px;
    height: 31px;
  }

  .noidaEngagementFinalCta {
    padding: 48px 0;
  }

  .noidaEngagementFinalCtaBox {
    grid-template-columns: minmax(0, 1fr);
    gap: 27px;
    padding: 24px 19px;
  }

  .noidaEngagementFinalCtaContent h2 {
    font-size: 30px;
  }

  .noidaEngagementFinalCtaTrust {
    gap: 8px;
    font-size: 15px;
  }
}


/* =========================================================
   RESPONSIVE: SMALL MOBILE
========================================================= */

@media (max-width: 380px) {
  .noidaEngagementContainer {
    width: calc(100% - 26px);
  }

  .noidaEngagementEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .noidaEngagementEyebrowLine {
    width: 22px;
    flex-basis: 22px;
  }

  .noidaEngagementHero h1 {
    font-size: 32px;
  }

  .noidaEngagementStage {
    grid-template-columns: 35px minmax(0, 1fr);
    gap: 9px;
  }

  .noidaEngagementStageNumber {
    width: 35px;
    height: 35px;
    flex-basis: 35px;
    font-size: 15px;
  }

  .noidaEngagementStageCard {
    padding: 19px 15px;
  }

  .noidaEngagementStageCard h3 {
    font-size: 22px;
  }

  .noidaEngagementStageTop {
    gap: 8px;
  }

  .noidaEngagementStageIcon {
    width: 39px;
    height: 39px;
    flex-basis: 39px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaEngagement *,
  .noidaEngagement *::before,
  .noidaEngagement *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   NOIDA VALUATION INSIGHTS PAGE
   Unique namespace: noidaInsights
   Palette: Royal Navy, Gold, White
   Minimum font size: 15px
========================================================= */

.noidaInsightsPage {
  --ni-navy: #092f62;
  --ni-deep: #061d3d;
  --ni-dark: #04152d;
  --ni-gold: #b97800;
  --ni-gold-mid: #d99a16;
  --ni-gold-bright: #f0b429;
  --ni-white: #ffffff;
  --ni-cream: #fff9ec;
  --ni-text: #253650;
  --ni-muted: #586a80;
  --ni-border: #dfe7f1;
  --ni-soft: #f5f8fd;

  color: var(--ni-text);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

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

.noidaInsightsPage a {
  text-decoration: none;
}

.noidaInsightsContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   1. HERO / PAGE INTRODUCTION
========================================================= */

.noidaInsightsHero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 77px 0 73px;
  color: var(--ni-white);
  background:
    radial-gradient(
      ellipse at 88% 12%,
      rgba(217,154,22,0.19),
      transparent 34%
    ),
    linear-gradient(
      128deg,
      var(--ni-dark) 0%,
      var(--ni-navy) 57%,
      var(--ni-deep) 100%
    );
}

.noidaInsightsHero::after {
  position: absolute;
  z-index: -1;
  right: -110px;
  bottom: -240px;
  width: 500px;
  height: 500px;
  border: 1px solid rgba(240,180,41,0.16);
  border-radius: 50%;
  content: "";
  box-shadow:
    0 0 0 35px rgba(240,180,41,0.025),
    0 0 0 75px rgba(240,180,41,0.02),
    0 0 0 120px rgba(240,180,41,0.015);
  pointer-events: none;
}

.noidaInsightsHeroPattern {
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0.18;
  background-image:
    linear-gradient(
      rgba(255,255,255,0.045) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,0.045) 1px,
      transparent 1px
    );
  background-size: 42px 42px;
  mask-image: linear-gradient(to right, black, transparent 90%);
  pointer-events: none;
}

.noidaInsightsHeroInner {
  max-width: 950px;
  margin-inline: auto;
  text-align: center;
}

.noidaInsightsEyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  color: var(--ni-gold-bright);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 2px;
}

.noidaInsightsEyebrowLine {
  width: 33px;
  height: 2px;
  flex: 0 0 33px;
  background: var(--ni-gold-bright);
}

.noidaInsightsHero h1 {
  margin: 0 0 24px;
  color: var(--ni-white);
  font-size: clamp(38px, 5.1vw, 60px);
  font-weight: 900;
  line-height: 1.13;
  letter-spacing: -1.7px;
}

.noidaInsightsHero h1 span {
  display: block;
  margin-top: 10px;
  color: var(--ni-gold-bright);
  font-size: 0.72em;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -0.6px;
}

.noidaInsightsHeroText {
  max-width: 850px;
  margin: 0 auto;
  color: #e7eef8;
  font-size: 17px;
  line-height: 1.9;
}

.noidaInsightsHeroText strong {
  color: var(--ni-gold-bright);
  font-weight: 800;
}

.noidaInsightsHeroHighlights {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 11px;
  margin-top: 26px;
}

.noidaInsightsHeroHighlights span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 13px;
  border: 1px solid rgba(255,255,255,0.17);
  border-radius: 7px;
  color: #f1f5fb;
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.noidaInsightsHeroHighlights i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  color: var(--ni-dark);
  background: var(--ni-gold-bright);
  font-size: 15px;
  font-style: normal;
  font-weight: 900;
}

.noidaInsightsHeroActions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 31px;
}


/* =========================================================
   2. SHARED BUTTONS
========================================================= */

.noidaInsightsBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 56px;
  padding: 14px 23px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease;
}

.noidaInsightsBtn:hover {
  transform: translateY(-3px);
}

.noidaInsightsBtnGold {
  color: var(--ni-dark) !important;
  background: linear-gradient(
    135deg,
    var(--ni-gold-bright),
    var(--ni-gold-mid)
  );
  border-color: var(--ni-gold-bright);
  box-shadow: 0 9px 24px rgba(217,154,22,0.2);
}

.noidaInsightsBtnGold:hover {
  color: var(--ni-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 30px rgba(217,154,22,0.3);
}

.noidaInsightsBtnOutline {
  color: var(--ni-white) !important;
  background: rgba(255,255,255,0.045);
  border-color: rgba(255,255,255,0.4);
}

.noidaInsightsBtnOutline:hover {
  color: var(--ni-white) !important;
  background: rgba(255,255,255,0.12);
  border-color: var(--ni-gold-bright);
}


/* =========================================================
   3. INTRODUCTION SECTION
========================================================= */

.noidaInsightsIntro {
  padding: 62px 0;
  border-bottom: 1px solid #e7edf5;
  background: var(--ni-white);
}

.noidaInsightsIntroGrid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: start;
  gap: clamp(30px, 5vw, 70px);
}

.noidaInsightsSectionKicker {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.4px;
}

.noidaInsightsIntroHeading h2 {
  margin: 0;
  color: var(--ni-deep);
  font-size: clamp(28px, 3.2vw, 39px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.7px;
}

.noidaInsightsIntroHeading h2 span {
  display: block;
  margin-top: 5px;
  color: var(--ni-gold);
}

.noidaInsightsIntroContent {
  padding-left: 25px;
  border-left: 3px solid var(--ni-gold-mid);
}

.noidaInsightsIntroContent p {
  margin: 0 0 16px;
  color: var(--ni-muted);
  font-size: 16px;
  line-height: 1.9;
}

.noidaInsightsIntroContent p:last-child {
  margin-bottom: 0;
}

.noidaInsightsIntroContent strong {
  color: var(--ni-navy);
  font-weight: 800;
}


/* =========================================================
   4. ARTICLE COLLECTION SECTION
========================================================= */

.noidaInsightsArticles {
  padding: 77px 0 75px;
  background:
    radial-gradient(
      ellipse at 0% 0%,
      rgba(217,154,22,0.055),
      transparent 25%
    ),
    #f7f9fd;
}

.noidaInsightsSectionHeader {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 25px;
  margin-bottom: 34px;
}

.noidaInsightsSectionHeader > div {
  max-width: 760px;
}

.noidaInsightsSectionHeader .noidaInsightsSectionKicker {
  margin-bottom: 9px;
}

.noidaInsightsSectionHeader h2 {
  margin: 0 0 11px;
  color: var(--ni-deep);
  font-size: clamp(30px, 3.6vw, 43px);
  font-weight: 900;
  line-height: 1.22;
  letter-spacing: -0.8px;
}

.noidaInsightsSectionHeader p {
  margin: 0;
  color: var(--ni-muted);
  font-size: 16px;
  line-height: 1.8;
}

.noidaInsightsHeaderLink {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  flex: 0 0 auto;
  padding: 11px 16px;
  border: 1px solid #d7e0ed;
  border-radius: 8px;
  color: var(--ni-navy) !important;
  background: #ffffff;
  font-size: 15px;
  font-weight: 900;
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaInsightsHeaderLink span {
  color: var(--ni-gold);
  font-size: 19px;
}

.noidaInsightsHeaderLink:hover {
  color: var(--ni-gold) !important;
  border-color: var(--ni-gold-mid);
  background: var(--ni-cream);
}


/* =========================================================
   5. ARTICLE CARDS
========================================================= */

.noidaInsightsGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 22px;
}

.noidaInsightsCard {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 23px 21px;
  overflow: hidden;
  border: 1px solid var(--ni-border);
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 5px 18px rgba(6,29,61,0.035);
  transition:
    transform 0.24s ease,
    box-shadow 0.24s ease,
    border-color 0.24s ease;
}

.noidaInsightsCard::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  content: "";
  transform: scaleX(0.25);
  transform-origin: left;
  background: linear-gradient(
    90deg,
    var(--ni-gold),
    var(--ni-gold-bright)
  );
  transition: transform 0.24s ease;
}

.noidaInsightsCard:hover {
  transform: translateY(-5px);
  border-color: #d7bc7f;
  box-shadow: 0 17px 35px rgba(6,29,61,0.09);
}

.noidaInsightsCard:hover::before {
  transform: scaleX(1);
}

.noidaInsightsCardTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 20px;
}

.noidaInsightsNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 9px;
  color: var(--ni-white);
  background: var(--ni-navy);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0.6px;
}

.noidaInsightsCategory {
  color: var(--ni-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.6px;
  text-align: right;
}

.noidaInsightsCard h3 {
  margin: 0 0 13px;
  color: var(--ni-deep);
  font-size: 21px;
  font-weight: 850;
  line-height: 1.45;
  letter-spacing: -0.25px;
  overflow-wrap: anywhere;
}

.noidaInsightsCard h3 strong {
  color: var(--ni-navy);
  font-weight: 900;
}

.noidaInsightsCard > p {
  margin: 0 0 19px;
  color: #56667b;
  font-size: 15px;
  line-height: 1.85;
}

.noidaInsightsCardKeywords {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: auto;
  padding-top: 4px;
}

.noidaInsightsCardKeywords span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid #e1e8f1;
  border-radius: 5px;
  color: #3f526d;
  background: #f7f9fc;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
}

.noidaInsightsReadLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 48px;
  margin-top: 19px;
  padding-top: 13px;
  border-top: 1px solid #e6ecf3;
  color: var(--ni-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.5;
  transition: color 0.2s ease;
}

.noidaInsightsReadLink span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  border-radius: 50%;
  color: var(--ni-gold);
  background: var(--ni-cream);
  font-size: 20px;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    color 0.2s ease;
}

.noidaInsightsReadLink:hover {
  color: var(--ni-gold) !important;
}

.noidaInsightsReadLink:hover span {
  transform: translateX(3px);
  color: var(--ni-deep);
  background: var(--ni-gold-bright);
}


/* =========================================================
   6. EDITORIAL NOTE
========================================================= */

.noidaInsightsEditorialNote {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 27px;
  padding: 19px 21px;
  border: 1px solid #e5d3aa;
  border-radius: 10px;
  background: #fffaf0;
}

.noidaInsightsEditorialIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--ni-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaInsightsEditorialNote p {
  margin: 0;
  color: #4c5c70;
  font-size: 15px;
  line-height: 1.8;
}

.noidaInsightsEditorialNote strong {
  color: var(--ni-deep);
  font-weight: 900;
}


/* =========================================================
   7. FINAL CONTACT CTA
========================================================= */

.noidaInsightsContact {
  padding: 0 0 78px;
  background: #f7f9fd;
}

.noidaInsightsContactPanel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 34px 35px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      ellipse at 95% 0%,
      rgba(217,154,22,0.18),
      transparent 36%
    ),
    linear-gradient(
      120deg,
      var(--ni-dark),
      var(--ni-navy)
    );
  box-shadow: 0 16px 35px rgba(6,29,61,0.11);
}

.noidaInsightsContactContent {
  max-width: 700px;
}

.noidaInsightsContactContent .noidaInsightsSectionKicker {
  color: var(--ni-gold-bright);
}

.noidaInsightsContactContent h2 {
  margin: 0 0 11px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 37px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.6px;
}

.noidaInsightsContactContent h2 span {
  color: var(--ni-gold-bright);
}

.noidaInsightsContactContent p {
  margin: 0;
  color: #e1e9f4;
  font-size: 16px;
  line-height: 1.8;
}

.noidaInsightsContactActions {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 12px;
  min-width: 240px;
}

.noidaInsightsContactActions .noidaInsightsBtn {
  width: 100%;
}

.noidaInsightsCallButton {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 58px;
  padding: 10px 15px;
  border: 1px solid rgba(255,255,255,0.32);
  border-radius: 9px;
  color: #ffffff !important;
  background: rgba(255,255,255,0.045);
  transition:
    background 0.2s ease,
    border-color 0.2s ease;
}

.noidaInsightsCallButton:hover {
  color: #ffffff !important;
  border-color: var(--ni-gold-bright);
  background: rgba(255,255,255,0.1);
}

.noidaInsightsCallIcon {
  color: var(--ni-gold-bright);
  font-size: 23px;
}

.noidaInsightsCallButton small,
.noidaInsightsCallButton strong {
  display: block;
  text-align: left;
}

.noidaInsightsCallButton small {
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.45;
}

.noidaInsightsCallButton strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}


/* =========================================================
   8. KEYBOARD ACCESSIBILITY
========================================================= */

.noidaInsightsPage a:focus-visible {
  outline: 3px solid var(--ni-gold-bright);
  outline-offset: 4px;
}


/* =========================================================
   9. TABLET RESPONSIVE
========================================================= */

@media (max-width: 1020px) {
  .noidaInsightsGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .noidaInsightsIntroGrid {
    gap: 32px;
  }

  .noidaInsightsContactPanel {
    align-items: flex-start;
  }

  .noidaInsightsContactActions {
    min-width: 220px;
  }
}


/* =========================================================
   10. MOBILE RESPONSIVE
========================================================= */

@media (max-width: 700px) {
  .noidaInsightsContainer {
    width: calc(100% - 32px);
  }

  .noidaInsightsHero {
    padding: 53px 0 49px;
  }

  .noidaInsightsHero h1 {
    font-size: clamp(34px, 8.5vw, 44px);
    letter-spacing: -0.8px;
  }

  .noidaInsightsHero h1 span {
    font-size: 0.76em;
  }

  .noidaInsightsHeroText {
    font-size: 16px;
    line-height: 1.85;
  }

  .noidaInsightsHeroHighlights {
    align-items: stretch;
    flex-direction: column;
  }

  .noidaInsightsHeroHighlights span {
    justify-content: center;
  }

  .noidaInsightsHeroActions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaInsightsHeroActions .noidaInsightsBtn {
    width: 100%;
  }

  .noidaInsightsIntro {
    padding: 45px 0;
  }

  .noidaInsightsIntroGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }

  .noidaInsightsIntroHeading h2 {
    font-size: 30px;
  }

  .noidaInsightsIntroContent {
    padding-left: 17px;
  }

  .noidaInsightsArticles {
    padding: 53px 0 50px;
  }

  .noidaInsightsSectionHeader {
    align-items: flex-start;
    flex-direction: column;
    gap: 19px;
    margin-bottom: 26px;
  }

  .noidaInsightsSectionHeader h2 {
    font-size: 31px;
  }

  .noidaInsightsHeaderLink {
    width: 100%;
  }

  .noidaInsightsGrid {
    grid-template-columns: minmax(0, 1fr);
    gap: 17px;
  }

  .noidaInsightsCard {
    padding: 23px 20px 19px;
  }

  .noidaInsightsCard h3 {
    font-size: 22px;
  }

  .noidaInsightsEditorialNote {
    padding: 16px;
  }

  .noidaInsightsContact {
    padding-bottom: 52px;
  }

  .noidaInsightsContactPanel {
    align-items: stretch;
    flex-direction: column;
    gap: 24px;
    padding: 25px 20px;
  }

  .noidaInsightsContactContent h2 {
    font-size: 28px;
  }

  .noidaInsightsContactActions {
    width: 100%;
    min-width: 0;
  }
}


/* =========================================================
   11. REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
  .noidaInsightsPage *,
  .noidaInsightsPage *::before,
  .noidaInsightsPage *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* =========================================================
   A2Z VALUERS — THE NOIDA PRACTICE
   Unique namespace: noidaPractice
   Royal Navy & Gold design
   Minimum text size: 15px
========================================================= */

.noidaPracticeAbout,
.noidaPracticeGeography,
.noidaPracticeCredentials,
.noidaPracticeEngagement {
  --np-navy: #092f62;
  --np-deep: #061d3d;
  --np-dark: #04152d;
  --np-gold: #b97800;
  --np-gold-mid: #d99a16;
  --np-gold-bright: #f0b429;
  --np-white: #ffffff;
  --np-cream: #fff9ec;
  --np-text: #253650;
  --np-muted: #596a80;
  --np-border: #dfe7f1;
  --np-soft: #f5f8fd;

  position: relative;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.75;
}

.noidaPracticeAbout *,
.noidaPracticeAbout *::before,
.noidaPracticeAbout *::after,
.noidaPracticeGeography *,
.noidaPracticeGeography *::before,
.noidaPracticeGeography *::after,
.noidaPracticeCredentials *,
.noidaPracticeCredentials *::before,
.noidaPracticeCredentials *::after,
.noidaPracticeEngagement *,
.noidaPracticeEngagement *::before,
.noidaPracticeEngagement *::after {
  box-sizing: border-box;
}

.noidaPracticeAbout a,
.noidaPracticeGeography a,
.noidaPracticeCredentials a,
.noidaPracticeEngagement a {
  text-decoration: none;
}

.noidaPracticeContainer {
  width: min(1200px, calc(100% - 44px));
  margin-inline: auto;
}


/* =========================================================
   SHARED EYEBROW, BUTTONS AND SECTION HEADING
========================================================= */

.noidaPracticeEyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 19px;
  color: var(--np-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.5px;
}

.noidaPracticeEyebrowLine {
  display: inline-block;
  width: 31px;
  height: 2px;
  flex: 0 0 31px;
  background: var(--np-gold-mid);
}

.noidaPracticeEyebrowCenter {
  justify-content: center;
}

.noidaPracticeBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 55px;
  padding: 13px 21px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  text-align: center;
  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease;
}

.noidaPracticeBtn:hover {
  transform: translateY(-3px);
}

.noidaPracticeBtnGold {
  color: var(--np-dark) !important;
  background: linear-gradient(
    135deg,
    var(--np-gold-bright),
    var(--np-gold-mid)
  );
  border-color: var(--np-gold-bright);
  box-shadow: 0 8px 22px rgba(217,154,22,0.2);
}

.noidaPracticeBtnGold:hover {
  color: var(--np-dark) !important;
  background: #ffca48;
  box-shadow: 0 13px 28px rgba(217,154,22,0.3);
}

.noidaPracticeSectionHeading {
  max-width: 850px;
  margin: 0 auto 40px;
  text-align: center;
}

.noidaPracticeSectionHeading h2 {
  margin: 0 0 16px;
  color: var(--np-deep);
  font-size: clamp(30px, 3.6vw, 43px);
  font-weight: 900;
  line-height: 1.24;
  letter-spacing: -0.8px;
}

.noidaPracticeSectionHeading h2 span {
  color: var(--np-gold);
}

.noidaPracticeSectionHeading > p {
  max-width: 790px;
  margin: 0 auto;
  color: var(--np-muted);
  font-size: 16px;
  line-height: 1.85;
}


/* =========================================================
   SECTION 1 — ABOUT THE NOIDA PRACTICE
========================================================= */

.noidaPracticeAbout {
  overflow: hidden;
  padding: 78px 0;
  color: var(--np-text);
  background:
    radial-gradient(
      ellipse at 3% 4%,
      rgba(217,154,22,0.075),
      transparent 30%
    ),
    #ffffff;
}

.noidaPracticeAboutGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(310px, 0.8fr);
  align-items: center;
  gap: clamp(35px, 5vw, 70px);
}

.noidaPracticeAboutContent h2 {
  margin: 0 0 22px;
  color: var(--np-deep);
  font-size: clamp(34px, 4vw, 48px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

.noidaPracticeAboutContent h2 span {
  display: block;
  margin-top: 5px;
  color: var(--np-gold);
}

.noidaPracticeAboutContent p {
  margin: 0 0 17px;
  color: var(--np-muted);
  font-size: 16px;
  line-height: 1.9;
}

.noidaPracticeAboutContent p strong {
  color: var(--np-navy);
  font-weight: 800;
}

.noidaPracticeAboutContent .noidaPracticeLead {
  margin-bottom: 20px;
  padding-left: 17px;
  border-left: 3px solid var(--np-gold-mid);
  color: var(--np-navy);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.8;
}

.noidaPracticeAboutActions {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 25px;
}

.noidaPracticePhoneButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 57px;
  padding: 10px 17px;
  border: 1px solid #d7e0ec;
  border-radius: 9px;
  color: var(--np-navy) !important;
  background: #ffffff;
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.2s ease;
}

.noidaPracticePhoneButton:hover {
  transform: translateY(-2px);
  border-color: var(--np-gold-mid);
  background: var(--np-cream);
}

.noidaPracticePhoneIcon {
  color: var(--np-gold);
  font-size: 23px;
}

.noidaPracticePhoneButton small,
.noidaPracticePhoneButton strong {
  display: block;
  text-align: left;
}

.noidaPracticePhoneButton small {
  color: var(--np-muted);
  font-size: 15px;
  line-height: 1.4;
}

.noidaPracticePhoneButton strong {
  color: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}


/* Section 1 profile panel */

.noidaPracticeAboutPanel {
  position: relative;
  padding: 29px 27px 26px;
  overflow: hidden;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(217,154,22,0.2),
      transparent 35%
    ),
    linear-gradient(
      145deg,
      var(--np-dark),
      var(--np-navy)
    );
  box-shadow: 0 20px 50px rgba(6,29,61,0.14);
}

.noidaPracticePanelTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 25px;
}

.noidaPracticePanelMonogram {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 53px;
  height: 53px;
  border: 1px solid var(--np-gold-bright);
  border-radius: 50%;
  color: var(--np-gold-bright);
  font-size: 18px;
  font-weight: 900;
}

.noidaPracticePanelLabel {
  color: #f2d89c;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 1px;
}

.noidaPracticeAboutPanel h3 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaPracticeAboutPanel > p {
  margin: 0;
  color: #e2eaf5;
  font-size: 16px;
  line-height: 1.8;
}

.noidaPracticePanelDivider {
  height: 1px;
  margin: 23px 0;
  background: rgba(255,255,255,0.18);
}

.noidaPracticeProfileItem {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-bottom: 20px;
}

.noidaPracticeProfileIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 9px;
  color: var(--np-gold-bright);
  background: rgba(255,255,255,0.055);
  font-size: 15px;
  font-weight: 900;
}

.noidaPracticeProfileItem strong,
.noidaPracticeProfileItem div span {
  display: block;
}

.noidaPracticeProfileItem strong {
  margin-bottom: 3px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeProfileItem div span {
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.7;
}

.noidaPracticePanelLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  margin-top: 5px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,0.18);
  color: var(--np-gold-bright) !important;
  font-size: 15px;
  font-weight: 900;
}

.noidaPracticePanelLink span {
  font-size: 20px;
  transition: transform 0.2s ease;
}

.noidaPracticePanelLink:hover span {
  transform: translate(3px, -2px);
}


/* =========================================================
   SECTION 2 — NOIDA PROPERTY GEOGRAPHY
========================================================= */

.noidaPracticeGeography {
  padding: 79px 0 82px;
  color: var(--np-text);
  background:
    radial-gradient(
      ellipse at 95% 5%,
      rgba(217,154,22,0.06),
      transparent 26%
    ),
    #f6f9fe;
}

.noidaPracticeGeography .noidaPracticeSectionHeading {
  margin-bottom: 39px;
}

.noidaPracticeGeographyGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 21px;
}

.noidaPracticeGeoCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 23px 22px;
  border: 1px solid var(--np-border);
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 6px 22px rgba(6,29,61,0.04);
  transition:
    transform 0.23s ease,
    border-color 0.23s ease,
    box-shadow 0.23s ease;
}

.noidaPracticeGeoCard:hover {
  transform: translateY(-5px);
  border-color: #d9bd7b;
  box-shadow: 0 16px 34px rgba(6,29,61,0.09);
}

.noidaPracticeGeoTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 21px;
}

.noidaPracticeGeoNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 9px;
  color: #ffffff;
  background: var(--np-navy);
  font-size: 15px;
  font-weight: 900;
}

.noidaPracticeGeoSymbol {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  border: 1px solid #ead9b4;
  border-radius: 50%;
  color: var(--np-gold);
  background: var(--np-cream);
  font-size: 24px;
}

.noidaPracticeGeoCard h3 {
  margin: 0 0 12px;
  color: var(--np-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaPracticeGeoCard > p {
  margin: 0 0 18px;
  color: var(--np-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaPracticeGeoCard > p strong {
  color: var(--np-navy);
  font-weight: 800;
}

.noidaPracticeGeoLink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 47px;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid #e5ebf3;
  color: var(--np-navy) !important;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.55;
}

.noidaPracticeGeoLink span {
  flex: 0 0 auto;
  color: var(--np-gold);
  font-size: 21px;
  transition: transform 0.2s ease;
}

.noidaPracticeGeoLink:hover {
  color: var(--np-gold) !important;
}

.noidaPracticeGeoLink:hover span {
  transform: translateX(4px);
}

.noidaPracticeGeoNotice {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-top: 26px;
  padding: 18px 20px;
  border: 1px solid #e6d4ab;
  border-radius: 10px;
  background: var(--np-cream);
}

.noidaPracticeGeoNoticeIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--np-navy);
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeGeoNotice p {
  margin: 0;
  color: #4c5d72;
  font-size: 15px;
  line-height: 1.8;
}

.noidaPracticeGeoNotice strong {
  color: var(--np-deep);
  font-weight: 900;
}


/* =========================================================
   SECTION 3 — CREDENTIALS AND PROFESSIONAL SCOPE
========================================================= */

.noidaPracticeCredentials {
  padding: 82px 0;
  color: var(--np-text);
  background: #ffffff;
}

.noidaPracticeCredentialsGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(310px, 0.88fr);
  align-items: start;
  gap: clamp(35px, 5vw, 65px);
}

.noidaPracticeCredentialsContent h2 {
  margin: 0 0 19px;
  color: var(--np-deep);
  font-size: clamp(31px, 3.6vw, 43px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.8px;
}

.noidaPracticeCredentialsContent h2 span {
  display: block;
  color: var(--np-gold);
}

.noidaPracticeCredentialsContent > p {
  margin: 0 0 17px;
  color: var(--np-muted);
  font-size: 16px;
  line-height: 1.9;
}

.noidaPracticeCredentialsContent > p strong {
  color: var(--np-navy);
  font-weight: 800;
}

.noidaPracticeCredentialList {
  display: grid;
  gap: 17px;
  margin-top: 27px;
}

.noidaPracticeCredentialItem {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 19px;
  border: 1px solid #e2e9f2;
  border-radius: 10px;
  background: #f9fbfe;
  transition:
    border-color 0.2s ease,
    background 0.2s ease;
}

.noidaPracticeCredentialItem:hover {
  border-color: #d8bd7c;
  background: #fffdf7;
}

.noidaPracticeCredentialCheck {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  flex: 0 0 35px;
  border-radius: 50%;
  color: var(--np-deep);
  background: var(--np-gold-bright);
  font-size: 18px;
  font-weight: 900;
}

.noidaPracticeCredentialItem h3 {
  margin: 0 0 6px;
  color: var(--np-navy);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.5;
}

.noidaPracticeCredentialItem p {
  margin: 0;
  color: var(--np-muted);
  font-size: 15px;
  line-height: 1.8;
}

.noidaPracticeCredentialItem p strong {
  color: var(--np-deep);
  font-weight: 800;
}


/* Section 3 framework panel */

.noidaPracticeCredentialsPanel {
  padding: 28px 25px 25px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 15px;
  color: #ffffff;
  background:
    radial-gradient(
      ellipse at 100% 0%,
      rgba(217,154,22,0.19),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      var(--np-dark),
      var(--np-navy)
    );
  box-shadow: 0 18px 42px rgba(6,29,61,0.13);
}

.noidaPracticeCredentialsPanelTop {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 22px;
  color: #f4d99d;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1px;
}

.noidaPracticeCredentialsBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  flex: 0 0 47px;
  border: 1px solid var(--np-gold-bright);
  border-radius: 50%;
  color: var(--np-gold-bright);
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeCredentialsPanel h3 {
  margin: 0 0 24px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaPracticeFactor {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 16px 0;
  border-top: 1px solid rgba(255,255,255,0.15);
}

.noidaPracticeFactorNo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 8px;
  color: var(--np-gold-bright);
  font-size: 15px;
  font-weight: 900;
}

.noidaPracticeFactor strong {
  display: block;
  margin-bottom: 4px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeFactor p {
  margin: 0;
  color: #dce6f3;
  font-size: 15px;
  line-height: 1.75;
}

.noidaPracticeCredentialsDisclaimer {
  margin-top: 15px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  color: #e1eaf5;
  background: rgba(255,255,255,0.045);
  font-size: 15px;
  line-height: 1.75;
}

.noidaPracticeCredentialsBtn {
  width: 100%;
  margin-top: 19px;
}


/* =========================================================
   SECTION 4 — ENGAGEMENT PROCESS
========================================================= */

.noidaPracticeEngagement {
  padding: 80px 0 85px;
  color: var(--np-text);
  background:
    radial-gradient(
      ellipse at 10% 0%,
      rgba(217,154,22,0.07),
      transparent 30%
    ),
    #f6f9fe;
}

.noidaPracticeEngagementHeading {
  margin-bottom: 42px;
}

.noidaPracticeSteps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 21px;
  margin-bottom: 42px;
}

.noidaPracticeStep {
  position: relative;
  padding: 26px 23px;
  border: 1px solid var(--np-border);
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 6px 22px rgba(6,29,61,0.04);
  transition:
    transform 0.23s ease,
    box-shadow 0.23s ease,
    border-color 0.23s ease;
}

.noidaPracticeStep:hover {
  transform: translateY(-4px);
  border-color: #d8bd7c;
  box-shadow: 0 15px 32px rgba(6,29,61,0.085);
}

.noidaPracticeStepNumber {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  margin-bottom: 21px;
  border-radius: 11px;
  color: var(--np-deep);
  background: var(--np-gold-bright);
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeStepLabel {
  display: block;
  margin-bottom: 9px;
  color: var(--np-gold);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.8px;
}

.noidaPracticeStepContent h3 {
  margin: 0 0 12px;
  color: var(--np-deep);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.4;
}

.noidaPracticeStepContent p {
  margin: 0;
  color: var(--np-muted);
  font-size: 15px;
  line-height: 1.85;
}

.noidaPracticeStepContent p strong {
  color: var(--np-navy);
  font-weight: 800;
}


/* =========================================================
   SECTION 4 — CONTACT PANEL
========================================================= */

.noidaPracticeContactPanel {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(290px, 0.9fr);
  gap: 36px;
  padding: 35px;
  border: 1px solid rgba(240,180,41,0.45);
  border-radius: 16px;
  color: #ffffff;
  background:
    radial-gradient(
      ellipse at 100% 0%,
      rgba(217,154,22,0.2),
      transparent 35%
    ),
    linear-gradient(
      125deg,
      var(--np-dark),
      var(--np-navy)
    );
  box-shadow: 0 18px 42px rgba(6,29,61,0.13);
}

.noidaPracticeContactKicker {
  display: block;
  margin-bottom: 12px;
  color: var(--np-gold-bright);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 1.3px;
}

.noidaPracticeContactMain h2 {
  margin: 0 0 16px;
  color: #ffffff;
  font-size: clamp(29px, 3.4vw, 40px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.7px;
}

.noidaPracticeContactMain h2 span {
  display: block;
  color: var(--np-gold-bright);
}

.noidaPracticeContactMain > p {
  max-width: 590px;
  margin: 0;
  color: #e1eaf5;
  font-size: 16px;
  line-height: 1.85;
}

.noidaPracticeContactMain > p strong {
  color: #ffffff;
  font-weight: 800;
}

.noidaPracticeContactActions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 25px;
}

.noidaPracticeBtnLight {
  color: #ffffff !important;
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.36);
}

.noidaPracticeBtnLight:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.12);
  border-color: var(--np-gold-bright);
}

.noidaPracticeContactDetails {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  padding-left: 27px;
  border-left: 1px solid rgba(255,255,255,0.19);
}

.noidaPracticeContactDetail {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 15px 0;
  color: #ffffff !important;
  border-bottom: 1px solid rgba(255,255,255,0.13);
  transition: color 0.2s ease;
}

.noidaPracticeContactDetail:last-child {
  border-bottom: 0;
}

.noidaPracticeContactDetail:hover {
  color: var(--np-gold-bright) !important;
}

.noidaPracticeContactDetailIcon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  border: 1px solid rgba(240,180,41,0.42);
  border-radius: 9px;
  color: var(--np-gold-bright);
  background: rgba(255,255,255,0.045);
  font-size: 20px;
}

.noidaPracticeContactDetail strong {
  display: block;
  margin-bottom: 4px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.noidaPracticeContactDetail p {
  margin: 0;
  color: #dfe8f4;
  font-size: 15px;
  line-height: 1.75;
  overflow-wrap: anywhere;
}


/* =========================================================
   ACCESSIBILITY: VISIBLE KEYBOARD FOCUS
========================================================= */

.noidaPracticeAbout a:focus-visible,
.noidaPracticeGeography a:focus-visible,
.noidaPracticeCredentials a:focus-visible,
.noidaPracticeEngagement a:focus-visible {
  outline: 3px solid var(--np-gold-bright);
  outline-offset: 4px;
}


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

@media (max-width: 1020px) {
  .noidaPracticeAboutGrid,
  .noidaPracticeCredentialsGrid {
    grid-template-columns: minmax(0, 1fr) minmax(285px, 0.8fr);
    gap: 30px;
  }

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

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

  .noidaPracticeContactPanel {
    gap: 25px;
    padding: 28px;
  }

  .noidaPracticeContactActions {
    flex-direction: column;
    align-items: stretch;
  }

  .noidaPracticeContactActions .noidaPracticeBtn {
    width: 100%;
  }
}


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

@media (max-width: 720px) {
  .noidaPracticeContainer {
    width: calc(100% - 32px);
  }

  .noidaPracticeAbout,
  .noidaPracticeGeography,
  .noidaPracticeCredentials,
  .noidaPracticeEngagement {
    padding-top: 52px;
    padding-bottom: 55px;
  }

  .noidaPracticeAboutGrid,
  .noidaPracticeCredentialsGrid,
  .noidaPracticeContactPanel {
    grid-template-columns: minmax(0, 1fr);
  }

  .noidaPracticeAboutContent h2 {
    font-size: clamp(32px, 8vw, 40px);
  }

  .noidaPracticeAboutContent .noidaPracticeLead {
    font-size: 17px;
  }

  .noidaPracticeAboutActions {
    flex-direction: column;
  }

  .noidaPracticeAboutActions .noidaPracticeBtn,
  .noidaPracticeAboutActions .noidaPracticePhoneButton {
    width: 100%;
  }

  .noidaPracticeAboutPanel {
    padding: 25px 22px;
  }

  .noidaPracticeSectionHeading {
    margin-bottom: 30px;
  }

  .noidaPracticeSectionHeading h2 {
    font-size: clamp(29px, 7.5vw, 36px);
  }

  .noidaPracticeEyebrowCenter {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.7px;
  }

  .noidaPracticeGeographyGrid,
  .noidaPracticeSteps {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .noidaPracticeGeoCard,
  .noidaPracticeStep {
    padding: 23px 20px;
  }

  .noidaPracticeCredentialsContent h2 {
    font-size: clamp(30px, 7.5vw, 37px);
  }

  .noidaPracticeCredentialItem {
    padding: 16px;
  }

  .noidaPracticeCredentialsPanel {
    padding: 24px 20px;
  }

  .noidaPracticeContactPanel {
    gap: 22px;
    padding: 25px 20px;
  }

  .noidaPracticeContactMain h2 {
    font-size: 30px;
  }

  .noidaPracticeContactActions {
    flex-direction: column;
    align-items: stretch;
  }

  .noidaPracticeContactActions .noidaPracticeBtn {
    width: 100%;
  }

  .noidaPracticeContactDetails {
    padding-left: 0;
    border-top: 1px solid rgba(255,255,255,0.19);
    border-left: 0;
    padding-top: 10px;
  }
}


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

@media (max-width: 380px) {
  .noidaPracticeContainer {
    width: calc(100% - 26px);
  }

  .noidaPracticeEyebrow {
    gap: 8px;
    font-size: 15px;
    letter-spacing: 0.8px;
  }

  .noidaPracticeEyebrowLine {
    width: 22px;
    flex-basis: 22px;
  }

  .noidaPracticeAboutContent h2 {
    font-size: 31px;
  }

  .noidaPracticeAboutPanel h3,
  .noidaPracticeCredentialsPanel h3 {
    font-size: 23px;
  }

  .noidaPracticeGeoCard h3,
  .noidaPracticeStepContent h3 {
    font-size: 21px;
  }
}


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

@media (prefers-reduced-motion: reduce) {
  .noidaPracticeAbout *,
  .noidaPracticeGeography *,
  .noidaPracticeCredentials *,
  .noidaPracticeEngagement * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
