/* =========================================================
   GOVERNMENT APPROVED P&M VALUERS
   PREMIUM NAVY + GOLD / AI VALUATION DESIGN SYSTEM
========================================================== */

:root{

    --pmv-navy:#071a33;
    --pmv-navy-2:#0b2545;
    --pmv-navy-3:#102f54;

    --pmv-gold:#c79a3b;
    --pmv-gold-light:#e4c46d;
    --pmv-gold-dark:#9b7223;

    --pmv-white:#ffffff;
    --pmv-light:#f5f7fa;
    --pmv-muted:#68778a;

    --pmv-border:rgba(199,154,59,.22);

    --pmv-shadow:0 20px 60px rgba(7,26,51,.12);

}


/* =========================================================
   HERO
========================================================== */

.pmvHero{

    position:relative;
    overflow:hidden;

    background:
        radial-gradient(circle at 76% 35%,rgba(199,154,59,.12),transparent 25%),
        linear-gradient(135deg,#06172d 0%,#0a2443 52%,#071a33 100%);

    color:#fff;
    padding:90px 0 75px;

}


.pmvHero: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:42px 42px;

    mask-image:linear-gradient(to bottom,black,transparent);

    pointer-events:none;

}


.pmvHeroGlow{

    position:absolute;

    width:420px;
    height:420px;

    border-radius:50%;

    filter:blur(100px);

    pointer-events:none;

}


.pmvHeroGlowOne{

    background:rgba(199,154,59,.08);

    right:5%;
    top:5%;

}


.pmvHeroGlowTwo{

    background:rgba(30,95,160,.10);

    left:-10%;
    bottom:-30%;

}


.pmvHeroGrid{

    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:
        minmax(0,1.08fr)
        minmax(430px,.92fr);

    gap:55px;

    align-items:center;

}


.pmvHeroContent{

    max-width:780px;

}


.pmvEyebrow{

    display:inline-flex;
    align-items:center;
    gap:10px;

    padding:9px 16px;

    border:1px solid rgba(228,196,109,.35);

    border-radius:50px;

    color:var(--pmv-gold-light);

    font-size:15px;
    font-weight:800;

    letter-spacing:1.4px;

    background:rgba(255,255,255,.035);

}


.pmvEyebrow i{

    font-size:13px;

}


.pmvHero h1{

    margin:22px 0 22px;

    font-size:clamp(40px,4.2vw,55px);

    line-height:1.08;

    letter-spacing:-1.7px;

    font-weight:700;
    color: #eaeaea;
}


.pmvHero h1 strong{

    display:inline;

    color:var(--pmv-gold-light);

    font-weight:800;

}


.pmvHero h1 span{

    display:block;

    margin-top:8px;

    font-size:.58em;

    line-height:1.25;

    letter-spacing:-.3px;

    color:#d8e0ea;

    font-weight:500;

}


.pmvHeroIntro{

    max-width:750px;

}


.pmvHeroIntro p{

    margin:0 0 12px;

    color:#c9d3df;

    font-size:17px;

    line-height:1.75;

}


.pmvHeroIntro strong{

    color:#fff;

    font-weight:750;

}


.pmvHeroActions{

    display:flex;
    align-items:center;

    flex-wrap:wrap;

    gap:15px;

    margin-top:30px;

}


.pmvPrimaryBtn{

    display:flex;
    align-items:center;
    gap:13px;

    min-height:67px;

    padding:9px 20px 9px 10px;

    border-radius:10px;

    text-decoration:none;

    background:linear-gradient(
        135deg,
        var(--pmv-gold-light),
        var(--pmv-gold)
    );

    color:var(--pmv-navy);

    box-shadow:
        0 12px 35px rgba(199,154,59,.22);

    transition:.3s ease;

}


.pmvPrimaryBtn:hover{

    transform:translateY(-3px);

    box-shadow:
        0 18px 40px rgba(199,154,59,.32);

}


.pmvPrimaryBtn > span{

    width:48px;
    height:48px;

    display:grid;
    place-items:center;

    border-radius:8px;

    background:rgba(7,26,51,.12);

}


