/* =========================================================
   GOVERNMENT APPROVED PAINTING VALUERS
   FLAGSHIP PAGE SYSTEM
   COMPLETE UNIQUE CSS
========================================================= */


/* =========================================================
   GLOBAL VARIABLES
========================================================= */

.gavpvHero,
.gavpvCategories,
.gavpvEngage{

    --gavpv-navy:#092653;
    --gavpv-deep:#061a3a;
    --gavpv-blue:#123e78;
    --gavpv-gold:#c79a38;
    --gavpv-gold-light:#e6c56b;
    --gavpv-cream:#f8f5ed;
    --gavpv-paper:#ffffff;
    --gavpv-text:#1b3150;
    --gavpv-muted:#607087;
    --gavpv-border:#dce3ec;

    font-family:
        "Inter",
        "Segoe UI",
        Arial,
        sans-serif;

    box-sizing:border-box;

}


.gavpvHero *,
.gavpvCategories *,
.gavpvEngage *{

    box-sizing:border-box;

}


.gavpvHero img,
.gavpvCategories img{

    max-width:100%;

}


.gavpvHero p,
.gavpvCategories p,
.gavpvEngage p{

    font-size:16px;
    line-height:1.75;

}


/* =========================================================
   HERO
========================================================= */

.gavpvHero{

    position:relative;

    padding:
        85px
        0
        95px;

    background:

        radial-gradient(
            circle at 80% 15%,
            rgba(199,154,56,.12),
            transparent 28%
        ),

        linear-gradient(
            135deg,
            #ffffff 0%,
            #f7f9fc 58%,
            #edf2f8 100%
        );

    overflow:hidden;

}


/* subtle AI grid */

.gavpvHero::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:

        linear-gradient(
            rgba(9,38,83,.035) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(9,38,83,.035) 1px,
            transparent 1px
        );

    background-size:
        42px 42px;

    pointer-events:none;

}


.gavpvHero::after{

    content:"";

    position:absolute;

    width:480px;
    height:480px;

    right:-180px;
    bottom:-220px;

    border:
        1px solid
        rgba(199,154,56,.18);

    border-radius:50%;

    box-shadow:
        0 0 0 55px rgba(199,154,56,.025),
        0 0 0 110px rgba(199,154,56,.018);

}


.gavpvHeroGrid{

    position:relative;

    z-index:2;

    width:
        min(1400px, 92%);

    margin:auto;

    display:grid;

    grid-template-columns:
        minmax(0,1.28fr)
        minmax(400px,.72fr);

    gap:65px;

    align-items:center;

}


/* =========================================================
   HERO CONTENT
========================================================= */

.gavpvHeroContent{

    position:relative;

    z-index:3;

}


.gavpvHeroEyebrow{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:24px;

    color:
        var(--gavpv-gold);

    font-size:15px;

    font-weight:800;

    letter-spacing:2px;

}


.gavpvPulse{

    width:9px;
    height:9px;

    background:
        var(--gavpv-gold);

    border-radius:50%;

    box-shadow:
        0 0 0 6px
        rgba(199,154,56,.12);

}


.gavpvHero h1{

    max-width:900px;

    margin:0;

    color:
        var(--gavpv-navy);

    font-size:
        clamp(48px,5.5vw,66px);

    line-height:.99;

    letter-spacing:-3.5px;

    font-weight:800;

}


.gavpvHero h1 span{

    display:block;

    color:
        var(--gavpv-navy);

}


.gavpvHero h1 em{

    display:block;

    color:
        var(--gavpv-blue);

    font-style:normal;

    font-weight:400;

    letter-spacing:-2.5px;

}


.gavpvHeroRule{

    width:125px;
    height:4px;

    margin:
        30px 0 24px;

    background:
        linear-gradient(
            90deg,
            var(--gavpv-gold),
            rgba(199,154,56,.05)
        );

}


.gavpvHeroDeck{

    max-width:850px;

    margin:
        0 0 27px;

    color:
        #294665;

    font-size:20px !important;

    line-height:1.65 !important;

}


