/* Ascend Group — public website. Palette No. Two. */
:root{
  --ink:#121212; --teal:#255061; --teal-d:#1a3b48; --gold:#d6a252; --ice:#dde8e7; --off:#f1f2f3; --white:#fff;
  --muted:#5b6670; --line:rgba(18,18,18,.12); --line-l:rgba(255,255,255,.18);
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Montserrat",system-ui,-apple-system,Segoe UI,sans-serif;
  --wrap:1240px; --gut:clamp(20px,4vw,48px);
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:15.5px;line-height:1.75;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:780px;margin:0 auto;padding:0 var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* type */
.eyebrow{font:500 .72rem/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--teal);display:inline-flex;align-items:center;gap:14px;margin:0 0 22px}
.eyebrow:before{content:"";width:34px;height:1px;background:var(--gold)}
.eyebrow.c{justify-content:center}.eyebrow.c:after{content:"";width:34px;height:1px;background:var(--gold)}
.on-dark .eyebrow,.eyebrow.l{color:#fff}
h1,h2,h3,.display{font-family:var(--serif);font-weight:500;letter-spacing:-.005em;line-height:1.08;margin:0}
.d1{font-size:clamp(2.9rem,6.4vw,5.6rem);font-weight:400}
.d2{font-size:clamp(2.2rem,4.2vw,3.6rem);font-weight:400}
.d3{font-size:clamp(1.6rem,2.4vw,2.1rem)}
.d1 em,.d2 em,.d3 em{font-style:italic;color:var(--gold)}
.lede{font-size:clamp(1rem,1.25vw,1.12rem);color:var(--muted);max-width:620px}
.on-dark .lede{color:rgba(255,255,255,.78)}
p{margin:0 0 1.1em}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 .72rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;padding:18px 30px;border:1px solid var(--teal);background:var(--teal);color:#fff;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.btn:hover{background:var(--teal-d);border-color:var(--teal-d)}
.btn.ghost{background:transparent;color:var(--teal)}
.btn.ghost:hover{background:var(--teal);color:#fff}
.btn.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn.light:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn.gold{background:transparent;color:var(--ink);border-color:var(--gold)}
.btn.gold:hover{background:var(--gold);color:var(--ink)}
.link{font:600 .72rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--teal);display:inline-flex;align-items:center;gap:12px;padding-bottom:6px;border-bottom:1px solid var(--gold)}
.link:after{content:"→";letter-spacing:0;transition:transform .3s var(--ease)}
.link:hover:after{transform:translateX(4px)}
.on-dark .link{color:#fff}

/* header */
.hdr{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .4s var(--ease),box-shadow .4s var(--ease),transform .4s var(--ease)}
.hdr .bar{display:flex;align-items:center;justify-content:space-between;height:92px;gap:24px}
.hdr .logo img{height:42px;width:auto}
.hdr .logo .w{display:block}.hdr .logo .b{display:none}
.hdr nav{display:flex;gap:30px;align-items:center}
.hdr nav a{font:500 .7rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:#fff;padding:8px 0;border-bottom:1px solid transparent;transition:border-color .3s}
.hdr nav a:hover,.hdr nav a.on{border-color:var(--gold)}
.hdr .cta{display:flex;align-items:center;gap:22px}
.hdr .tel{font:500 .78rem/1 var(--sans);letter-spacing:.08em;color:#fff;text-decoration:none}
.hdr .btn{padding:14px 20px}
.hdr .btn.light{border-color:var(--gold)}
.hdr.solid,.no-hero .hdr{background:rgba(255,255,255,.97);box-shadow:0 1px 0 var(--line);backdrop-filter:saturate(1.4) blur(8px)}
.hdr.solid .bar,.no-hero .hdr .bar{height:76px}
.hdr.solid .logo .w,.no-hero .hdr .logo .w{display:none}
.hdr.solid .logo .b,.no-hero .hdr .logo .b{display:block}
.hdr.solid nav a,.hdr.solid .tel,.no-hero .hdr nav a,.no-hero .hdr .tel{color:var(--ink)}
.hdr.solid .btn.light,.no-hero .hdr .btn.light{color:var(--ink)}
.hdr.solid .btn.light:hover,.no-hero .hdr .btn.light:hover{background:var(--gold);border-color:var(--gold)}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}
.menu-btn span{position:absolute;left:10px;right:10px;height:1px;background:#fff;transition:.3s}
.menu-btn span:nth-child(1){top:16px}.menu-btn span:nth-child(2){top:22px}.menu-btn span:nth-child(3){top:28px}
.hdr.solid .menu-btn span,.no-hero .menu-btn span{background:var(--ink)}
.drawer{position:fixed;inset:0;z-index:60;background:var(--ink);color:#fff;display:flex;flex-direction:column;padding:28px var(--gut) 40px;transform:translateX(100%);transition:transform .5s var(--ease)}
.drawer.open{transform:none}
.drawer .top{display:flex;justify-content:space-between;align-items:center}
.drawer .top img{height:38px}
.drawer .x{background:none;border:0;color:#fff;font-size:34px;line-height:1;cursor:pointer;font-weight:200}
.drawer nav{display:flex;flex-direction:column;margin-top:44px}
.drawer nav a{font-family:var(--serif);font-size:2.1rem;line-height:1.25;text-decoration:none;padding:8px 0;border-bottom:1px solid var(--line-l)}
.drawer .foot{margin-top:auto;font-size:.85rem;color:rgba(255,255,255,.7)}
.drawer .foot a{color:#fff}
@media (max-width:980px){.hdr nav,.hdr .tel{display:none}.menu-btn{display:block}}
@media (max-width:560px){.hdr .btn{display:none}.hdr .logo img{height:34px}}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:var(--ink) center/cover no-repeat;overflow:hidden}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.04);animation:heroIn 2.4s var(--ease) forwards}
@keyframes heroIn{to{transform:scale(1)}}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,18,18,.55) 0%,rgba(18,18,18,.05) 32%,rgba(18,18,18,.15) 55%,rgba(18,18,18,.78) 100%)}
.hero .in{position:relative;z-index:2;width:100%;padding-bottom:clamp(48px,9vh,110px);padding-top:140px}
.hero h1{max-width:900px}
.hero .lede{color:rgba(255,255,255,.85);margin-top:22px}
.hero-sm{min-height:62vh}
.hero-sm:after{background:linear-gradient(90deg,rgba(18,18,18,.78) 0%,rgba(18,18,18,.45) 55%,rgba(18,18,18,.2) 100%),linear-gradient(180deg,rgba(18,18,18,.5) 0%,transparent 30%)}
.hero-sm .in{padding-bottom:64px}
.scroll-cue{position:absolute;z-index:2;right:var(--gut);bottom:40px;font:500 .64rem/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;writing-mode:vertical-rl;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:14px}
.scroll-cue:after{content:"";width:1px;height:56px;background:linear-gradient(var(--gold),transparent)}
@media (max-width:760px){.scroll-cue{display:none}}

/* search */
.search{margin-top:40px;display:flex;max-width:760px;background:rgba(255,255,255,.97);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.search .f{flex:1;display:flex;flex-direction:column;justify-content:center;padding:14px 24px;border-right:1px solid var(--line);min-width:0}
.search label{font:600 .6rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--teal);margin-bottom:8px}
.search input,.search select{border:0;outline:0;background:transparent;font:500 .98rem/1.3 var(--sans);color:var(--ink);padding:0;width:100%;appearance:none}
.search .f.p{flex:0 0 190px}
.search button{border:0;background:var(--teal);color:#fff;padding:0 34px;font:600 .72rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background .3s}
.search button:hover{background:var(--teal-d)}
.quick{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font:500 .7rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.quick a{color:rgba(255,255,255,.85);text-decoration:none;border-bottom:1px solid rgba(214,162,82,.6);padding-bottom:5px}
.quick a:hover{color:#fff;border-color:var(--gold)}
@media (max-width:700px){.search{flex-direction:column}.search .f{border-right:0;border-bottom:1px solid var(--line)}.search .f.p{flex:auto}.search button{padding:20px}}

/* sections */
section{position:relative}
.sec{padding:clamp(80px,11vw,150px) 0}
.sec.tight{padding:clamp(56px,7vw,96px) 0}
.bg-off{background:var(--off)}.bg-ice{background:var(--ice)}.bg-ink{background:var(--ink);color:#fff}.bg-teal{background:var(--teal);color:#fff}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:clamp(40px,5vw,64px);flex-wrap:wrap}
.head .lede{margin:18px 0 0}
.center{text-align:center}.center .lede{margin-left:auto;margin-right:auto}

/* trust strip */
.trust{border-bottom:1px solid var(--line)}
.trust .row{display:grid;grid-template-columns:repeat(4,1fr)}
.trust .it{padding:38px 24px;text-align:center;border-left:1px solid var(--line)}
.trust .it:first-child{border-left:0}
.trust .n{font-family:var(--serif);font-size:clamp(2rem,3.4vw,2.9rem);line-height:1;color:var(--teal)}
.trust .n sup{font-size:.5em;color:var(--gold);vertical-align:.7em}
.trust .t{font:500 .66rem/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:12px}
@media (max-width:760px){.trust .row{grid-template-columns:1fr 1fr}.trust .it:nth-child(3){border-left:0}.trust .it{border-top:1px solid var(--line)}}

/* split */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,7vw,110px);align-items:center}
.split.rev{grid-template-columns:1fr 1.05fr}
.split.rev .media{order:2}
.split .media{position:relative}
.split .media img{width:100%;aspect-ratio:4/5;object-fit:cover}
.split .media.wide img{aspect-ratio:5/4}
.split .media .frame{position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--gold);z-index:-1}
.split.rev .media .frame{inset:22px 22px -22px -22px}
.split .copy .d2{margin-bottom:26px}
.ticks{list-style:none;padding:0;margin:28px 0 36px;display:grid;gap:14px}
.ticks li{display:flex;gap:16px;align-items:flex-start}
.ticks li:before{content:"";flex:0 0 8px;height:8px;margin-top:9px;border:1px solid var(--gold);transform:rotate(45deg)}
@media (max-width:900px){.split,.split.rev{grid-template-columns:1fr}.split.rev .media{order:0}}

/* founders */
.sig{font-family:var(--serif);font-style:italic;font-size:1.5rem;color:var(--teal);margin-top:6px}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.founders figure{margin:0}
.founders img{aspect-ratio:3/4;object-fit:cover;width:100%;filter:grayscale(.15)}
.founders figure:nth-child(2){margin-top:60px}
.founders figcaption{margin-top:14px;font:600 .66rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.founders figcaption span{display:block;font-weight:500;color:var(--muted);letter-spacing:.14em;margin-top:4px}

/* listings */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,34px)}
.card{text-decoration:none;color:inherit;display:block}
.card .ph{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--off)}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.card:hover .ph img{transform:scale(1.045)}
.card .tag{position:absolute;left:16px;top:16px;background:rgba(18,18,18,.72);color:#fff;font:600 .6rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:9px 12px;border-left:2px solid var(--gold)}
.card .body{padding:20px 2px 0}
.card .price{font-family:var(--serif);font-size:1.75rem;line-height:1;color:var(--ink)}
.card .addr{font-weight:500;margin-top:10px;font-size:.95rem}
.card .city{color:var(--muted);font-size:.84rem}
.card .specs{display:flex;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font:500 .7rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.card .specs b{color:var(--ink);font-weight:600}
.card .cty{font-size:.66rem;color:#8a949c;margin-top:10px;letter-spacing:.02em}
.feature{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(20px,2.4vw,34px);margin-bottom:clamp(20px,2.4vw,34px)}
.feature .big .ph{aspect-ratio:auto;height:100%;min-height:520px}
.feature .big{display:block;height:100%}
.feature .stack{display:grid;gap:clamp(20px,2.4vw,34px)}
.feature .big .body{position:absolute;left:0;right:0;bottom:0;padding:34px;color:#fff;background:linear-gradient(transparent,rgba(18,18,18,.82))}
.feature .big{position:relative}
.feature .big .price{color:#fff;font-size:2.4rem}
.feature .big .city,.feature .big .specs{color:rgba(255,255,255,.8)}
.feature .big .specs b{color:#fff}
.feature .big .specs{border-color:rgba(255,255,255,.25)}
.feature .big .cty{color:rgba(255,255,255,.65)}
@media (max-width:980px){.cards{grid-template-columns:1fr 1fr}.feature{grid-template-columns:1fr}}
@media (max-width:620px){.cards{grid-template-columns:1fr}}

/* sell band */
.band{position:relative;color:#fff;overflow:hidden}
.band .bg{position:absolute;inset:0;background-size:cover;background-position:center}
.band:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,18,18,.86) 0%,rgba(18,18,18,.6) 45%,rgba(18,18,18,.15) 100%);z-index:1}
.band .in{position:relative;z-index:2;max-width:620px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px;border-top:1px solid var(--line)}
.pillars .p{padding:34px 34px 0 0}
.pillars .p+.p{padding-left:34px;border-left:1px solid var(--line)}
.pillars .num{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:1.3rem}
.pillars h3{font-size:1.55rem;margin:10px 0 12px}
.pillars p{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.pillars{grid-template-columns:1fr}.pillars .p+.p{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* markets */
.markets{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.4vw,34px)}
.market{position:relative;display:block;min-height:560px;color:#fff;text-decoration:none;overflow:hidden}
.market img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.market:hover img{transform:scale(1.04)}
.market:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,18,18,0) 35%,rgba(18,18,18,.8))}
.market .t{position:absolute;z-index:2;left:40px;right:40px;bottom:40px}
.market .t h3{font-size:clamp(2.2rem,3.6vw,3.2rem);font-weight:400}
.market .t p{color:rgba(255,255,255,.8);margin:10px 0 20px;max-width:420px}
.market .t .link{color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:28px}
.chips a{font:500 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:12px 16px;border:1px solid var(--line);transition:.3s;background:#fff}
.chips a:hover{border-color:var(--gold);color:var(--teal)}
@media (max-width:860px){.markets{grid-template-columns:1fr}.market{min-height:440px}}

/* reviews */
.quote-wrap{display:grid;grid-template-columns:320px 1fr;gap:clamp(40px,6vw,100px);align-items:start}
.stars{color:var(--gold);letter-spacing:.3em;font-size:.9rem}
.rail{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:26px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}
.rail::-webkit-scrollbar{height:2px}.rail::-webkit-scrollbar-thumb{background:var(--gold)}
.q{flex:0 0 min(440px,84vw);scroll-snap-align:start;background:#fff;padding:40px;border-top:2px solid var(--gold);display:flex;flex-direction:column}
.bg-ink .q{background:#1b1b1b}
.q blockquote{margin:18px 0 26px;font-family:var(--serif);font-size:1.38rem;line-height:1.42;flex:1}
.q .who{font:600 .66rem/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.q .who span{display:block;color:var(--muted);font-weight:500;letter-spacing:.12em}
.bg-ink .q .who span{color:rgba(255,255,255,.55)}
.rail-nav{display:flex;gap:10px;margin-top:30px}
.rail-nav button{width:52px;height:52px;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:1.1rem;color:inherit;transition:.3s}
.bg-ink .rail-nav button{border-color:var(--line-l)}
.rail-nav button:hover{border-color:var(--gold);color:var(--gold)}
@media (max-width:900px){.quote-wrap{grid-template-columns:1fr}}

/* join */
.join{display:grid;grid-template-columns:1fr 1fr;min-height:640px}
.join .img{background-size:cover;background-position:center;min-height:380px}
.join .copy{padding:clamp(56px,8vw,120px) clamp(28px,6vw,96px);display:flex;flex-direction:column;justify-content:center}
@media (max-width:860px){.join{grid-template-columns:1fr}}

/* final cta */
.final{text-align:center}
.final .d2{max-width:820px;margin:0 auto 22px}
.final .lede{margin-left:auto;margin-right:auto}
.final .acts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:36px}

/* page intro */
.intro{padding:170px 0 70px;border-bottom:1px solid var(--line)}
.intro .d1{font-size:clamp(2.6rem,5.2vw,4.6rem)}
.crumbs{font:500 .66rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--teal)}

/* team */
.filters{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:46px}
.filters input{flex:1;min-width:240px;border:0;border-bottom:1px solid var(--ink);padding:14px 0;font:500 1rem var(--sans);outline:0;background:transparent}
.filters button{font:600 .66rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:13px 18px;background:#fff;border:1px solid var(--line);cursor:pointer}
.filters button.on{border-color:var(--teal);background:var(--teal);color:#fff}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:46px 28px}
.agent{text-decoration:none;color:inherit}
.agent .ph{aspect-ratio:4/5;overflow:hidden;border-radius:16px;isolation:isolate;background:var(--ice);display:flex;align-items:center;justify-content:center}
.agent .ph .mono{font-family:var(--serif);font-size:3.4rem;color:var(--teal)}
.agent img{width:100%;height:100%;object-fit:cover;filter:grayscale(.2);transition:transform 1s var(--ease),filter .6s}
.agent:hover img{transform:scale(1.04);filter:none}
.agent h3{font-size:1.45rem;margin-top:16px}
.agent .r{font:500 .64rem/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:6px}
@media (max-width:1000px){.team{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.team{grid-template-columns:1fr 1fr;gap:34px 16px}.agent h3{font-size:1.2rem}}
.profile{display:grid;grid-template-columns:420px 1fr;gap:clamp(40px,6vw,96px);align-items:start}
.profile .ph img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px;display:block}
.profile .meta{margin-top:26px;display:grid;gap:12px;font-size:.95rem}
.profile .meta a{text-decoration:none;border-bottom:1px solid var(--gold)}
.profile .meta .lbl{font:600 .6rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}
.prose{font-size:1.02rem}
.prose h2{font-size:2rem;margin:1.6em 0 .6em}
.prose h3{font-size:1.5rem;margin:1.4em 0 .5em}
.prose a{color:var(--teal);text-decoration-color:var(--gold);text-underline-offset:3px}
.prose img{margin:2em 0;width:100%}
.prose ul,.prose ol{padding-left:1.2em}
.prose li{margin-bottom:.4em}
.prose blockquote{margin:2em 0;padding-left:24px;border-left:2px solid var(--gold);font-family:var(--serif);font-size:1.4rem;line-height:1.45}
.prose figure{margin:0}
@media (max-width:900px){.profile{grid-template-columns:1fr}}

/* community */
.comm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.ctile{display:flex;flex-direction:column;justify-content:space-between;min-height:230px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:background .4s var(--ease),color .4s}
.ctile h3{font-size:1.9rem;font-weight:400}
.ctile p{color:var(--muted);font-size:.9rem;margin:10px 0 0}
.ctile .go{font:600 .64rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-top:24px}
.ctile:hover{background:var(--teal);color:#fff}
.ctile:hover p{color:rgba(255,255,255,.75)}.ctile:hover .go{color:var(--gold)}
@media (max-width:900px){.comm-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.comm-grid{grid-template-columns:1fr}}
.hl{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:34px 0;border-top:1px solid var(--line)}
.hl div{padding:18px 0;border-bottom:1px solid var(--line);font-weight:500;display:flex;gap:14px;align-items:center}
.hl div:before{content:"";width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg);flex:0 0 7px}
.side{position:sticky;top:110px;background:var(--off);padding:40px}
.side h3{font-size:1.7rem;margin-bottom:12px}
.side .btn{width:100%;margin-top:12px}
.two{display:grid;grid-template-columns:1fr 380px;gap:clamp(40px,6vw,96px);align-items:start}
@media (max-width:900px){.two{grid-template-columns:1fr}.side{position:static}}

/* blog */
.cats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:46px}
.cats button{font:600 .64rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:12px 16px;border:1px solid var(--line);background:#fff;cursor:pointer}
.cats button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 32px}
.post{text-decoration:none;color:inherit}
.post .ph{aspect-ratio:3/2;overflow:hidden;background:var(--ice)}
.post img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.post:hover img{transform:scale(1.04)}
.post .m{font:500 .62rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-top:20px}
.post h3{font-size:1.5rem;margin-top:12px;line-height:1.18}
.post p{color:var(--muted);font-size:.9rem;margin-top:10px}
.more{text-align:center;margin-top:60px}
@media (max-width:900px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.posts{grid-template-columns:1fr}}
.article-hero img{width:100%;max-height:620px;object-fit:cover}

/* forms */
.form{display:grid;grid-template-columns:1fr 1fr;gap:26px 28px}
.form .full{grid-column:1/-1}
.form label{display:block;font:600 .6rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.form input,.form select,.form textarea{width:100%;border:0;border-bottom:1px solid rgba(18,18,18,.35);padding:10px 0 12px;font:500 1rem var(--sans);background:transparent;outline:0;border-radius:0;transition:border-color .3s}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--gold)}
.form textarea{min-height:120px;resize:vertical}
.form .fine{font-size:.74rem;color:var(--muted);line-height:1.6}
.ok{display:none;padding:34px;border:1px solid var(--gold);background:#fff}
@media (max-width:640px){.form{grid-template-columns:1fr}}
.contact-cards{display:grid;gap:0;border-top:1px solid var(--line)}
.contact-cards div{padding:26px 0;border-bottom:1px solid var(--line)}
.contact-cards .lbl{font:600 .6rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--teal);margin-bottom:10px;display:block}
.contact-cards a{text-decoration:none}

/* calculators */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:start}
.calc .out{background:var(--ink);color:#fff;padding:clamp(34px,4vw,56px);position:sticky;top:110px}
.calc .big{font-family:var(--serif);font-size:clamp(3rem,5vw,4.4rem);line-height:1;margin:12px 0 26px}
.calc .rows div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line-l);font-size:.92rem}
.calc .rows div b{font-weight:600}
.calc .note{font-size:.75rem;color:rgba(255,255,255,.55);margin-top:22px}
@media (max-width:900px){.calc{grid-template-columns:1fr}.calc .out{position:static}}

/* footer */
.ftr{background:var(--ink);color:rgba(255,255,255,.72);padding:100px 0 40px;font-size:.88rem}
.ftr .top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:64px;border-bottom:1px solid var(--line-l)}
.ftr .brand img{height:46px;margin-bottom:26px}
.ftr .tagline{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:#fff;line-height:1.35}
.ftr h4{font:600 .62rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 22px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ftr a{color:rgba(255,255,255,.82);text-decoration:none}
.ftr a:hover{color:#fff}
.ftr .social{display:flex;gap:12px;margin-top:26px}
.ftr .social a{width:40px;height:40px;border:1px solid var(--line-l);display:flex;align-items:center;justify-content:center;transition:.3s}
.ftr .social a:hover{border-color:var(--gold)}
.ftr .social svg{width:16px;height:16px;fill:#fff}
.ftr .legal{padding-top:34px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.76rem}
.ftr .legal nav{display:flex;gap:22px;flex-wrap:wrap}
.ftr .idx{margin-top:30px;font-size:.68rem;line-height:1.65;color:rgba(255,255,255,.45)}
.ftr .idx p{margin:0 0 10px}
.eho{display:inline-flex;align-items:center;gap:8px}
@media (max-width:900px){.ftr .top{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ftr .top{grid-template-columns:1fr}}

/* reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.hero .bg{animation:none;transform:none}}

/* ============ LUXE LAYER (2026-10-29): deeper premium finish ============ */
::selection{background:var(--gold);color:var(--ink)}
:focus-visible{outline:1px solid var(--gold);outline-offset:4px}
body{font-weight:400;letter-spacing:.005em}
.lede{font-weight:300;line-height:1.85}
h1,h2,h3,.display{font-weight:400}
.d1{font-weight:300;letter-spacing:-.015em;line-height:1.02}
.d2{font-weight:300;letter-spacing:-.01em}
.d1 em,.d2 em,.d3 em{font-weight:400}
.eyebrow{letter-spacing:.34em;font-size:.68rem}

/* buttons: gold sweep */
.btn{position:relative;overflow:hidden;isolation:isolate;padding:20px 38px;letter-spacing:.26em;font-size:.68rem}
.btn:before{content:"";position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease);z-index:-1}
.btn:hover:before{transform:scaleX(1);transform-origin:left}
.btn:hover{background:var(--teal);border-color:var(--gold);color:var(--ink)}
.btn.ghost:hover,.btn.light:hover,.btn.gold:hover{background:transparent;border-color:var(--gold);color:var(--ink)}
.hdr .btn{padding:15px 24px}

/* header */
.hdr.solid,.no-hero .hdr{box-shadow:0 1px 0 rgba(214,162,82,.35)}
.hdr nav a{position:relative;border-bottom:0}
.hdr nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .5s var(--ease)}
.hdr nav a:hover:after,.hdr nav a.on:after{transform:scaleX(1)}

/* hero: cinematic vignette + glass search */
.hero:after{background:radial-gradient(120% 90% at 30% 60%,rgba(18,18,18,0) 0%,rgba(18,18,18,.35) 70%),linear-gradient(180deg,rgba(18,18,18,.6) 0%,rgba(18,18,18,0) 28%,rgba(18,18,18,.1) 50%,rgba(18,18,18,.85) 100%)}
.hero h1{text-shadow:0 2px 40px rgba(0,0,0,.25)}
.hero .eyebrow:before{background:var(--gold)}
.search{background:rgba(18,18,18,.38);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid rgba(255,255,255,.22);box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.search .f{border-right:1px solid rgba(255,255,255,.18);padding:16px 26px}
.search label{color:var(--gold)}
.search input,.search select{color:#fff}
.search input::placeholder{color:rgba(255,255,255,.7)}
.search select option{color:var(--ink)}
.search button{background:var(--gold);color:var(--ink);padding:0 38px;letter-spacing:.26em;transition:background .4s,color .4s}
.search button:hover{background:#fff;color:var(--ink)}
@media (max-width:700px){.search .f{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}}

/* trust strip on ink */
.trust{background:var(--ink);color:#fff;border-bottom:0}
.trust .it{border-left:1px solid rgba(255,255,255,.1);padding:46px 24px}
.trust .n{color:var(--gold);font-weight:300;font-size:clamp(2.4rem,3.8vw,3.3rem)}
.trust .n sup{color:#fff}
.trust .t{color:rgba(255,255,255,.62)}
@media (max-width:760px){.trust .it{border-top:1px solid rgba(255,255,255,.1)}}

/* statement band */
.statement{background:var(--off);text-align:center;padding:clamp(90px,12vw,170px) 0;overflow:hidden}
.statement .mark{font-family:var(--serif);font-size:7rem;line-height:.5;color:var(--gold);display:block;height:46px}
.statement p.big{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4vw,3.4rem);line-height:1.2;max-width:980px;margin:0 auto;color:var(--ink)}
.statement p.big em{color:var(--teal);font-style:italic}
.statement .rule{width:1px;height:70px;background:linear-gradient(var(--gold),transparent);margin:46px auto 0}
.statement .by{font:500 .66rem/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-top:22px}

/* imagery: gold frames + slow reveal */
.founders figure{position:relative}
.founders figure:before{content:"";position:absolute;inset:-14px 14px 54px -14px;border:1px solid rgba(214,162,82,.6);z-index:-1}
.split .media img,.founders img,.market img,.card .ph img,.post img{transition:transform 1.6s var(--ease),filter 1s}
.rv .media img,.rv.media img{clip-path:inset(0 0 0 0)}
.media.rv{clip-path:inset(8% 0 8% 0);transition:clip-path 1.6s var(--ease),opacity 1.1s,transform 1.1s}
.media.rv.in{clip-path:inset(0 0 0 0)}

/* listing cards */
.card .ph:after{content:"View Residence";position:absolute;left:50%;top:50%;transform:translate(-50%,-40%);opacity:0;font:600 .64rem/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#fff;padding:16px 22px;border:1px solid rgba(255,255,255,.7);transition:opacity .5s,transform .6s var(--ease);white-space:nowrap}
.card .ph:before{content:"";position:absolute;inset:0;background:rgba(18,18,18,.38);opacity:0;transition:opacity .6s;z-index:1}
.card .ph:after{z-index:2}
.card:hover .ph:before{opacity:1}.card:hover .ph:after{opacity:1;transform:translate(-50%,-50%)}
.card .tag{z-index:3;background:rgba(18,18,18,.55);backdrop-filter:blur(6px)}
.card .price{font-weight:400;font-size:1.95rem;letter-spacing:-.01em}
.card .addr{letter-spacing:.02em}
.feature .big .ph:after,.feature .big .ph:before{display:none}
.feature .big .price{font-size:2.8rem;font-weight:300}

/* agent cards */
.agent .ph{position:relative;transition:box-shadow .6s var(--ease)}
.agent .ph:after{content:"View Profile";position:absolute;left:0;right:0;bottom:0;padding:40px 18px 18px;background:linear-gradient(transparent,rgba(18,18,18,.75));color:#fff;font:600 .6rem/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .6s var(--ease)}
.agent:hover .ph:after{opacity:1;transform:none}
.agent:hover .ph{box-shadow:0 24px 50px -28px rgba(18,18,18,.55)}
.agent h3{font-weight:400;transition:color .4s}
.agent:hover h3{color:var(--teal)}
.profile .ph{position:relative}
.profile .ph:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(214,162,82,.6);border-radius:22px;z-index:-1}

/* section dividers: ornament */
.eyebrow.c:before,.eyebrow.c:after{width:46px}
.center .eyebrow.c,.final .eyebrow.c{margin-bottom:26px}

/* inner-page intros on ink */
.intro.dk{background:var(--ink) radial-gradient(90% 140% at 100% 0%,rgba(37,80,97,.55) 0%,rgba(18,18,18,0) 60%);color:#fff;border-bottom:1px solid rgba(214,162,82,.35);padding:190px 0 96px;position:relative;overflow:hidden}
.intro.dk:after{content:"";position:absolute;right:-6vw;bottom:-14vw;width:42vw;height:42vw;border:1px solid rgba(214,162,82,.18);border-radius:50%;pointer-events:none}
.intro.dk .crumbs{color:rgba(255,255,255,.55)}
.intro.dk .crumbs a:hover{color:var(--gold)}
.intro.dk .eyebrow{color:#fff}
.intro.dk .lede{color:rgba(255,255,255,.75)}
.no-hero .hdr{background:rgba(18,18,18,.92);box-shadow:0 1px 0 rgba(214,162,82,.35)}
.no-hero .hdr .logo .w{display:block}.no-hero .hdr .logo .b{display:none}
.no-hero .hdr nav a,.no-hero .hdr .tel{color:#fff}
.no-hero .hdr .btn.light{color:#fff}
.no-hero .menu-btn span{background:#fff}

/* reviews */
.q{position:relative;padding:48px 40px 40px}
.q:before{content:"\201C";position:absolute;right:30px;top:6px;font-family:var(--serif);font-size:6rem;line-height:1;color:rgba(214,162,82,.25)}
.q blockquote{font-weight:400;font-size:1.42rem}
.bg-ink{background:var(--ink) radial-gradient(70% 120% at 0% 100%,rgba(37,80,97,.35) 0%,rgba(18,18,18,0) 60%)}

/* chips & tiles */
.chips a{background:transparent;border-color:rgba(18,18,18,.18)}
.chips a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.ctile{transition:background .6s var(--ease),color .6s}
.ctile h3{font-weight:300;font-size:2.1rem}

/* final CTA over imagery */
.final.luxe{position:relative;color:#fff;background:var(--ink);overflow:hidden}
.final.luxe .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5}
.final.luxe:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,18,18,.55),rgba(18,18,18,.8));z-index:1}
.final.luxe .wrap{position:relative;z-index:2}
.final.luxe .eyebrow{color:#fff}
.final.luxe .lede{color:rgba(255,255,255,.8)}

/* footer */
.ftr{border-top:1px solid rgba(214,162,82,.45);padding-top:110px}
.ftr .tagline{font-size:1.6rem;font-weight:300}
.ftr .social a{border-radius:50%}

/* forms */
.form input,.form select,.form textarea{font-weight:400}
.ok{border-color:var(--gold);background:var(--off)}
.side{background:var(--off);border-top:2px solid var(--gold)}
.calc .out{border-top:2px solid var(--gold)}
.calc .big{color:var(--gold);font-weight:300}
.hero .lede{font-weight:400;color:rgba(255,255,255,.9)}
.hero-sm:after{background:linear-gradient(90deg,rgba(18,18,18,.88) 0%,rgba(18,18,18,.6) 50%,rgba(18,18,18,.25) 100%),linear-gradient(180deg,rgba(18,18,18,.55) 0%,transparent 35%)}
@media (max-width:700px){.search button{padding:20px}}

/* Ascend | LPT Realty lockup */
.hdr .logo{display:flex;align-items:center;gap:18px;text-decoration:none}
.lk-div{width:1px;height:34px;background:currentColor;opacity:.45;display:block}
.hdr .logo{color:#fff}
.hdr.solid .logo{color:var(--ink)}
.hdr .logo img.lpt{height:40px;width:40px}
.hdr .logo .lpt.b{display:none}
.hdr.solid .logo .lpt.w{display:none}.hdr.solid .logo .lpt.b{display:block}
.no-hero .hdr .logo{color:#fff}.no-hero .hdr .logo .lpt.w{display:block}.no-hero .hdr .logo .lpt.b{display:none}
.lockup{display:flex;align-items:center;gap:18px;color:#fff}
.lockup img.lpt{height:44px;width:44px;margin:0}
.ftr .brand .lockup{margin-bottom:26px}.ftr .brand .lockup img{margin-bottom:0}
.drawer .top .lockup img{height:34px}.drawer .top .lockup img.lpt{height:34px;width:34px}
@media (max-width:560px){.hdr .logo{gap:12px}.hdr .logo img.lpt{height:32px;width:32px}.lk-div{height:26px}}

/* join page */
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.perk{padding:40px 36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .5s var(--ease)}
.perk:hover{background:var(--off)}
.perk .ic{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:1.3rem}
.perk h3{font-size:1.6rem;font-weight:400;margin:12px 0 10px}
.perk p{color:var(--muted);font-size:.93rem;margin:0}
.perks.dark{border-color:rgba(255,255,255,.12)}.perks.dark .perk{border-color:rgba(255,255,255,.12)}
.perks.dark .perk:hover{background:rgba(255,255,255,.04)}.perks.dark .perk p{color:rgba(255,255,255,.68)}
@media (max-width:900px){.perks{grid-template-columns:1fr 1fr}}@media (max-width:600px){.perks{grid-template-columns:1fr}}
.people{display:grid;gap:clamp(24px,3vw,44px)}
.people.two-up{grid-template-columns:1fr 1fr}
.people.six{grid-template-columns:repeat(6,1fr)}
.person .pimg{display:flex;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--ice);align-items:center;justify-content:center;text-decoration:none}
.person .pimg img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.person a.pimg:hover img{transform:scale(1.04)}
.person .mono{font-family:var(--serif);font-size:3.6rem;color:var(--teal);font-weight:300}
.person .prole{font:600 .6rem/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--teal);margin:20px 0 6px}
.person h3{font-size:1.7rem;font-weight:400}
.person p:last-child{color:var(--muted);font-size:.93rem;margin-top:10px}
.people.six .person h3{font-size:1.25rem}.people.six .person .prole{font-size:.56rem;margin-top:14px}
@media (max-width:1000px){.people.six{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.people.two-up{grid-template-columns:1fr 1fr;gap:18px}.people.six{grid-template-columns:1fr 1fr}.person h3{font-size:1.3rem}}
.split .people.two-up{align-self:start}
.lockup.lg img{height:48px}.lockup.lg img.lpt{height:54px;width:54px}.lockup.lg .lk-div{height:44px}
.path{list-style:none;padding:0;margin:64px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:p}
.path li{padding:0 28px 0 0;position:relative}
.path li:before{content:"";position:absolute;left:0;right:0;top:22px;height:1px;background:var(--gold);opacity:.5}
.path span{position:relative;display:inline-flex;width:44px;height:44px;border:1px solid var(--gold);border-radius:50%;align-items:center;justify-content:center;background:#fff;font-family:var(--serif);font-size:1.1rem;color:var(--teal)}
.path h3{font-size:1.5rem;font-weight:400;margin:22px 0 8px}
.path p{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.path{grid-template-columns:1fr 1fr;gap:34px 0}}@media (max-width:520px){.path{grid-template-columns:1fr}}
.trust .press{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 42px;padding:26px var(--gut) 34px;border-top:1px solid rgba(255,255,255,.1)}
.trust .press span{font:500 .6rem/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.trust .press b{font-family:var(--serif);font-weight:400;font-style:italic;font-size:1.25rem;color:rgba(255,255,255,.88);letter-spacing:.01em}

/* community page v2 */
.comm-hero{min-height:72vh}.comm-hero .d1{max-width:980px}
.comm-top{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(40px,6vw,96px);align-items:start}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(214,162,82,.55)}
.stats div{padding:22px 20px;border-left:1px solid rgba(214,162,82,.55)}.stats div:first-child{border-left:0}
.stats span{display:block;font:600 .56rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.stats b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.3vw,2rem);color:var(--teal);margin-top:8px;line-height:1}
.src{font-size:.68rem;color:#8a949c;margin-top:10px;line-height:1.5}
.lede.big{font-family:var(--serif);font-size:1.75rem;line-height:1.35;color:var(--ink);max-width:none;font-weight:400}
.glance{display:grid;grid-template-columns:repeat(6,1fr);margin-top:clamp(48px,6vw,80px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.glance .g{padding:30px 22px;border-left:1px solid var(--line);text-align:center}.glance .g:first-child{border-left:0}
.glance h3{font:600 .62rem/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--teal);margin:16px 0 8px}
.glance p{font-family:var(--serif);font-size:1.15rem;line-height:1.3;margin:0;color:var(--ink)}
.gi{display:inline-block;width:34px;height:34px;background:var(--gold);-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.gi-people{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Ccircle cx='9' cy='8' r='3.2'/%3E%3Ccircle cx='17' cy='9' r='2.4'/%3E%3Cpath d='M3 20c0-3.3 2.7-6 6-6s6 2.7 6 6M14.5 14.2c.8-.4 1.6-.6 2.5-.6 2.5 0 4.5 2 4.5 4.5'/%3E%3C/svg%3E")}
.gi-home{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Cpath d='M3 11l9-7 9 7M5 9.5V20h14V9.5M10 20v-6h4v6'/%3E%3C/svg%3E")}
.gi-sun{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M4.9 19.1L7 17M17 7l2.1-2.1'/%3E%3C/svg%3E")}
.gi-spark{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Cpath d='M12 3l2.2 6.8L21 12l-6.8 2.2L12 21l-2.2-6.8L3 12l6.8-2.2z'/%3E%3C/svg%3E")}
.gi-key{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Ccircle cx='8' cy='12' r='4'/%3E%3Cpath d='M12 12h9M18 12v3M15 12v2'/%3E%3C/svg%3E")}
.gi-heart{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.2'%3E%3Cpath d='M12 20s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 7.4 4.3 4.3 0 0 1 19.5 10c0 5.4-7.5 10-7.5 10z'/%3E%3C/svg%3E")}
@media (max-width:1000px){.glance{grid-template-columns:repeat(3,1fr)}.glance .g:nth-child(4){border-left:0}.glance .g:nth-child(n+4){border-top:1px solid var(--line)}}
@media (max-width:560px){.glance{grid-template-columns:1fr 1fr}.glance .g{border-left:0;border-top:1px solid var(--line)}.glance .g:nth-child(even){border-left:1px solid var(--line)}}
@media (max-width:900px){.comm-top{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr 1fr}.stats div{padding:16px 12px}}
.map{position:relative;aspect-ratio:21/9;border:1px solid var(--line);overflow:hidden;background:var(--ice)}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.05) brightness(1.02)}
.map:hover iframe{filter:grayscale(.2)}
@media (max-width:700px){.map{aspect-ratio:4/3}}
.media .credit{position:absolute;right:10px;bottom:8px;font-size:.6rem;color:rgba(255,255,255,.85);background:rgba(18,18,18,.45);padding:3px 7px;max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lifestyle{display:grid;grid-template-columns:300px 1fr;gap:clamp(30px,5vw,80px)}
.lifestyle .cols{columns:2;column-gap:44px}.lifestyle .cols p{break-inside:avoid}
@media (max-width:900px){.lifestyle{grid-template-columns:1fr}.lifestyle .cols{columns:1}}
.schools{display:grid;grid-template-columns:360px 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.schools .box{border:1px solid rgba(214,162,82,.55);padding:34px;text-align:center}
.schools .box span{display:block;font:600 .58rem/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.schools .box b{display:block;font-family:var(--serif);font-weight:400;font-size:1.9rem;color:var(--teal);line-height:1.2}
@media (max-width:800px){.schools{grid-template-columns:1fr}}
.also{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.market.sm{min-height:320px}.market.sm .t{left:28px;right:28px;bottom:26px}.market.sm .t h3{font-size:2rem}
@media (max-width:800px){.also{grid-template-columns:1fr}.market.sm{min-height:240px}}
.chips.dark a{background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}.chips.dark a:hover{background:#fff;color:var(--ink)}

/* recruiting top bar */
.topbar{position:fixed;inset:0 0 auto 0;z-index:51;height:34px;background:var(--ink);color:rgba(255,255,255,.78);font:500 .7rem/34px var(--sans);letter-spacing:.06em;text-align:center;border-bottom:1px solid rgba(214,162,82,.3);white-space:nowrap;overflow:hidden}
.topbar span{color:var(--gold);font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:.62rem;margin-right:6px}
.topbar a{color:#fff;text-decoration:none;border-bottom:1px solid var(--gold);margin-left:8px;font-weight:600}
.topbar a:hover{color:var(--gold)}
.hdr{top:34px}
.intro{padding-top:210px}.intro.dk{padding-top:220px}
.hero .in{padding-top:170px}
@media (max-width:760px){.topbar{font-size:.64rem}.topbar .wrap{padding:0 12px}.topbar span{display:none}}
@media (max-width:520px){.topbar{text-align:left}}
.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:30px;border-top:1px solid rgba(255,255,255,.18)}
.mini-stats div{padding:18px 16px 0 0}.mini-stats div+div{padding-left:16px;border-left:1px solid rgba(255,255,255,.18)}
.mini-stats b{display:block;font-family:var(--serif);font-weight:400;font-size:1.6rem;color:var(--gold)}
.mini-stats span{font:500 .6rem/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}
/* luxury book */
.luxbook{display:grid;grid-template-columns:.62fr 1fr;gap:clamp(20px,3vw,44px);align-items:end}
.luxbook figure{margin:0}
.luxbook img{width:100%;box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
.luxbook .cover img{transform:rotate(-1.2deg)}
.luxbook figcaption{font-size:.74rem;color:rgba(255,255,255,.55);margin-top:14px}
.lux-ticks{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:56px}
@media (max-width:860px){.luxbook{grid-template-columns:1fr}.lux-ticks{grid-template-columns:1fr 1fr}}
/* stage */
.stage{position:relative;min-height:78vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--ink)}
.stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:54% 6%;opacity:.75}
.stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,18,18,.1) 30%,rgba(18,18,18,.88))}
.stage .cap{position:relative;z-index:2;padding-bottom:clamp(48px,7vw,90px)}
.stage .lede{color:rgba(255,255,255,.82)}
/* satellite map */
.satmap{background:#fff;margin-top:-1px}
.satin{position:relative;max-width:1600px;margin:0 auto}
.satin>img{width:100%;display:block}
.pin{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;z-index:2}
.pin i{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(214,162,82,.25),0 0 18px rgba(214,162,82,.8);flex:0 0 9px;transition:transform .4s var(--ease)}
.pin span{font:500 .66rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;text-shadow:0 1px 10px rgba(0,0,0,.9);white-space:nowrap;padding:6px 0;border-bottom:1px solid transparent;transition:border-color .4s}
.pin:hover i{transform:scale(1.6)}.pin:hover span{border-color:var(--gold)}
.pin.big span{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2.6rem);letter-spacing:.12em;font-weight:300}
.pin.big i{width:12px;height:12px;flex-basis:12px}
.mkt-area{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
.mkt-area path{fill:rgba(214,162,82,.07);stroke:#d6a252;stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.mkt-area .glow{fill:none;stroke:rgba(214,162,82,.35);stroke-width:10;filter:blur(4px)}
@media (max-width:760px){.mkt-area path{stroke-width:1.75}.mkt-area .glow{stroke-width:6}}
.sat-credit{position:absolute;right:12px;bottom:6px;margin:0;font-size:.58rem;color:rgba(255,255,255,.6)}
@media (max-width:760px){.pin span{font-size:.5rem;letter-spacing:.14em}.pin:not(.big) span{display:none}}
.hdr nav{gap:24px}.hdr nav a,.hdr .tel,.hdr .btn{white-space:nowrap}
@media (max-width:1400px){.hdr .tel{display:none}.hdr nav{gap:20px}}
@media (max-width:1240px){.hdr .logo .lk-div,.hdr .logo img.lpt{height:32px}.hdr .logo img.lpt{width:32px}.hdr .logo img{height:36px}.hdr nav a{letter-spacing:.14em}}
/* coaches: smaller, sharper headshots beside their copy */
.people.coaches{gap:clamp(28px,4vw,64px)}
.people.coaches .person{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center}
.people.coaches .pimg{width:220px}
.people.coaches .prole{margin-top:0}
@media (max-width:900px){.people.coaches{grid-template-columns:1fr}}
@media (max-width:520px){.people.coaches .person{grid-template-columns:140px 1fr;gap:18px}.people.coaches .pimg{width:140px}}
.people.coaches .person{grid-template-rows:auto auto auto;row-gap:0;align-items:start;align-content:center}
.people.coaches .pimg{grid-row:1/span 3;grid-column:1}
.people.coaches .prole,.people.coaches h3,.people.coaches .person>p:last-child{grid-column:2}
.people.coaches .person>p:last-child{margin-top:10px}
.people.coaches .prole{align-self:end}
/* FAB (Join page) */
.partners{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 34px;margin:46px auto 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:1100px}
.partners span{font:600 .6rem/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--teal)}
.partners b{font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--ink)}
.fab{margin-top:56px;border-top:1px solid var(--ink)}
.fab-h,.fab-r{display:grid;grid-template-columns:1.05fr 1.3fr 1.3fr 1.3fr;gap:0 34px}
.fab-h{padding:16px 0;border-bottom:1px solid var(--line)}
.fab-h span{font:600 .6rem/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.fab-r{padding:34px 0;border-bottom:1px solid var(--line);transition:background .5s var(--ease)}
.fab-r:hover{background:var(--off)}
.fab-r h3{font-size:1.6rem;font-weight:400;line-height:1.15;padding-left:6px}
.fab-r h3 i{display:block;font-style:italic;color:var(--gold);font-size:1.05rem;margin-bottom:8px}
.fab-r p{margin:0;color:var(--muted);font-size:.93rem}
.fab-r p b{color:var(--ink);font-weight:600}
.fab-note{text-align:center;margin-top:30px;font-family:var(--serif);font-size:1.25rem;color:var(--teal)}
@media (max-width:900px){.fab-h{display:none}.fab-r{grid-template-columns:1fr;gap:10px}
 .fab-r p:nth-of-type(1):before{content:"Feature";}.fab-r p:nth-of-type(2):before{content:"Advantage";}.fab-r p:nth-of-type(3):before{content:"Benefit";}
 .fab-r p:before{display:block;font:600 .56rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:8px 0 6px}}
.trust .badges{display:flex;justify-content:center;align-items:center;gap:clamp(24px,4vw,60px);padding:4px var(--gut) 40px;flex-wrap:wrap}
.trust .badges img{height:54px;width:auto;opacity:.92}
.trust .badges img.shield{height:96px;opacity:1}
@media (max-width:600px){.trust .badges img{height:38px}.trust .badges img.shield{height:74px}}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:14px}
.gallery img{width:100%;height:100%;object-fit:cover;border-radius:4px;transition:transform 1.2s var(--ease)}
.gallery img:first-child{grid-row:1/3}
.gallery img:nth-child(n+6){display:none}
.gallery{grid-template-columns:2fr 1fr 1fr}
@media (max-width:700px){.gallery{grid-template-columns:1fr 1fr;grid-template-rows:200px 140px 140px}.gallery img:first-child{grid-column:1/3;grid-row:auto}}
.pin{transform:translate(-4.5px,-50%)}.pin.big{transform:translate(-6px,-50%)}

/* ===== Home dark theme (body.theme-dark) ===== */
.theme-dark{background:#121212;color:rgba(255,255,255,.86)}
.theme-dark main section:not(.lite){background-color:#121212;color:rgba(255,255,255,.86)}
.theme-dark main section:not(.lite).bg-off,.theme-dark main section:not(.lite).statement{background-color:#1a1c1d}
.theme-dark main section.bg-ink:not(.lite){background:#0d0d0d radial-gradient(70% 120% at 0% 100%,rgba(37,80,97,.35) 0%,rgba(13,13,13,0) 60%)}
.theme-dark section:not(.lite) h1,.theme-dark section:not(.lite) h2,.theme-dark section:not(.lite) h3,.theme-dark .statement p.big,.theme-dark section:not(.lite) .card .price{color:#fff}
.theme-dark .statement p.big em{color:var(--gold)}
.theme-dark section:not(.lite) .eyebrow{color:rgba(255,255,255,.75)}
.theme-dark section:not(.lite) .lede,.theme-dark section:not(.lite) .card .city,.theme-dark section:not(.lite) .card .specs,.theme-dark section:not(.lite) .pillars p,.theme-dark section:not(.lite) .founders figcaption span,.theme-dark .statement .by{color:rgba(255,255,255,.62)}
.theme-dark main section:not(.lite) p{color:rgba(255,255,255,.78)}
.theme-dark section:not(.lite) .founders figcaption{color:#fff}
.theme-dark section:not(.lite) .sig{color:var(--gold)}
.theme-dark section:not(.lite) .link{color:#fff}
.theme-dark section:not(.lite) .card .addr,.theme-dark section:not(.lite) .card .specs b{color:#fff}
.theme-dark section:not(.lite) .card .specs{border-color:rgba(255,255,255,.14)}
.theme-dark section:not(.lite) .card .cty{color:rgba(255,255,255,.45)}
.theme-dark section:not(.lite) .card .ph{background:#1d1f20}
.theme-dark section:not(.lite) .chips a{color:#fff;border-color:rgba(255,255,255,.2);background:transparent}
.theme-dark section:not(.lite) .chips a:hover{background:#fff;color:var(--ink)}
.theme-dark section:not(.lite) .ticks li{color:rgba(255,255,255,.8)}
.theme-dark section:not(.lite) .btn:not(.light):not(.gold){background:transparent;border-color:var(--gold);color:#fff}
.theme-dark section:not(.lite) .btn.gold{color:#fff}
.theme-dark section:not(.lite) .split .media .frame,.theme-dark section:not(.lite) .founders figure:before{border-color:rgba(214,162,82,.45)}
.theme-dark section:not(.lite) .prose a,.theme-dark main section:not(.lite) p a{color:var(--gold)}
.theme-dark .trust{border-top:1px solid rgba(255,255,255,.06)}
.theme-dark .hdr.solid{background:rgba(18,18,18,.94);box-shadow:0 1px 0 rgba(214,162,82,.35)}
.theme-dark .hdr.solid .logo{color:#fff}
.theme-dark .hdr.solid .logo .w,.theme-dark .hdr.solid .logo .lpt.w{display:block}
.theme-dark .hdr.solid .logo .b,.theme-dark .hdr.solid .logo .lpt.b{display:none}
.theme-dark .hdr.solid nav a,.theme-dark .hdr.solid .tel,.theme-dark .hdr.solid .btn.light{color:#fff}
.theme-dark .hdr.solid .menu-btn span{background:#fff}
.theme-dark section:not(.lite) .q{background:#1b1b1b}
.theme-dark main section.lite{background-color:#fff;color:var(--ink)}
.theme-dark main section.lite.bg-off{background-color:var(--off,#f1f2f3)}

/* ===== LPT awards strip (Join) ===== */
.lpt-awards{display:grid;grid-template-columns:repeat(5,1fr);margin-top:56px;border-top:1px solid rgba(214,162,82,.35);border-bottom:1px solid rgba(214,162,82,.35)}
.lpt-awards .aw{padding:30px 22px;border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:8px}
.lpt-awards .aw:first-child{border-left:0;padding-left:0}
.lpt-awards b{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:2.3rem;line-height:1;color:var(--gold)}
.lpt-awards span{font-size:.86rem;color:#fff;line-height:1.45}
.lpt-awards i{font-style:normal;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5)}
@media (max-width:1000px){.lpt-awards{grid-template-columns:repeat(3,1fr)}.lpt-awards .aw:nth-child(4){border-left:0;padding-left:0}}
@media (max-width:600px){.lpt-awards{grid-template-columns:1fr 1fr}.lpt-awards .aw{border-left:0;padding-left:0}}

/* ===== Partner logos (Join) ===== */
.partners{flex-direction:column;gap:22px;padding:30px 0}
.plogos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 54px}
.plogos img{display:block;width:auto;filter:grayscale(1) contrast(1.15);opacity:.78;transition:filter .4s,opacity .4s}
.plogos img:hover,.pl-g:hover img{filter:none;opacity:1}
.pl-z{height:28px}.pl-r{height:24px}.pl-h{height:30px}.pl-k{height:58px}
.pl-g{display:flex;align-items:center;gap:10px}.pl-g img{height:26px}
.pl-g em{font:500 .62rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;font-style:normal;color:var(--ink);opacity:.72}
@media (max-width:600px){.plogos{gap:20px 32px}.pl-z{height:22px}.pl-r{height:19px}.pl-h{height:24px}.pl-k{height:40px}.pl-g img{height:21px}}

/* ===== Meet Homie (Join) ===== */
.homie-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.homie-mark{width:64px;height:64px;margin-bottom:26px}.homie-mark svg{width:100%;height:100%}
.homie-list{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:16px}
.homie-list li{position:relative;padding-left:26px;color:rgba(255,255,255,.72);line-height:1.6;font-size:.95rem}
.homie-list li:before{content:'';position:absolute;left:0;top:.6em;width:8px;height:8px;border:1px solid var(--gold);transform:rotate(45deg)}
.homie-list b{color:#fff;font-weight:600}
.homie-chat{background:#1a1c1d;border:1px solid rgba(214,162,82,.3);border-radius:18px;padding:26px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:14px}
.hc-top{font:600 .62rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.hc-top .dot{width:8px;height:8px;border-radius:50%;background:#4cc38a;box-shadow:0 0 0 4px rgba(76,195,138,.15)}
.hc-q{align-self:flex-end;max-width:82%;background:var(--teal);color:#fff;padding:12px 16px;border-radius:14px 14px 4px 14px;font-size:.9rem;line-height:1.5}
.hc-a{align-self:flex-start;max-width:90%;background:rgba(255,255,255,.06);color:rgba(255,255,255,.86);padding:14px 16px;border-radius:14px 14px 14px 4px;font-size:.9rem;line-height:1.6}
.hc-a u{text-decoration:none;color:var(--gold);border-bottom:1px solid rgba(214,162,82,.5)}.hc-a b{color:#fff}
.hc-in{margin-top:6px;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:12px 18px;color:rgba(255,255,255,.4);font-size:.86rem}
.hc-in span{color:var(--gold)}
@media (max-width:900px){.homie-grid{grid-template-columns:1fr;gap:44px}}

.prose .bio-lead{font-family:var(--serif);font-size:1.6rem;line-height:1.35;color:var(--ink);margin-bottom:22px}.prose .bio-lead em{color:var(--teal)}

.join-hero:after{background:linear-gradient(90deg,rgba(18,18,18,.92) 0%,rgba(18,18,18,.82) 38%,rgba(18,18,18,.35) 62%,rgba(18,18,18,.15) 100%),linear-gradient(180deg,rgba(18,18,18,.55) 0%,rgba(18,18,18,0) 30%,rgba(18,18,18,.6) 100%)}
.join-hero .bg{filter:saturate(.9)}

/* ===== Gold-accent rounded headshots (founders + leadership/people) ===== */
.founders{align-items:start}
.founders figure:nth-child(2){margin-top:0}
.founders figure:before{display:none}
.founders img{border-radius:20px;padding:6px;border:1px solid var(--gold);background:transparent;box-sizing:border-box}
.founders figcaption{text-align:center;margin-top:18px}
.founders figcaption:after{content:"";display:block;width:34px;height:1px;background:var(--gold);margin:12px auto 0}
.person .pimg{border-radius:20px;outline:1px solid var(--gold);outline-offset:5px;margin:6px}

/* ===== Basic agent cards (no headshot yet): branded monogram ===== */
.agent .ph .mono,.person .mono{font-weight:300;letter-spacing:.04em;color:var(--gold)}
.agent .ph:has(.mono){background:radial-gradient(120% 90% at 30% 20%,#2c5d70 0%,var(--teal) 45%,#183a47 100%);outline:1px solid var(--gold);outline-offset:5px;margin:6px}
.profile .mono-ph{aspect-ratio:4/5;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:radial-gradient(120% 90% at 30% 20%,#2c5d70 0%,var(--teal) 45%,#183a47 100%)}
.profile .mono-ph span{font-family:var(--serif);font-weight:300;font-size:clamp(4rem,9vw,7rem);color:var(--gold);line-height:1;letter-spacing:.04em}
.profile .mono-ph i{font:600 .62rem/1 var(--sans);font-style:normal;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* ===== Join: CTA side card + floating apply button ===== */
.side-cta{background:var(--ink);color:#fff;border-top:2px solid var(--gold);border-radius:4px}
.side-cta h3{color:#fff;font-size:1.65rem;line-height:1.25}
.side-cta .eyebrow{color:var(--gold)}
.side-cta .sc-sub{color:rgba(255,255,255,.7);font-size:.92rem;margin:0 0 18px}
.side-cta .btn.gold{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.side-cta .btn.gold:hover{background:#fff;border-color:#fff}
.side-cta .sc-or{margin:16px 0 0;font-size:.85rem;color:rgba(255,255,255,.65)}.side-cta .sc-or a{color:#fff;border-bottom:1px solid var(--gold);text-decoration:none}
.side-cta .sc-get{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12)}
.side-cta .sc-get .eyebrow{color:rgba(255,255,255,.55)}
.side-cta .ticks li{color:rgba(255,255,255,.82);font-size:.88rem}
.apply-fab{position:fixed;right:28px;bottom:28px;z-index:60;display:inline-flex;align-items:center;gap:12px;background:var(--gold);color:var(--ink);font:600 .7rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;padding:18px 26px;border-radius:999px;box-shadow:0 18px 40px -12px rgba(0,0,0,.45);opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .4s,transform .4s,background .3s}
.apply-fab.on{opacity:1;transform:none;pointer-events:auto}
.apply-fab:hover{background:var(--ink);color:#fff}
@media (max-width:600px){.apply-fab{left:16px;right:16px;bottom:16px;justify-content:center}}

/* ===== Recent Sales ===== */
.sold-grid .sold{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.sold .ph{position:relative;aspect-ratio:3/2;background:var(--ice);overflow:hidden}
.sold .ph img{width:100%;height:100%;object-fit:cover}
.sold-tag{position:absolute;left:14px;top:14px;background:var(--ink);color:#fff;font:600 .58rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:9px 12px;border-left:2px solid var(--gold)}
.sold .sd{padding:20px 22px 22px}
.sold h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;margin:0}
.sold .sc{margin:4px 0 12px;color:var(--muted);font-size:.85rem}
.sold .ss{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin:0}.sold .ss b{color:var(--ink)}
.sold .sa{margin:12px 0 0;font-size:.85rem;color:var(--ink)}.sold .sa a{color:var(--teal);border-bottom:1px solid var(--gold);text-decoration:none}
.sold .sl{margin:8px 0 0;font-size:.68rem;color:var(--muted)}

/* ===== Market Reports + home Market Pulse ===== */
.mk-stamp{font:600 .66rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--teal);margin:0 0 26px;display:flex;align-items:center;gap:14px}.mk-stamp:before{content:"";width:34px;height:1px;background:var(--gold)}
.mk-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.mk-card{border:1px solid var(--line);border-radius:16px;padding:30px;background:#fff}
.mk-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.mk-h h2{margin:0}.mk-h span{font-size:.7rem;color:var(--muted);text-align:right}
.mk-stats{display:grid;grid-template-columns:1fr 1fr;gap:0;border-left:1px solid var(--line);border-top:1px solid var(--line)}
.mk-stats div{padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.mk-stats b{font-family:var(--serif);font-weight:400;font-size:2rem;color:var(--ink);line-height:1.1}
.mk-stats span{font:600 .6rem/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}
.mk-stats i{font-style:normal;font-size:.75rem;color:var(--muted)}
.mk-chart{margin-top:22px}.mk-legend{display:flex;align-items:center;gap:8px;font-size:.7rem;color:var(--muted);margin-bottom:6px}
.mk-legend span{display:inline-block;width:18px;height:3px;background:var(--gold);margin-left:10px}.mk-legend .l1{margin-left:0}.mk-legend .l2{height:10px;width:10px;background:var(--ice)}
.mchart{width:100%;height:auto;display:block}.mchart .mb{fill:var(--ice)}.mchart .ml{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linejoin:round}
.mchart .md{fill:#fff;stroke:var(--gold);stroke-width:2}.mchart .mg{stroke:rgba(18,18,18,.07)}.mchart .mx,.mchart .my{font:500 10px var(--sans);fill:var(--muted)}.mchart .mx{text-anchor:middle}.mchart .my{text-anchor:end}
.mk-src{font-size:.7rem;color:var(--muted);margin:14px 0 0}
.two-col-note{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}.mk-note p{font-size:1.02rem;line-height:1.8;color:var(--ink)}
.mk-eds{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mk-ed{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--line);border-top:2px solid var(--gold);text-decoration:none;color:var(--ink);transition:background .3s}
.mk-ed:hover{background:var(--off)}.mk-ed span{font:600 .6rem/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--teal)}.mk-ed b{font-family:var(--serif);font-weight:400;font-size:1.5rem}.mk-ed i{font-style:normal;font-size:.8rem;color:var(--muted)}
.mk-sub{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.pulse{background:var(--teal);color:#fff;padding:44px 0}
.pulse-in{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:40px;align-items:center}
.pl-h .eyebrow{color:var(--gold);margin:0 0 10px}.pl-d{font-size:.78rem;color:rgba(255,255,255,.7);margin:0 0 14px}.pulse .link{color:#fff}
.pl-m h3{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:0 0 12px;color:#fff}
.pl-s{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.18)}
.pl-s div{padding:4px 14px;border-right:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column;gap:6px}
.pl-s b{font-family:var(--serif);font-weight:400;font-size:1.7rem;color:var(--gold);line-height:1}.pl-s span{font:600 .56rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.theme-dark main section.pulse{background:var(--teal)}
@media (max-width:1000px){.mk-two,.mk-sub,.two-col-note{grid-template-columns:1fr;gap:32px}.mk-eds{grid-template-columns:1fr 1fr}.pulse-in{grid-template-columns:1fr;gap:26px}}
@media (max-width:560px){.mk-eds{grid-template-columns:1fr}.mk-card{padding:20px}.mk-stats b{font-size:1.6rem}.pl-s b{font-size:1.35rem}}
/* nav fit with Market item */
@media (max-width:1560px){.hdr .tel{display:none}.hdr nav{gap:22px}.hdr nav a{letter-spacing:.16em}}
@media (max-width:1320px){.hdr nav{gap:15px}.hdr nav a{letter-spacing:.1em;font-size:.66rem}}
@media (max-width:980px){.hdr nav,.hdr .tel{display:none}.menu-btn{display:block}}
/* Header overflow guard: logo never shrinks; JS adds .compact when nav would collide (Safari/zoom/font widths) */
.hdr .logo{flex-shrink:0}.hdr .cta{flex-shrink:0}
.hdr nav{min-width:0}
.hdr.tight nav{gap:12px}.hdr.tight nav a{letter-spacing:.06em;font-size:.64rem}.hdr.tight .tel{display:none}
.hdr.tighter .bar{gap:14px}.hdr.tighter .logo{gap:12px}.hdr.tighter nav{gap:10px}.hdr.tighter nav a{letter-spacing:.03em;font-size:.6rem}.hdr.tighter .btn{padding-left:16px;padding-right:16px}
.hdr.compact nav,.hdr.compact .tel{display:none}.hdr.compact .menu-btn{display:block}
/* larger nav type (Justin 2026-10-29: links too small); JS fit() steps down via .tight/.tighter only when needed */
.hdr nav{gap:24px}.hdr nav a{font-size:.78rem;letter-spacing:.12em}.hdr .tel{display:none}
@media (max-width:1560px){.hdr nav{gap:24px}.hdr nav a{font-size:.78rem;letter-spacing:.12em}}
@media (max-width:1320px){.hdr nav{gap:20px}.hdr nav a{font-size:.76rem;letter-spacing:.1em}}
@media (max-width:1180px){.hdr nav{gap:16px}.hdr nav a{font-size:.72rem;letter-spacing:.08em}}
.hdr.tight nav{gap:13px}.hdr.tight nav a{font-size:.68rem;letter-spacing:.05em}
.hdr.tighter nav{gap:10px}.hdr.tighter nav a{font-size:.64rem;letter-spacing:.03em}
.hdr.notel .tel{display:none}

/* broken IDX photo fallback (Ylopo reissues photo URLs on MLS updates) */
.ph.noimg{background:linear-gradient(150deg,#255061 0%,#121212 100%);position:relative;min-height:220px}
.ph.noimg::after{content:"ASCEND";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#d6a252;font-family:'Cormorant Garamond',serif;letter-spacing:.35em;font-size:22px;opacity:.85}