.pmvPrimaryBtn strong{

    display:block;

    font-size:16px;

}


.pmvPrimaryBtn small{

    display:block;

    margin-top:3px;

    font-size:15px;

    font-weight:600;

    opacity:.75;

}


.pmvCallBtn{

    display:flex;
    align-items:center;
    gap:12px;

    color:#fff;

    text-decoration:none;

    padding:9px 15px;

    border:1px solid rgba(255,255,255,.13);

    border-radius:10px;

    background:rgba(255,255,255,.035);

    transition:.3s ease;

}


.pmvCallBtn:hover{

    border-color:var(--pmv-gold);

    transform:translateY(-2px);

}


.pmvCallIcon{

    width:44px;
    height:44px;

    display:grid;
    place-items:center;

    border-radius:50%;

    color:var(--pmv-gold-light);

    border:1px solid rgba(199,154,59,.3);

}


.pmvCallBtn small{

    display:block;

    color:#aebdce;

    font-size:15px;

}


.pmvCallBtn strong{

    display:block;

    margin-top:2px;

    font-size:18px;

    color:#fff;

}


.pmvHeroTrust{

    display:flex;

    flex-wrap:wrap;

    gap:0;

    margin-top:38px;

    padding-top:22px;

    border-top:1px solid rgba(255,255,255,.09);

}


.pmvHeroTrust div{

    min-width:125px;

    padding:0 22px;

    border-right:1px solid rgba(255,255,255,.1);

}


.pmvHeroTrust div:first-child{

    padding-left:0;

}


.pmvHeroTrust div:last-child{

    border-right:0;

}


.pmvHeroTrust strong{

    display:block;

    color:var(--pmv-gold-light);

    font-size:21px;

}


.pmvHeroTrust span{

    display:block;

    margin-top:3px;

    color:#9eafc1;

    font-size:15px;

}


/* =========================================================
   VALUER VISUAL
========================================================== */

.pmvHeroValuer{

    position:relative;

    min-height:650px;

    display:flex;

    align-items:center;
    justify-content:center;

}


.pmvValuerOrb{

    position:absolute;

    width:500px;
    height:500px;

    border-radius:50%;

    border:1px solid rgba(199,154,59,.18);

    box-shadow:
        0 0 0 30px rgba(199,154,59,.025),
        0 0 0 80px rgba(199,154,59,.018);

}


.pmvValuerFrame{

    position:relative;
    z-index:3;

    width:min(100%,430px);

    padding:13px;

    border:1px solid rgba(228,196,109,.35);

    border-radius:24px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.11),
            rgba(255,255,255,.025)
        );

    backdrop-filter:blur(16px);

    box-shadow:
        0 35px 80px rgba(0,0,0,.35);

}


.pmvValuerTopLine{

    display:flex;
    justify-content:space-between;

    padding:7px 10px 13px;

    color:#91a5b9;

    font-size:15px;
    font-weight:800;

    letter-spacing:1.2px;

}


.pmvValuerTopLine span:last-child{

    color:var(--pmv-gold-light);

}


.pmvValuerTopLine i{

    margin-right:4px;

}


.pmvValuerImage{

    position:relative;

    overflow:hidden;

   

    border-radius:17px;

    background:
        radial-gradient(
            circle at 50% 20%,
            rgba(199,154,59,.18),
            transparent 50%
        ),
        linear-gradient(
            180deg,
            #183b61,
            #081b32
        );

}


.pmvValuerImage:after{

    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 60%,
            rgba(7,26,51,.7)
        );

}


.pmvValuerImage img{

    width:100%;
    height:100%;

    object-fit:contain;
    object-position:center bottom;

    display:block;

    filter:drop-shadow(
        0 25px 25px rgba(0,0,0,.3)
    );

}


.pmvValuerInfo{

    padding:18px 15px 12px;

}


.pmvValuerInfo > span{

    color:var(--pmv-gold-light);

    font-size:15px;

    font-weight:800;

    letter-spacing:1.1px;

}


.pmvValuerInfo h2{

    margin:5px 0 2px;

    font-size:29px;

    color:#fff;

}