.gavpvHeroDeck strong{

    color:
        var(--gavpv-navy);

    font-weight:800;

}


.gavpvHeroLead{

    max-width:850px;

}


.gavpvHeroLead p{

    margin:
        0 0 15px;

    color:
        var(--gavpv-muted);

}


.gavpvHeroLead strong{

    color:
        var(--gavpv-navy);

}


.gavpvHeroLead em{

    color:
        #304e70;

}


/* =========================================================
   HERO CTA
========================================================= */

.gavpvHeroActions{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-top:30px;

}


.gavpvPrimaryCTA,
.gavpvPhoneCTA{

    min-height:64px;

    display:inline-flex;

    align-items:center;

    gap:14px;

    padding:
        10px 22px;

    text-decoration:none;

    border-radius:8px;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease;

}


.gavpvPrimaryCTA{

    color:#fff;

    background:
        var(--gavpv-navy);

    box-shadow:
        0 14px 30px
        rgba(9,38,83,.18);

}


.gavpvPrimaryCTA:hover{

    color:#fff;

    transform:translateY(-3px);

    box-shadow:
        0 18px 38px
        rgba(9,38,83,.27);

}


.gavpvPhoneCTA{

    color:
        var(--gavpv-navy);

    background:#fff;

    border:
        1px solid
        var(--gavpv-border);

}


.gavpvPhoneCTA:hover{

    color:
        var(--gavpv-navy);

    transform:translateY(-3px);

    border-color:
        var(--gavpv-gold);

}


.gavpvCTAIcon{

    width:42px;
    height:42px;

    display:flex;

    align-items:center;
    justify-content:center;

    background:
        var(--gavpv-gold);

    color:
        var(--gavpv-deep);

    border-radius:50%;

    font-size:21px;

    font-weight:800;

}


.gavpvPhoneIcon{

    width:38px;
    height:38px;

    display:flex;

    align-items:center;
    justify-content:center;

    color:
        var(--gavpv-gold);

    border:
        1px solid
        rgba(199,154,56,.35);

    border-radius:50%;

}


.gavpvPrimaryCTA small,
.gavpvPhoneCTA small{

    display:block;

    margin-bottom:3px;

    font-size:15px;

    line-height:1.2;

    font-weight:800;

    letter-spacing:1.2px;

}


.gavpvPrimaryCTA span:last-child{

    color:#fff;

    font-size:17px;

    font-weight:700;

}


.gavpvPhoneCTA span:last-child{

    font-size:17px;

    font-weight:700;

}


/* =========================================================
   HERO FACTS
========================================================= */

.gavpvHeroFacts{

    display:flex;

    margin-top:31px;

    border-top:
        1px solid
        var(--gavpv-border);

    max-width:850px;

}


.gavpvHeroFact{

    flex:1;

    padding:
        18px 20px 0 0;

    border-right:
        1px solid
        var(--gavpv-border);

}


.gavpvHeroFact:not(:first-child){

    padding-left:20px;

}


.gavpvHeroFact:last-child{

    border-right:0;

}


.gavpvHeroFact small{

    display:block;

    margin-bottom:7px;

    color:
        #77859a;

    font-size:15px;

    letter-spacing:1.2px;

    font-weight:700;

}


.gavpvHeroFact strong{

    display:block;

    color:
        var(--gavpv-navy);

    font-size:15px;

    line-height:1.4;

}


/* =========================================================
   HERO AUTHORITY CARD
========================================================= */

.gavpvHeroVisual{

    position:relative;

    min-height:650px;

    display:flex;

    align-items:center;

    justify-content:center;

}


.gavpvAuthorityCard{

    position:relative;

    width:
        min(470px,100%);

    padding:13px;

    background:
        var(--gavpv-navy);

    border:
        1px solid
        rgba(199,154,56,.55);

    box-shadow:
        0 35px 80px
        rgba(6,26,58,.22);

}


.gavpvAuthorityCard::before{

    content:"";

    position:absolute;

    inset:7px;

    border:
        1px solid
        rgba(255,255,255,.12);

    pointer-events:none;

}


