/* Adam Parsons Group test redesign. Palette and type match the feature sheets and Just Listed cards
   (print-templates/shared/brand.css): navy #002349, gold #a8875a, white.
   Fonts: Playfair Display + Libre Franklin, self-hosted (SIL Open Font License). */
@font-face{font-family:"APG Serif";src:url(../fonts/PlayfairDisplay-400.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"APG Serif";src:url(../fonts/PlayfairDisplay-500.ttf) format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"APG Serif";src:url(../fonts/PlayfairDisplay-600.ttf) format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"APG Serif";src:url(../fonts/PlayfairDisplay-Italic-400.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"APG Sans";src:url(../fonts/LibreFranklin-400.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"APG Sans";src:url(../fonts/LibreFranklin-500.ttf) format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"APG Sans";src:url(../fonts/LibreFranklin-600.ttf) format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"APG Sans";src:url(../fonts/LibreFranklin-Italic-400.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}
:root{--navy:#002349;--navy-deep:#001a36;--gold:#a8875a;--gold-soft:#d9c6a5;--ink:#1d2533;--grey:#6b7280;--hair:#d8d3c8;--white:#fff;
--serif:"APG Serif","Playfair Display",Georgia,serif;--sans:"APG Sans","Libre Franklin",Helvetica,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-weight:400;color:var(--ink);background:#fff;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;color:var(--navy);font-variant-numeric:lining-nums}
h1{font-size:clamp(46px,6.2vw,90px)}h2{font-size:clamp(34px,3.8vw,54px);margin-bottom:.45em}h3{font-size:26px}
.kicker{font-family:var(--sans);font-weight:500;font-size:11.5px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:20px;color:var(--gold)}
.testbar{position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--navy-deep);color:#fff;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:5px 8px}
/* header */
.site-h{position:absolute;top:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:24px 56px 20px;color:#fff;border-bottom:1px solid rgba(255,255,255,.35)}
.h-left{display:flex;align-items:center;gap:36px}
.burger{width:30px;cursor:pointer;display:flex;flex-direction:column;gap:7px}.burger span{height:1.5px;background:#fff;display:block}
.short{display:flex;gap:28px;font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.short a:hover,.h-right a:hover{color:var(--gold-soft)}
.logo img{height:58px;width:auto}
.h-right{justify-self:end;text-align:right;font-size:13px;letter-spacing:.03em;display:flex;flex-direction:column;gap:2px}
.menu-ov{position:fixed;inset:0;z-index:50;background:var(--navy);color:#fff;padding:120px 8vw 60px;opacity:0;pointer-events:none;transition:opacity .4s;overflow:auto}
#menu-t:checked~.menu-ov{opacity:1;pointer-events:auto}
.menu-ov .close{position:absolute;top:34px;left:56px;cursor:pointer;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold-soft)}
.mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px}
.mcol h4{font-family:var(--serif);font-weight:500;font-size:34px;margin-bottom:18px;color:#fff}
.mcol a{display:block;font-size:15px;padding:8px 0;opacity:.85;border-bottom:1px solid rgba(168,135,90,.35)}.mcol a:hover{opacity:1;color:var(--gold-soft)}
.msoc{margin-top:60px;display:flex;gap:24px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft)}
.side-tab{position:fixed;right:0;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;z-index:40;background:var(--navy);color:#fff;font-size:10.5px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;padding:18px 10px;border-left:2px solid var(--gold)}
/* buttons */
.btn{display:inline-block;border:1px solid #fff;color:#fff;padding:16px 30px;font-size:11.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;transition:.25s;background:transparent}
.btn:hover{background:#fff;color:var(--navy)}
.btn.dark{border-color:var(--navy);color:var(--navy);background:transparent}.btn.dark:hover{background:var(--navy);color:#fff}
.btns{display:flex;gap:18px;flex-wrap:wrap;margin-top:38px}.btns.center{justify-content:center}
/* video hero (stays black and white) */
.vhero{position:relative;height:100vh;min-height:620px;overflow:hidden;background:var(--navy);color:#fff}
.hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hv.m{display:none}
.vhero .ov{position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 50% 52%,rgba(0,0,0,.5),rgba(0,0,0,0) 75%),linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.2) 35%,rgba(0,0,0,.25) 65%,rgba(0,0,0,.6) 100%)}
.hc{position:absolute;left:0;right:0;top:50%;transform:translateY(-42%);text-align:center;padding:0 24px}
.hc h1{color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.hc .kicker{color:#fff;opacity:.9}
.hc .btns{justify-content:center}
.hqs{position:relative;height:96px;max-width:760px;margin:22px auto 0}
.hq{position:absolute;inset:0;opacity:0;transition:opacity 1s;font-size:16px}.hq.on{opacity:1}
.hq em{font-family:var(--serif);font-size:21px;font-style:italic;display:block;line-height:1.35}.hq span{display:block;margin-top:8px;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold-soft)}
.scroll{position:absolute;bottom:46px;left:50%;transform:translateX(-50%);font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;opacity:.85}
.scroll:after{content:"";display:block;width:1px;height:40px;background:var(--gold-soft);margin:10px auto 0}
/* sections */
section{position:relative}
.intro{max-width:960px;margin:0 auto;padding:150px 32px 130px;text-align:center}
.intro .lead{font-family:var(--serif);font-weight:500;color:var(--navy);font-size:clamp(26px,2.7vw,38px);line-height:1.3;margin-bottom:28px}
.intro:before,.sec-h:after,.cta-band h2:after,.cta-mini h2:after,.nl-in h2:after,.pull:before{content:"";display:block;width:64px;height:1px;background:var(--gold);margin:0 auto 34px}
.sec-h:after,.cta-band h2:after,.cta-mini h2:after,.nl-in h2:after{margin:26px auto 0}
.links{display:flex;justify-content:center;gap:40px;margin-top:34px;font-size:11.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--navy)}
.links a{border-bottom:1px solid var(--gold);padding-bottom:5px}
.sec-h{text-align:center;max-width:820px;margin:0 auto 64px;padding:0 24px}
.featured{background:var(--navy);padding:130px 0 120px}
.rail{display:flex;gap:30px;overflow-x:auto;padding:0 56px 24px;scroll-snap-type:x mandatory}
.rail .pcard{flex:0 0 400px;scroll-snap-align:start}
.pcard{display:block;background:#fff;transition:.3s;box-shadow:0 1px 0 var(--hair)}
.pcard:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,35,73,.12)}
.pimg{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--hair)}
.pimg img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pcard:hover .pimg img{transform:scale(1.03)}
.status{position:absolute;top:16px;left:16px;background:var(--navy);color:#fff;font-size:10.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;padding:7px 12px}
.pinfo{padding:26px 28px 30px}.pinfo h3{font-size:28px;margin-bottom:6px}
.price{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--navy);margin-bottom:8px}
.meta{font-size:12.5px;letter-spacing:.06em;color:var(--grey)}.meta i{font-style:normal;margin:0 6px;color:var(--gold)}
.more{display:inline-block;margin-top:16px;font-size:10.5px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--gold);padding-bottom:3px}
.split{display:grid;grid-template-columns:1fr 1fr;min-height:680px}
.split.rev .simg{order:2}
.simg{background-size:cover;background-position:center}
.stxt{display:flex;flex-direction:column;justify-content:center;padding:110px 8vw}
.tlinks{display:flex;flex-direction:column;gap:16px;margin-top:34px}
.tlinks a{font-size:11.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--hair);padding-bottom:14px}
.tlinks a:after{content:"  \2192";color:var(--gold)}
.dark{background:var(--navy);color:#fff}
.dark h1,.dark h2,.dark h3{color:#fff}.dark .kicker{color:var(--gold-soft)}
.dark .btn.dark{border-color:#fff;color:#fff}.dark .btn.dark:hover{background:#fff;color:var(--navy)}
.hoods{padding:130px 56px}
.hgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1300px;margin:0 auto}
.hood{position:relative;aspect-ratio:4/3;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:24px;color:#fff;overflow:hidden}
.hood:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,26,54,.7),rgba(0,26,54,0) 60%);transition:opacity .4s}
.hood span{position:relative;font-family:var(--serif);font-weight:500;font-size:30px}
.hood span:after{content:"";display:block;width:36px;height:1px;background:var(--gold-soft);margin-top:10px;transition:width .4s}
.hood:hover span:after{width:72px}
.hgrid.big .hood{aspect-ratio:4/5}
.quotes{padding:130px 56px;text-align:center}
.quotes.light{background:#fff}
.qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;max-width:1300px;margin:34px auto 0;text-align:left}
blockquote p{font-family:var(--serif);font-size:22px;line-height:1.45;font-style:italic}
.quotes:not(.dark) blockquote p{color:var(--navy)}
blockquote{border-top:1px solid var(--gold);padding-top:22px}
cite{display:block;margin-top:14px;font-style:normal;font-size:11px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}
.dark cite{color:var(--gold-soft)}
.quotes .btns{justify-content:center}
.worth{min-height:560px;background-size:cover;background-position:center;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;background-color:var(--navy)}
.worth .ov{position:absolute;inset:0;background:rgba(0,35,73,.86)}
.worth h1,.worth h2{color:#fff}.worth .kicker{color:var(--gold-soft)}
.worth.full{min-height:100vh}
.wc{position:relative;padding:150px 24px 110px;max-width:760px}
.wc p{font-size:18px;margin-bottom:30px}.wc .note{font-size:13px;opacity:.8;margin-top:24px}
.posts{padding:130px 56px}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;max-width:1300px;margin:0 auto}
.post{border-top:1px solid var(--gold);padding-top:24px}.post .date{font-size:11.5px;letter-spacing:.2em;color:var(--gold)}.post h3{margin:10px 0 6px}
.cta-band{background:#fff;text-align:center;padding:120px 24px}
.cta-band p{max-width:640px;margin:22px auto 0}.cta-band .btns{justify-content:center}.cta-band .btn{border-color:var(--navy);color:var(--navy)}.cta-band .btn:hover{background:var(--navy);color:#fff}
.newsletter{background:#fff;border-top:1px solid var(--hair);padding:120px 24px;text-align:center}
.nl-in{max-width:720px;margin:0 auto}.nl-in p{margin:22px 0 28px}.nl-in .note{font-size:13px;color:var(--grey);margin:22px 0 0}
.site-f{background:var(--navy);color:rgba(255,255,255,.85);padding:90px 56px 70px;font-size:14px}
.f-top{display:grid;grid-template-columns:260px 1fr;gap:60px;border-bottom:1px solid rgba(168,135,90,.6);padding-bottom:54px}
.f-logo{width:200px}
.f-team{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.f-team div,.f-mid>div:first-child{display:flex;flex-direction:column;gap:3px}
.f-team strong{font-family:var(--serif);font-weight:500;font-size:26px;color:#fff}
.f-team em,.f-team small{color:var(--gold-soft)}
.f-mid{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:44px 0;border-bottom:1px solid rgba(168,135,90,.6);flex-wrap:wrap}
.f-mid strong{color:#fff;font-weight:500}
.sirc{height:40px;width:auto}
.f-soc{display:flex;gap:18px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft)}
.f-bot{padding-top:28px;font-size:12px;opacity:.7}
/* inner */
.ihero{min-height:78vh;background-size:cover;background-position:center;color:#fff;display:flex;align-items:flex-end}
.ihero .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,26,54,.55) 0%,rgba(0,26,54,.15) 38%,rgba(0,26,54,.72) 100%)}
.ihero h1{color:#fff}.ihero .kicker{color:var(--gold-soft)}
.ihc{position:relative;padding:0 8vw 96px;max-width:1100px}
.ihc p{max-width:760px;font-size:18px;margin-top:22px}
.team{padding:80px 0}
.member{display:grid;grid-template-columns:5fr 7fr;gap:7vw;align-items:center;padding:80px 8vw}
.member+.member{border-top:1px solid var(--hair)}
.member.rev .mimg{order:2}
.mimg img{width:100%;background:#fff}
.mtxt p{margin-bottom:16px}.mc{display:flex;gap:24px;margin-bottom:24px;font-size:14px;letter-spacing:.04em;color:var(--navy);flex-wrap:wrap}
.mtxt .btn{margin-top:14px}
.grid-sec{padding:100px 56px 120px}
.tabs{display:flex;justify-content:center;gap:44px;margin-bottom:64px;font-size:11.5px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--navy)}
.tabs a{padding-bottom:8px;border-bottom:1px solid transparent}.tabs a.on{border-color:var(--gold)}
.pgrid3{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;max-width:1360px;margin:0 auto}
.cta-mini{text-align:center;padding:120px 24px;background:#fff;border-top:1px solid var(--hair)}.cta-mini p{max-width:680px;margin:22px auto 32px}
.pull{padding:130px 10vw;text-align:center}.pull blockquote{border:0}.pull blockquote p{font-size:clamp(24px,2.6vw,34px)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:70px 56px;padding:130px 8vw}
.pil{border-top:1px solid var(--gold);padding-top:24px}
.pil .num{font-family:var(--serif);font-size:20px;color:var(--gold)}.pil h3{margin:10px 0 12px;font-size:30px}
.steps{padding:120px 8vw;text-align:center}
.steps ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:54px}
.steps li{border-top:1px solid var(--gold);padding-top:24px;font-family:var(--serif);font-size:26px}
.steps li span{display:block;font-family:var(--sans);font-size:11.5px;letter-spacing:.25em;margin-bottom:10px;color:var(--gold-soft)}
.trio{display:grid;grid-template-columns:repeat(3,1fr)}
.trio a{aspect-ratio:1/1;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;padding:32px;color:#fff}
.trio a:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,26,54,.7),rgba(0,26,54,.05) 65%)}
.trio span{position:relative;font-family:var(--serif);font-weight:500;font-size:32px}
.condos{padding:120px 8vw;text-align:center}.condos ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1100px;margin:44px auto 0}
.condos li a{display:block;border:1px solid rgba(217,198,165,.45);padding:24px;font-family:var(--serif);font-size:24px}.condos li a:hover{background:#fff;color:var(--navy)}
.guides{padding:80px 0}
.guides article{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;padding:80px 8vw;scroll-margin-top:40px}
.guides article+article{border-top:1px solid var(--hair)}
.guides article.rev img{order:2}
.guides ul{margin:16px 0 30px 18px}.guides li::marker{color:var(--gold)}
.contact{display:grid;grid-template-columns:1fr 1.3fr;gap:7vw;padding:120px 8vw}
.contact h2{font-size:34px}.contact p{margin-bottom:14px}
.cform .note{font-size:13px;color:var(--grey);margin-top:20px}
.cform iframe{width:100%;height:320px;border:0;margin-top:30px}
@media (max-width:900px){
 body{font-size:15.5px}
 .site-h{grid-template-columns:auto 1fr auto;padding:16px 20px 14px}
 .short,.h-right{display:none}
 .logo{grid-column:2;justify-self:center}.logo img{height:44px}
 .h-left{grid-column:1}
 .hv.d{display:none}.hv.m{display:block}
 .hqs{height:120px}.hq em{font-size:18px}
 .btns{flex-direction:column;align-items:stretch;gap:12px}.btn{text-align:center}
 .menu-ov .close{left:20px}.mgrid{grid-template-columns:1fr 1fr;gap:30px}
 .side-tab{display:none}
 .intro{padding:96px 24px 84px}.links{flex-direction:column;gap:18px;align-items:center}
 .featured{padding:96px 0 84px}
 .rail{padding:0 20px 20px}.rail .pcard{flex-basis:82vw}
 .split{grid-template-columns:1fr;min-height:0}.simg{min-height:360px}.split.rev .simg{order:0}.stxt{padding:72px 24px}
 .hoods,.quotes,.posts,.grid-sec{padding:96px 20px}
 .hgrid,.qgrid,.pgrid,.pgrid3,.pillars,.trio,.condos ul{grid-template-columns:1fr}
 .pillars{padding:84px 24px;gap:44px}
 .steps ol{grid-template-columns:1fr 1fr}
 .member,.guides article,.contact{grid-template-columns:1fr;padding:60px 24px;gap:32px}
 .member.rev .mimg,.guides article.rev img{order:0}
 .f-top{grid-template-columns:1fr}.f-team{grid-template-columns:1fr}
 .site-f{padding:70px 24px 70px}
 .cta-band,.cta-mini,.newsletter{padding:90px 24px}
 .ihero{min-height:70vh}.ihc{padding:0 24px 64px}
}
.home-team{padding:120px 6vw;background:#fff;text-align:center}
.ht-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1100px;margin:50px auto}
.ht-grid a{text-decoration:none;color:var(--navy)}
.ht-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top}
.ht-grid h3{font-family:"APG Serif",serif;font-weight:500;font-size:28px;margin:18px 0 4px}
.ht-grid span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.h-right a+a{margin-left:18px}
@media(max-width:800px){.home-team{padding:80px 6vw}.ht-grid{grid-template-columns:1fr;gap:36px}}
/* lead forms (test, non-submitting) */
.lead-sec{padding:130px 6vw;background:#fff}
.lead-sec.navy{background:var(--navy);color:#fff}
.lead-sec.navy h2{color:#fff}.lead-sec.navy p{color:rgba(255,255,255,.85)}
.lead-in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start}
.lead-copy h2{font-family:"APG Serif",serif;font-weight:500;font-size:46px;line-height:1.1;margin:10px 0 22px}
.lead-copy p{font-size:17px;line-height:1.7;margin-bottom:30px}
.lead-form{background:#fff;padding:44px;border-top:3px solid var(--gold);color:var(--ink);text-align:left}
.lead-sec .lead-form{box-shadow:0 20px 50px rgba(0,35,73,.10)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.fgrid .full,.fgrid fieldset{grid-column:1/-1}
.lead-form label span,.lead-form legend{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);margin-bottom:8px;font-weight:500}
.lead-form input[type=text],.lead-form input[type=email],.lead-form input[type=tel],.lead-form select{width:100%;padding:13px 14px;border:1px solid var(--hair);background:#fff;font:15px "APG Sans",sans-serif;color:var(--ink);border-radius:0;box-sizing:border-box}
.lead-form fieldset{border:0;padding:0;margin:0}
.chks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 14px;font-size:14px}
.chk{display:flex;gap:8px;align-items:center;text-transform:none}
.consent{display:flex;gap:12px;align-items:flex-start;margin:26px 0 22px;font-size:12.5px;line-height:1.55;color:var(--grey)}
.consent span{text-transform:none!important;letter-spacing:0!important;font-size:12.5px!important;color:var(--grey)!important;font-weight:400!important}
.consent input{margin-top:3px;accent-color:var(--navy)}
.lead-form .btn.solid{width:100%;cursor:not-allowed;opacity:.75}
.btn.solid{background:var(--navy);color:#fff;border-color:var(--navy)}
.test-note{margin:12px 0 0;font-size:12px;color:var(--gold);text-align:center;font-style:italic}
.gate-h{font-family:"APG Serif",serif;font-weight:500;font-size:24px;color:var(--navy);margin:30px 0 14px}
.guides .lead-form{padding:30px;border:1px solid var(--hair);border-top:3px solid var(--gold)}
.hw-strip{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:70px 8vw;background:var(--navy);color:#fff}
.hw-strip h2{font-family:"APG Serif",serif;font-weight:500;color:var(--navy);font-size:36px;margin:8px 0}
.hw-strip p{margin:0;color:var(--grey)}
.h-book{border:1px solid var(--gold);padding:4px 10px}
@media(max-width:800px){.lead-sec{padding:80px 6vw}.lead-in{grid-template-columns:1fr;gap:40px}.lead-copy h2{font-size:34px}.lead-form{padding:26px}.fgrid{grid-template-columns:1fr}.chks{grid-template-columns:1fr 1fr}.hw-strip{flex-direction:column;align-items:flex-start;padding:60px 6vw}.hw-strip h2{font-size:30px}}
.lead-sec.navy .lead-form .test-note{color:#8a6d43}.lead-sec.navy .lead-form .consent span{color:var(--grey)!important}
/* inner pages (listing, guides, posts) */
.lhero{position:relative;height:78vh;min-height:520px;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff}
.lhero .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,35,73,.15) 30%,rgba(0,26,54,.85))}
.lhero .ihc{position:relative;padding:0 8vw 80px;max-width:1100px}
.lhero h1{font-family:"APG Serif",serif;font-weight:500;font-size:64px;line-height:1.05;margin:12px 0 14px;color:#fff}
.lhero .kicker{color:var(--gold-soft)}
.lprice{font-family:"APG Serif",serif;font-size:34px;color:var(--gold-soft);margin-bottom:10px}
.lfacts{font-size:13px;letter-spacing:.16em;text-transform:uppercase;margin:0}.lfacts i{color:var(--gold);font-style:normal;margin:0 10px}
.ldetail{display:grid;grid-template-columns:1fr 360px;gap:90px;max-width:1240px;margin:0 auto;padding:130px 6vw;background:#fff}
.ldetail.one{grid-template-columns:1fr;max-width:900px}
.lmain h2{font-family:"APG Serif",serif;font-weight:500;color:var(--navy);font-size:44px;margin:10px 0 30px}
.prose{font-size:17px;line-height:1.85;color:var(--ink)}
.prose p{margin:0 0 22px}.prose h2,.prose h3{font-family:"APG Serif",serif;font-weight:500;color:var(--navy);margin:40px 0 14px}.prose h2{font-size:34px}.prose h3{font-size:26px}
.prose ul{margin:0 0 24px;padding-left:20px}.prose li{margin-bottom:6px}.prose li::marker{color:var(--gold)}
.post-body{max-width:760px}
.side-cta{position:sticky;top:120px;align-self:start;background:var(--navy);color:#fff;border-top:3px solid var(--gold);padding:40px 34px}
.side-cta h3{font-family:"APG Serif",serif;font-weight:500;color:var(--navy);font-size:28px;margin:10px 0 12px}
.side-cta p{color:var(--grey);line-height:1.6}.side-cta .btn{display:block;text-align:center;margin:12px 0}
.side-cta .small a{color:var(--navy);text-decoration:none;font-size:14px;line-height:1.9}
.lgal{background:#fff;padding:120px 6vw}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1240px;margin:40px auto 0}
.gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.lmain .gallery{margin-top:40px}
.cta-mini{text-align:center;padding:0 6vw 120px;background:#fff}
.bgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:48px;max-width:1200px;margin:0 auto}
.bcard{text-decoration:none;color:var(--ink);background:#fff;border-top:3px solid var(--gold)}
.bcard img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.bcard div{padding:28px 6px}
.bcard h3{font-family:"APG Serif",serif;font-weight:500;color:var(--navy);font-size:28px;margin:8px 0 12px}
.bcard .date{font-size:12px;letter-spacing:.16em;color:var(--gold)}.bcard .more{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--gold)}
.note.center{text-align:center;color:var(--grey);margin-top:40px}
@media(max-width:900px){.ldetail{grid-template-columns:1fr;gap:50px;padding:80px 6vw}.side-cta{position:static}.lhero{height:70vh}.lhero h1{font-size:40px}.lhero .ihc{padding:0 6vw 50px}.gallery,.bgrid{grid-template-columns:1fr}.lgal{padding:80px 6vw}.lmain h2{font-size:34px}}
.lhero .ov{background:linear-gradient(180deg,rgba(0,26,54,.75) 0%,rgba(0,26,54,.25) 22%,rgba(0,26,54,.2) 45%,rgba(0,26,54,.88) 100%)}
/* ===== v7 layout updates ===== */
.menu-ov{padding:100px 0 0}
.mwrap{display:grid;grid-template-columns:minmax(300px,30%) 1fr;min-height:calc(100vh - 100px)}
.mnl{background:#fff;color:var(--ink);padding:60px 4vw}
.mnl h3{font-size:34px;margin-bottom:14px}.mnl p{font-size:14.5px;margin-bottom:22px}
.mnl .fgrid{display:grid;gap:12px}.mnl input[type=text],.mnl input[type=email]{width:100%}
.mnl .consent{font-size:11.5px;line-height:1.5;display:flex;gap:8px;margin:14px 0}
.mnl .btn.solid{width:100%}.mnl .test-note{font-size:11px;color:var(--grey);margin-top:10px}
.mnl-live{display:inline-block;margin-top:14px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--gold)}
.mlinks{padding:60px 6vw}
.mlinks .mgrid{grid-template-columns:repeat(2,1fr)}
.fx{padding:120px 0}
.fx-head{display:flex;justify-content:space-between;align-items:flex-end;padding:0 56px 40px;max-width:1500px;margin:0 auto}
.fx-nav button{width:52px;height:52px;border:1px solid var(--navy);background:none;color:var(--navy);font-size:20px;cursor:pointer;margin-left:10px}
.fx-nav button:hover{background:var(--navy);color:#fff}
.fx-rail{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 56px 30px;scroll-behavior:smooth;scrollbar-width:none}
.fx-rail::-webkit-scrollbar{display:none}
.fx-card{flex:0 0 min(560px,82vw);scroll-snap-align:start;display:block}
.fx-img{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--hair)}
.fx-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.fx-card:hover .fx-img img{transform:scale(1.04)}
.fx-status{position:absolute;top:18px;left:18px;background:var(--navy);color:#fff;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;padding:7px 14px}
.fx-tour{position:absolute;inset:auto 0 0 0;background:rgba(0,35,73,.85);color:#fff;text-align:center;padding:14px;font-size:11px;letter-spacing:.25em;text-transform:uppercase;transform:translateY(100%);transition:.4s}
.fx-card:hover .fx-tour{transform:none}
.fx-info{padding:22px 0 0;border-bottom:1px solid var(--hair);padding-bottom:20px}
.fx-info h3{font-size:28px;margin-bottom:6px}.fx-price{font-family:var(--serif);font-size:22px;color:var(--gold);margin-bottom:6px}
.nfull{position:relative;min-height:100vh;color:#fff;display:flex;align-items:center;overflow:hidden;background:var(--navy)}
.nbg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s}
.nbg.on{opacity:1}
.nov{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,26,54,.88),rgba(0,35,73,.45))}
.nin{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:6vw;width:100%;max-width:1400px;margin:0 auto;padding:100px 56px}
.ncopy h2{color:#fff;font-size:clamp(44px,5vw,76px);margin-bottom:22px}.ncopy .kicker{color:var(--gold-soft)}.ncopy p{max-width:460px;margin-bottom:30px}
.nlist{list-style:none;align-self:center}
.nlist a{display:block;font-family:var(--serif);font-size:clamp(26px,2.6vw,40px);padding:8px 0;border-bottom:1px solid rgba(217,198,165,.35);color:#fff;transition:.3s}
.nlist a:hover,.nlist a.on{color:var(--gold-soft);padding-left:14px}
.bcards{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:1400px;margin:0 auto}
.bphoto{display:block;background:#fff}
.bpimg{aspect-ratio:4/3;overflow:hidden}.bpimg img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.bphoto:hover .bpimg img{transform:scale(1.05)}
.bpinfo{padding:20px 4px}.bpinfo .date{font-size:11px;letter-spacing:.2em;color:var(--gold)}.bpinfo h3{font-size:23px;margin:8px 0}
.social{background:var(--navy);color:#fff;text-align:center;padding:100px 56px}
.social h2{font-size:clamp(34px,3.4vw,52px);margin-bottom:12px}.social p{margin-bottom:40px;color:var(--grey)}
.soc-grid{display:flex;justify-content:center;gap:22px;flex-wrap:wrap}
.soc-tile{width:150px;padding:28px 10px;background:#fff;border:1px solid var(--hair);transition:.3s;color:var(--navy)}
.soc-tile:hover{background:var(--navy);color:#fff}
.soc-ic{display:flex;align-items:center;justify-content:center;width:54px;height:54px;margin:0 auto 14px;border:1px solid var(--gold);border-radius:50%;font-family:var(--serif);font-size:20px;font-weight:600}
.soc-n{font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.pop{position:fixed;left:28px;bottom:44px;z-index:55;width:380px;max-width:calc(100vw - 32px);background:var(--navy);color:#fff;box-shadow:0 20px 50px rgba(0,0,0,.35);transform:translateX(-120%);transition:transform .7s ease;border-top:3px solid var(--gold)}
.pop.show{transform:none}
.pop-img{height:170px;background-size:cover;background-position:center}
.pop-body{padding:24px 26px 26px}.pop-body h3{color:#fff;font-size:28px;margin-bottom:4px}.pop-body .kicker{color:var(--gold-soft);margin-bottom:10px}
.pop-price{font-family:var(--serif);font-size:21px;color:var(--gold-soft);margin-bottom:10px}.pop-body p{font-size:14px;line-height:1.6;margin-bottom:18px}
.pop-btns{display:flex;gap:10px}.pop-btns .btn{padding:12px 16px;font-size:10.5px}
.pop-x{position:absolute;top:8px;right:10px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,35,73,.8);color:#fff;font-size:22px;cursor:pointer}
@media(max-width:900px){
.mwrap{grid-template-columns:1fr}.mlinks{order:-1;padding:30px 24px}.mlinks .mgrid{grid-template-columns:1fr 1fr;gap:24px}.mnl{padding:40px 24px}
.fx-head{padding:0 20px 28px}.fx-rail{padding:0 20px 24px}.fx-info h3{font-size:24px}
.nin{grid-template-columns:1fr;padding:80px 24px;gap:30px}
.bcards{grid-template-columns:1fr;gap:30px}
.social{padding:70px 20px}.soc-tile{width:calc(50% - 12px)}
.pop{left:16px;bottom:36px}.pop-img{height:120px}}

/* ===== v8: no cream section backgrounds; white / navy alternation with contrast fixes ===== */
.featured h2,.featured h3{color:#fff}.featured .kicker{color:var(--gold-soft)}.featured .sec-h p{color:rgba(255,255,255,.85)}
.featured .btn.dark{border-color:#fff;color:#fff}.featured .btn.dark:hover{background:#fff;color:var(--navy)}
.featured .fx-nav button{border-color:#fff;color:#fff}.featured .fx-nav button:hover{background:#fff;color:var(--navy)}
.featured .fx-info{border-bottom-color:rgba(217,198,165,.35)}.featured .fx-price{color:var(--gold-soft)}.featured .meta{color:rgba(255,255,255,.8)}.featured .meta i{color:var(--gold-soft)}
.featured .fx-status{background:var(--gold);color:#fff}
.featured .pcard{box-shadow:none}.featured .pcard h3{color:var(--navy)}
.lead-sec#private-listings{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.lead-sec#private-listings .lead-form{border:1px solid var(--hair);border-top:3px solid var(--gold)}
.hw-strip h2{color:#fff}.hw-strip .kicker{color:var(--gold-soft)}.hw-strip p{color:rgba(255,255,255,.85)}
.hw-strip .btn.solid{background:var(--gold);border-color:var(--gold);color:#fff}.hw-strip .btn.solid:hover{background:#fff;color:var(--navy);border-color:#fff}
.side-cta h3,.side-cta h2{color:#fff}.side-cta .kicker{color:var(--gold-soft)}.side-cta p{color:rgba(255,255,255,.85)}
.side-cta .btn,.side-cta .btn.dark{border-color:#fff;color:#fff}.side-cta .btn:hover{background:#fff;color:var(--navy)}
.side-cta .btn.solid{background:var(--gold);border-color:var(--gold);color:#fff}
.side-cta a:not(.btn){color:var(--gold-soft)}
.social h2{color:#fff}.social .kicker{color:var(--gold-soft)}.social p{color:rgba(255,255,255,.85)}
.social .soc-tile{background:transparent;border-color:rgba(217,198,165,.5);color:#fff}.social .soc-ic{border-color:var(--gold-soft);color:var(--gold-soft)}
.social .soc-tile:hover{background:#fff;color:var(--navy)}.social .soc-tile:hover .soc-ic{color:var(--navy);border-color:var(--gold)}
.social+.site-f,.social~.site-f{border-top:1px solid rgba(217,198,165,.3)}
.mnl{border-right:1px solid var(--hair)}.mnl .lead-form{border:1px solid var(--hair);border-top:3px solid var(--gold)}
/* v8 social feed tiles */
.soc-grid{align-items:stretch;max-width:1400px;margin:0 auto}
.social .soc-tile{width:230px;padding:0;text-align:left;display:flex;flex-direction:column}
.soc-thumb{display:block;aspect-ratio:1/1;background-size:cover;background-position:center;background-color:rgba(255,255,255,.08)}
.soc-head{display:flex;align-items:center;gap:10px;padding:16px 18px 0}
.soc-svg svg{width:20px;height:20px;display:block;color:var(--gold-soft)}.soc-svg.big svg{width:46px;height:46px}
.soc-d{margin-left:auto;font-size:10.5px;letter-spacing:.12em;color:rgba(255,255,255,.7)}
.soc-cap{display:block;padding:10px 18px 0;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.9);flex:1}
.soc-more{display:block;padding:14px 18px 18px;font-size:10.5px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold-soft)}
.soc-tile.nopost{align-items:center;justify-content:center;text-align:center;gap:14px;padding:40px 18px}
.social .soc-tile:hover .soc-cap,.social .soc-tile:hover .soc-d{color:var(--navy)}.social .soc-tile:hover .soc-svg svg{color:var(--navy)}
.lead-form textarea{width:100%;padding:13px 14px;border:1px solid var(--hair);font:15px "APG Sans",sans-serif;color:var(--ink)}
.cform .lead-form{margin:24px 0 34px}
@media(max-width:900px){.social .soc-tile{width:100%;max-width:360px}}
/* v8 luxury buying / selling pages */
.lux-hero{position:relative;min-height:92vh;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff}
.lux-hero .ov{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,26,54,.78),rgba(0,26,54,.2) 50%,rgba(0,26,54,.75))}
.lux-hc{position:relative;padding:0 8vw 12vh;max-width:1100px}.lux-hc .kicker{color:var(--gold-soft)}
.lux-hc h1{color:#fff;font-weight:400;font-size:clamp(46px,6.4vw,104px);line-height:1.02;letter-spacing:-.01em}
.lux-rule{display:block;width:90px;height:1px;background:var(--gold);margin-top:34px}
.lux-intro{max-width:980px;margin:0 auto;padding:150px 32px 130px;text-align:center}
.lux-intro p{font-family:var(--serif);font-size:clamp(24px,2.4vw,34px);line-height:1.45;color:var(--navy)}
.lux-intro:before{content:"";display:block;width:1px;height:70px;background:var(--gold);margin:0 auto 50px}
.lux-pillars{padding:120px 6vw;background:#fff;border-top:1px solid var(--hair)}
.lp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:1300px;margin:60px auto 0;border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
.lp{padding:50px 44px;border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);transition:background .4s}
.lp:hover{background:var(--navy)}.lp:hover h3{color:#fff}.lp:hover p{color:rgba(255,255,255,.85)}
.lp-n{display:block;font-family:var(--serif);font-size:46px;color:var(--gold);line-height:1;margin-bottom:24px}
.lp h3{font-size:27px;margin-bottom:14px}.lp p{font-size:15px;line-height:1.75;color:var(--grey)}
.lux-steps{background:var(--navy);color:#fff;padding:130px 6vw}
.lux-steps h2{color:#fff}.lux-steps .kicker{color:var(--gold-soft)}.lux-steps .sec-h p{color:rgba(255,255,255,.85)}
.ls-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1300px;margin:60px auto 0;padding:0}
.ls-grid li{border:1px solid rgba(217,198,165,.45);padding:44px 30px 50px;position:relative}
.ls-n{display:block;font-family:var(--serif);font-size:78px;line-height:1;color:var(--gold-soft);font-weight:300}
.ls-step{display:block;margin:22px 0 10px;font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-soft)}
.ls-grid h3{color:#fff;font-size:28px}
.lux-quote{background:#fff;padding:140px 8vw;text-align:center}
.lux-quote blockquote{max-width:900px;margin:0 auto;border:0;padding:0}
.lux-quote blockquote:before{content:"\201C";display:block;font-family:var(--serif);font-size:120px;line-height:.6;color:var(--gold)}
.lux-quote p{font-family:var(--serif);font-style:italic;font-size:clamp(24px,2.3vw,34px);line-height:1.45;color:var(--navy)}
.lux-quote cite{color:var(--gold);margin-top:30px}
.lux-cta{background:var(--navy);color:#fff;text-align:center;padding:130px 24px;border-top:3px solid var(--gold)}
.lux-cta h2{color:#fff;font-size:clamp(38px,4vw,62px)}.lux-cta .kicker{color:var(--gold-soft)}.lux-cta p{max-width:640px;margin:24px auto 36px;color:rgba(255,255,255,.88)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#fff}.btn.gold:hover{background:#fff;color:var(--navy);border-color:#fff}
.pull.dark blockquote p{color:#fff}
@media(max-width:900px){.lux-hero{min-height:78vh}.lux-hc{padding:0 24px 10vh}.lux-intro{padding:90px 24px}.lp-grid{grid-template-columns:1fr}.lp{padding:36px 26px}.lux-pillars,.lux-steps{padding:90px 20px}.ls-grid{grid-template-columns:1fr 1fr;gap:14px}.ls-grid li{padding:28px 18px}.ls-n{font-size:54px}.ls-grid h3{font-size:22px}.lux-quote{padding:90px 24px}.lux-cta{padding:90px 24px}}
/* v9 mailing list slide-in */
.popnl .pop-body{padding:30px 26px 24px}
.popnl .lead-form{padding:20px;border-top:0;box-shadow:none}
.popnl .fgrid{grid-template-columns:1fr;gap:12px}
.popnl .consent{font-size:11px;line-height:1.5;display:flex;gap:8px;margin:12px 0}
.popnl .test-note{font-size:10.5px;margin-top:8px;color:var(--grey)}
.popnl .lead-form input[type=text],.popnl .lead-form input[type=email]{padding:10px 12px}
@media(max-width:900px){.popnl{max-height:calc(100vh - 60px);overflow:auto}.popnl .pop-body{padding:24px 18px 18px}}
/* ===== v10: Adam Parsons Group identity ===== */
h1,h2,h3{font-weight:500;letter-spacing:-.005em}
/* solid gold buttons everywhere (navy text on gold = 4.9:1) */
.btn,.btn.dark,.btn.solid,.btn.gold,.dark .btn.dark,.featured .btn.dark,.side-cta .btn,.side-cta .btn.dark,.cta-band .btn,.hw-strip .btn.solid,.side-cta .btn.solid{background:var(--gold)!important;border:1px solid var(--gold)!important;color:var(--navy)!important;font-weight:600}
.btn:hover,.btn.dark:hover,.btn.gold:hover,.cta-band .btn:hover{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important}
.dark .btn:hover,.featured .btn:hover,.lux-cta .btn:hover,.lux-steps .btn:hover,.social .btn:hover,.hw-strip .btn:hover,.side-cta .btn:hover,.lead-sec.navy .btn:hover,.vhero .btn:hover,.nmap .btn:hover,.menu-ov .btn:hover,.pop .btn:hover,.worth .btn:hover,.ihero .btn:hover,.lux-hero .btn:hover{background:#fff!important;border-color:#fff!important;color:var(--navy)!important}
.lead-form .btn.solid{opacity:.9}
/* hero: left aligned, one button */
.hc.hc10{left:8vw;right:auto;text-align:left;max-width:780px;transform:translateY(-45%);padding:0}
.hc10 h1{text-align:left;font-size:clamp(44px,5.4vw,84px);line-height:1.08}
.hc10 .hsub{max-width:560px;margin:22px 0 34px;font-size:17px;line-height:1.7;color:rgba(255,255,255,.92)}
.hc10 .btns{justify-content:flex-start}
.vhero .ov{background:linear-gradient(90deg,rgba(0,26,54,.78) 0%,rgba(0,26,54,.35) 55%,rgba(0,26,54,.1) 100%)!important}
/* family team */
.fam{padding:130px 6vw;background:#fff}
.fam-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;max-width:1300px;margin:60px auto 0}
.fm-img{display:block;aspect-ratio:4/5;overflow:hidden;margin-bottom:24px}.fm-img img{width:100%;height:100%;object-fit:cover;object-position:top}
.fm h3{font-size:30px;margin-bottom:12px}.fm p{font-size:15px;color:var(--grey);line-height:1.75}.fm .kicker{margin-bottom:8px}
/* neighbourhood map */
.nmap{background:var(--navy);color:#fff;padding:120px 6vw}
.nm-in{display:grid;grid-template-columns:minmax(300px,38%) 1fr;gap:5vw;max-width:1400px;margin:0 auto;align-items:center}
.nm-copy h2{color:#fff;font-size:clamp(38px,4vw,60px);margin-bottom:20px}.nm-copy .kicker{color:var(--gold-soft)}.nm-copy p{color:rgba(255,255,255,.85);margin-bottom:26px}
.nm-list{list-style:none;columns:2;margin:0 0 34px;padding:0}.nm-list a{display:block;padding:7px 0;color:#fff;border-bottom:1px solid rgba(217,198,165,.3);font-size:14.5px}.nm-list a:hover{color:var(--gold-soft)}
.nmap-svg{width:100%;height:auto;display:block}
.nmap-svg .bg{fill:#00305f}
.nmap-svg .rd{fill:none;stroke:rgba(217,198,165,.45);stroke-width:3;stroke-linecap:round}
.nmap-svg .rdl{fill:rgba(255,255,255,.55);font:500 13px "APG Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.nmap-svg .pin circle{fill:var(--gold)}.nmap-svg .pin .halo{fill:rgba(168,135,90,.22);transition:r .3s}
.nmap-svg .pin text{fill:#fff;font:400 21px "APG Serif",serif}
.nmap-svg .pin:hover .halo{r:30;fill:rgba(168,135,90,.4)}.nmap-svg .pin:hover text{fill:var(--gold-soft)}
.nm-note{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:10px;text-align:right}
/* menu v10: links large left, listing photo right */
.menu-ov{padding:0}
.mv10{display:grid;grid-template-columns:1.15fr 1fr;min-height:100vh}
.mv-left{padding:110px 6vw 60px}
.mv-links{display:grid;grid-template-columns:repeat(2,1fr);gap:34px 50px}
.mv-links .mcol h4{font-size:40px;margin-bottom:12px}.mv-links .mcol a{border-bottom:0;padding:5px 0;font-size:15.5px}
.mv-nl{margin-top:44px;padding-top:30px;border-top:1px solid rgba(217,198,165,.35);max-width:620px}
.mv-nl .kicker{color:var(--gold-soft)}
.mv-nl .lead-form{background:transparent;padding:0;border:0;box-shadow:none;color:#fff}
.mv-nl .fgrid{grid-template-columns:1fr 1fr;gap:12px}.mv-nl .lead-form label span{color:var(--gold-soft)}
.mv-nl .consent{display:flex;gap:8px;font-size:11px;line-height:1.5;margin:12px 0;color:rgba(255,255,255,.8)}.mv-nl .consent span{color:rgba(255,255,255,.8)!important}
.mv-nl .test-note{font-size:10.5px;color:rgba(255,255,255,.6)!important;margin-top:8px}
.mv-photo{background-size:cover;background-position:center;position:relative}
.mv-photo span{position:absolute;left:30px;bottom:30px;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:#fff;background:rgba(0,35,73,.75);padding:8px 14px}
/* bottom slide-up bar */
.pop.popbar{left:0;right:0;bottom:0;width:auto;max-width:none;transform:translateY(110%);border-top:3px solid var(--gold);box-shadow:0 -10px 40px rgba(0,0,0,.3)}
.pop.popbar.show{transform:none}
.pb-in{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center;max-width:1300px;margin:0 auto;padding:26px 70px 34px 40px}
.pb-copy h3{color:#fff;font-size:24px;line-height:1.3}.pb-copy .kicker{color:var(--gold-soft);margin-bottom:8px}
.popbar .lead-form{background:transparent;padding:0;border:0;box-shadow:none}
.popbar .fgrid{grid-template-columns:1fr 1fr;gap:10px}.popbar .lead-form label span{color:var(--gold-soft)}
.popbar .lead-form input[type=text],.popbar .lead-form input[type=email]{padding:10px 12px}
.popbar .consent{display:flex;gap:8px;font-size:11px;line-height:1.45;margin:10px 0;color:rgba(255,255,255,.85)}.popbar .consent span{color:rgba(255,255,255,.85)!important}
.popbar .test-note{font-size:10.5px;color:rgba(255,255,255,.6)!important;margin-top:6px}
.popbar .pop-x{top:12px;right:16px;background:transparent;border:1px solid rgba(217,198,165,.5)}
@media(max-width:900px){
.hc.hc10{left:24px;right:24px}.hc10 .hsub{font-size:15px}
.fam{padding:80px 22px}.fam-grid{grid-template-columns:1fr;gap:50px}
.nmap{padding:80px 18px}.nm-in{grid-template-columns:1fr}.nmap-svg .pin text{font-size:26px}.nmap-svg .rdl{font-size:16px}
.mv10{grid-template-columns:1fr}.mv-left{padding:90px 24px 40px}.mv-links{gap:22px}.mv-links .mcol h4{font-size:28px}.mv-photo{min-height:260px}.mv-nl .fgrid{grid-template-columns:1fr}
.pb-in{grid-template-columns:1fr;gap:12px;padding:22px 20px 26px}.pb-copy h3{font-size:18px;padding-right:40px}.popbar .fgrid{grid-template-columns:1fr}.popbar{max-height:85vh;overflow:auto}}
.h-book{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--navy)!important;font-weight:600}.h-book:hover{background:#fff!important}
/* ===== v11: listing video lead ===== */
.lvid{background:var(--navy);color:#fff;padding:120px 6vw 80px}
.lv-in{display:grid;grid-template-columns:auto 1fr;gap:6vw;align-items:center;max-width:1300px;margin:0 auto}
.lv-frame{position:relative;height:min(78vh,820px);aspect-ratio:9/16;background:#00152c;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.lv{width:100%;height:100%;object-fit:cover;display:block}
.lv-snd{position:absolute;top:16px;right:16px;background:var(--gold);color:var(--navy);border:0;padding:11px 18px 11px 40px;font:600 11px "APG Sans",sans-serif;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.lv-snd:before{content:"";position:absolute;left:14px;top:50%;width:16px;height:16px;transform:translateY(-50%);background:var(--navy);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm13 3l4-4 1.4 1.4L17.8 13l3.6 3.6L20 18l-4-4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm13 3l4-4 1.4 1.4L17.8 13l3.6 3.6L20 18l-4-4z'/%3E%3C/svg%3E") center/contain no-repeat}
.lv-snd.on{background:#fff}
.lv-snd:hover{background:#fff}
.lv-copy h1{color:#fff;font-size:clamp(40px,4.6vw,72px);line-height:1.08;margin:10px 0 18px}
.lv-copy .kicker{color:var(--gold-soft)}.lv-copy .lprice{font-size:28px;color:var(--gold-soft);margin-bottom:12px;font-family:"APG Serif",serif}
.lv-copy .lfacts{color:rgba(255,255,255,.85);margin-bottom:34px}.lv-copy .lfacts i{color:var(--gold);font-style:normal;margin:0 8px}
@media(max-width:900px){.lvid{padding:84px 0 50px}.lv-in{grid-template-columns:1fr;gap:30px}.lv-frame{height:auto;width:100%;max-height:none}.lv-copy{padding:0 22px}.lv-copy h1{font-size:38px}}
.lvid{padding-top:150px}.lv-frame{height:min(calc(100vh - 210px),820px)}@media(max-width:900px){.lvid{padding-top:84px}.lv-frame{height:auto}}
/* v11 sms opt-in */
.sms-opt{margin:4px 0 12px;padding:12px 14px;border:1px solid rgba(168,135,90,.45)}
.lead-form .consent.sms{margin:0}.consent.sms strong{font-weight:600}
.sms-phone{display:block;margin-top:12px}.sms-phone[hidden]{display:none}.sms-phone span{display:block}
.sms-phone input{width:100%}
/* ===== v12: listing Photos / Video tabs + lightbox ===== */
.lmedia .lv-in{grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:5vw}
.lm-stage{min-width:0}
.lm-tabs{display:inline-flex;border:1px solid var(--gold);margin-bottom:18px}
.lm-tab{background:transparent;color:#fff;border:0;padding:12px 26px;font:600 11px "APG Sans",sans-serif;letter-spacing:.22em;text-transform:uppercase;cursor:pointer}
.lm-tab span{opacity:.7;margin-left:6px}.lm-tab.on{background:var(--gold);color:var(--navy)}.lm-tab:not(.on):hover{color:var(--gold-soft)}
.lm-tab:focus-visible,.lm-th:focus-visible,.lm-main:focus-visible,.lg-it:focus-visible,.lb button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.lm-pane[hidden]{display:none}
.lm-video{display:flex;justify-content:center;background:#00152c;height:min(calc(100vh - 290px),760px)}
.lmedia .lm-video .lv-frame{height:100%;box-shadow:none}
.lm-main{display:block;position:relative;width:100%;height:min(calc(100vh - 400px),640px);min-height:280px;padding:0;border:0;cursor:zoom-in;background:#00152c}
.lm-main img{width:100%;height:100%;object-fit:cover;display:block}
.lm-count{position:absolute;right:14px;bottom:14px;background:rgba(0,35,73,.85);color:#fff;padding:8px 14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.lm-strip{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin-top:8px}
.lm-th{aspect-ratio:1;padding:0;border:0;background:#00152c;cursor:pointer;overflow:hidden;color:#fff;font:600 13px "APG Sans",sans-serif}
.lm-th img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s}.lm-th:hover img{opacity:.75}
.lm-more{background:rgba(255,255,255,.08);border:1px solid rgba(217,198,165,.4)}
.lm-watch,.lg-watch{background:var(--gold);color:var(--navy);font:600 10px "APG Sans",sans-serif;letter-spacing:.15em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;cursor:pointer}
.lm-watch span,.lg-watch span{font-size:20px}.lm-watch:hover,.lg-watch:hover{background:#fff}
.lgal-grid .lg-it,.lgal-grid .lg-watch{padding:0;border:0;cursor:zoom-in;overflow:hidden;background:#eef1f5}
.lgal-grid .lg-it img{width:100%;height:100%;object-fit:cover;display:block}
.lgal-grid .lg-watch{font-size:12px;min-height:200px;cursor:pointer}.lgal-grid .lg-watch span{font-size:34px}
html.lb-on{overflow:hidden}
.lb{position:fixed;inset:0;z-index:300;background:rgba(0,20,42,.97);display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb-fig{margin:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:80px 90px 40px}
.lb-fig img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:16px;padding:18px 24px;z-index:2}
.lb-count{color:#fff;font-size:12px;letter-spacing:.25em;margin-right:auto}
.lb-watch{background:var(--gold);color:var(--navy);border:0;padding:10px 16px;font:600 11px "APG Sans",sans-serif;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}
.lb-x{width:44px;height:44px;border:1px solid var(--gold);background:transparent;color:#fff;font-size:24px;cursor:pointer}
.lb-prev,.lb-next{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border:1px solid var(--gold);background:rgba(0,35,73,.7);color:#fff;font-size:34px;line-height:1;cursor:pointer;z-index:2}
.lb-prev{left:20px}.lb-next{right:20px}.lb-prev:hover,.lb-next:hover,.lb-x:hover{background:var(--gold);color:var(--navy)}
@media(max-width:900px){.lmedia .lv-in{grid-template-columns:1fr}.lm-stage{padding:0 14px}.lm-tabs{display:flex}.lm-tab{flex:1}
.lm-video{height:auto}.lmedia .lm-video .lv-frame{height:auto;width:100%}.lm-main{height:auto;aspect-ratio:4/3;min-height:0}
.lm-strip{grid-template-columns:repeat(4,1fr)}.lb-fig{padding:70px 8px 70px}.lb-prev,.lb-next{top:auto;bottom:14px;transform:none;width:48px;height:48px}}
.lb{z-index:10000;background:#00142a}.lmedia.has-video{padding-top:140px}.lmedia.photos-only{padding-top:150px}@media(max-width:900px){.lmedia.has-video,.lmedia.photos-only{padding-top:90px}}
/* v13 search homes (Showcase IDX placeholder) */
.idx-sec{background:#fff;padding:70px 6vw 90px}
.idx-bar{display:flex;flex-wrap:wrap;gap:0;align-items:stretch;border:1px solid var(--hair);margin-bottom:24px}
.idx-q{flex:1 1 140px;padding:16px 22px;border-right:1px solid var(--hair)}.idx-q span{display:block;font-size:10.5px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}.idx-q strong{font-family:var(--serif);font-weight:500;font-size:19px;color:var(--navy)}
.idx-bar .btn{margin:10px;align-self:center}
.idx-ph{position:relative;display:grid;grid-template-columns:2fr 1fr;min-height:560px;border:2px dashed var(--gold);background:var(--navy)}
.idx-map{overflow:hidden;display:flex;align-items:center;padding:30px}.idx-map svg{width:100%;height:100%;display:block}
.idx-note{background:#fff;padding:44px 36px;display:flex;flex-direction:column;justify-content:center}.idx-note p{color:var(--grey);line-height:1.7}
@media(max-width:800px){.idx-ph{grid-template-columns:1fr}.idx-map{height:320px}.idx-q{flex-basis:45%}.idx-bar .btn{width:100%}}
/* v14 listing hero: front photo + video side by side */
.lhero{background:var(--navy);padding:110px 4vw 50px;color:#fff}
.lh-grid{display:grid;grid-template-columns:1fr;gap:18px}.lhero.has-video .lh-grid{grid-template-columns:1fr 1fr}
.lh-photo{position:relative;display:block;width:100%;padding:0;border:0;cursor:zoom-in;background:#000;aspect-ratio:16/10;overflow:hidden}
.lh-photo img{width:100%;height:100%;object-fit:cover;display:block}
.lh-video .lv-frame{position:relative;aspect-ratio:16/10;background:#000}.lh-video video{width:100%;height:100%;object-fit:cover;display:block}
.lh-copy{max-width:900px;margin:34px auto 0;text-align:center}.lh-copy h1{color:#fff}
@media(max-width:800px){.lhero.has-video .lh-grid{grid-template-columns:1fr}.lhero{padding:90px 16px 40px}}
.lhero{padding-top:130px}
.lhero .lh-grid{height:min(calc(100vh - 230px),680px);min-height:360px}
.lhero.has-video .lh-grid{grid-template-columns:minmax(0,1fr) auto}
.lhero .lh-photo{height:100%;aspect-ratio:auto}
.lhero .lh-video{display:block;height:100%;background:#00152c}
.lhero .lh-video .lv-frame{height:100%;width:auto;aspect-ratio:9/16;box-shadow:none}
@media(max-width:800px){.lhero .lh-grid{height:auto;min-height:0}.lhero .lh-photo{aspect-ratio:4/3;height:auto}.lhero .lh-video{height:auto}.lhero .lh-video .lv-frame{width:100%;height:auto;aspect-ratio:9/16;max-height:80vh;margin:0 auto}}
.lhero{display:block;padding:150px 4vw 60px}
.lhero .lh-photo.lm-main{min-height:0}
.lhero .lh-copy{text-align:center}
@media(max-width:800px){.lhero{padding:100px 16px 40px}.lhero .lh-grid{display:grid;grid-template-columns:1fr}.lhero .lh-photo.lm-main{height:auto;aspect-ratio:4/3;width:100%}.lhero .lh-video .lv-frame{width:min(100%,360px);height:auto}}
section.lhero{height:auto;min-height:0;max-height:none;overflow:visible}
@media(max-width:800px){.lhero.has-video .lh-grid{grid-template-columns:1fr;height:auto}.lhero .lh-video{display:flex;justify-content:center}}
/* v15 floor plans */
.lfp{background:#fff;padding:40px 6vw 80px}.lfp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;max-width:1300px;margin:0 auto}
.lfp-it{display:block;border:1px solid var(--hair);background:#fff;padding:12px}.lfp-it img{width:100%;height:auto;display:block}