.pmvValuerInfo p{

    margin:0;

    color:#aab9c9;

    font-size:15px;

}


.pmvValuerBadges{

    display:flex;
    gap:7px;

    margin-top:13px;

}


.pmvValuerBadges span{

    padding:5px 9px;

    border:1px solid rgba(199,154,59,.27);

    border-radius:5px;

    color:var(--pmv-gold-light);

    font-size:15px;

    font-weight:800;

}


.pmvDataCard{

    position:absolute;
    z-index:5;

    display:flex;
    align-items:center;
    gap:10px;

    padding:11px 14px;

    border:1px solid rgba(255,255,255,.12);

    border-radius:10px;

    background:rgba(8,28,51,.88);

    backdrop-filter:blur(12px);

    box-shadow:0 18px 35px rgba(0,0,0,.2);

}


.pmvDataCard small{

    display:block;

    color:#8296aa;

    font-size:15px;

}


.pmvDataCard strong{

    display:block;

    margin-top:2px;

    color:#fff;

    font-size:15px;

}


.pmvDataIcon{

    width:39px;
    height:39px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:var(--pmv-gold-light);

    background:rgba(199,154,59,.09);

}


.pmvDataCardOne{

    top:16%;
    left:0;

}


.pmvDataCardTwo{

    right:-15px;
    top:45%;

}


.pmvDataCardThree{

    bottom:11%;
    left:8%;

}


/* =========================================================
   COMMON SECTION HEAD
========================================================== */

.pmvFactors,
.pmvSpectrum,
.pmvApplications{

    padding:100px 0;

    background:#fff;

}


.pmvSectionHead{

    max-width:800px;

    margin:0 auto 55px;

    text-align:center;

}


.pmvSectionKicker{

    display:inline-block;

    margin-bottom:12px;

    color:var(--pmv-gold-dark);

    font-size:15px;

    font-weight:900;

    letter-spacing:1.7px;

}


.pmvSectionHead h2{

    margin:0;

    color:var(--pmv-navy);

    font-size:clamp(32px,3.2vw,48px);

    line-height:1.15;

    letter-spacing:-1px;

}


.pmvSectionHead h2 strong{

    color:var(--pmv-gold-dark);

}


.pmvSectionHead p{

    margin:17px auto 0;

    max-width:720px;

    color:var(--pmv-muted);

    font-size:17px;

    line-height:1.7;

}


/* =========================================================
   FACTORS
========================================================== */

.pmvFactorGrid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;

}


.pmvFactorCard{

    position:relative;

    overflow:hidden;

    padding:31px 25px;

    min-height:330px;

    border:1px solid #e5e9ee;

    border-radius:14px;

    background:#fff;

    box-shadow:0 12px 35px rgba(7,26,51,.055);

    transition:.35s ease;

}


.pmvFactorCard:hover{

    transform:translateY(-7px);

    border-color:rgba(199,154,59,.5);

    box-shadow:var(--pmv-shadow);

}


.pmvFactorNumber{

    position:absolute;

    right:18px;
    top:12px;

    color:#edf0f4;

    font-size:45px;

    font-weight:900;

}


.pmvFactorIcon{

    width:54px;
    height:54px;

    display:grid;
    place-items:center;

    margin-bottom:23px;

    border-radius:12px;

    color:var(--pmv-gold-dark);

    background:#faf5e9;

    font-size:20px;

}


.pmvFactorCard > span{

    color:var(--pmv-gold-dark);

    font-size:15px;

    font-weight:850;

    letter-spacing:1px;

}


.pmvFactorCard h3{

    margin:7px 0 12px;

    color:var(--pmv-navy);

    font-size:22px;

}


.pmvFactorCard p{

    margin:0;

    color:#68778a;

    font-size:15px;

    line-height:1.72;

}


/* =========================================================
   TRUST BAND
========================================================== */

.pmvTrust{

    padding:48px 0;

    background:
        linear-gradient(
            110deg,
            #071a33,
            #0e3156
        );

}