.gavpvAuthorityTop{

    position:relative;

    z-index:3;

    display:flex;

    justify-content:space-between;

    padding:
        10px 11px;

    color:
        var(--gavpv-gold-light);

    font-size:15px;

    letter-spacing:1.4px;

    font-weight:800;

}


/* =========================================================
   PORTRAIT
========================================================= */

.gavpvPortraitFrame{

    position:relative;

    overflow:hidden;

    min-height:900px;

    background:
        #071b3c;

}


.gavpvPortraitGlow{

    position:absolute;

    width:240px;
    height:240px;

    top:-80px;
    right:-70px;

    border-radius:50%;

    background:
        rgba(199,154,56,.18);

    filter:blur(25px);

}


.gavpvPortraitFrame img{

    position:absolute;

    z-index:2;

    width:100%;
    height:100%;

    object-fit:cover;

    object-position:
        center top;

    display:block;

}


/* image overlay */

.gavpvPortraitFrame::after{

    content:"";

    position:absolute;

    z-index:3;

    inset:0;

    background:

        linear-gradient(
            to bottom,
            transparent 45%,
            rgba(3,17,40,.15) 62%,
            rgba(3,17,40,.93) 100%
        );

}


/* =========================================================
   PORTRAIT LABEL
========================================================= */

.gavpvPortraitLabel{

    position:absolute;

    z-index:5;

    left:22px;
    right:22px;
    bottom:23px;

    color:#fff;

}


.gavpvPortraitLabel span{

    display:block;

    margin-bottom:7px;

    color:
        var(--gavpv-gold-light);

    font-size:15px;

    font-weight:800;

    letter-spacing:1.8px;

}


.gavpvPortraitLabel strong{

    display:block;

    font-size:29px;

    line-height:1.15;

}


.gavpvPortraitLabel small{

    display:block;

    margin-top:7px;

    color:
        rgba(255,255,255,.78);

    font-size:15px;

}


/* =========================================================
   FLOATING BENCHMARK
========================================================= */

.gavpvBenchmarkCard{

    position:absolute;

    z-index:7;

    left:-42px;

    bottom:88px;

    width:170px;

    padding:17px;

    background:#fff;

    border-left:
        4px solid
        var(--gavpv-gold);

    box-shadow:
        0 20px 45px
        rgba(9,38,83,.18);

}


.gavpvBenchmarkCard small{

    display:block;

    margin-bottom:7px;

    color:
        #738096;

    font-size:15px;

    font-weight:800;

    letter-spacing:1px;

}


.gavpvBenchmarkCard strong{

    display:block;

    color:
        var(--gavpv-navy);

    font-size:28px;

    line-height:1;

}


.gavpvBenchmarkCard span{

    display:block;

    margin-top:6px;

    color:
        #64738a;

    font-size:15px;

}




/* =========================================================
   CREDENTIAL CARD
========================================================= */

.gavpvCredentialCard{

    position:absolute;

    z-index:7;

    right:-25px;

    top:150px;

    width:132px;

    padding:15px;

    background:#fff;

    box-shadow:
        0 18px 40px
        rgba(9,38,83,.15);

}


.gavpvCredentialCard strong{

    display:block;

    color:
        var(--gavpv-gold);

    font-size:31px;

    line-height:1;

}


.gavpvCredentialCard span{

    display:block;

    margin-top:5px;

    color:
        var(--gavpv-navy);

    font-size:15px;

    font-weight:700;

    line-height:1.25;

}


/* =========================================================
   AUTHORITY FOOTER
========================================================= */

.gavpvAuthorityBottom{

    position:relative;

    z-index:4;

    display:flex;

    justify-content:space-between;

    gap:15px;

    padding:
        14px 10px 6px;

    color:
        rgba(255,255,255,.78);

    font-size:12px;

    letter-spacing:1px;

    font-weight:700;

}


.gavpvAIStatus{

    color:
        var(--gavpv-gold-light);

}


.gavpvAIStatus i{

    display:inline-block;

    width:7px;
    height:7px;

    margin-right:5px;

    border-radius:50%;

    background:
        #d5b252;

    box-shadow:
        0 0 0 5px
        rgba(213,178,82,.10);

}


