picture{display:contents}
:root{--bg:#0B0B0C;--bg2:#121214;--bg3:#18181B;--ink:#F3EFE6;--body:#D9D4C9;--mute:#A39E93;--line:#26262B;--gold:#C9A24A;--gold2:#E6CB7C;--gold3:#8C6A1F;--gold-soft:rgba(201,162,74,.12);--paper:#0B0B0C;--sand:#121214;--sand2:#1E1E22;--navy:#C9A24A;--navy2:#E6CB7C;--ok:#7ED39A;--bad:#F08A7A}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--body);font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:17.5px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;color:var(--ink);line-height:1.12;margin:0 0 14px;text-wrap:balance;font-weight:600}
h1{font-size:clamp(38px,5vw,60px);letter-spacing:.005em}h2{font-size:clamp(30px,3.6vw,42px)}h3{font-size:24px}
h3 a{color:var(--ink);text-decoration:none}h3 a:hover{color:var(--gold2)}
p{margin:0 0 16px}a{color:var(--gold2)}a:hover{color:#fff}
.wrap{max-width:1260px;margin:0 auto;padding:0 22px}
/* desktop with a mouse: no page scroll bar (wheel, trackpad and keys still scroll) */
@media (min-width:961px) and (hover:hover) and (pointer:fine){html{scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}}
.worthph{display:block}
.worthbtn.pinned{position:fixed;z-index:45;margin:0;max-width:none;box-shadow:0 14px 34px rgba(0,0,0,.6),0 0 0 1px rgba(230,203,124,.35);animation:worthPin .35s cubic-bezier(.2,.8,.2,1)}
@keyframes worthPin{from{opacity:.4;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.worthbtn.pinned{animation:none}}
.measure{max-width:70ch}
section{padding:72px 0;border-top:1px solid var(--line)}
h2 em{font-style:italic;color:var(--gold2);font-weight:500}
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 auto 26px;max-width:320px}
section.hero{border-top:0}
.kicker{display:inline-block;color:var(--gold2);font-weight:700;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}
.btn{display:inline-block;text-decoration:none;font-weight:700;font-size:16px;letter-spacing:.02em;padding:14px 26px;border-radius:6px;border:1.5px solid var(--gold);background:transparent;color:var(--gold2);transition:background .2s,color .2s,transform .2s}
.btn:hover{background:var(--gold-soft);color:#fff;transform:translateY(-1px)}
.btn.gold{background:linear-gradient(135deg,var(--gold2) 0%,var(--gold) 55%,var(--gold3) 100%);border-color:transparent;color:#0B0B0C}
.btn.gold:hover{filter:brightness(1.08);color:#0B0B0C}
.btn.ghost{background:transparent}
.cta-row{display:flex;flex-wrap:wrap;gap:16px;margin:26px 0 8px}
/* header */
.header{position:sticky;top:0;z-index:50;background:#000;border-bottom:0}
.nav{border-bottom:1px solid var(--gold3)}
.nav{display:flex;align-items:center;gap:18px;padding:6px 22px;max-width:1320px;margin:0 auto}
.brand{margin-right:auto}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}
.brand img{height:74px;width:auto;display:block}
.menu{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}
/* the sms: link only works on a phone; on a desktop bar it just crowds the row */
@media(min-width:961px){.menu li:has(>.txt){display:none}.menu{flex-wrap:nowrap}.menu a{white-space:nowrap}}
@media(min-width:961px) and (max-width:1440px){.menu{gap:15px}.menu a{font-size:14.5px}}
.menu a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15.5px;position:relative}
.menu a:not(.call):not(.lang)::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1.5px;background:var(--gold);transition:width .25s}
.menu a:not(.call):not(.lang):hover::after{width:100%}
.menu a.call{background:linear-gradient(135deg,var(--gold2),var(--gold) 60%,var(--gold3));color:#0B0B0C;padding:10px 16px;border-radius:6px;white-space:nowrap}
.menu a.txt{border:1.5px solid var(--gold);color:var(--gold2);padding:9px 14px;border-radius:6px;white-space:nowrap}
.menu a.lang{border:1px solid var(--line);padding:7px 12px;border-radius:999px;font-size:13.5px;color:var(--mute)}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px}
.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{display:block;width:24px;height:2px;background:var(--gold2);border-radius:2px;position:relative;content:""}
.menu-toggle span::before{position:absolute;top:-8px}.menu-toggle span::after{position:absolute;top:8px}
@media(max-width:960px){.nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;position:relative}.nav{padding:10px 12px;gap:8px;min-height:96px}.langsw{grid-column:1;grid-row:1;justify-self:start;padding:2px;border-radius:999px}.langsw a{padding:4px 6px;font-size:9px;line-height:1;letter-spacing:0;font-weight:700}.langsw .knob{top:2px;left:2px;width:calc(50% - 2px);height:calc(100% - 4px)}.brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;z-index:1}.brand img{height:80px;max-width:calc(100vw - 180px)}.menu-toggle{display:block;grid-column:3;grid-row:1;justify-self:end;padding:6px}.menu{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#000;flex-direction:column;align-items:flex-start;padding:18px 22px 22px;gap:16px;border-bottom:1px solid var(--line)}.menu.open{display:flex}}
/* hero */
.hero{background:radial-gradient(1000px 480px at 15% 0%,rgba(201,162,74,.22),transparent 62%),radial-gradient(600px 300px at 90% 100%,rgba(201,162,74,.10),transparent 70%),var(--bg);padding:60px 0 64px;border-bottom:1px solid var(--gold3)}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}
.hero .sub{font-size:clamp(18px,2vw,21px);color:var(--body);max-width:58ch}
.hero-photo img{width:100%;border-radius:10px;display:block;height:auto}
.hero-photo .frame{max-width:400px;margin-left:auto}
@media(max-width:840px){.hero-photo .frame{margin:0 auto}}
.hero-note{color:var(--mute);font-size:15px;margin-top:12px}
.trust{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:24px;font-size:15px;color:var(--mute)}
.trust b{color:var(--gold2)}.trust a{text-decoration:none}
@media(max-width:840px){.hero .wrap{grid-template-columns:1fr}.hero-photo img{margin:0 auto}}
/* blocks */
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:840px){.g2,.g3{grid-template-columns:1fr}}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:26px;position:relative}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),transparent)}
.card{border-color:#33301F}
.card h3{margin-top:4px}
.card.sand{background:var(--bg3)}
.stat{font-family:"Cormorant Garamond",Georgia,serif;font-size:40px;color:var(--gold2);font-weight:600;display:block;line-height:1;margin-bottom:8px}
.list{padding-left:22px}.list li{margin-bottom:10px}
.check{list-style:none;padding:0}.check li{padding-left:30px;position:relative;margin-bottom:12px}
.check li::before{content:"";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--gold)}
.check li::after{content:"";position:absolute;left:6px;top:9px;width:5px;height:9px;border:solid var(--gold2);border-width:0 2px 2px 0;transform:rotate(45deg)}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg2);margin:18px 0}
table{border-collapse:collapse;width:100%;font-size:16.5px}th{text-align:left;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:14px 16px;border-bottom:1px solid var(--line)}
td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--body)}tr:last-child td{border-bottom:none}td:first-child{color:var(--ink);font-weight:600}
.band{background:var(--bg2);border-top:1px solid var(--gold3);border-bottom:1px solid var(--gold3)}.band h2,.band h3{color:var(--ink)}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:600;font-size:19px;color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif;font-size:23px}
.faq summary::marker{color:var(--gold)}.faq details p{margin:10px 0 0;max-width:72ch}
.notice{background:var(--gold-soft);border-left:3px solid var(--gold);padding:14px 18px;border-radius:0 6px 6px 0;margin:18px 0;color:var(--ink)}
/* form */
.lead{background:var(--bg2)}
.form{display:grid;gap:14px;max-width:640px}
.form label{display:block;font-weight:600;font-size:14.5px;margin-bottom:6px;color:var(--ink);letter-spacing:.02em}
.form input,.form textarea{width:100%;font:inherit;font-size:17px;padding:13px 14px;border:1px solid #3A3A40;border-radius:6px;background:#0B0B0C;color:var(--ink)}
.form input:focus,.form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.form .row{grid-template-columns:1fr}}
.form .btn{background:linear-gradient(135deg,var(--gold2),var(--gold) 60%,var(--gold3));border-color:transparent;color:#0B0B0C;cursor:pointer;font:inherit;font-weight:700}
.consent{font-size:13.5px;color:var(--mute);line-height:1.55}
.smsbox{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--mute);line-height:1.5;cursor:pointer}.smsbox input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:var(--gold)}
.msg{font-weight:700;margin-top:8px}.msg.ok{color:var(--ok)}.msg.bad{color:var(--bad)}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
/* footer */
.footer{background:#070708;border-top:1px solid var(--gold3);padding:52px 0 28px;font-size:15.5px;color:var(--body)}
.footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.15fr 1fr;gap:26px}
@media(max-width:840px){.footer .cols{grid-template-columns:1fr 1fr}}@media(max-width:520px){.footer .cols{grid-template-columns:1fr}}
.footer span a,.lede2 a{text-decoration:underline;text-underline-offset:2px}
.footer h4,.footer h2.fh{margin:0 0 12px;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-family:inherit;font-weight:700;line-height:1.4}
.footer ul{list-style:none;padding:0;margin:0}.footer li{margin-bottom:9px}.footer a{color:var(--body);text-decoration:none}.footer a:hover{color:var(--gold2)}
.agentcard .n{font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;font-weight:600;color:var(--ink);display:block}
.agentcard .b{font-size:17px;font-weight:700;color:var(--gold2);display:block;margin:4px 0 8px}
.legal{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);color:var(--mute);font-size:14.5px;line-height:1.65}
.legal .broker{font-size:18px;font-weight:700;color:var(--ink);display:block;margin-bottom:6px}
.legal a{color:var(--gold2)}
.legal a.quietlink{color:var(--mute);text-decoration:none;margin-left:6px}.legal a.quietlink:hover{opacity:1}
.eho{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:var(--body)}
.eho svg{width:26px;height:26px}
.footlogo{text-align:center;margin-top:34px}.footlogo img{height:110px;width:auto;opacity:.95}
.footlogo .office{display:block;margin-top:10px;color:var(--mute);font-size:14.5px;letter-spacing:.06em}
.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#000;color:#fff;padding:8px;z-index:100}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* the app: /app/ page and the "Get the app" pill (Oct 19 2026) */
#apApp .sh{display:none}#apApp.s .sh{display:inline}#apApp.s .l{display:none}
.app-hero .app-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.app-hero h1 em{font-style:normal;color:var(--gold2)}
.app-get{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:24px 0 10px}
.app-badge img{display:block;height:60px;width:auto}
.app-qr{display:flex;align-items:center;gap:12px;color:var(--mute);font-size:14px;max-width:260px}
.app-qr img{background:#fff;border-radius:10px;padding:6px;flex:0 0 112px}
.app-fine{color:var(--mute);font-size:14px}
.app-phone img{display:block;width:100%;max-width:340px;height:auto;margin:0 auto;border-radius:28px;box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 1px rgba(230,203,124,.25)}
.app-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.app-feat{background:var(--bg2);border:1px solid var(--line);border-radius:16px;padding:18px 18px 8px}
.app-feat h3{margin:0 0 6px;color:var(--gold2);font-size:18px}
.app-feat p{margin:0 0 10px;color:var(--body);font-size:15.5px;line-height:1.55}
.app-shots{display:flex;gap:16px;overflow-x:auto;padding:10px 2px 18px;scroll-snap-type:x mandatory}
.app-shots picture{flex:0 0 230px;scroll-snap-align:start}
.app-shots img{display:block;width:230px;height:auto;border-radius:18px;border:1px solid rgba(230,203,124,.25)}
.app-end{text-align:center}.app-end .app-get{justify-content:center}
.app-card{display:none;grid-column:1/-1;text-decoration:none;color:inherit;background:linear-gradient(135deg,#1a160c,#0f0f11);border:1px solid var(--gold3);border-radius:16px;padding:16px 18px}
.app-card .in{display:flex;align-items:center;gap:16px}.app-card img.ic{width:56px;height:56px;border-radius:14px;flex:0 0 56px}
.app-card b{display:block;color:var(--gold2);font-size:17px}.app-card span{color:var(--body);font-size:14.5px}
.app-card .qr{margin-left:auto;background:#fff;border-radius:8px;padding:4px;width:84px;height:84px}
.app-card.on{display:block}
.app-mini{display:flex;align-items:center;gap:16px;margin:18px 0 6px;padding:16px 18px;text-decoration:none;color:inherit;background:linear-gradient(135deg,#1a160c,#0f0f11);border:1px solid var(--gold3);border-radius:16px}
.app-mini .ic{width:52px;height:52px;border-radius:13px;flex:0 0 52px}
.app-mini .tx{flex:1;min-width:0}.app-mini b{display:block;color:var(--gold2);font-size:17px;margin-bottom:3px}
.app-mini .tx>span{display:block;color:var(--body);font-size:14.5px;line-height:1.5}
.app-mini .bd{display:block;height:36px;width:auto;margin-top:10px}
.app-mini .qr{flex:0 0 120px;text-align:center}.app-mini .qr img{background:#fff;border-radius:8px;padding:4px;display:block;margin:0 auto 6px}
.app-mini .qr small{color:var(--mute);font-size:11.5px;line-height:1.35;display:block}
.app-mini.off{display:none}
@media(max-width:840px){.app-mini .qr{display:none}.app-mini{align-items:flex-start}}
@media(max-width:840px){.app-hero .app-grid{grid-template-columns:1fr}.app-phone img{max-width:240px}.app-feats{grid-template-columns:1fr}.app-qr{display:none}.app-card .qr{display:none}}

/* gold additions */
.lic{display:block;text-align:center;color:var(--mute);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:12px}
.lic b{color:var(--gold2);font-weight:600}
.cta3{display:flex;flex-wrap:wrap;gap:18px;margin:28px 0 8px}
.cta3 .btn{min-width:150px;text-align:center}
.logoband{background:#070708;border-top:1px solid var(--gold3);border-bottom:1px solid var(--gold3);text-align:center;padding:56px 0}
.logoband img{width:min(680px,92vw);height:auto;display:block;margin:0 auto 18px}
.logoband p{color:var(--body);max-width:60ch;margin:0 auto 18px}
.capture{background:linear-gradient(180deg,#121214,#0B0B0C);border:1px solid var(--gold3);border-radius:12px;padding:30px;position:relative}
.capture::before{content:"";position:absolute;inset:0;border-radius:12px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(230,203,124,.12)}
.capture h3{font-size:28px;margin-bottom:6px}
.capture .form{max-width:none}
.mini{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}
@media(max-width:760px){.mini{grid-template-columns:1fr}}
.mini .btn{padding:13px 22px}
.calc{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
@media(max-width:840px){.calc{grid-template-columns:1fr}}
.calc label{display:block;font-size:14px;color:var(--ink);font-weight:600;margin-bottom:6px}
.calc input{width:100%;font:inherit;font-size:17px;padding:12px 13px;border:1px solid #3A3A40;border-radius:6px;background:#0B0B0C;color:var(--ink)}
.calc .fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.calc .fields{grid-template-columns:1fr}}
.calc .out{background:var(--bg2);border:1px solid var(--gold3);border-radius:12px;padding:26px}
.calc .big{font-family:"Cormorant Garamond",Georgia,serif;font-size:56px;color:var(--gold2);font-weight:600;line-height:1}
.calc .out small{color:var(--mute);display:block;margin-top:6px}
.calc .row2{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;font-size:15.5px}
.calc .row2:last-child{border-bottom:0}
.seofoot p{color:var(--mute);font-size:15.5px;max-width:none;columns:2;column-gap:40px}
@media(max-width:840px){.seofoot p{columns:1}}
.seofoot a{color:var(--gold2)}
.final{background:radial-gradient(800px 400px at 50% 100%,rgba(201,162,74,.18),transparent 65%),#070708;text-align:center}
.final h2{font-size:clamp(34px,4.4vw,52px)}
.final .cta3{justify-content:center}
.stickybar{display:none}
@media(max-width:840px){.stickybar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(7,7,8,.96);border-top:1px solid var(--gold3);backdrop-filter:blur(8px)}.stickybar a{text-align:center;font-weight:700;font-size:15px;text-decoration:none;padding:12px 6px;border-radius:6px;border:1.5px solid var(--gold);color:var(--gold2)}.stickybar a.gold{background:linear-gradient(135deg,var(--gold2),var(--gold) 60%,var(--gold3));color:#0B0B0C;border-color:transparent}body{padding-bottom:70px}}

/* ---------- buttons: shine, lift, pulse ---------- */
.btn{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,background .2s,color .2s}
.btn::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-20deg);transition:left .7s ease;pointer-events:none}
.btn:hover::after,.btn:focus-visible::after{left:130%}
.btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(201,162,74,.28)}
.btn.gold{box-shadow:0 6px 22px rgba(201,162,74,.38)}
.btn.pulse{animation:goldPulse 2.8s ease-in-out infinite}
@keyframes goldPulse{0%,100%{box-shadow:0 0 0 0 rgba(230,203,124,.5),0 6px 22px rgba(201,162,74,.38)}55%{box-shadow:0 0 0 12px rgba(230,203,124,0),0 6px 22px rgba(201,162,74,.38)}}
.btn:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
/* ---------- homepage hero ---------- */
.hh{background:radial-gradient(1100px 520px at 10% -10%,rgba(201,162,74,.24),transparent 62%),radial-gradient(700px 360px at 95% 110%,rgba(201,162,74,.12),transparent 70%),#0B0B0C;padding:34px 0 66px;border-bottom:1px solid var(--gold3)}
.hh .wrap{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:center}
.hh h1{min-width:0}
.hh-copy{container-type:inline-size}
@media(max-width:880px){.hh .wrap{grid-template-columns:1fr;gap:34px}.hh h1 .bbs{font-size:clamp(23px,6.4vw,46px)}.hh h1 .top{font-size:clamp(34px,8.6vw,58px)}}
.hh .tag{display:inline-block;border:1px solid var(--gold);color:var(--gold2);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:7px 14px;border-radius:999px;margin-bottom:20px;animation:rise .6s ease both,tagGlow 3s ease-in-out 1s infinite}
@keyframes tagGlow{0%,100%{box-shadow:0 0 0 0 rgba(230,203,124,0)}50%{box-shadow:0 0 18px 0 rgba(230,203,124,.25)}}
.hh h1{margin:0 0 22px;line-height:1.02}
.hh h1 .top{display:block;font-size:clamp(34px,5vw,70px);letter-spacing:.07em;text-transform:uppercase;color:#F7F2E6;white-space:normal}
.hh h1 .wd{display:inline-block;white-space:nowrap}
.hh h1 .l{display:inline-block;opacity:0;transform:translateY(.45em) rotate(4deg);filter:blur(6px);animation:letterIn .75s cubic-bezier(.2,.75,.2,1) forwards;animation-delay:calc(var(--i) * 42ms)}
@keyframes letterIn{to{opacity:1;transform:none;filter:none}}
.hh h1 .bbs{display:block;position:relative;margin-top:14px;font-family:"Playfair Display","Cormorant Garamond",Georgia,serif;font-size:clamp(28px,3.5vw,48px);letter-spacing:.1em;white-space:nowrap;text-transform:uppercase;font-style:italic;font-weight:800}
.hh h1 .bbs .w{display:inline-block;position:relative;z-index:1;margin-right:.3em;background:linear-gradient(90deg,#8C6A1F,#E6CB7C 25%,#FFF1C4 50%,#E6CB7C 75%,#8C6A1F);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#E6CB7C;opacity:0;animation:bbsPop .7s ease forwards,bbsShine 4s linear infinite;animation-delay:var(--d),var(--d)}
@keyframes bbsPop{from{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:none}}
@keyframes bbsShine{to{background-position:220% center}}
.hh h1 .sp{position:absolute;width:5px;height:5px;border-radius:50%;background:#FFE7A3;box-shadow:0 0 10px #E6CB7C;opacity:0;pointer-events:none;animation:spFloat 4.6s ease-in-out infinite}
@keyframes spFloat{0%{opacity:0;transform:translateY(10px) scale(.5)}25%{opacity:.9}70%{opacity:.4}100%{opacity:0;transform:translateY(-28px) scale(1)}}
.hh .lede{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(24px,2.5vw,31px);color:var(--ink);line-height:1.3;margin:0 0 14px;animation:rise .7s ease 1.3s both}
.hh .rot{color:var(--gold2);font-style:italic;font-weight:600;display:inline-block;transition:opacity .35s ease,transform .35s ease;border-bottom:1px solid rgba(230,203,124,.45)}
.hh .rot.out{opacity:0;transform:translateY(6px)}
.hh .lede2{font-size:18px;color:var(--body);max-width:60ch;animation:rise .7s ease 1.45s both}
.hh .cta3 .btn{animation:rise .6s ease both}
.hh .cta3 .btn:nth-child(1){animation:rise .6s ease 1.6s both,goldPulse 2.8s ease-in-out 2.4s infinite}
.hh .cta3 .btn:nth-child(2){animation-delay:1.72s}.hh .cta3 .btn:nth-child(3){animation-delay:1.84s}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hh-photo{margin:0;justify-self:end;animation:rise .9s ease .4s both}
.hh-photo img{width:100%;max-width:400px;display:block;border-radius:10px;box-shadow:0 26px 60px rgba(0,0,0,.65),0 0 0 1px #3A3220;height:auto}
@media(max-width:880px){.hh-photo{justify-self:center}}
/* ---------- section heads, grids ---------- */
.shead{margin-bottom:30px}.shead.center{text-align:center}.shead.center .measure{margin:0 auto}
.h3big{font-size:clamp(24px,2.6vw,32px)}
.vcenter{align-items:center}
.svcs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.svcs.two{grid-template-columns:repeat(2,1fr)}.svcs.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.svcs{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.svcs,.svcs.two,.svcs.three{grid-template-columns:1fr}}
.svc{display:block;text-decoration:none;background:linear-gradient(180deg,#141416,#0E0E10);border:1px solid #33301F;border-radius:12px;padding:26px 24px;color:var(--body);position:relative;transition:transform .3s ease,border-color .3s,box-shadow .3s}
.svc.pic{padding:0;overflow:hidden}
.svc .svcimg{display:block;position:relative;aspect-ratio:8/3;overflow:hidden;border-bottom:1px solid var(--gold3)}
.svc .svcimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.svc .svcimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,12,0) 40%,rgba(11,11,12,.75) 100%)}
.svc:hover .svcimg img{transform:scale(1.06)}
.svc .svcbody{display:block;padding:22px 24px 26px}
.svc.pic h3{margin-top:0}
.svc::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),transparent);opacity:.8}
.svc:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 18px 40px rgba(0,0,0,.55),0 0 30px rgba(201,162,74,.12);color:var(--body)}
.svc svg{width:46px;height:46px;fill:none;stroke:var(--gold2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px}
.svc h3{margin:0 0 8px}.svc p{margin:0 0 16px;font-size:16px}
.svc .go{color:var(--gold2);font-weight:700;font-size:15px}
.svc:hover .go{color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.chips a{border:1px solid #3A3220;color:var(--ink);text-decoration:none;padding:8px 15px;border-radius:999px;font-size:14.5px;transition:all .2s}
.chips a:hover{border-color:var(--gold);color:var(--gold2);background:var(--gold-soft)}
.homesband{background:radial-gradient(700px 300px at 85% 30%,rgba(201,162,74,.10),transparent 70%),var(--bg)}
/* reasons */
.reasons{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:18px}
.reason{display:grid;grid-template-columns:70px 1fr;gap:20px;align-items:start;background:#101012;border:1px solid var(--line);border-radius:12px;padding:24px;transition:border-color .3s}
.reason:hover{border-color:var(--gold3)}
.reason .num{font-family:"Cormorant Garamond",Georgia,serif;font-size:54px;line-height:.9;font-weight:600;background:linear-gradient(180deg,#FFF1C4,#C9A24A 60%,#8C6A1F);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold2)}
.reason h3{margin:0 0 8px}.reason p{margin:0 0 12px}
.pill{display:inline-block;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold2);border:1px solid #3A3220;border-radius:999px;padding:5px 12px}
@media(max-width:600px){.reason{grid-template-columns:1fr;gap:6px}}
/* builders */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:980px){.bgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.bgrid{grid-template-columns:1fr}}
.bcard{display:block;text-decoration:none;background:#0B0B0C;border:1px solid #33301F;border-radius:12px;padding:24px;color:var(--body);transition:transform .3s,border-color .3s}
.bcard:hover{transform:translateY(-4px);border-color:var(--gold);color:var(--body)}
.bcard h3{margin:10px 0 4px}.bcard .barea{display:block;color:var(--mute);font-size:14px;margin-bottom:10px}
.bcard .bprice{display:inline-block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#0B0B0C;background:linear-gradient(135deg,var(--gold2),var(--gold));padding:4px 10px;border-radius:4px;font-weight:700}
.bcard p{font-size:16px}.bcard .go{color:var(--gold2);font-weight:700;font-size:15px}
/* steps */
.steps{list-style:none;padding:0;margin:8px 0 0}
.steps li{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.steps li:last-child{border-bottom:0}
.steps b{font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;color:var(--gold2);font-weight:600;line-height:1}
.steps h3{margin:0 0 4px;font-size:22px}.steps p{margin:0;font-size:16.5px}
@media(min-width:841px){.sticky-col{position:sticky;top:110px;align-self:start}}
/* calculator with gold sliders */
.calc2{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;max-width:1080px;margin:0 auto}
@media(max-width:840px){.calc2{grid-template-columns:1fr}}
.ce-card,.ce-out{background:#101012;border:1px solid #33301F;border-radius:14px;padding:28px}
.ce-row{margin-bottom:20px}
.ce-head{display:flex;justify-content:space-between;align-items:baseline}
.ce-lbl{font-weight:700;color:var(--ink);font-size:15px}
.ce-val{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;color:var(--gold2);font-size:24px}
.calc2 input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:34px;background-color:transparent;background-image:linear-gradient(90deg,#8C6A1F,#E6CB7C),linear-gradient(#2A2A2E,#2A2A2E);background-repeat:no-repeat,no-repeat;background-size:50% 6px,100% 6px;background-position:left center,left center;outline:0;margin:4px 0;cursor:pointer}.calc2 input[type=range]::-webkit-slider-runnable-track{height:34px;background:transparent}.calc2 input[type=range]::-moz-range-track{height:6px;background:transparent}
.calc2 input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#FFF1C4,#C9A24A 60%,#8C6A1F);box-shadow:0 0 0 4px #0B0B0C,0 0 14px rgba(230,203,124,.5);cursor:pointer}
.calc2 input[type=range]::-moz-range-thumb{width:22px;height:22px;border:0;border-radius:50%;background:#E6CB7C;box-shadow:0 0 0 4px #0B0B0C}
.calc2 input[type=range]:focus-visible{outline:2px solid var(--gold2);outline-offset:4px}
.ce-out .big{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:64px;font-weight:600;line-height:1;margin:6px 0 18px;background:linear-gradient(180deg,#FFF1C4,#C9A24A 65%,#8C6A1F);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold2)}
.row2{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:16px}.row2 b{color:var(--ink)}
/* cities */
.city-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media(max-width:900px){.city-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){.city-grid{grid-template-columns:repeat(2,1fr)}}
.city{display:block;text-decoration:none;text-align:center;background:#101012;border:1px solid var(--line);border-radius:10px;padding:18px 10px;transition:transform .2s,border-color .2s}
.city:hover{transform:translateY(-3px);border-color:var(--gold)}
.city b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;color:var(--gold2);font-weight:600}
.city span{display:block;font-size:13px;color:var(--mute);margin-top:4px}
/* browse */
.browse{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-bottom:28px}
@media(max-width:840px){.browse{grid-template-columns:repeat(2,1fr)}}
.browse h4,.browse h3.fh{margin:0 0 10px;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);font-family:inherit;font-weight:700;line-height:1.4}
.browse ul{list-style:none;padding:0;margin:0}.browse li{margin-bottom:8px}.browse a{color:var(--body);text-decoration:none}.browse a:hover{color:var(--gold2)}
.seop{color:var(--mute);font-size:15.5px;columns:2;column-gap:40px}@media(max-width:840px){.seop{columns:1}}
/* final contact card */
.final .ccard{max-width:760px;margin:0 auto;text-align:center;background:linear-gradient(180deg,#121214,#0B0B0C);border:1px solid var(--gold3);border-radius:16px;padding:40px 30px;box-shadow:0 0 60px rgba(201,162,74,.10)}
.clogo{width:220px;height:auto;display:block;margin:0 auto 18px;opacity:.95}
.final .cta3{justify-content:center}
/* capture success link */
.msg a{color:var(--gold2);margin-left:6px}
/* scroll reveal, only for sections below the fold at load */
.rv.pre{opacity:0;transform:translateY(28px)}
.rv{transition:opacity .8s ease,transform .8s ease}
@media(prefers-reduced-motion:reduce){.hh h1 .l,.hh h1 .bbs .w{opacity:1!important;transform:none!important;filter:none!important;animation:none!important}.hh h1 .bbs .w{-webkit-text-fill-color:#E6CB7C}.rv.pre{opacity:1;transform:none}.btn.pulse,.hh .tag{animation:none!important}}
@media(max-width:400px){.brand img{height:72px}}
@media(max-width:600px){.cta3{flex-direction:column;align-items:stretch}.cta3 .btn{text-align:center}}
.capture .mini{grid-template-columns:1fr;gap:14px}.capture .mini .btn{justify-self:start}

/* ---------- language switch ---------- */
.langsw{position:relative;display:inline-flex;align-items:center;padding:3px;border:1px solid var(--gold3);border-radius:999px;background:#0E0E10}
.langsw a{position:relative;z-index:1;display:block;padding:9px 17px;border-radius:999px;font-size:14px;font-weight:800;letter-spacing:.1em;color:var(--mute);text-decoration:none;transition:color .3s ease}
.langsw a.on{color:#0B0B0C}
.langsw a:hover{color:var(--gold2)}
.langsw a.on:hover{color:#0B0B0C}
.langsw .knob{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);border-radius:999px;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));box-shadow:0 2px 12px rgba(201,162,74,.45);transition:transform .4s cubic-bezier(.4,1.4,.5,1)}
.langsw .knob.es{transform:translateX(100%)}
.langsw:hover .knob{filter:brightness(1.1)}
/* ---------- gold frame on the portrait ---------- */
.hh-photo{position:relative;padding:0}
.frame{display:block;position:relative;padding:11px;border-radius:16px;background:linear-gradient(135deg,#6E5316 0%,#C9A24A 18%,#FFF1C4 32%,#C9A24A 46%,#6E5316 60%,#E6CB7C 78%,#8C6A1F 100%);background-size:300% 300%;animation:frameFlow 12s ease-in-out infinite;box-shadow:0 24px 60px rgba(0,0,0,.65),0 0 40px rgba(201,162,74,.18)}
@keyframes frameFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.frame::after{content:"";position:absolute;inset:0;border-radius:16px;pointer-events:none;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);background-size:260% 100%;animation:frameShine 6.5s ease-in-out infinite;mix-blend-mode:overlay}
@keyframes frameShine{0%{background-position:160% 0}55%,100%{background-position:-60% 0}}
.frame img{display:block;width:100%;height:auto;border-radius:8px;position:relative;z-index:1;box-shadow:0 0 0 1px rgba(0,0,0,.6)}
.hh-photo:hover .hh-photo:hover .frame{box-shadow:0 28px 70px rgba(0,0,0,.7),0 0 60px rgba(201,162,74,.3)}
.frame,@media(prefers-reduced-motion:reduce){.frame,.frame::after{animation:none}.langsw .knob{transition:none}}
@media(max-width:960px){
.langsw{padding:2px}
.langsw a{padding:7px 10px;font-size:12.5px;line-height:1;letter-spacing:.04em;font-weight:800}
.langsw .knob{top:2px;left:2px;width:calc(50% - 2px);height:calc(100% - 4px)}
}

/* ---------- shinier gold everywhere ---------- */
@keyframes goldSheen{0%{background-position:0% 50%}100%{background-position:200% 50%}}
.btn.gold{background:linear-gradient(100deg,#8C6A1F 0%,#C9A24A 18%,#FFF3C9 34%,#E6CB7C 46%,#C9A24A 62%,#FFF3C9 78%,#8C6A1F 100%);background-size:200% 100%;animation:goldSheen 7s linear infinite;color:#120E03;font-weight:800;text-shadow:0 1px 0 rgba(255,255,255,.35);box-shadow:0 8px 26px rgba(201,162,74,.45),inset 0 1px 0 rgba(255,255,255,.55),inset 0 -1px 0 rgba(0,0,0,.25)}
.btn.gold:hover{filter:brightness(1.06) saturate(1.05)}
.btn:not(.gold){border-color:#C9A24A;box-shadow:inset 0 0 0 1px rgba(255,243,201,.14)}
.btn:not(.gold):hover{background:rgba(201,162,74,.14);border-color:#FFF3C9}
.menu a.call{background:linear-gradient(100deg,#8C6A1F,#C9A24A 20%,#FFF3C9 38%,#E6CB7C 52%,#C9A24A 70%,#8C6A1F 100%);background-size:200% 100%;animation:goldSheen 7s linear infinite;color:#120E03;font-weight:800;box-shadow:0 6px 18px rgba(201,162,74,.4),inset 0 1px 0 rgba(255,255,255,.5)}
.menu a.txt{border-color:#C9A24A;color:#FFF3C9}
.kicker{background:linear-gradient(100deg,#C9A24A,#FFF3C9 45%,#E6CB7C 60%,#C9A24A);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold2);animation:goldSheen 9s linear infinite}
.hh .tag{border-color:#C9A24A;background:linear-gradient(180deg,rgba(201,162,74,.16),rgba(201,162,74,.04));color:#FFF3C9;box-shadow:inset 0 1px 0 rgba(255,243,201,.25)}
.bcard .bprice{background:linear-gradient(100deg,#C9A24A,#FFF3C9 45%,#E6CB7C 60%,#C9A24A);background-size:200% 100%;animation:goldSheen 8s linear infinite;color:#120E03}
.city b,.svc .go,.bcard .go{background:linear-gradient(100deg,#C9A24A,#FFF3C9 48%,#C9A24A);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:goldSheen 9s linear infinite}
.frame{background-image:linear-gradient(120deg,#5A430F 0%,#C9A24A 10%,#FFF8DC 20%,#E6CB7C 28%,#A97F22 38%,#FFF3C9 50%,#C9A24A 60%,#7A5C18 70%,#FFE9A8 82%,#C9A24A 92%,#5A430F 100%);background-size:280% 280%;animation:frameFlow 9s ease-in-out infinite;box-shadow:0 26px 64px rgba(0,0,0,.72),0 0 60px rgba(201,162,74,.38),inset 0 0 0 1px rgba(255,248,220,.5),inset 0 0 22px rgba(120,85,10,.5)}
.frame::after{background:linear-gradient(100deg,transparent 32%,rgba(255,255,255,.75) 50%,transparent 68%);background-size:260% 100%}
.hh h1 .bbs .w{background-image:linear-gradient(90deg,#A97F22,#E6CB7C 22%,#FFF8DC 42%,#FFFFFF 50%,#FFF3C9 58%,#E6CB7C 74%,#A97F22 100%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 3px 18px rgba(201,162,74,.28)}
/* ---------- BUY. SELL. BUILD. larger ---------- */
.hh h1 .bbs{font-size:clamp(22px,4vw,56px);letter-spacing:.07em;margin-top:16px;font-weight:700;white-space:nowrap}
@supports (container-type:inline-size){.hh h1 .bbs{font-size:8.95cqw}.hh h1 .top{font-size:min(11.4cqw,74px)}}
/* ---------- updated bar ---------- */
.trecbar{border-top:1px solid var(--gold3);border-bottom:1px solid var(--gold3);background:rgba(201,162,74,.05);margin:0;padding:15px 0}
.trecbar .wrap{display:flex;align-items:center;justify-content:center;gap:10px 26px;flex-wrap:wrap}
/* brokerage identification, TREC 535.155 and ClearView's advertising rule */
.trecnote{margin:0;font-size:14.5px;line-height:1.5;color:var(--mute);text-align:center}
.trecnote .treclabel{color:#CFCFD4;font-weight:600;margin-right:8px}
.trecnote a{color:#EBD79A;font-weight:700;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--gold3)}
.trecnote a:hover,.trecnote a:focus-visible{color:#FFF3C9;text-decoration-color:#FFF3C9}
.trecnote .dot{color:var(--gold3);margin:0 9px}
.trecnote .enn{display:inline;font-weight:600;color:#B9B9C0;font-size:12.5px;letter-spacing:.01em}
.trecnote .enn::before{content:"("}
.trecnote .enn::after{content:")"}
.updated{display:block;grid-column:1/-1;text-align:center;margin:0 0 20px;padding:0;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;background-image:linear-gradient(100deg,#C9A24A,#FFF3C9 50%,#C9A24A);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:goldSheen 9s linear infinite}
/* ---------- vertical language switch on mobile ---------- */
@media(max-width:960px){
.langsw{flex-direction:column;padding:3px;gap:2px;border-radius:14px}
.langsw a{padding:7px 10px;font-size:12.5px;border-radius:10px;text-align:center;min-width:42px}
.langsw .knob{top:3px;left:3px;width:calc(100% - 6px);height:calc(50% - 4px);border-radius:10px}
.langsw .knob.es{transform:translateY(calc(100% + 4px))}
.nav{min-height:104px}
}

@media(max-width:960px){
.trecbar{padding:13px 0}
.trecbar .wrap{flex-direction:column;align-items:center;text-align:center;gap:5px}
.trecnote{font-size:13.5px;line-height:1.42}
.trecnote .dot{display:none}
.trecnote a{display:inline-block;margin:2px 6px}
.trecnote .enn{font-size:11.5px}
.updated{font-size:10.5px;margin-bottom:14px}
}
@media(max-width:480px){.trecnote .treclabel{display:block;margin:0 0 2px}}

.trecxl{font-size:17.5px;line-height:1.62;color:#D8D8DD}
.trecxl strong{color:var(--gold2)}
.measure h2{font-size:20px;margin:34px 0 10px;color:var(--gold2);letter-spacing:.01em}
.trecul{margin:0 0 6px;padding-left:20px;color:var(--mute);font-size:15.5px;line-height:1.66}
.trecul li{margin:0 0 9px}
.trecul strong{color:#E6E6EA}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:16px 0 10px;border:1px solid var(--gold3);border-radius:8px;width:min(100vw - 40px,1040px);position:relative;left:50%;transform:translateX(-50%)}
.trectbl{border-collapse:collapse;width:100%;min-width:700px;font-size:14.5px}
.trectbl th,.trectbl td{padding:11px 13px;text-align:left;border-bottom:1px solid rgba(201,162,74,.22);vertical-align:top}
.trectbl thead th{background:rgba(201,162,74,.10);color:var(--gold2);font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.trectbl tbody th{font-weight:600;color:#CFCFD4;font-size:13.5px;letter-spacing:0;text-transform:none;width:26%;min-width:190px;padding-right:18px}
.trectbl td{color:#E6E6EA}
.trectbl a{color:#EBD79A;text-decoration:underline;text-underline-offset:2px}
.trectbl tbody tr:last-child th,.trectbl tbody tr:last-child td{border-bottom:0}
.trecfoot{margin-top:26px;padding-top:16px;border-top:1px solid var(--gold3);font-size:13.5px;color:var(--mute)}
.trecfoot a{color:#EBD79A}

/* Spanish sets three long words where English sets three short ones, so the
   line is allowed to wrap instead of running past its column onto her photo. */
html[lang^="es"] .hh h1 .bbs{white-space:normal;line-height:1.06}
html[lang^="es"] .hh h1 .bbs .w{margin-right:.26em}
@supports (container-type:inline-size){html[lang^="es"] .hh h1 .bbs{font-size:8.2cqw}}
@media(max-width:880px){html[lang^="es"] .hh h1 .bbs{font-size:clamp(23px,6.4vw,46px)}}

/* Between the mobile breakpoint and a roomy desktop the bar is tight, and the
   Spanish labels are longer than the English ones, so the spacing scales down
   instead of pushing the Call button off the right edge. */
@media(min-width:961px) and (max-width:1200px){
.nav{gap:10px;padding:6px 14px}
.menu{gap:12px}
.menu li a{font-size:14.5px}
.menu li a.call,.menu li a.txt{padding-left:13px;padding-right:13px}
.brand img{max-width:150px}
.langsw a{padding-left:10px;padding-right:10px}
}
@media(min-width:961px) and (max-width:1080px){
.menu{gap:9px}
.menu li a{font-size:13.5px}
.brand img{max-width:132px}
}

/* Mobile touch targets. Checked against a 375px phone: the hamburger was
   36x14, the language links 42x27 and the calculator sliders 6px tall. */
@media(max-width:960px){
.menu-toggle{display:flex;align-items:center;justify-content:center;min-width:46px;min-height:46px;padding:0;margin-right:-6px}
.langsw a{padding:10px 10px;min-height:34px;display:flex;align-items:center;justify-content:center}
.trecnote{font-size:14px}
.trecnote a{font-size:14px}
}
@media(max-width:840px){
/* the sticky call bar is 73px tall, so the page has to clear more than 70 */
body{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
}
@media(hover:none){
/* thumb sits centred on the 6px track now that the input is 34px tall */
.calc2 input[type=range]::-webkit-slider-thumb{margin-top:0}
}

@media(max-width:960px){
/* whole row taps, not just the word: links were 22px tall and "Sell" 25px wide */
.menu li{width:100%}
.menu li a{display:flex;align-items:center;min-height:46px;width:100%;padding:4px 2px}
.menu li a.call,.menu li a.txt{display:inline-flex;justify-content:center;width:auto;min-width:112px;min-height:46px}
}

/* On a 667px tall phone the open menu reaches the bottom, where the fixed
   call bar sat on top of the last links. The bar steps aside while it is open. */
body.menu-open .stickybar{display:none}

/* ClearView's own logo, their artwork, used beside her mark rather than baked
   into it. Management asked that the brokerage be shown in official branding. */
.footlogo .cvr{display:block;margin:22px auto 0;width:max-content;opacity:.88;transition:opacity .25s ease}
.footlogo .cvr:hover,.footlogo .cvr:focus-visible{opacity:1}
.footlogo .cvr img{height:44px;width:auto}
@media(max-width:600px){.footlogo .cvr img{height:38px}}

.zipcov{grid-column:1/-1;margin-top:30px;padding-top:24px;border-top:1px solid var(--gold3)}
.zipcov ul{columns:2;column-gap:36px;margin:10px 0 12px;padding-left:18px}
.zipcov li{margin:0 0 8px;color:var(--mute);break-inside:avoid}
.zipcov li b{color:var(--gold2);margin-right:6px}
.zipcov a{color:#EBD79A;text-decoration:none}
.zipcov a:hover{text-decoration:underline}
.zipcov .fine{font-size:13.5px;color:var(--mute);margin:0}
@media(max-width:600px){.zipcov ul{columns:1}}

@media(max-width:1100px){.cols{grid-template-columns:1.4fr 1fr 1fr}}
@media(max-width:760px){.cols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.cols{grid-template-columns:1fr}}

.alsosearched{margin-top:26px;padding-top:16px;border-top:1px solid var(--gold3);font-size:14px;line-height:1.7;color:var(--mute)}
.alsosearched b{color:#CFCFD4;font-weight:600}

.social{display:flex;justify-content:center;gap:15px;margin:14px 0 2px}
.social a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--gold3);color:#B9954A;text-decoration:none;transition:color .25s ease,border-color .25s ease,transform .25s ease}
.social svg{fill:currentColor;display:block}
.social a:hover,.social a:focus-visible{color:#FFF3C9;border-color:#C9A24A;transform:translateY(-1px)}
/* phones: four rounded rectangles, edge to edge, big enough to tap */
@media(max-width:880px){.social{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin:18px 0 6px}
.social a{width:auto;height:54px;border-radius:14px;border:1.5px solid var(--gold3);background:linear-gradient(135deg,rgba(230,203,124,.14),rgba(201,162,74,.04));color:#D9B868}
.social svg{width:26px;height:26px}}

/* ================= IDX: search section, cards, panel, gate ================= */
.idx{padding:64px 0 40px;border-top:1px solid var(--line);background:var(--bg)}
.idx.compact{padding:40px 0 26px;border-top:0;border-bottom:1px solid var(--gold3)}
.idx.compact .shead h2{font-size:clamp(26px,3vw,34px)}
.idx .lede{color:var(--body);margin-bottom:22px}
.idx .shead{margin-bottom:0}
/* filter bar */
.fbar{background:var(--bg2);border:1px solid var(--gold3);border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.45);display:flex;flex-wrap:wrap;gap:10px;padding:14px;position:relative;z-index:5}
.fbar input,.fbar select{padding:12px 14px;border-radius:11px;border:1.5px solid var(--line);font-size:14.5px;font-family:inherit;background:var(--bg3);color:var(--ink);transition:border .15s;min-height:46px}
.fbar select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold2) 50%),linear-gradient(135deg,var(--gold2) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}
.fbar input:focus,.fbar select:focus{outline:none;border-color:var(--gold)}
.fbar input[name=q]{flex:2;min-width:230px}
.fbar select{flex:1;min-width:120px}
.fbar button{background:linear-gradient(135deg,var(--gold2) 0%,var(--gold) 55%,var(--gold3) 100%);color:#0B0B0C;font-weight:800;border:0;border-radius:11px;padding:12px 26px;cursor:pointer;font-size:15px;font-family:inherit;min-height:46px}
.fbar button:hover{filter:brightness(1.08)}
.fbar .savebtn{background:transparent;border:1.5px solid var(--gold3);color:var(--gold2);font-weight:700}
.fbar .savebtn:hover{background:var(--gold-soft)}
.fbar .savebtn:disabled{opacity:.7;cursor:default}
.resrow{display:flex;align-items:baseline;gap:14px;margin:22px 0 6px;flex-wrap:wrap}
.resrow h3{font-family:"Source Sans 3",sans-serif;font-weight:600;font-size:15px;margin:0;color:var(--mute);letter-spacing:.04em;text-transform:uppercase}
.resrow span{color:var(--mute);font-size:13.5px}
.idx-intro{margin:2px 0 10px;color:var(--mute);font-size:13.5px;max-width:78ch}
.idx-intro a{color:var(--gold2)}
.idx-coming{margin:14px 0 6px;padding:14px 18px;border:1px solid var(--gold3);border-radius:10px;background:var(--gold-soft);color:var(--ink);max-width:78ch;font-size:15.5px}
/* map search */
.maptoggle{background:transparent!important;border:1.5px solid var(--gold3)!important;color:var(--gold2)!important;font-weight:700!important}
.maptoggle[aria-pressed="true"]{background:var(--gold-soft)!important;border-color:var(--gold)!important}
.idx-mapwrap{margin:16px 0 4px;border:3px solid rgba(201,162,74,.78);border-radius:16px;overflow:hidden;height:min(62vh,560px);position:relative;background:#1a1a1e}
.idx-mapwrap[hidden]{display:none}
#idxmap{width:100%;height:100%}
.idx-maphint{position:absolute;left:12px;bottom:12px;z-index:800;background:rgba(11,11,12,.88);border:1px solid var(--line);border-radius:8px;padding:7px 11px;font-size:13px;color:var(--body);pointer-events:none}
.pin{background:var(--gold);color:#0B0B0C;font-weight:800;font-size:12px;padding:3px 8px;border-radius:14px;border:2px solid #0B0B0C;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.55);transform:translate(-50%,-100%);position:relative;display:inline-block}
.pin.uc{background:var(--bg3);color:var(--gold2);border-color:var(--gold3)}
.leaflet-container{background:#1a1a1e;font-family:inherit}
.leaflet-control-attribution{background:rgba(11,11,12,.8)!important;color:var(--mute)!important;font-size:10px}.leaflet-control-attribution a{color:var(--mute)!important}
.leaflet-bar a{background:var(--bg2)!important;color:var(--ink)!important;border-color:var(--line)!important}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:14px 0 26px}
.idx.compact .grid{margin-bottom:18px}
.card.h{background:var(--bg2);border:3px solid rgba(201,162,74,.78);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.4);transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;display:block;text-decoration:none;color:var(--body);padding:0}
.card.h::before{display:none}
.card.h.hot{border-color:var(--gold2)}
@media (hover:hover){.card.h:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.5),0 0 0 1px var(--gold2),0 0 22px rgba(201,162,74,.22);border-color:var(--gold2)}.card.h:hover .cph img{transform:scale(1.06)}.btn-tour:hover{transform:translateY(-1px)}.fav:hover{background:var(--gold);color:#0B0B0C;text-shadow:none}}
.cph{height:210px;position:relative;background:var(--bg3);overflow:hidden}
.cph img{width:100%;height:100%;object-fit:cover;transition:transform .5s;display:block}
.cph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06) 40%,rgba(0,0,0,.66));pointer-events:none}
.cph .nophoto{position:absolute;inset:0;display:grid;place-items:center;color:var(--mute);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.cprice{position:absolute;left:14px;bottom:11px;z-index:3;color:#fff;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.6);font-family:"Cormorant Garamond",Georgia,serif;font-size:27px}
.cstat{position:absolute;left:12px;top:12px;z-index:3;background:var(--ink);color:#0B0B0C;font-size:11px;font-weight:800;padding:4px 11px;border-radius:100px;text-transform:uppercase;letter-spacing:.04em}
.cstat.p{background:var(--gold2);color:#0B0B0C}
.cstat.c{background:var(--bg3);color:var(--gold2);border:1px solid var(--gold3)}
.fav{position:absolute;right:10px;top:10px;z-index:4;width:38px;height:38px;border-radius:50%;border:0;background:rgba(11,11,12,.55);backdrop-filter:blur(4px);color:#fff;font-size:19px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;line-height:1}
.fav{width:44px;height:44px;font-size:24px;color:var(--gold2);border:1.5px solid rgba(230,203,124,.75);background:rgba(11,11,12,.62);text-shadow:0 0 10px rgba(230,203,124,.55)}
.fav.seen:not(.on){animation:apBeat30 30s ease-in-out infinite}
.fav.on{background:var(--gold);color:#0B0B0C;text-shadow:none}
.fav.on{animation:none}
@keyframes apBeat{0%,100%{transform:scale(1)}12%{transform:scale(1.22)}24%{transform:scale(1)}36%{transform:scale(1.14)}48%{transform:scale(1)}}
/* same double beat, then it sits still for the rest of the half minute */
@keyframes apBeat30{0%{transform:scale(1)}1.5%{transform:scale(1.22)}3%{transform:scale(1)}4.5%{transform:scale(1.14)}6%,100%{transform:scale(1)}}
.hrt{display:inline-block;color:var(--gold2);text-shadow:0 0 8px rgba(230,203,124,.5);animation:apBeat 1.7s ease-in-out infinite}
.on .hrt{animation:none}
.peekbar #peekShare,.dacts [data-share]{font-size:20px}
.peekbar #peekShare .l,.dacts [data-share] .l{font-size:13.5px}
.cbody{padding:13px 15px 15px}
.cmeta{display:flex;gap:14px;font-size:14px;font-weight:700;color:var(--gold2)}
.cmeta i{font-style:normal;color:var(--mute);font-weight:500}
.caddr{margin-top:7px;font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.csub{color:var(--mute);font-size:12.5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.coffice{color:var(--mute);font-size:11.5px;margin-top:6px}
.idx-empty{grid-column:1/-1;padding:40px 20px;text-align:center;color:var(--mute);border:1px dashed var(--line);border-radius:14px}
.pag{display:flex;gap:10px;align-items:center;justify-content:center;margin:0 0 28px;flex-wrap:wrap}
.pag button{background:var(--bg2);border:1px solid var(--line);padding:10px 20px;border-radius:11px;font-weight:700;font-size:14px;color:var(--ink);cursor:pointer;font-family:inherit}
.pag button:hover{border-color:var(--gold)}
.pag span{font-size:13px;color:var(--mute)}
.idx-seeall{text-align:center;margin:0 0 22px}
.idxlegal{color:var(--mute);font-size:12.5px;line-height:1.55;border-top:1px solid var(--line);padding-top:16px;margin-top:8px}
.idxlegal p{margin:0 0 6px}
.idxlegal .lby{font-size:15px;color:#6a665e;margin-bottom:10px}
.idxlegal .lby a{color:inherit;text-decoration:none;pointer-events:none;cursor:text}
/* peek panel */
.peek{position:fixed;inset:0;z-index:1000;display:none;background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}
.peek.open{display:block;animation:apFade .22s ease-out}
.peek.open .peekbox{animation:apRise .32s cubic-bezier(.2,.8,.2,1)}
@keyframes apFade{from{opacity:0}to{opacity:1}}
@keyframes apRise{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
.peekbox{position:absolute;inset:22px 6vw;background:var(--bg);border:1px solid var(--gold3);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.7)}
.peekbar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg2)}
.peekbar .pnav{width:38px;height:38px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--bg3);color:var(--ink);font-size:22px;cursor:pointer;line-height:1;flex:none;display:grid;place-items:center;-webkit-appearance:none;appearance:none}
.peekbar .pnav:disabled{opacity:.3;cursor:default}
.peekbar .ttl{flex:1;min-width:0;font-weight:700;font-size:15px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.peekbar .ttl small{color:var(--mute);font-weight:500;margin-left:10px}
.peekbar .act{border:1px solid var(--line);background:var(--bg3);color:var(--ink);border-radius:100px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none;line-height:1.2;flex:none}
.peekbar .act:hover,.peekbar .act.on{border-color:var(--gold);color:var(--gold2)}
.peekbar .act.tour{background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));color:#0B0B0C;border-color:transparent}
.peekbar .act.x{font-size:20px;padding:6px 12px}
.peekbar .hrt{font-size:21px;line-height:1}
.peekframe{flex:1;width:100%;border:0;background:var(--bg)}
.peekload{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--gold2);font-weight:700;z-index:2;background:var(--bg2);padding:10px 16px;border-radius:10px;border:1px solid var(--gold3);display:none}
body.overlaid{overflow:hidden}
@media (max-width:960px){
  .peekbox{inset:0;border-radius:0;border:0}
  .peekbar{padding:8px 10px;gap:6px}
  .peekbar .act .l{display:none}
  .peekbar .pnav,.peekbar .act{width:40px;height:40px;padding:0;border-radius:50%;justify-content:center;font-size:19px;display:grid;place-items:center;-webkit-appearance:none;appearance:none}
  .peekbar .hrt{font-size:25px}
  .peekbar #peekShare{font-size:23px}
  .peekbar #peekOpen{display:none}
  .peekbar .ttl{font-size:14px;line-height:1.25}
  .peekbar .ttl small{display:block;margin:0;font-size:11.5px}
}
/* gate modal */
.modal{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;padding:18px}
.modal.open{display:flex}
.mbox{background:var(--bg2);border:1px solid var(--gold3);border-radius:18px;padding:28px 26px 22px;width:min(440px,100%);position:relative;box-shadow:0 30px 80px rgba(0,0,0,.7);max-height:96vh;overflow:auto}
.mbox .mx{position:absolute;right:12px;top:10px;background:transparent;border:0;color:var(--mute);font-size:26px;cursor:pointer;line-height:1}
.mtag{display:inline-block;background:var(--gold-soft);color:var(--gold2);border:1px solid var(--gold3);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:100px;margin-bottom:12px}
.mbox h3{font-size:26px;margin:0 0 8px}
.mbox p{color:var(--body);font-size:15px;margin:0 0 14px}
.mbox input{width:100%;padding:12px 13px;border:1.5px solid var(--line);border-radius:11px;font-size:15px;margin-top:9px;font-family:inherit;background:var(--bg3);color:var(--ink)}
.mbox input:focus{outline:none;border-color:var(--gold)}
.smsok{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--mute);margin:12px 0 4px;line-height:1.45}
.smsok input,.tourpanel .smsok input,.mbox .smsok input{width:18px;height:18px;min-width:18px;margin:2px 0 0;padding:0;accent-color:var(--gold);flex:none}
.smsok span{min-width:0;overflow-wrap:anywhere}
.mbox .cta{width:100%;margin-top:10px;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));color:#0B0B0C;border:0;border-radius:11px;padding:14px;font:inherit;font-weight:800;font-size:16px;cursor:pointer}
.mskip{display:block;width:100%;background:transparent;border:0;color:var(--mute);font:inherit;font-size:14px;margin-top:10px;cursor:pointer;text-decoration:underline}
.mnote{color:var(--mute);font-size:12px;margin-top:12px;text-align:center}
.mbox .msg{margin:8px 0 0;font-size:14px}.msg.bad{color:var(--bad)}.msg.ok{color:var(--ok)}
/* ================= listing page ================= */
.idxbar{display:none;background:#000;border-bottom:1px solid var(--line);color:var(--mute);font-size:11px;letter-spacing:.04em;padding:5px 14px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idxbar b{color:var(--body);font-weight:600}
body.embed .header,body.embed .footer,body.embed .trecbar,body.embed .updated,body.embed .skip,body.embed .dtop{display:none!important}
/* Nothing on a listing page may ever make the page wider than the screen. */
/* clip, not hidden: hidden turns the page into its own scroller and the side card stops sticking */
html:has(body.embed),body.embed{overflow-x:hidden;overflow-x:clip;max-width:100%}
#lp{max-width:100%;overflow-x:clip}
.dgrid>*,.calc>*,.fgrid>*,.dhead>*{min-width:0}
.remx,.srcline,.fgrid li,.csub,.caddr,.proof{overflow-wrap:anywhere}
.dtop{max-width:1360px;margin:0 auto;padding:14px 20px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:600}
.dtop .back{color:var(--body);text-decoration:none}.dtop .back:hover{color:var(--gold2)}
.dacts{display:flex;gap:8px}
.dacts button{background:var(--bg2);border:1px solid var(--line);color:var(--ink);border-radius:100px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.dacts button:hover{border-color:var(--gold)}
.dacts button.on{background:var(--gold-soft);border-color:var(--gold);color:var(--gold2)}
.dwrap{max-width:1360px;margin:0 auto;padding:0 20px 40px}
.mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:3px;padding:3px;border-radius:18px;overflow:hidden;position:relative;margin-top:12px;background:linear-gradient(115deg,#6f531a 0%,#C9A24A 18%,#fff1bd 30%,#E6CB7C 42%,#8C6A1F 58%,#E6CB7C 74%,#fff1bd 84%,#C9A24A 100%);background-size:280% 280%;animation:apGold 7s ease-in-out infinite;box-shadow:0 0 0 1px rgba(0,0,0,.6),0 18px 50px rgba(0,0,0,.55),0 0 34px rgba(201,162,74,.18)}
@keyframes apGold{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.mosaic a:first-child{border-radius:15px 0 0 15px}.mosaic a:nth-child(3){border-top-right-radius:15px}.mosaic a:nth-child(5){border-bottom-right-radius:15px}
.mosaic.single a:first-child{border-radius:15px}
.mosaic a img{animation:apFade .6s ease-out both}.mosaic a:nth-child(2) img{animation-delay:.08s}.mosaic a:nth-child(3) img{animation-delay:.16s}.mosaic a:nth-child(4) img{animation-delay:.24s}.mosaic a:nth-child(5) img{animation-delay:.32s}
.mosaic a{position:relative;overflow:hidden;background:var(--bg3);display:block;cursor:pointer}
.mosaic a:first-child{grid-row:1/3}
.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}
.mosaic a:hover img{transform:scale(1.04)}
.photos{position:relative}
.gal,.galmeta{display:none}
.mosaic.single{grid-template-columns:1fr;grid-template-rows:440px}
.mosaic.single a:first-child{grid-row:auto}
.mosaic .nophoto{display:grid;place-items:center;height:100%;color:var(--mute);font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:20px;text-align:center}
.mosaic.none{display:grid;place-items:center;color:var(--mute);height:220px;grid-template-columns:1fr;grid-template-rows:1fr}
.dstat{position:absolute;left:16px;top:16px;z-index:3;background:var(--ink);font-size:12px;font-weight:800;padding:6px 14px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em;color:#0B0B0C}
.dstat i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:6px;vertical-align:middle}
.dstat.p{background:var(--gold2)}
.seeall{position:absolute;right:16px;bottom:16px;z-index:4;background:var(--ink);color:#0B0B0C;border:0;border-radius:10px;padding:10px 14px;font:inherit;font-size:13.5px;font-weight:800;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.seeall:hover{background:#fff}
.dgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:28px;align-items:start;margin-top:22px}
.dhead{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}
.dhead .pr{font-family:"Cormorant Garamond",Georgia,serif;font-size:44px;font-weight:700;letter-spacing:-.5px;line-height:1.05;color:var(--ink)}
.dhead .pr span{font-family:"Source Sans 3",sans-serif;font-size:14px;color:var(--ok);font-weight:700;margin-left:10px;vertical-align:middle}
.dhead h1.ad{font-family:"Source Sans 3",sans-serif;font-size:17px;color:var(--body);margin:4px 0 0;font-weight:500;text-wrap:initial;letter-spacing:0}
.bbs{display:flex;gap:26px}
.bbs b{display:block;font-size:30px;font-weight:700;line-height:1.05;color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif}
.bbs span{font-size:14.5px;color:var(--mute)}
.pay{display:inline-flex;align-items:center;gap:14px;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin-top:16px;font-size:14.5px;flex-wrap:wrap}
.pay b{font-size:16px;color:var(--ink)}
.pay a{color:var(--gold2);font-weight:800;cursor:pointer;text-decoration:none}
.pay small{color:var(--mute);font-size:11.5px;display:block;width:100%;margin-top:2px}
.ftiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-top:18px}
.ftiles div{background:var(--bg2);border:1px solid var(--line);border-radius:11px;padding:13px 14px;font-size:14.5px;display:flex;gap:10px;align-items:center;color:var(--body)}
.ftiles .ic{font-size:17px}
.sec{border-top:1px solid var(--line);margin-top:26px;padding-top:22px}
.sec h2{font-size:26px;margin-bottom:12px}
.hls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.hls span{background:var(--bg3);border:1px solid var(--line);color:var(--gold2);font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:6px}
.remx{white-space:pre-line;color:var(--body);font-size:16.5px;line-height:1.7;max-height:12em;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:8px;scrollbar-width:thin;scrollbar-color:var(--gold3) transparent;border-bottom:1px solid var(--line)}
.remx.open{max-height:none;border-bottom:0}
.vt{margin:14px 0 0}
.more{background:transparent;border:0;color:var(--gold2);font:inherit;font-weight:800;cursor:pointer;padding:6px 0;font-size:15px}
.proof{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0 6px;font-size:14.5px;color:var(--body)}
.proof b{color:var(--ink)}
.ohost{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:12px 0 4px;padding:12px 14px;border:1.5px solid var(--gold2);border-radius:12px;background:rgba(201,162,74,.10)}
.ohost b{font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink)}.ohost span{font-weight:700;color:var(--ink);font-size:16px}.ohost small{flex-basis:100%;font-size:13.5px;color:var(--body)}
.proof span+span{border-left:1px solid var(--line);padding-left:14px}
.srcline{color:var(--mute);font-size:13px;line-height:1.7}
.mapbox{position:relative;border-radius:14px;overflow:hidden;margin-top:22px;height:280px;background:var(--bg3);border:1px solid var(--line)}
.mapbox img{width:100%;height:100%;object-fit:cover;display:block;filter:invert(.92) hue-rotate(180deg) saturate(.55) brightness(.95) contrast(.92)}
.mapbox.nomap{display:none}
.mapbox .pin{position:absolute;left:50%;top:50%;width:22px;height:22px;border-radius:50% 50% 50% 0;background:var(--gold);border:3px solid #0B0B0C;transform:translate(-50%,-100%) rotate(-45deg);box-shadow:0 4px 12px rgba(0,0,0,.6)}
.mapbox{height:340px}
.mapbox .gm{position:absolute;right:14px;bottom:14px;z-index:900;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));color:#0B0B0C;font:inherit;font-weight:800;font-size:14px;padding:11px 16px;border:0;border-radius:10px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.5)}
.mapbox.live>img,.mapbox.live>.pin{display:none}
.mapbox .leaflet-container{position:absolute;inset:0}
.dirwhen{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}
.dirwhen label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.dirwhen select{width:100%;margin-top:5px;padding:12px;border:1.5px solid var(--line);border-radius:11px;background:var(--bg3);color:var(--ink);font:inherit;font-size:15px}
.idxline{margin:10px 0 0;font-size:11.5px;letter-spacing:.04em;color:var(--mute)}
.idxline b{color:var(--body);font-weight:600}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fcard{background:linear-gradient(160deg,#16161a,#0f0f11);border:1px solid rgba(201,162,74,.35);border-radius:14px;padding:18px 18px 8px;position:relative;overflow:hidden}
.fcard::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),transparent)}
.fcard h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;color:var(--gold2);margin:0 0 10px;font-weight:600;display:flex;align-items:center;gap:10px}
.fcard .fi{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold-soft);border:1px solid var(--gold3);font-size:16px;flex:none}
.fcard dl{margin:0}
.fcard dl>div{display:grid;grid-template-columns:minmax(96px,38%) 1fr;gap:10px;padding:9px 0;border-top:1px solid var(--line);align-items:start}
.fcard dl>div:first-child{border-top:0}
.fcard dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);padding-top:2px}
.fcard dd{margin:0;color:var(--ink);font-size:15px;overflow-wrap:anywhere}
.fchips{display:flex;flex-wrap:wrap;gap:5px}
.fchips i{font-style:normal;font-size:13px;background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:3px 9px;color:var(--body)}
/* payment calculator */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:26px;align-items:start}
.calc .tot{background:linear-gradient(160deg,#1a1a1e,#0B0B0C);border:1px solid var(--gold3);color:var(--ink);border-radius:16px;padding:22px}
.calc .cap{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.calc .n{font-family:"Cormorant Garamond",Georgia,serif;font-size:46px;font-weight:700;line-height:1;margin:8px 0 14px}
.calc .per{font-size:18px;color:var(--mute);margin-left:4px}
.calc .bar{display:flex;height:9px;border-radius:5px;overflow:hidden;background:var(--bg3)}
.calc .bar i{display:block;height:100%}
.calc .brk{list-style:none;padding:0;margin:14px 0 0}
.calc .brk li{display:flex;justify-content:space-between;font-size:14px;padding:7px 0;border-bottom:1px solid var(--line)}
.calc .brk li b{color:var(--ink)}
.calc .ctl label{display:flex;justify-content:space-between;font-size:14.5px;font-weight:700;color:var(--ink);margin-top:14px}
.calc .ctl input[type=range]{width:100%;accent-color:var(--gold);margin:8px 0 2px}
.calc .ctl small{display:block;color:var(--mute);font-size:12px;line-height:1.5}
.terms{display:flex;gap:8px;margin-bottom:6px}
.terms button{flex:1;background:var(--bg2);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:10px;font:inherit;font-weight:700;cursor:pointer}
.terms button.on{background:var(--gold);color:#0B0B0C;border-color:var(--gold)}
.calcnote{color:var(--mute);font-size:12.5px;line-height:1.55;margin-top:12px}
.ph-tbl{width:100%;border-collapse:collapse;font-size:15px}
.ph-tbl td{padding:9px 0;border-bottom:1px solid var(--line);color:var(--body)}
.ph-tbl td:last-child{text-align:right;font-weight:700;color:var(--ink)}
/* rail */
.rail{position:sticky;top:96px}
.rail.inflow{position:static;margin-top:26px}
body.embed .rail{top:12px}
.lead-card{background:var(--bg2);border:1px solid var(--gold3);border-radius:16px;padding:22px;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.btn-tour{display:block;width:100%;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));color:#0B0B0C;border:0;border-radius:12px;padding:13px;font:inherit;font-weight:800;font-size:16px;cursor:pointer;text-align:center;text-decoration:none}
.btn-tour small{display:block;font-weight:600;font-size:12px;opacity:.85}
.btn-tour{position:relative;overflow:hidden;animation:apPulse 2.8s ease-in-out infinite;transition:transform .15s}
.btn-tour:active{transform:scale(.985)}
.btn-tour::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:apSheen 3.6s ease-in-out infinite;pointer-events:none}
@keyframes apSheen{0%,55%{left:-60%}85%,100%{left:130%}}
@keyframes apPulse{0%,100%{box-shadow:0 0 0 0 rgba(230,203,124,.0),0 6px 18px rgba(0,0,0,.35)}50%{box-shadow:0 0 0 6px rgba(230,203,124,.16),0 6px 22px rgba(201,162,74,.35)}}
/* sections ease in as they scroll into view (class set by the script) */
.rvl{opacity:0;transform:translateY(16px);transition:opacity .55s ease-out,transform .55s cubic-bezier(.2,.8,.2,1)}
.rvl.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.photos.hasgal,.fav,.hrt,.mosaic,.btn-tour,.btn-tour::after,.peek.open,.peek.open .peekbox,.mosaic a img{animation:none!important}.rvl{opacity:1;transform:none;transition:none}}
.btn-contact{display:block;width:100%;margin-top:10px;background:transparent;border:1.5px solid var(--gold3);color:var(--gold2);border-radius:12px;padding:12px;font:inherit;font-weight:800;font-size:15px;cursor:pointer;text-align:center;text-decoration:none}
.btn-contact:hover{background:var(--gold-soft)}
.agentline{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.agentline img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.18);flex:none}
.agentline div{flex:1;min-width:0}
.agentline b{display:block;color:var(--ink);font-size:18px;font-family:"Cormorant Garamond",Georgia,serif;letter-spacing:.02em}
.agentline span{display:block;color:var(--mute);font-size:12.5px}
.agentline .call{display:inline-block;margin-top:8px;background:var(--gold-soft);color:var(--gold2);border:1px solid var(--gold3);border-radius:8px;padding:8px 12px;font-weight:800;font-size:13.5px;text-decoration:none;white-space:nowrap}
.rail .clogo{display:block;margin:20px auto 0;width:100%;height:auto;mix-blend-mode:screen}
/* photos under the side card: desktop only, fade in once the card sticks */
.railpics{display:none}
/* phones, inside the listing pop-up: Alma's logo pins to the top once scrolled to, and lets go on the way back up */
.logobar{display:none}
@media (max-width:960px){body.embed .logobar{display:block;position:fixed;top:0;left:0;right:0;z-index:800;background:#000;border-bottom:1px solid var(--gold3);box-shadow:0 10px 24px rgba(0,0,0,.55);visibility:hidden;pointer-events:none}
body.embed .logobar.on{visibility:visible}
.logobar img{display:block;position:relative;height:auto}}
.rail .clogo{max-height:220px;transition:max-height .7s ease,margin .7s ease,opacity .5s ease}
.rail.picsmode .clogo{max-height:0;margin-top:0;opacity:0}
@media (min-width:961px){
.railpics.fits{display:block;position:relative;margin-top:16px;padding:3px;border-radius:17px;background:linear-gradient(115deg,#6f531a 0%,#C9A24A 18%,#fff1bd 30%,#E6CB7C 42%,#8C6A1F 58%,#E6CB7C 74%,#fff1bd 84%,#C9A24A 100%);box-shadow:0 18px 40px rgba(0,0,0,.45);opacity:0;transform:translateY(16px);visibility:hidden;transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.8,.2,1),visibility 0s 1.1s}
.railpics.fits.on{opacity:1;transform:none;visibility:visible;transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.8,.2,1),visibility 0s}
.railpics .rpv{overflow:hidden;border-radius:14px;background:#000;height:var(--rph,220px)}
.railpics .rps{display:flex;height:100%;transition:transform .9s cubic-bezier(.22,.8,.2,1)}
.railpics img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}
.railpics .rpc{position:absolute;right:13px;top:13px;background:rgba(11,11,12,.72);color:var(--gold2);border:1px solid var(--gold3);font-size:11.5px;font-weight:800;padding:3px 9px;border-radius:999px;letter-spacing:.04em}
.railpics .rpb{position:absolute;left:16px;right:16px;bottom:12px;height:3px;border-radius:2px;background:rgba(255,255,255,.22);overflow:hidden}
.railpics .rpb i{display:block;height:100%;width:0;background:var(--gold2);transition:width .9s ease}
}
@media (prefers-reduced-motion:reduce){.railpics.fits,.railpics.fits.on,.railpics .rps,.railpics .rpb i{transition:none}}
/* switch to the same home in the other language */
.langsw{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:12px 14px;border-radius:12px;border:1.5px solid var(--gold3);background:linear-gradient(135deg,rgba(230,203,124,.14),rgba(201,162,74,.05));color:var(--gold2);text-decoration:none;font-weight:700;font-size:14.5px;line-height:1.3}
.langsw:hover{background:var(--gold-soft);border-color:var(--gold)}
.langsw .sw{flex:none;position:relative;width:46px;height:26px;border-radius:13px;background:#241f14;border:1px solid var(--gold3);transition:background .2s}
.langsw .sw b{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));box-shadow:0 1px 3px rgba(0,0,0,.5);transition:transform .2s,background .2s}
.langsw.on .sw{background:linear-gradient(135deg,var(--gold2) 0%,var(--gold) 55%,var(--gold3) 100%)}.langsw.on .sw b{transform:translateX(20px);background:#0B0B0C}
@media (prefers-reduced-motion:reduce){.langsw .sw,.langsw .sw b{transition:none}}
/* tour panel */
.tourpanel{display:none;margin-top:16px;border-top:1px solid var(--line);padding-top:14px}
.tourpanel.open{display:block}
.tourpanel h3{font-family:"Source Sans 3",sans-serif;font-size:17px;margin:0 0 10px;color:var(--ink)}
.days{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;max-width:100%;min-width:0;-webkit-overflow-scrolling:touch}
.lead-card,.tourpanel,.rail{min-width:0;max-width:100%}
.days button{flex:none;width:58px;background:var(--bg3);border:1px solid var(--line);color:var(--body);border-radius:10px;padding:8px 4px;font:inherit;font-size:12px;cursor:pointer;line-height:1.25}
.days button b{display:block;font-size:17px;color:var(--ink)}
.days button.on{border-color:var(--gold);background:var(--gold-soft);color:var(--gold2)}
.days button.on b{color:var(--gold2)}
.slots h4{font-family:"Source Sans 3",sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:12px 0 6px}
.slotrow{display:flex;flex-wrap:wrap;gap:6px}
.slotrow button{background:var(--bg3);border:1px solid var(--line);color:var(--body);border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;cursor:pointer}
.slotrow button.on{border-color:var(--gold);background:var(--gold);color:#0B0B0C;font-weight:700}
.slotrow button:disabled{opacity:.35;text-decoration:line-through;cursor:default}
.picked{display:flex;gap:10px;align-items:center;background:var(--gold-soft);border:1px solid var(--gold3);border-radius:10px;padding:10px 12px;margin-top:12px;font-size:14px;color:var(--body)}
.picked b{display:block;color:var(--ink)}
.picked span{display:block;font-size:12px;color:var(--mute)}
.tourpanel input:not([type=checkbox]),.tourpanel textarea{width:100%;padding:12px 13px;border:1.5px solid var(--line);border-radius:11px;font-size:14.5px;margin-top:9px;font-family:inherit;background:var(--bg3);color:var(--ink)}
.tourpanel input:focus,.tourpanel textarea:focus{outline:none;border-color:var(--gold)}
.tourpanel .cta{width:100%;margin-top:10px;background:linear-gradient(135deg,var(--gold2),var(--gold) 55%,var(--gold3));color:#0B0B0C;border:0;border-radius:11px;padding:13px;font:inherit;font-weight:800;font-size:15px;cursor:pointer}
.done{display:none;background:var(--gold-soft);border:1px solid var(--gold3);border-radius:10px;padding:14px;margin-top:12px;color:var(--ink);font-size:15px}
.done.open{display:block}
.sim .grid{margin-top:14px}
.dsee{display:inline-block;margin:6px 0 20px;color:var(--gold2);font-weight:800;text-decoration:none}
/* mobile bar */
.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:900;background:var(--bg2);border-top:1px solid var(--gold3);padding:10px 14px;gap:10px}
.mbar .btn-tour{flex:2;padding:12px}
.mbar .btn-contact{flex:1;margin:0;padding:12px}
/* lightbox */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:1300;display:none;flex-direction:column}
.lb.open{display:flex}
.lbtop{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;color:var(--body);font-size:14px}
.lbtop button{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:100px;padding:8px 14px;font:inherit;cursor:pointer}
.lbmain{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:0}
.lbmain img{max-width:94vw;max-height:calc(100vh - 170px);object-fit:contain}
.lbmain .lnav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:28px;cursor:pointer}
.lbmain .lnav.l{left:16px}.lbmain .lnav.r{right:16px}
.strip{display:flex;gap:6px;overflow-x:auto;padding:10px 16px 14px;scrollbar-width:thin}
.strip img{height:64px;width:86px;object-fit:cover;border-radius:6px;opacity:.55;cursor:pointer;flex:none;border:2px solid transparent}
.strip img.on{opacity:1;border-color:var(--gold)}
@media (max-width:960px){
  .dgrid{grid-template-columns:minmax(0,1fr)}.rail{position:static}
  .mosaic.single{grid-template-rows:300px}
  .photos.hasgal .mosaic{display:none}
  /* the gold frame goes all the way around on a phone: the wrapper is the frame, the strip scrolls inside it */
  .photos.hasgal{margin:12px 0 0;padding:4px;border-radius:18px;background:linear-gradient(115deg,#6f531a 0%,#C9A24A 18%,#fff1bd 30%,#E6CB7C 42%,#8C6A1F 58%,#E6CB7C 74%,#fff1bd 84%,#C9A24A 100%);background-size:280% 280%;animation:apGold 7s ease-in-out infinite;box-shadow:0 0 0 1px rgba(0,0,0,.6),0 14px 40px rgba(0,0,0,.55),0 0 28px rgba(201,162,74,.2)}
  .gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:4px;border-radius:14px;background:transparent}
  .gal::-webkit-scrollbar{display:none}
  .gal a{flex:0 0 100%;scroll-snap-align:center;scroll-snap-stop:always;height:min(66vw,330px);background:var(--bg3);display:block;border-radius:14px;overflow:hidden}
  .gal img{width:100%;height:100%;object-fit:cover;display:block}
  .galmeta{display:flex;justify-content:space-between;align-items:center;position:absolute;left:16px;right:16px;top:16px;pointer-events:none}
  .galmeta .dstat{position:static}
  .galcount{background:rgba(11,11,12,.8);color:var(--ink);border:1px solid var(--gold3);border-radius:100px;padding:5px 11px;font-size:12.5px;font-weight:700}
  .calc{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr}.mapbox{height:300px}
  .mbar{display:flex}body.has-mbar .dwrap{padding-bottom:90px}
  .bbs{gap:18px}.bbs b{font-size:24px}.dhead .pr{font-size:36px}
}
@media (max-width:600px){.fbar input[name=q]{min-width:100%}.fbar select{min-width:calc(50% - 5px)}.fbar button{flex:1}.cph{height:200px}.grid{grid-template-columns:1fr}}

.cma-hero .cma-warn{border-left:3px solid var(--gold);padding:10px 0 10px 16px;color:var(--ink);font-size:17px;max-width:58ch;margin:18px 0 6px}
.cma-sec{padding:56px 0;background:radial-gradient(900px 400px at 50% 0%,rgba(201,162,74,.12),transparent 70%),var(--bg)}
.cma{max-width:720px;margin:0 auto;scroll-margin-top:110px}
.cma-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.cma-top b{color:var(--gold2)}
.cma-saved{color:var(--ok);letter-spacing:.06em;transition:opacity .4s}
.cma-bar{height:6px;border-radius:4px;background:var(--bg3);overflow:hidden;margin-bottom:18px}
.cma-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold3),var(--gold2));transition:width .45s cubic-bezier(.2,.8,.2,1)}
.cma-resume{background:var(--gold-soft);border:1px solid var(--gold3);border-radius:10px;padding:10px 14px;color:var(--ink);font-size:15px;margin:0 0 14px}
.cma-card{background:var(--bg2);border:2px solid rgba(201,162,74,.7);border-radius:18px;padding:30px 28px 24px;box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 40px rgba(201,162,74,.08);animation:cmaIn .38s cubic-bezier(.2,.8,.2,1)}
.cma-card[hidden]{display:none}
@keyframes cmaIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.cma-card h2{font-size:clamp(26px,3.4vw,34px);margin-bottom:8px}
.cma-p{color:var(--body);margin-bottom:18px}
.cma-sub{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:18px 0 8px}
.cma-fields{display:grid;gap:14px}
.cma-fields.two{grid-template-columns:1fr 1fr}
.cma-fields>div{min-width:0}
.cma-card label{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:6px}
.cma-card label i{text-transform:none;letter-spacing:0;font-style:normal;opacity:.8}
.cma-card input,.cma-card textarea{width:100%;background:var(--bg3);border:1.5px solid var(--line);border-radius:11px;padding:14px;color:var(--ink);font:inherit;font-size:17px}
.cma-card input:focus,.cma-card textarea:focus{outline:none;border-color:var(--gold)}
.cma-card input.bad{border-color:var(--bad)}
.cma-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}
.cma-chips button{background:var(--bg3);border:1.5px solid var(--line);color:var(--body);border-radius:12px;padding:13px 16px;font:inherit;font-size:16px;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}
.cma-chips button:hover{border-color:var(--gold3)}
.cma-chips button:active{transform:scale(.97)}
.cma-chips button.on{border-color:var(--gold);background:var(--gold-soft);color:var(--gold2);font-weight:700}
.cma-chips.multi button.on::before{content:"✓ "}
.cma-consent{margin:12px 0 0}
.cma-smsbox{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.cma-smsbox input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:var(--gold)}
.cma-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px}
.cma-nav .btn{min-width:130px;text-align:center;cursor:pointer;font-family:inherit}
.cma-nav [data-next]{margin-left:auto}
.cma-err{color:var(--bad);font-size:14px;margin:8px 0 0}
.cma-done{text-align:center}
.cma-check{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold3));color:#0B0B0C;font-size:32px;font-weight:800}
.cma-done .cta-row{justify-content:center}
.cma-ins .card p{margin:0}
.seeex{display:inline-block;margin-top:14px;padding:13px 20px;border:2px solid rgba(201,162,74,.78);border-radius:10px;color:var(--ink);text-decoration:none;font-weight:600;font-size:16px;background:var(--gold-soft);transition:border-color .15s}
.seeex span{color:var(--gold2);font-weight:800;letter-spacing:.08em}
.seeex:hover{border-color:var(--gold2);color:#fff}
/* the hero button on the home page */
.worthbtn{display:block;margin:16px auto 0;max-width:400px;text-align:center;text-decoration:none;font-weight:800;font-size:17px;letter-spacing:.02em;padding:16px 18px;border-radius:10px;color:#0B0B0C;background:linear-gradient(135deg,var(--gold2) 0%,var(--gold) 55%,var(--gold3) 100%);box-shadow:0 10px 30px rgba(201,162,74,.28);position:relative;overflow:hidden;transition:transform .15s,filter .15s}
.worthbtn:hover{color:#0B0B0C}
.worthbtn::after{pointer-events:none}
@media (hover:hover){.worthbtn:hover{transform:translateY(-2px);filter:brightness(1.07)}}
.worthbtn{-webkit-tap-highlight-color:rgba(230,203,124,.3);touch-action:manipulation}
.worthbtn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:worthSheen 4s ease-in-out infinite}
@keyframes worthSheen{0%,60%{left:-60%}90%,100%{left:130%}}
@media (prefers-reduced-motion:reduce){.worthbtn::after,.cma-card{animation:none}}
@media (max-width:600px){.cma-card{padding:24px 18px 20px}.cma-fields.two{grid-template-columns:1fr 1fr}.cma-nav .btn{min-width:0;flex:1}}