.pmvTrustWrapper{

    display:grid;

    grid-template-columns:270px 1fr;

    align-items:center;

    gap:45px;

}


.pmvTrustIntro > span{

    color:var(--pmv-gold-light);

    font-size:15px;

    font-weight:850;

    letter-spacing:1.5px;

}


.pmvTrustIntro h2{

    margin:8px 0 0;

    color:#fff;

    font-size:27px;

    line-height:1.2;

}


.pmvTrustIntro h2 strong{

    color:var(--pmv-gold-light);

}


.pmvTrustItems{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

}


.pmvTrustItem{

    display:flex;
    align-items:center;

    gap:14px;

    color:#aebdce;

    font-size:15px;

    line-height:1.5;

}


.pmvTrustItem i{

    flex:0 0 46px;

    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    border:1px solid rgba(199,154,59,.3);

    border-radius:9px;

    color:var(--pmv-gold-light);

}


.pmvTrustItem strong{

    display:block;

    color:#fff;

}


/* =========================================================
   METHODOLOGIES
========================================================== */

.pmvMethods{

    padding:105px 0;

    background:

        radial-gradient(
            circle at 10% 80%,
            rgba(199,154,59,.07),
            transparent 30%
        ),

        linear-gradient(
            135deg,
            #06172d,
            #0b2545
        );

}


.pmvSectionHeadDark h2{

    color:#fff;

}


.pmvSectionHeadDark p{

    color:#aebdce;

}


.pmvMethodGrid{

    display:grid;

    grid-template-columns:1.15fr 1fr 1fr;

    gap:18px;

}


.pmvMethodCard{

    position:relative;

    padding:35px 29px;

    min-height:310px;

    border:1px solid rgba(255,255,255,.1);

    border-radius:14px;

    background:rgba(255,255,255,.035);

    backdrop-filter:blur(10px);

}


.pmvMethodFeatured{

    border-color:rgba(199,154,59,.45);

    background:
        linear-gradient(
            145deg,
            rgba(199,154,59,.11),
            rgba(255,255,255,.025)
        );

}


.pmvMethodNo{

    color:rgba(228,196,109,.35);

    font-size:38px;

    font-weight:900;

}


.pmvMethodCard > span{

    display:block;

    margin-top:12px;

    color:var(--pmv-gold-light);

    font-size:15px;

    font-weight:850;

    letter-spacing:1.2px;

}


.pmvMethodCard h3{

    margin:8px 0 13px;

    color:#fff;

    font-size:25px;

}


.pmvMethodCard p{

    color:#aebdce;

    font-size:15px;

    line-height:1.72;

}


.pmvMethodCard p strong{

    color:#fff;

}


.pmvMethodFormula{

    margin-top:22px;

    padding:13px;

    border-left:3px solid var(--pmv-gold);

    background:rgba(0,0,0,.16);

    color:var(--pmv-gold-light);

    font-size:15px;

    line-height:1.5;

}


/* =========================================================
   SPECTRUM
========================================================== */

.pmvSpectrum{

    background:#f7f8fa;

}


.pmvSpectrumGrid{

    display:grid;

    grid-template-columns:.8fr 1.2fr;

    gap:70px;

    align-items:center;

}


.pmvSpectrumContent{

    max-width:510px;

}


.pmvSpectrumContent h2{

    margin:0 0 17px;

    color:var(--pmv-navy);

    font-size:43px;

    line-height:1.15;

}


.pmvSpectrumContent h2 strong{

    color:var(--pmv-gold-dark);

}


.pmvSpectrumContent p{

    color:var(--pmv-muted);

    font-size:16px;

    line-height:1.75;

}


.pmvOutlineBtn{

    display:inline-flex;
    align-items:center;
    gap:12px;

    margin-top:20px;

    padding:13px 18px;

    border:1px solid var(--pmv-gold);

    border-radius:8px;

    color:var(--pmv-navy);

    text-decoration:none;

    font-size:15px;

    font-weight:800;

    transition:.3s ease;

}


.pmvOutlineBtn:hover{

    color:#fff;

    background:var(--pmv-navy);

    border-color:var(--pmv-navy);

}