/* =========================================================
   TECH GRID
========================================================= */

.gavpvTechGrid{

    position:absolute;

    right:-35px;
    bottom:-45px;

    width:200px;
    height:200px;

    display:grid;

    grid-template-columns:
        repeat(4,1fr);

    gap:8px;

    opacity:.45;

}


.gavpvTechGrid span{

    border:
        1px solid
        rgba(9,38,83,.12);

}


/* =========================================================
   CATEGORIES SECTION
========================================================= */

.gavpvCategories{

    position:relative;

    padding:
        110px 0 115px;

    background:
        #f8f9fb;

    overflow:hidden;

}


.gavpvCategoryContainer{

    width:
        min(1400px,92%);

    margin:auto;

}


.gavpvCategoryIntro{

    max-width:900px;

    margin-bottom:52px;

}


.gavpvSectionKicker{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:18px;

    color:
        var(--gavpv-gold);

    font-size:15px;

    letter-spacing:1.7px;

    font-weight:800;

}


.gavpvKickerLine{

    width:38px;
    height:3px;

    background:
        var(--gavpv-gold);

}


.gavpvCategoryIntro h2{

    margin:0 0 18px;

    color:
        var(--gavpv-navy);

    font-size:
        clamp(36px,4vw,53px);

    line-height:1.05;

    letter-spacing:-2px;

}


.gavpvCategoryIntro h2 strong{

    display:block;

    color:
        var(--gavpv-blue);

    font-weight:400;

}


.gavpvCategoryIntro p{

    max-width:850px;

    margin:0;

    color:
        var(--gavpv-muted);

}


/* =========================================================
   CATEGORY GRID
========================================================= */

.gavpvCategoryGrid{

    display:grid;

    grid-template-columns:
        repeat(4,1fr);

    gap:20px;

}


.gavpvCategoryCard{

    position:relative;

    overflow:hidden;

    background:#fff;

    border:
        1px solid
        #e1e6ed;

    box-shadow:
        0 8px 25px
        rgba(9,38,83,.045);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;

}


.gavpvCategoryCard:hover{

    transform:
        translateY(-7px);

    border-color:
        rgba(199,154,56,.55);

    box-shadow:
        0 22px 45px
        rgba(9,38,83,.12);

}


/* =========================================================
   CATEGORY IMAGE
========================================================= */

.gavpvCategoryImage{

    position:relative;

    height:250px;

    overflow:hidden;

    background:
        #e9edf2;

}


.gavpvCategoryImage img{

    width:100%;
    height:100%;

    object-fit:cover;

    display:block;

    transition:
        transform .6s ease;

}


.gavpvCategoryCard:hover
.gavpvCategoryImage img{

    transform:
        scale(1.055);

}


.gavpvCategoryImage::after{

    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to bottom,
            transparent 48%,
            rgba(4,20,44,.40)
        );

}


.gavpvCategoryImage > span{

    position:absolute;

    z-index:3;

    top:14px;
    left:14px;

    width:43px;
    height:43px;

    display:flex;

    align-items:center;
    justify-content:center;

    background:
        var(--gavpv-navy);

    color:
        var(--gavpv-gold-light);

    font-size:15px;

    font-weight:800;

    border:
        1px solid
        rgba(255,255,255,.35);

}


/* =========================================================
   CATEGORY BODY
========================================================= */

.gavpvCategoryBody{

    min-height:250px;

    padding:
        24px 24px 27px;

}


.gavpvCategoryBody > small{

    display:block;

    margin-bottom:9px;

    color:
        var(--gavpv-gold);

    font-size:15px;

    line-height:1.3;

    letter-spacing:1.1px;

    font-weight:800;

}


.gavpvCategoryBody h3{

    margin:
        0 0 13px;

    color:
        var(--gavpv-navy);

    font-size:22px;

    line-height:1.2;

    letter-spacing:-.4px;

}


.gavpvCategoryBody h3 strong{

    font-weight:800;

}


.gavpvCategoryBody h3 em{

    color:
        var(--gavpv-gold);

    font-style:normal;

    font-size:16px;

}


.gavpvCategoryBody h3 span{

    display:block;

    font-size:17px;

    margin-top:3px;

    color:
        #47617d;

}


.gavpvCategoryBody p{

    margin:0;

    color:
        #617086;

    font-size:15px;

    line-height:1.7;

}


.gavpvCategoryBody p strong{

    color:
        var(--gavpv-navy);

}


/* =========================================================
   FEATURE CARD
========================================================= */

.gavpvCategoryFeature{

    grid-column:
        span 2;

    display:grid;

    grid-template-columns:
        1fr 1fr;

}


.gavpvCategoryFeature .gavpvCategoryImage{

    height:100%;

    min-height:300px;

}


.gavpvCategoryFeature .gavpvCategoryBody{

    display:flex;

    flex-direction:column;

    justify-content:center;

}


/* =========================================================
   CATEGORY META
========================================================= */

.gavpvCategoryMeta{

    display:flex;

    flex-wrap:wrap;

    gap:7px;

    margin-top:20px;

}


.gavpvCategoryMeta span{

    padding:
        6px 9px;

    color:
        #52647a;

    background:
        #f3f5f8;

    border:
        1px solid
        #e0e5eb;

    font-size:15px;

    font-weight:700;

}


/* =========================================================
   DARK CATEGORY
========================================================= */

.gavpvDarkCard{

    background:
        var(--gavpv-deep);

    border-color:
        var(--gavpv-deep);

}


.gavpvDarkCard .gavpvCategoryBody{

    background:
        var(--gavpv-deep);

}


.gavpvDarkCard .gavpvCategoryBody h3{

    color:#fff;

}


.gavpvDarkCard .gavpvCategoryBody h3 span{

    color:
        #b9c8da;

}


.gavpvDarkCard .gavpvCategoryBody p{

    color:
        #b9c8da;

}


.gavpvDarkCard .gavpvCategoryBody p strong{

    color:#fff;

}


.gavpvDarkCard .gavpvCategoryBody > small{

    color:
        var(--gavpv-gold-light);

}


/* =========================================================
   GOLD CARD
========================================================= */

.gavpvGoldCard{

    border-top:
        4px solid
        var(--gavpv-gold);

}


/* =========================================================
   FOLK PATTERN
========================================================= */

.gavpvPatternImage{

    position:relative;

    background:
        #b98b38;

}


.gavpvFolkPattern{

    position:absolute;

    inset:0;

    opacity:.75;

    background-image:

        radial-gradient(
            circle at 20% 20%,
            rgba(255,255,255,.5) 0 5px,
            transparent 6px
        ),

        radial-gradient(
            circle at 70% 65%,
            rgba(255,255,255,.4) 0 7px,
            transparent 8px
        ),

        linear-gradient(
            45deg,
            transparent 44%,
            rgba(255,255,255,.28) 45%,
            rgba(255,255,255,.28) 55%,
            transparent 56%
        );

    background-size:
        48px 48px,
        67px 67px,
        42px 42px;

}


/* =========================================================
   CATEGORY NOTE
========================================================= */

.gavpvCategoryNote{

    display:flex;

    align-items:center;

    gap:18px;

    margin-top:28px;

    padding:
        21px 25px;

    background:#fff;

    border:
        1px solid
        #e1e6ed;

    box-shadow:
        0 8px 25px
        rgba(9,38,83,.035);

}


.gavpvNoteIcon{

    flex:0 0 44px;

    width:44px;
    height:44px;

    display:flex;

    align-items:center;
    justify-content:center;

    color:
        var(--gavpv-gold);

    background:
        rgba(199,154,56,.10);

    border:
        1px solid
        rgba(199,154,56,.25);

    font-size:21px;

}


.gavpvCategoryNote strong{

    display:inline;

    margin-right:6px;

    color:
        var(--gavpv-navy);

    font-size:16px;

}


.gavpvCategoryNote span{

    color:
        #657389;

    font-size:15px;

    line-height:1.6;

}