.pmvSpectrumGridItems{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:12px;

}


.pmvSpectrumGridItems > div{

    padding:22px;

    border:1px solid #e3e7ec;

    border-radius:11px;

    background:#fff;

    transition:.3s ease;

}


.pmvSpectrumGridItems > div:hover{

    transform:translateY(-4px);

    border-color:rgba(199,154,59,.45);

    box-shadow:0 12px 30px rgba(7,26,51,.07);

}


.pmvSpectrumGridItems i{

    display:block;

    margin-bottom:12px;

    color:var(--pmv-gold-dark);

    font-size:22px;

}


.pmvSpectrumGridItems strong{

    display:block;

    color:var(--pmv-navy);

    font-size:16px;

}


.pmvSpectrumGridItems span{

    display:block;

    margin-top:5px;

    color:#748296;

    font-size:15px;

    line-height:1.45;

}


/* =========================================================
   APPLICATIONS
========================================================== */

.pmvApplicationGrid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

}


.pmvApplicationGrid article{

    padding:34px 29px;

    border:1px solid #e3e7ec;

    border-radius:14px;

    background:#fff;

    box-shadow:0 12px 35px rgba(7,26,51,.05);

    transition:.35s ease;

}


.pmvApplicationGrid article:hover{

    transform:translateY(-6px);

    border-color:rgba(199,154,59,.45);

    box-shadow:var(--pmv-shadow);

}


.pmvApplicationIcon{

    width:56px;
    height:56px;

    display:grid;
    place-items:center;

    margin-bottom:23px;

    border-radius:12px;

    background:#faf5e9;

    color:var(--pmv-gold-dark);

    font-size:21px;

}


.pmvApplicationGrid article > span{

    color:var(--pmv-gold-dark);

    font-size:15px;

    font-weight:850;

    letter-spacing:1.1px;

}


.pmvApplicationGrid h3{

    margin:7px 0 12px;

    color:var(--pmv-navy);

    font-size:23px;

}


.pmvApplicationGrid p{

    margin:0 0 19px;

    color:#68778a;

    font-size:15px;

    line-height:1.7;

}


.pmvApplicationGrid p strong{

    color:var(--pmv-navy);

}


.pmvApplicationGrid article > a{

    display:inline-flex;
    align-items:center;
    gap:8px;

    color:var(--pmv-navy);

    text-decoration:none;

    font-size:15px;

    font-weight:850;

}


.pmvApplicationGrid article > a i{

    color:var(--pmv-gold-dark);

    transition:.25s ease;

}


.pmvApplicationGrid article > a:hover i{

    transform:translateX(5px);

}


/* =========================================================
   FINAL CTA
========================================================== */

.pmvFinalCta{

    padding:70px 0;

    background:#f5f7fa;

}


.pmvFinalCtaBox{

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:35px;

    padding:43px 48px;

    border-radius:18px;

    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(199,154,59,.14),
            transparent 30%
        ),
        linear-gradient(
            120deg,
            #071a33,
            #0d3157
        );

    box-shadow:
        0 25px 70px rgba(7,26,51,.16);

}


.pmvFinalCtaBox > div:first-child{

    max-width:700px;

}


.pmvFinalCtaBox > div:first-child > span{

    color:var(--pmv-gold-light);

    font-size:15px;

    font-weight:850;

    letter-spacing:1.3px;

}


.pmvFinalCtaBox h2{

    margin:9px 0 9px;

    color:#fff;

    font-size:37px;

    line-height:1.2;

}


.pmvFinalCtaBox h2 strong{

    color:var(--pmv-gold-light);

}


.pmvFinalCtaBox p{

    margin:0;

    color:#aebdce;

    font-size:16px;

    line-height:1.6;

}


.pmvFinalActions{

    display:flex;
    flex-direction:column;

    gap:10px;

    min-width:260px;

}


.pmvFinalButton{

    display:flex;
    align-items:center;
    gap:12px;

    padding:12px 15px;

    border-radius:9px;

    color:var(--pmv-navy);

    background:linear-gradient(
        135deg,
        var(--pmv-gold-light),
        var(--pmv-gold)
    );

    text-decoration:none;

    transition:.3s ease;

}