/* =========================================================
   ENGAGEMENT CTA
========================================================= */

.gavpvEngage{

    position:relative;

    padding:
        65px 0;

    background:
        var(--gavpv-navy);

    overflow:hidden;

}


.gavpvEngage::before{

    content:"";

    position:absolute;

    inset:0;

    opacity:.18;

    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:
        38px 38px;

}


.gavpvEngageGrid{

    position:relative;

    z-index:2;

    width:
        min(1400px,92%);

    margin:auto;

    display:grid;

    grid-template-columns:
        220px
        minmax(0,1fr)
        170px;

    gap:35px;

    align-items:center;

}


.gavpvEngageSignal{

    color:
        var(--gavpv-gold-light);

    font-size:14px;

    line-height:1.5;

    letter-spacing:1.5px;

    font-weight:800;

}


.gavpvSignalDot{

    display:inline-block;

    width:9px;
    height:9px;

    margin-right:8px;

    border-radius:50%;

    background:
        var(--gavpv-gold);

    box-shadow:
        0 0 0 7px
        rgba(199,154,56,.12);

}


.gavpvEngageContent{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:35px;

}


.gavpvEngageContent h2{

    margin:0 0 10px;

    color:#fff;

    font-size:
        clamp(29px,3vw,31px);

    line-height:1.1;

    letter-spacing:-1px;

}


.gavpvEngageContent h2 strong{

    color:
        var(--gavpv-gold-light);

}


.gavpvEngageContent p{

    max-width:680px;

    margin:0;

    color:
        #b9c7d8;

}


.gavpvEngageActions{

    flex-shrink:0;

    display:flex;

    align-items:center;

    gap:10px;

}


.gavpvImpactButton{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    min-height:58px;

    padding:
        0 21px;

    color:
        var(--gavpv-deep);

    background:
        var(--gavpv-gold-light);

    text-decoration:none;

    border-radius:6px;

    font-size:16px;

    font-weight:800;

    box-shadow:
        0 12px 30px
        rgba(0,0,0,.18);

    transition:
        transform .25s ease,
        background .25s ease;

}


.gavpvImpactButton:hover{

    color:
        var(--gavpv-deep);

    transform:
        translateY(-3px);

    background:#f0d37f;

}


.gavpvImpactButton span{

    font-size:20px;

}


.gavpvImpactPhone{

    display:flex;

    flex-direction:column;

    justify-content:center;

    min-height:58px;

    padding:
        8px 15px;

    color:#fff;

    text-decoration:none;

    border:
        1px solid
        rgba(255,255,255,.20);

    border-radius:6px;

    font-size:15px;

    font-weight:700;

}


.gavpvImpactPhone:hover{

    color:#fff;

    border-color:
        var(--gavpv-gold);

}


.gavpvImpactPhone small{

    margin-bottom:4px;

    color:
        var(--gavpv-gold-light);

    font-size:15px;

    letter-spacing:1px;

}


.gavpvEngageData{

    display:flex;

    flex-direction:column;

    padding-left:22px;

    border-left:
        1px solid
        rgba(255,255,255,.16);

}


.gavpvEngageData span{

    color:
        #9eb0c6;

    font-size:15px;

    letter-spacing:1.2px;

}


.gavpvEngageData strong{

    margin:
        4px 0;

    color:#fff;

    font-size:18px;

}


.gavpvEngageData small{

    color:
        var(--gavpv-gold-light);

    font-size:15px;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:1200px){

    .gavpvHeroGrid{

        grid-template-columns:
            minmax(0,1fr)
            400px;

        gap:40px;

    }


    .gavpvHero h1{

        font-size:
            clamp(45px,5.5vw,68px);

    }


    .gavpvHeroVisual{

        min-height:600px;

    }


    .gavpvPortraitFrame{

        min-height:560px;

    }


    .gavpvCategoryGrid{

        grid-template-columns:
            repeat(2,1fr);

    }


    .gavpvEngageGrid{

        grid-template-columns:
            1fr;

        gap:22px;

    }


    .gavpvEngageData{

        display:none;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px){

    .gavpvHero{

        padding:
            55px 0 65px;

    }


    .gavpvHeroGrid{

        width:90%;

        grid-template-columns:
            1fr;

        gap:42px;

    }


    .gavpvHeroContent{

        order:1;

    }


    .gavpvHeroVisual{

        order:2;

        min-height:auto;

        padding:0 12px 30px;

    }


    .gavpvHero h1{

        font-size:
            clamp(39px,11vw,53px);

        line-height:1.02;

        letter-spacing:-2px;

    }


    .gavpvHero h1 em{

        letter-spacing:-1.5px;

    }


    .gavpvHeroDeck{

        font-size:17px !important;

        line-height:1.65 !important;

    }


    .gavpvHeroLead p{

        font-size:15px;

        line-height:1.72;

    }


    .gavpvHeroActions{

        flex-direction:column;

    }


    .gavpvPrimaryCTA,
    .gavpvPhoneCTA{

        width:100%;

        justify-content:flex-start;

    }


    .gavpvHeroFacts{

        display:grid;

        grid-template-columns:
            1fr 1fr;

    }


    .gavpvHeroFact{

        padding:
            15px 12px 0 0;

    }


    .gavpvHeroFact:nth-child(3){

        grid-column:
            span 2;

        border-top:
            1px solid
            var(--gavpv-border);

        border-right:0;

        padding-left:0;

        padding-top:15px;

    }


    .gavpvAuthorityCard{

        width:100%;

    }


    .gavpvPortraitFrame{

        min-height:500px;

    }


    .gavpvBenchmarkCard{

        left:-3px;

        bottom:65px;

        width:150px;

    }


    .gavpvCredentialCard{

        right:-5px;

        top:110px;

        width:120px;

    }


    .gavpvAuthorityBottom{

        flex-direction:column;

        gap:7px;

    }


    .gavpvCategories{

        padding:
            75px 0 80px;

    }


    .gavpvCategoryContainer{

        width:90%;

    }


    .gavpvCategoryIntro h2{

        font-size:
            38px;

        letter-spacing:-1.5px;

    }


    .gavpvCategoryGrid{

        grid-template-columns:
            1fr;

        gap:17px;

    }


    .gavpvCategoryFeature{

        grid-column:
            auto;

        display:block;

    }


    .gavpvCategoryFeature .gavpvCategoryImage{

        height:250px;

        min-height:250px;

    }


    .gavpvCategoryBody{

        min-height:auto;

    }


    .gavpvCategoryNote{

        align-items:flex-start;

        padding:18px;

    }


    .gavpvEngage{

        padding:
            52px 0;

    }


    .gavpvEngageGrid{

        width:90%;

    }


    .gavpvEngageContent{

        flex-direction:column;

        align-items:flex-start;

        gap:22px;

    }


    .gavpvEngageActions{

        width:100%;

        flex-direction:column;

        align-items:stretch;

    }


    .gavpvImpactButton,
    .gavpvImpactPhone{

        width:100%;

        justify-content:center;

        text-align:center;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:430px){

    .gavpvHero h1{

        font-size:28px;

    }


    .gavpvHeroEyebrow{

        font-size:10px;

        letter-spacing:1.2px;

    }


    .gavpvHeroVisual{

        padding:
            0 5px 25px;

    }


    .gavpvPortraitFrame{

        min-height:460px;

    }


    .gavpvBenchmarkCard{

        left:-7px;

        bottom:52px;

    }


    .gavpvCredentialCard{

        right:-7px;

        top:92px;

    }


    .gavpvCategoryIntro h2{

        font-size:34px;

    }


    .gavpvCategoryImage{

        height:225px;

    }

}


/* =========================================================
   ACCESSIBILITY / MOTION
========================================================= */

@media (prefers-reduced-motion:reduce){

    .gavpvCategoryCard,
    .gavpvCategoryImage img,
    .gavpvPrimaryCTA,
    .gavpvPhoneCTA,
    .gavpvImpactButton{

        transition:none;

    }

}