.pmvFinalButton:hover{

    transform:translateY(-3px);

    box-shadow:0 14px 30px rgba(199,154,59,.25);

}


.pmvFinalButton > i:first-child{

    width:43px;
    height:43px;

    display:grid;
    place-items:center;

    border-radius:7px;

    background:rgba(7,26,51,.1);

}


.pmvFinalButton span{

    flex:1;

}


.pmvFinalButton small{

    display:block;

    font-size:15px;

    opacity:.72;

}


.pmvFinalButton span{

    font-size:15px;
    font-weight:850;

}


.pmvFinalPhone{

    display:flex;
    justify-content:center;
    align-items:center;
    gap:9px;

    padding:11px;

    color:#fff;

    border:1px solid rgba(255,255,255,.12);

    border-radius:8px;

    text-decoration:none;

    font-size:16px;
    font-weight:800;

}


/* =========================================================
   RESPONSIVE
========================================================== */

@media(max-width:1100px){

    .pmvHeroGrid{

        grid-template-columns:1fr;

    }

    .pmvHeroContent{

        max-width:850px;
        margin:auto;
        text-align:center;

    }

    .pmvHeroActions{

        justify-content:center;

    }

    .pmvHeroTrust{

        justify-content:center;

    }

    .pmvHeroValuer{

        min-height:590px;

    }

    .pmvFactorGrid{

        grid-template-columns:repeat(2,1fr);

    }

    .pmvSpectrumGrid{

        grid-template-columns:1fr;

    }

    .pmvSpectrumContent{

        max-width:750px;
        text-align:center;
        margin:auto;

    }

}


@media(max-width:900px){

    .pmvTrustWrapper{

        grid-template-columns:1fr;

        text-align:center;

    }

    .pmvTrustItems{

        text-align:left;

    }

    .pmvMethodGrid{

        grid-template-columns:1fr;

    }

    .pmvApplicationGrid{

        grid-template-columns:1fr;

    }

    .pmvFinalCtaBox{

        flex-direction:column;

        text-align:center;

    }

    .pmvFinalActions{

        width:100%;
        max-width:400px;

    }

}


@media(max-width:650px){

    .pmvHero{

        padding:65px 0 55px;

    }

    .pmvHero h1{

        font-size:39px;

        letter-spacing:-1px;

    }

    .pmvHeroIntro p{

        font-size:15px;

    }

    .pmvHeroActions{

        flex-direction:column;
        align-items:stretch;

    }

    .pmvPrimaryBtn,
    .pmvCallBtn{

        justify-content:center;

    }

    .pmvHeroTrust{

        display:grid;

        grid-template-columns:1fr 1fr;

        gap:15px;

    }

    .pmvHeroTrust div{

        padding:0 10px;

        border-right:0;

        text-align:left;

    }

    .pmvHeroValuer{

        min-height:500px;

    }

    .pmvValuerOrb{

        width:330px;
        height:330px;

    }

    .pmvValuerFrame{

        width:330px;

    }

    .pmvValuerImage{

        height:320px;

    }

    .pmvDataCard{

        transform:scale(.82);

    }

    .pmvDataCardOne{

        left:-25px;

    }

    .pmvDataCardTwo{

        right:-25px;

    }

    .pmvDataCardThree{

        left:-10px;

    }

    .pmvFactors,
    .pmvSpectrum,
    .pmvApplications,
    .pmvMethods{

        padding:70px 0;

    }

    .pmvSectionHead h2{

        font-size:32px;

    }

    .pmvFactorGrid{

        grid-template-columns:1fr;

    }

    .pmvTrustItems{

        grid-template-columns:1fr;

    }

    .pmvSpectrumGridItems{

        grid-template-columns:1fr;

    }

    .pmvFinalCta{

        padding:50px 0;

    }

    .pmvFinalCtaBox{

        padding:32px 22px;

    }

    .pmvFinalCtaBox h2{

        font-size:29px;

    }

}