:root{--navy:#0e1a2b;--navy2:#16263d;--ink:#1b2430;--muted:#5d6878;--line:#e3e6eb;--bg:#f6f5f2;--card:#fff;--accent:#b8925a;--accent-d:#7a5c30;--accent-l:#d1ad76;--ok:#2f7a56;--warn:#b5651d;--bad:#b23b3b;--r:14px;--shadow:0 1px 2px rgba(14,26,43,.06),0 8px 24px rgba(14,26,43,.06);--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:16px/1.55 var(--sans);color:var(--ink);background:var(--bg)}
img{max-width:100%;display:block}a{color:var(--navy2)}a:hover{color:var(--accent-d)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:99}.skip:focus{left:8px}
.wrap{width:min(1160px,100% - 40px);margin-inline:auto}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.2;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(1.9rem,5vw,3.1rem);letter-spacing:-.01em}h2{font-size:clamp(1.3rem,3vw,1.7rem)}h3{font-size:1.2rem}
p{margin:0 0 1em}.muted{color:var(--muted)}.small{font-size:.875rem}.mt{margin-top:1.5em}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:600;color:var(--accent-d);margin-bottom:.8em}.eyebrow a{color:inherit;text-decoration:none}
.lede{font-size:1.125rem;color:var(--muted);max-width:44em}
/* wordmark */
.wordmark{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1;color:var(--navy)}
.wm-name{font-family:var(--serif);font-size:1.7rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.wm-nj{color:var(--accent)}
.wm-sub{font-size:.62rem;letter-spacing:.42em;text-transform:uppercase;margin-top:4px;color:var(--muted);font-weight:600}
.wordmark.sm .wm-name{font-size:1.35rem}.wordmark.sm .wm-sub{font-size:.55rem}
/* header */
.site-header{background:rgba(246,245,242,.92);backdrop-filter:saturate(1.4) blur(8px);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:16px}
.site-nav{display:flex;gap:4px;align-items:center}.site-nav a{text-decoration:none;color:var(--ink);padding:10px 12px;border-radius:999px;font-weight:500;font-size:.95rem}
.site-nav a[aria-current]{color:var(--accent-d)}.site-nav a:hover{background:rgba(14,26,43,.05)}
.site-nav .nav-cta{background:var(--navy);color:#fff;margin-left:6px}.site-nav .nav-cta:hover{background:var(--navy2);color:#fff}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:var(--navy);margin:6px 0;transition:.2s}
@media (max-width:760px){.nav-toggle{display:block}.nav-wrap{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);display:none;padding:8px 20px 18px}.nav-wrap.open{display:block}.site-nav{flex-direction:column;align-items:stretch}.site-nav a{padding:14px 8px;border-radius:8px}.site-nav .nav-cta{margin:8px 0 0;text-align:center}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}}
/* hero */
.hero{background:linear-gradient(160deg,var(--navy) 0%,#1a2e4a 100%);color:#e9edf3;padding:clamp(48px,9vw,110px) 0 clamp(48px,8vw,96px);position:relative;overflow:hidden}
.hero h1{color:#fff;max-width:14em}.hero .lede{color:#b9c3d2}.hero .eyebrow{color:var(--accent)}
.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}
.hero-art{color:var(--accent);opacity:.9}.house-art{width:100%;height:auto}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr}.hero-art{max-width:360px;opacity:.55;margin-top:-8px}}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#14100a;border:0;border-radius:999px;padding:13px 22px;font:600 .95rem var(--sans);text-decoration:none;cursor:pointer;min-height:46px;transition:background .15s}
.btn:hover{background:#c9a46d;color:#14100a}.btn.ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}.hero .btn.ghost{color:#fff}.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.light{background:#fff;color:var(--navy)}.btn.small{padding:8px 16px;min-height:38px;font-size:.875rem}.btn.tiny{padding:5px 12px;min-height:30px;font-size:.8rem}
.btn.danger{background:#fbeaea;color:var(--bad)}.btn.danger:hover{background:#f5d5d5}.btn.ghost-light{background:transparent;color:#cfd7e3;box-shadow:inset 0 0 0 1px #3a4b63}.btn.ghost-light:hover{color:#fff}
.link{color:var(--accent-d);font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}
/* sections */
.section{padding:clamp(40px,7vw,72px) 0}.section.narrow,.narrow{max-width:720px}
.band{background:#fff;border-block:1px solid var(--line);padding:clamp(36px,6vw,64px) 0}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,4vw,48px)}.pillars .num{font-family:var(--serif);color:var(--accent);font-size:1.1rem;display:block;margin-bottom:6px}
.pillars p{color:var(--muted);margin:0}@media (max-width:760px){.pillars{grid-template-columns:1fr}}
.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;flex-wrap:wrap}.section-head h2{margin:0}
.page-head{background:#fff;border-bottom:1px solid var(--line);padding:clamp(36px,6vw,64px) 0 clamp(28px,4vw,40px)}
.grid.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}.card.pad{padding:clamp(20px,3.5vw,32px)}
.card.dark{background:var(--navy);color:#cfd7e3;border-color:var(--navy)}.card.dark h2{color:#fff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}@media (max-width:760px){.split{grid-template-columns:1fr}}
.prop-media{position:relative;display:block;aspect-ratio:4/3;background:var(--navy);overflow:hidden}.prop-media img{width:100%;height:100%;object-fit:cover}
.prop-ph{height:100%;display:flex;align-items:center;justify-content:center;color:var(--accent);padding:12% 14% 8%;background:linear-gradient(160deg,var(--navy),#1d3352)}
.prop-ph.wide{flex-direction:column;border-radius:var(--r);padding:40px;aspect-ratio:auto;max-height:340px}.prop-ph.wide svg{max-width:340px}.prop-ph.wide p{color:#b9c3d2;margin:12px 0 0;font-size:.9rem}
.prop-media .badge{position:absolute;left:14px;top:14px}
.card-body{padding:18px 20px 20px}.card-body h3{margin:0 0 2px}.card-body h3 a{text-decoration:none;color:inherit}.card-body .muted{margin:0 0 10px}.meta{margin:0;font-size:.9rem}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:24px}.gallery img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%}
.prose{max-width:44em;font-size:1.05rem;margin:24px 0 32px}
.unit-card .price{font-family:var(--serif);font-size:1.6rem;color:var(--navy);margin:.2em 0 .6em}.unit-card .price span{font-size:.9rem;color:var(--muted)}
.empty{text-align:center}
/* badges */
.badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:4px 10px;border-radius:999px;background:#eef0f3;color:#3d4756;white-space:nowrap;vertical-align:middle}
.b-renovating,.b-acquired{background:#fdf3e4;color:#8a5a12}.b-leasing,.b-vacant{background:#e6f3ec;color:#1f6b45}.b-stabilized,.b-occupied{background:#e8eef8;color:#284a7e}
.b-ok{background:#e6f3ec;color:#1f6b45}.b-due{background:#fdf3e4;color:#8a5a12}.b-late{background:#fbe5e5;color:#9c2626}
.s-new{background:#fbe5e5;color:#9c2626}.s-acknowledged{background:#fdf3e4;color:#8a5a12}.s-scheduled{background:#efe9fb;color:#5b3fa0}.s-in_progress{background:#e8eef8;color:#284a7e}.s-completed{background:#e6f3ec;color:#1f6b45}.s-closed{background:#eef0f3;color:#5d6878}
.u-emergency{background:#9c2626;color:#fff}.u-high{background:#fbe5e5;color:#9c2626}.u-normal{background:#eef0f3}.u-low{background:#eef0f3;color:#5d6878}
/* tables */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl{width:100%;border-collapse:collapse;font-size:.94rem}
.tbl th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.tbl tr:last-child td{border-bottom:0}.tbl .r{text-align:right;white-space:nowrap}.tbl tfoot td{font-weight:700;border-top:2px solid var(--line)}
.card .tbl{background:#fff}
/* forms */
.form{display:grid;gap:14px}.form label{display:grid;gap:6px;font-weight:600;font-size:.9rem;color:var(--navy)}
input,select,textarea{font:16px/1.4 var(--sans);color:var(--ink);background:#fff;border:1px solid #cfd5dd;border-radius:10px;padding:11px 12px;width:100%;min-height:46px}
textarea{min-height:auto;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid rgba(184,146,90,.3);outline-offset:0}
input[type=file]{padding:9px;min-height:auto}.form label.check{display:flex;align-items:center;gap:10px;font-weight:500}.check input{width:20px;height:20px;min-height:0;accent-color:var(--navy)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:560px){.row2{grid-template-columns:1fr}.row3{grid-template-columns:1fr 1fr}.row3 label:first-child{grid-column:1/-1}}
.hp{position:absolute!important;left:-9999px}
.flash{padding:12px 16px;border-radius:10px;background:#eef0f3;margin:0 0 16px;font-size:.95rem}.flash.ok{background:#e6f3ec;color:#1f5a3b}.flash.err{background:#fbe5e5;color:#8a2020}
.notice{border-left:4px solid var(--bad);background:#fff4f4;padding:12px 16px;border-radius:8px;font-size:.95rem;margin-bottom:16px}
/* footer */
.site-footer{background:var(--navy);color:#b9c3d2;padding:48px 0 24px;margin-top:40px}.site-footer a{color:#e9edf3}.site-footer .wordmark{color:#fff}.site-footer .wm-sub{color:#8b97a8}
.ftr{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}.ftr .muted{color:#8b97a8;margin-top:14px;max-width:26em}.ftr-h{font-family:var(--sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin-bottom:10px}
.placeholder{color:#8b97a8;font-style:italic}.legal{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #253852;margin-top:32px;padding-top:18px;font-size:.8rem;color:#7b889b}
@media (max-width:760px){.ftr{grid-template-columns:1fr}}
/* auth */
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:linear-gradient(160deg,var(--navy),#1a2e4a)}
.auth-card{width:min(440px,100%)}.auth-card .wordmark{margin-bottom:24px}.auth-card h1{font-size:1.6rem}
/* admin */
.area-admin{background:#f3f4f6}.admin-header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20}
.ahdr{display:flex;align-items:center;gap:12px;min-height:58px}.admin-header .wordmark{color:#fff}.admin-header .wm-sub{color:#8b97a8}
.admin-tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;background:rgba(184,146,90,.18);color:var(--accent);padding:4px 10px;border-radius:999px;font-weight:700}.logout{margin-left:auto}
.admin-tabs{background:var(--navy2);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}
.tabs-inner{display:flex;gap:2px}.admin-tabs a{color:#b9c3d2;text-decoration:none;padding:12px 14px;font-size:.9rem;font-weight:500;white-space:nowrap;border-bottom:2px solid transparent}
.admin-tabs a[aria-current]{color:#fff;border-bottom-color:var(--accent)}.admin-tabs a:hover{color:#fff}
.admin-main{padding:24px 0 64px}.admin-main .card{margin-bottom:20px}.admin-main h1{font-size:clamp(1.5rem,4vw,2rem);margin:0}
.page-title{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.page-title .muted{margin:4px 0 0;width:100%}
.crumbs{font-size:.85rem;margin:0 0 6px;color:var(--muted)}.crumbs a{color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:20px}
.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow)}
.stat span{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.stat strong{font-family:var(--serif);font-size:1.6rem;color:var(--navy)}.stat em{font-style:normal;font-size:.8rem;color:var(--muted)}
.stat.warn strong{color:var(--warn)}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}@media (max-width:900px){.cols{grid-template-columns:1fr}}
.cols.wide-left{grid-template-columns:1.5fr 1fr}@media (max-width:900px){.cols.wide-left{grid-template-columns:1fr}}
.list{list-style:none;margin:0;padding:0}.list li{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.list li:last-child{border:0}
.list li>a{flex:1;min-width:180px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column}.list li>a .muted{font-size:.85rem}
details.add{margin-top:14px}details.add summary{list-style:none;display:inline-flex}details.add summary::-webkit-details-marker{display:none}details.add[open] summary{margin-bottom:16px}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-bottom:16px}.thumbs figure{margin:0}.thumbs img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%;margin-bottom:6px}
.big{font-family:var(--serif);font-size:2rem;color:var(--navy);margin:0 0 8px}
.danger-zone h2{color:var(--bad);font-size:1.1rem}
.narrow-card{max-width:720px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.filters a{padding:7px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;font-size:.85rem;color:var(--ink)}.filters a[aria-current]{background:var(--navy);color:#fff;border-color:var(--navy)}
.timeline{list-style:none;margin:0;padding:0 0 0 18px;border-left:2px solid var(--line)}.timeline li{position:relative;padding:0 0 16px 12px}.timeline li::before{content:"";position:absolute;left:-25px;top:6px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--accent)}
.timeline time{font-size:.78rem;color:var(--muted);display:block}.timeline .who{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-d);font-weight:700}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0 0 12px}.kv dt{color:var(--muted);font-size:.85rem}.kv dd{margin:0;font-weight:500}
.inline{display:inline}.steps{display:flex;gap:4px;margin:4px 0 16px;flex-wrap:wrap}.steps span{flex:1;min-width:80px;font-size:.7rem;text-align:center;padding:6px 4px;border-radius:6px;background:#eef0f3;color:var(--muted);font-weight:600}.steps span.done{background:var(--navy);color:#fff}.steps span.cur{background:var(--accent);color:#14100a}
.code-box{font-family:ui-monospace,Menlo,monospace;font-size:1.5rem;letter-spacing:.12em;background:var(--navy);color:#fff;padding:14px 18px;border-radius:10px;display:inline-block;margin:6px 0}
.portal-top{background:linear-gradient(160deg,var(--navy),#1a2e4a);color:#cfd7e3;padding:32px 0}.portal-top h1{color:#fff;margin:0 0 4px;font-size:clamp(1.5rem,4vw,2.2rem)}.portal-top p{margin:0}
.balance{font-family:var(--serif);font-size:2.4rem;color:var(--navy);margin:0}
.co-card .co-logo{width:52px;height:52px;border-radius:12px;background:var(--navy);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:14px;overflow:hidden}.co-card .co-logo svg{width:28px;height:28px}.co-card .co-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.co-card p{margin:0}
.cols>*,.cols.wide-left>*{min-width:0}.stats{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}
@media (max-width:560px){.hide-sm{display:none}.stat strong{font-size:1.35rem}.tbl th,.tbl td{padding:10px 8px}.kv{grid-template-columns:1fr}.kv dt{margin-top:6px}}

/* QA pass 2: contrast, touch targets, featured card, 404, form */
.hero .eyebrow,.ftr-h,.admin-tag,.co-card .co-logo,.prop-ph,.hero-art{color:var(--accent-l)}
.pillars .num{color:var(--accent-d)}
.site-footer .placeholder{color:#a3aebd}
.legal{color:#a3aebd}
.ftr-links{list-style:none;margin:0;padding:0}
.ftr-links li{margin:0 0 4px}
.req{color:var(--bad);font-weight:700}
.req-note{margin:-.4em 0 .8em}
.privacy{margin:12px 0 0}
.unit-note{margin:-.2em 0 .9em}
.prop-desc{margin:12px 0 0;color:var(--muted)}
.prop-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:18px 0 0}
@media (min-width:861px){
  .grid.cards.one{grid-template-columns:1fr}
  .prop-card.featured{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch}
  .prop-card.featured .prop-media{aspect-ratio:auto;min-height:340px}
  .prop-card.featured .card-body{padding:36px 40px;display:flex;flex-direction:column;justify-content:center}
  .prop-card.featured h3{font-size:1.7rem}
}
@media (max-width:760px){
  .ftr-links li{margin:0}
  .site-footer a,.ftr-links li{min-height:44px;display:flex;align-items:center;gap:6px}
  .site-footer .wordmark{min-height:44px;justify-content:center;display:inline-flex}
}
.nf{background:linear-gradient(160deg,var(--navy) 0%,#1a2e4a 100%);color:#e9edf3;padding:clamp(48px,9vw,110px) 0}
.nf h1{color:#fff}.nf .lede{color:#c9d2de}.nf .eyebrow{color:var(--accent-l)}
.nf-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.nf-art{color:var(--accent-l);opacity:.85}
.nf-links{list-style:none;padding:0;margin:26px 0 0}
.nf-links a{color:#e9edf3;display:inline-flex;min-height:44px;align-items:center}
.nf-links a:hover{color:var(--accent-l)}
@media (max-width:760px){.nf-grid{grid-template-columns:1fr}.nf-art{max-width:320px}}
.nf .btn.ghost{color:#fff}
.site-nav .nav-cta[aria-current]{color:var(--accent-l)}
@media (max-width:760px){.site-footer .wordmark{align-items:flex-start}}
.nf{margin-bottom:-40px}

.prop-media img.static-ph{object-position:50% 45%}
.prop-hero{margin:0 0 24px;border-radius:var(--r);overflow:hidden;background:var(--navy);aspect-ratio:4/3;max-height:640px}
.prop-hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
@media (min-width:760px){.prop-hero{aspect-ratio:auto;height:min(520px,56vw)}.prop-hero img{object-position:50% 70%}}

/* NJ Rental Spot footer extras */
.ftr-social{margin:10px 0 0}.ftr-social a{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;color:#e9edf3}.ftr-social a:hover{color:var(--accent-l)}.ftr-social svg{flex:none}
.legal .parent{color:#8b97a8}

/* ===== NJ Rental Spot: warm, family-friendly renter theme (public + portal only; admin unchanged) ===== */
.area-public,.area-portal{--accent:#e08a4f;--accent-d:#a14d26;--accent-l:#e9a273;--bg:#fbf7f1;--line:#ece3d6;--warm:#fdf3e7;--warm2:#f6e6d2;background:var(--bg)}
.area-public .site-header,.area-portal .site-header{background:rgba(251,247,241,.94)}
.area-public .btn:hover,.area-portal .btn:hover{background:#ea9d68;color:#14100a}
.area-public .hero,.area-portal .hero{background:linear-gradient(160deg,#fff8ee 0%,#fbe9d4 100%);color:var(--ink);border-bottom:1px solid var(--line)}
.area-public .hero h1{color:var(--navy)}.area-public .hero .lede{color:#5a5248}.area-public .hero .eyebrow{color:var(--accent-d)}
.area-public .hero .btn.ghost{color:var(--navy)}.area-public .hero .btn.ghost:hover{background:rgba(14,26,43,.06)}
.area-public .hero-art{color:var(--accent);opacity:.9}
.area-public .band{background:#fff}
.area-public .pillars .num{color:var(--accent-d)}
.area-public .card.dark,.area-portal .card.dark{background:var(--warm);color:var(--ink);border-color:var(--warm2)}
.area-public .card.dark h2,.area-portal .card.dark h2{color:var(--navy)}
.area-public .card.dark .btn.light,.area-portal .card.dark .btn.light{background:var(--navy);color:#fff}
.area-public .co-card .co-logo,.area-public .prop-ph{color:var(--accent)}
.area-public .site-footer,.area-portal .site-footer{background:#f3eadd;color:#4b4339;border-top:1px solid var(--line)}
.area-public .site-footer a,.area-portal .site-footer a{color:var(--navy)}
.area-public .site-footer .wordmark,.area-portal .site-footer .wordmark{color:var(--navy)}
.area-public .site-footer .wm-sub,.area-portal .site-footer .wm-sub{color:#6b5a49}
.area-public .ftr .muted,.area-portal .ftr .muted{color:#5f564b}
.area-public .ftr-h,.area-portal .ftr-h{color:var(--accent-d)}
.area-public .site-footer .placeholder,.area-portal .site-footer .placeholder{color:#7a6f62}
.area-public .legal,.area-portal .legal{color:#6b5a49;border-top-color:#e2d5c3}
.area-public .legal .parent,.area-portal .legal .parent{color:#6b5a49}
.area-public .ftr-social a,.area-portal .ftr-social a{color:var(--navy)}
.area-public .ftr-social a:hover,.area-portal .ftr-social a:hover{color:var(--accent-d)}
.area-public .nf{background:linear-gradient(160deg,#fff8ee 0%,#fbe9d4 100%);color:var(--ink)}
.area-public .nf h1{color:var(--navy)}.area-public .nf .lede{color:#5a5248}.area-public .nf .eyebrow{color:var(--accent-d)}
.area-public .nf-art{color:var(--accent)}.area-public .nf-links a{color:var(--navy)}.area-public .nf-links a:hover{color:var(--accent-d)}
.area-public .nf .btn.ghost{color:var(--navy)}

/* listing pages + photo gallery (2026-10-12) */
.listing-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.listing-band{padding-bottom:clamp(20px,3vw,32px)}
.listing-card{display:flex;flex-direction:column}.listing-card .pad{padding:18px 20px 22px}
.listing-card h3{margin:.1em 0 .35em;font-size:1.25rem}.listing-card h3 a{color:inherit;text-decoration:none}.listing-card h3 a:hover{text-decoration:underline}
.listing-card .price{font-family:var(--serif);font-size:1.15rem;color:var(--navy);margin:.2em 0 .9em}
.lc-img{position:relative;display:block;aspect-ratio:4/3;background:#e9e6df;overflow:hidden}.lc-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.lc-img:hover img{transform:scale(1.03)}
.lc-count,.lg-all{position:absolute;right:10px;bottom:10px;background:rgba(14,26,43,.82);color:#fff;font-size:.8rem;font-weight:600;padding:6px 11px;border-radius:999px;pointer-events:none}
.listing{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"cover side" "grid side";column-gap:clamp(20px,3vw,36px);row-gap:10px;align-items:start}
.listing .lg-cover{grid-area:cover;margin:0}.listing .listing-side{grid-area:side}.listing .lg-grid{grid-area:grid}
@media (max-width:900px){.listing{grid-template-columns:minmax(0,1fr);grid-template-areas:"cover" "side" "grid";row-gap:16px}}
.listing-side{position:sticky;top:96px}@media (max-width:900px){.listing-side{position:static}}
.lg-cover{position:relative;display:block;border-radius:var(--r);overflow:hidden;background:#e9e6df;aspect-ratio:4/3;margin-bottom:10px}
.lg-cover img{width:100%;height:100%;object-fit:cover}
.lg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
@media (max-width:520px){.lg-grid{grid-template-columns:repeat(3,1fr);gap:5px}.lg-cover{border-radius:10px}}
.lg-item{display:block;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#e9e6df}.lg-item img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}.lg-item:hover img{opacity:.85}
.price-lg{font-family:var(--serif);font-size:1.6rem;color:var(--navy);margin:0 0 .8em}
.h3{font-size:1.2rem}
.facts{margin:0 0 1.2em;padding:0;list-style:none}.facts li{padding:8px 0 8px 26px;border-top:1px solid var(--line);position:relative}.facts li:before{content:"";position:absolute;left:4px;top:15px;width:9px;height:9px;border-radius:50%;background:var(--accent)}
.listing-side .actions{display:flex;flex-wrap:wrap;gap:10px}.listing-side .actions .btn{flex:1 1 auto}
.lb{position:fixed;inset:0;z-index:100;background:rgba(8,12,20,.96);display:flex;align-items:center;justify-content:center;touch-action:pan-y pinch-zoom;overscroll-behavior:contain}
.lb[hidden]{display:none}
.lb img{max-width:100vw;max-height:100vh;max-height:100dvh;object-fit:contain;user-select:none;-webkit-user-select:none;transition:opacity .15s}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:999px;width:48px;height:48px;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb button:hover{background:rgba(255,255,255,.24)}
.lb .lb-x{top:max(12px,env(safe-area-inset-top));right:12px}.lb .lb-p{left:12px;top:50%;transform:translateY(-50%)}.lb .lb-n{right:12px;top:50%;transform:translateY(-50%)}
.lb .lb-c{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;color:#cfd7e3;font-size:.9rem;padding:0 16px}
@media (max-width:600px){.lb .lb-p,.lb .lb-n{display:none}}
body.lb-open{overflow:hidden}

/* 2F listing: featured photos first, rest behind "See all" (2026-10-12) */
.listing{grid-template-areas:"cover side" "grid side" "more side"}
.listing .lg-more{grid-area:more;margin-top:8px}
.lg-more>summary{list-style:none;cursor:pointer;display:inline-flex;margin:6px 0 4px}.lg-more>summary::-webkit-details-marker{display:none}
.lg-more[open]>summary{display:none}.lg-more h2{margin:.4em 0 .6em}
@media (max-width:900px){.listing{grid-template-areas:"cover" "grid" "side" "more"}}
.listing-band+.after-listings{padding-top:0}

/* 2F listing v3: every photo on the page, grouped by room (2026-10-12) */
.listing{grid-template-areas:"cover side" "feat side" "more side"}
.listing .lg-feat{grid-area:feat}.listing .lg-more{grid-area:more;margin-top:14px}
@media (max-width:900px){.listing{grid-template-areas:"cover" "feat" "side" "more"}}
.see-all{display:flex;justify-content:center;width:100%;margin-top:12px;font-weight:600}
.lg-more>h2{margin:.2em 0 .2em}.lg-more>p{margin:0 0 6px}
.lg-group{margin-top:18px}.lg-gh{font-size:1.05rem;margin:0 0 8px;display:flex;align-items:baseline;gap:8px}.lg-gh .muted{font-size:.85rem;font-weight:500}
html{scroll-behavior:smooth}#all-photos{scroll-margin-top:84px}

/* ===== Luxury listing (2026-10-12): body.lux, scoped to listing pages ===== */
body.lux{--lx-ink:#14161a;--lx-ink2:#1e2127;--lx-ink3:#2a2e36;--lx-gold:#c9a96e;--lx-gold-l:#e3cc9c;--lx-gold-d:#8a6a35;--lx-ivory:#f7f4ee;--lx-stone:#ebe5da;--lx-muted:#6d685f;--lx-r:22px;--lx-r-sm:14px;--lx-shadow:0 1px 2px rgba(20,22,26,.05),0 12px 32px -8px rgba(20,22,26,.14);--lx-shadow-lg:0 2px 4px rgba(20,22,26,.06),0 28px 60px -18px rgba(20,22,26,.32);--lx-serif:"Cormorant Garamond","Iowan Old Style",Palatino,Georgia,serif;--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  background:var(--lx-ivory);color:var(--lx-ink);font-family:var(--lx-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
/* header */
body.lux .site-header{background:rgba(20,22,26,.86);backdrop-filter:saturate(1.3) blur(14px);-webkit-backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid rgba(201,169,110,.18)}
body.lux .wordmark{color:#f4efe6}body.lux .wm-nj{color:var(--lx-gold)}body.lux .wm-sub{color:rgba(227,204,156,.7)}
body.lux .site-nav a{color:rgba(244,239,230,.82);font-family:var(--lx-sans);font-weight:500;letter-spacing:.01em}
body.lux .site-nav a:hover{background:rgba(255,255,255,.06);color:#fff}
body.lux .site-nav a[aria-current]{color:var(--lx-gold-l)}
body.lux .site-nav .nav-cta{background:var(--lx-gold);color:var(--lx-ink);font-weight:600}
body.lux .site-nav .nav-cta:hover{background:var(--lx-gold-l);color:var(--lx-ink)}
body.lux .nav-toggle span{background:#f4efe6}
@media (max-width:900px){body.lux .nav-wrap{background:var(--lx-ink);border-bottom:1px solid rgba(201,169,110,.18)}}
/* shared bits */
.lux .lx-kicker{font:600 .72rem/1 var(--lx-sans);letter-spacing:.26em;text-transform:uppercase;color:var(--lx-gold-d);margin:0 0 14px;display:flex;align-items:center;gap:12px}
.lux .lx-kicker:before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.lux .lx-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:14px 26px;border-radius:999px;font:600 .92rem/1 var(--lx-sans);letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;border:0}
.lux .lx-btn:hover{transform:translateY(-1px)}
.lux .lx-gold{background:linear-gradient(135deg,#e1c896 0%,#c9a96e 55%,#b38e52 100%);color:#16130d;box-shadow:0 8px 22px -8px rgba(179,142,82,.7)}
.lux .lx-gold:hover{box-shadow:0 12px 28px -8px rgba(179,142,82,.85);color:#16130d}
.lux .lx-glass{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.38);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.lux .lx-glass:hover{background:rgba(255,255,255,.2);color:#fff}
.lux .lx-dark{background:var(--lx-ink);color:#f4efe6}.lux .lx-dark:hover{background:var(--lx-ink3);color:#fff}
.lux .lx-line{background:transparent;color:#f4efe6;box-shadow:inset 0 0 0 1px rgba(227,204,156,.5)}.lux .lx-line:hover{background:rgba(227,204,156,.1);color:#fff}
/* hero */
.lux .lx-hero{position:relative;margin-top:clamp(14px,2.4vw,28px)}
.lux .lx-cover{position:relative;display:block;border-radius:clamp(22px,2.6vw,32px);overflow:hidden;background:#d9d2c5;aspect-ratio:16/8.4;box-shadow:var(--lx-shadow-lg);isolation:isolate}
.lux .lx-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.lux .lx-cover:hover img{transform:scale(1.045)}
.lux .lx-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,15,18,.05) 0%,rgba(14,15,18,0) 35%,rgba(14,15,18,.55) 72%,rgba(14,15,18,.86) 100%);pointer-events:none}
.lux .lx-count{position:absolute;top:18px;right:18px;background:rgba(20,22,26,.55);color:#f4efe6;font:600 .74rem/1 var(--lx-sans);letter-spacing:.14em;text-transform:uppercase;padding:10px 14px;border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);pointer-events:none}
.lux .lx-hero-copy{position:absolute;left:0;right:0;bottom:0;padding:clamp(22px,4vw,52px);color:#fff;pointer-events:none}
.lux .lx-hero-copy a{pointer-events:auto}
.lux .lx-eyebrow{display:flex;gap:10px;align-items:center;margin:0 0 12px;font:600 .74rem/1 var(--lx-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--lx-gold-l)}
.lux .lx-eyebrow a{color:inherit;text-decoration:none}.lux .lx-eyebrow a:hover{color:#fff}
.lux .lx-hero h1{font-family:var(--lx-serif);font-weight:500;font-size:clamp(2.1rem,5vw,4.1rem);line-height:1.02;letter-spacing:-.01em;margin:0 0 10px;max-width:16ch;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.lux .lx-where{margin:0 0 22px;font-size:clamp(.95rem,1.4vw,1.08rem);color:rgba(255,255,255,.86);letter-spacing:.01em}
.lux .lx-hero-cta{display:flex;flex-wrap:wrap;gap:12px}
/* body layout */
.lux .lx-body{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(28px,4vw,64px);align-items:start;padding:clamp(44px,6vw,84px) 0 clamp(20px,3vw,40px)}
.lux .lx-intro{margin-bottom:clamp(36px,5vw,60px)}
.lux .lx-summary{font-family:var(--lx-serif);font-weight:500;font-size:clamp(1.5rem,2.6vw,2.15rem);line-height:1.25;color:var(--lx-ink);margin:0;max-width:30ch}
.lux .lx-sec-h{display:flex;align-items:baseline;justify-content:space-between}
/* highlight grid */
.lux .lx-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.lux .lx-tile{position:relative;display:block;overflow:hidden;border-radius:var(--lx-r-sm);background:var(--lx-stone);aspect-ratio:1;box-shadow:0 1px 2px rgba(20,22,26,.06);isolation:isolate}
.lux .lx-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s;opacity:1}
.lux .lx-tile:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 55%,rgba(14,15,18,.28));opacity:0;transition:opacity .4s;pointer-events:none}
.lux .lx-tile:hover img{transform:scale(1.06);opacity:1}
.lux .lx-tile:hover:after{opacity:1}
.lux .lx-tile:focus-visible{outline:2px solid var(--lx-gold);outline-offset:3px}
.lux .lx-grid .lx-tile:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;border-radius:var(--lx-r)}
.lux .see-all{display:flex;width:100%;margin-top:22px;min-height:56px}
/* side card */
.lux .lx-side{position:sticky;top:96px}
.lux .lx-card{background:linear-gradient(160deg,#1f2228 0%,#14161a 70%);color:#ece6db;border-radius:var(--lx-r);padding:clamp(26px,3vw,34px);box-shadow:var(--lx-shadow-lg);position:relative;overflow:hidden}
.lux .lx-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(227,204,156,.55),rgba(227,204,156,0) 40%,rgba(227,204,156,.25));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.lux .lx-card .lx-kicker{color:var(--lx-gold)}
.lux .lx-price{font-family:var(--lx-serif);font-weight:500;font-size:2.15rem;line-height:1.05;color:#fff;margin:0 0 22px}
.lux .lx-facts{list-style:none;margin:0 0 26px;padding:0}
.lux .lx-facts li{position:relative;padding:12px 0 12px 24px;border-top:1px solid rgba(255,255,255,.08);font-size:.95rem;color:#d9d2c6}
.lux .lx-facts li:last-child{border-bottom:1px solid rgba(255,255,255,.08)}
.lux .lx-facts li:before{content:"";position:absolute;left:2px;top:50%;width:7px;height:7px;margin-top:-3.5px;transform:rotate(45deg);background:var(--lx-gold);border-radius:1px}
.lux .lx-actions{display:grid;grid-template-columns:1fr auto;gap:10px}
.lux .lx-agent{display:flex;gap:14px;align-items:center;margin-top:24px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08)}
.lux .lx-mono{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font:500 1.15rem/1 var(--lx-serif);letter-spacing:.04em;color:var(--lx-ink);background:linear-gradient(135deg,#e9d5aa,#c9a96e)}
.lux .lx-agent p{margin:0}.lux .lx-agent-n{font-weight:600;color:#fff;font-size:1rem}
.lux .lx-agent-r{font-size:.84rem;color:#a9a294;word-break:break-word}.lux .lx-agent-r a{color:var(--lx-gold-l);text-decoration:none}.lux .lx-agent-r a:hover{text-decoration:underline}
.lux .lx-reg{margin:18px 0 0;font-size:.88rem}.lux .lx-reg a{color:var(--lx-gold-l);text-decoration:none}.lux .lx-reg a:hover{color:#fff}
/* room by room */
.lux .lx-more{padding:clamp(28px,4vw,56px) 0 clamp(56px,7vw,96px);scroll-margin-top:84px}
.lux .lx-more-h{max-width:640px;margin-bottom:clamp(14px,2vw,24px)}
.lux .lx-more-h h2{font-family:var(--lx-serif);font-weight:500;font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.05;margin:0 0 10px;color:var(--lx-ink)}
.lux .lx-more-h p:last-child{color:var(--lx-muted);margin:0}
.lux .lx-group{margin-top:clamp(28px,3.5vw,44px)}
.lux .lx-gh{display:flex;align-items:baseline;gap:12px;margin:0 0 14px;font-family:var(--lx-serif);font-weight:600;font-size:1.5rem;color:var(--lx-ink)}
.lux .lx-gh span{font:600 .72rem/1 var(--lx-sans);letter-spacing:.14em;color:var(--lx-gold-d);background:#efe7d8;padding:6px 10px;border-radius:999px}
.lux .lx-ggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
/* reveal on scroll (only when JS runs) */
.lux.js-reveal [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.lux.js-reveal [data-reveal].in{opacity:1;transform:none}
/* footer */
body.lux .site-footer{background:var(--lx-ink);color:#b9b2a5;border-top:1px solid rgba(201,169,110,.18)}
body.lux .site-footer a,body.lux .site-footer .wordmark,body.lux .ftr-social a{color:#f4efe6}
body.lux .site-footer a:hover,body.lux .ftr-social a:hover{color:var(--lx-gold-l)}
body.lux .site-footer .wm-sub{color:rgba(227,204,156,.7)}
body.lux .ftr .muted{color:#9d968a}body.lux .ftr-h{color:var(--lx-gold);font-family:var(--lx-sans);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem}
body.lux .legal{color:#8f887c;border-top-color:rgba(255,255,255,.08)}
/* sticky contact (phone) */
.lux .lx-sticky{display:none}
@media (max-width:900px){
  .lux .lx-body{grid-template-columns:minmax(0,1fr)}
  .lux .lx-side{position:static}
  .lux .lx-sticky{display:flex;gap:10px;position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:40;padding:8px;border-radius:999px;background:rgba(20,22,26,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 18px 40px -12px rgba(0,0,0,.55),inset 0 0 0 1px rgba(227,204,156,.22);transform:translateY(140%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
  .lux .lx-sticky.show{transform:none}
  .lux .lx-sticky-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;border-radius:999px;text-decoration:none;background:linear-gradient(135deg,#e1c896 0%,#c9a96e 55%,#b38e52 100%);color:#16130d}
  .lux .lx-sticky-t{font:700 .98rem/1.1 var(--lx-sans);letter-spacing:.02em}.lux .lx-sticky-s{font:500 .76rem/1.2 var(--lx-sans);opacity:.75;margin-top:2px}
  .lux .lx-sticky-mail{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#f4efe6;box-shadow:inset 0 0 0 1px rgba(227,204,156,.45)}
  body.lux .site-footer{padding-bottom:84px}
  body.lb-open .lx-sticky{display:none}
}
@media (max-width:640px){
  .lux .lx-hero{width:min(1160px,100% - 24px)}
  .lux .lx-cover{aspect-ratio:4/5.2;border-radius:26px}
  .lux .lx-count{top:14px;right:14px;padding:9px 12px;font-size:.68rem}
  .lux .lx-hero-copy{padding:22px 20px 24px}
  .lux .lx-hero h1{font-size:2.35rem}
  .lux .lx-hero-cta .lx-btn{flex:1 1 auto;min-height:48px;padding:13px 18px}
  .lux .lx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .lux .lx-tile{aspect-ratio:4/5;border-radius:16px}
  .lux .lx-grid .lx-tile:first-child{grid-row:auto;aspect-ratio:3/2;border-radius:20px}
  .lux .lx-ggrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .lux .lx-ggrid .lx-tile{aspect-ratio:1;border-radius:12px}
  .lux .lx-summary{font-size:1.6rem}
  .lux .lx-actions{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.lux *{transition:none!important}.lux.js-reveal [data-reveal]{opacity:1;transform:none}}

/* units page cards: softer, rounder (2026-10-12) */
.listing-card{border-radius:22px;overflow:hidden;box-shadow:0 1px 2px rgba(20,22,26,.05),0 14px 34px -14px rgba(20,22,26,.22);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.listing-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(20,22,26,.06),0 24px 48px -16px rgba(20,22,26,.3)}
.listing-card .lc-img img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.listing-card .lc-img:hover img{transform:scale(1.05)}
.listing-card .lc-count{background:rgba(20,22,26,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);letter-spacing:.06em}
.listing-card .price{font-size:1.3rem}

/* lux refinements */
body.lux .wm-name{font-family:var(--lx-serif);font-weight:600;letter-spacing:.01em}
.lux .lx-shade{background:linear-gradient(180deg,rgba(14,15,18,.10) 0%,rgba(14,15,18,0) 22%,rgba(14,15,18,.38) 50%,rgba(14,15,18,.78) 78%,rgba(14,15,18,.9) 100%)}
@media (min-width:901px){.lux .lx-shade{background:linear-gradient(90deg,rgba(14,15,18,.62) 0%,rgba(14,15,18,.25) 45%,rgba(14,15,18,0) 70%),linear-gradient(180deg,rgba(14,15,18,0) 45%,rgba(14,15,18,.6) 100%)}.lux .lx-hero h1{max-width:18ch}}
.lux .lx-eyebrow{text-shadow:0 1px 12px rgba(0,0,0,.45)}
.lux .lx-where{text-shadow:0 1px 12px rgba(0,0,0,.35)}

/* language picker (i18n, 2026-10-15) */
.hdr>.wordmark{margin-right:auto}
.hdr>.nav-wrap{order:2}.hdr>.lang-sw{order:3}.hdr>.nav-toggle{order:4}








@media (max-width:760px){.hdr{gap:10px}}

.lang-hint{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 14px;padding:10px 48px 10px 20px;background:var(--navy);color:#e9edf3;font-size:.9rem;position:relative;text-align:center}
.lang-hint a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.lang-hint button{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;color:#e9edf3;font-size:1.4rem;line-height:1;width:36px;height:36px;cursor:pointer}
body.lux .lang-hint{background:#1d2026;color:#f4efe6}
@media (min-width:761px) and (max-width:1020px){.hdr{gap:8px}.site-nav{gap:0}.site-nav a{padding:9px 7px;font-size:.84rem}.site-nav .nav-cta{padding:9px 12px}}

/* ===== language menu + scripts + right-to-left (i18n, 13 languages, 2026-10-15) ===== */
.lang-sw{position:relative;flex:none;font:600 .74rem/1 var(--sans);letter-spacing:.06em}
.lang-sw>summary{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.lang-sw>summary::-webkit-details-marker{display:none}
.lang-sw>summary::marker{content:""}
.lang-sw>summary:hover,.lang-sw[open]>summary{background:rgba(0,0,0,.05)}
.lang-sw>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.lang-sw .ls-caret{opacity:.6;transition:transform .2s}
.lang-sw[open] .ls-caret{transform:rotate(180deg)}
.ls-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:228px;max-width:calc(100vw - 24px);max-height:calc(100vh - 96px);overflow:auto;-webkit-overflow-scrolling:touch;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 44px -14px rgba(14,26,43,.38);padding:6px;letter-spacing:0}
.ls-menu ul{list-style:none;margin:0;padding:0}
.ls-menu a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:42px;padding:0 12px;border-radius:10px;color:var(--ink);text-decoration:none;font:500 1rem/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Geeza Pro","SF Arabic","Noto Sans Arabic","Noto Naskh Arabic","Segoe UI",Tahoma,"Kohinoor Devanagari","Devanagari Sangam MN","Noto Sans Devanagari","Nirmala UI",Mangal,"Gujarati Sangam MN","Kohinoor Gujarati","Noto Sans Gujarati","Nirmala UI",Shruti,"Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR","Malgun Gothic","PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;letter-spacing:0}
.ls-menu a:hover{background:#f3f1ec}
.ls-menu a[aria-current]{background:var(--navy);color:#fff}
.ls-menu .ls-c{font:600 .68rem/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:.08em;opacity:.5;direction:ltr}
body.lux .lang-sw>summary{color:#f4efe6;border-color:rgba(201,169,110,.32)}
body.lux .lang-sw>summary:hover,body.lux .lang-sw[open]>summary{background:rgba(255,255,255,.08)}
body.lux .ls-menu{background:#fbf8f2;border-color:rgba(201,169,110,.35)}
body.lux .ls-menu a{color:var(--lx-ink)}
body.lux .ls-menu a:hover{background:#f1eadc}
body.lux .ls-menu a[aria-current]{background:var(--lx-ink);color:var(--lx-gold-l)}
@media (max-width:760px){.lang-sw>summary{min-height:40px;padding:0 10px}.ls-menu{position:fixed;top:72px;right:12px}}
@media (max-width:360px){.lang-sw .ls-caret{display:none}.lang-sw>summary{padding:0 8px;gap:4px}}
/* scripts: Latin brand fonts first, then each script's own system font (no downloads) */
html:lang(ar){--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Geeza Pro","SF Arabic","Noto Sans Arabic","Noto Naskh Arabic","Segoe UI",Tahoma,sans-serif;--serif:"Iowan Old Style",Palatino,Georgia,"Noto Naskh Arabic","Geeza Pro","Times New Roman",serif}
html:lang(ar) body.lux{--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Geeza Pro","SF Arabic","Noto Sans Arabic","Noto Naskh Arabic","Segoe UI",Tahoma,sans-serif;--lx-serif:"Cormorant Garamond","Iowan Old Style",Georgia,"Noto Naskh Arabic","Geeza Pro","Times New Roman",serif}
html:lang(hi){--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Kohinoor Devanagari","Devanagari Sangam MN","Noto Sans Devanagari","Nirmala UI",Mangal,sans-serif;--serif:"Iowan Old Style",Palatino,Georgia,"Kohinoor Devanagari","Devanagari Sangam MN","Noto Sans Devanagari","Nirmala UI",Mangal,serif}
html:lang(hi) body.lux{--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Kohinoor Devanagari","Devanagari Sangam MN","Noto Sans Devanagari","Nirmala UI",Mangal,sans-serif;--lx-serif:"Cormorant Garamond","Iowan Old Style",Georgia,"Kohinoor Devanagari","Devanagari Sangam MN","Noto Sans Devanagari","Nirmala UI",Mangal,serif}
html:lang(gu){--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Gujarati Sangam MN","Kohinoor Gujarati","Noto Sans Gujarati","Nirmala UI",Shruti,sans-serif;--serif:"Iowan Old Style",Palatino,Georgia,"Gujarati Sangam MN","Kohinoor Gujarati","Noto Sans Gujarati","Nirmala UI",Shruti,serif}
html:lang(gu) body.lux{--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Gujarati Sangam MN","Kohinoor Gujarati","Noto Sans Gujarati","Nirmala UI",Shruti,sans-serif;--lx-serif:"Cormorant Garamond","Iowan Old Style",Georgia,"Gujarati Sangam MN","Kohinoor Gujarati","Noto Sans Gujarati","Nirmala UI",Shruti,serif}
html:lang(ko){--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR","Malgun Gothic",sans-serif;--serif:"Iowan Old Style",Palatino,Georgia,"Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR","Malgun Gothic",serif}
html:lang(ko) body.lux{--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR","Malgun Gothic",sans-serif;--lx-serif:"Cormorant Garamond","Iowan Old Style",Georgia,"Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR","Malgun Gothic",serif}
html:lang(zh){--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;--serif:"Iowan Old Style",Palatino,Georgia,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Microsoft YaHei",serif}
html:lang(zh) body.lux{--lx-sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;--lx-serif:"Cormorant Garamond","Iowan Old Style",Georgia,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Noto Sans CJK SC","Microsoft YaHei",serif}

html:lang(ar) body *,html:lang(hi) body *,html:lang(gu) body *,html:lang(ko) body *,html:lang(zh) body *{letter-spacing:0!important}
html:lang(ar) .ls-menu .ls-c,html:lang(hi) .ls-menu .ls-c{letter-spacing:.08em!important}
html:lang(ar) :is(h1,h2,h3,.lx-summary,.lx-price,.lx-gh,.wm-sub,.lx-kicker,.lx-eyebrow,.lx-count,.lx-btn,.btn,.lx-sticky-t,.lx-sticky-s,.lc-count,.lg-all),
html:lang(hi) :is(h1,h2,h3,.lx-summary,.lx-price,.lx-gh,.wm-sub,.lx-kicker,.lx-eyebrow,.lx-count,.lx-btn,.btn,.lx-sticky-t,.lx-sticky-s,.lc-count,.lg-all),
html:lang(gu) :is(h1,h2,h3,.lx-summary,.lx-price,.lx-gh,.wm-sub,.lx-kicker,.lx-eyebrow,.lx-count,.lx-btn,.btn,.lx-sticky-t,.lx-sticky-s,.lc-count,.lg-all){line-height:1.45}
html:lang(ar) .lux .lx-hero h1,html:lang(hi) .lux .lx-hero h1,html:lang(gu) .lux .lx-hero h1{line-height:1.3}
html:lang(ko) body{word-break:keep-all;overflow-wrap:anywhere}
html:lang(ar) body{font-size:17px}
/* right-to-left (Arabic): flex and text mirror on their own; these are the hand-placed bits */
[dir=rtl] .hdr>.wordmark{margin-right:0;margin-left:auto}
[dir=rtl] .site-nav .nav-cta{margin-left:0;margin-right:6px}
[dir=rtl] .ls-menu{right:auto;left:0}
@media (max-width:760px){[dir=rtl] .ls-menu{right:auto;left:12px}}
[dir=rtl] .prop-media .badge{left:auto;right:14px}
[dir=rtl] .tbl th{text-align:right}
[dir=rtl] .notice{border-left:0;border-right:4px solid var(--bad)}
[dir=rtl] .logout{margin-left:0;margin-right:auto}
[dir=rtl] .timeline{padding:0 18px 0 0;border-left:0;border-right:2px solid var(--line)}
[dir=rtl] .timeline li{padding:0 12px 16px 0}
[dir=rtl] .timeline li::before{left:auto;right:-25px}
[dir=rtl] .lc-count,[dir=rtl] .lg-all{right:auto;left:10px}
[dir=rtl] .facts li{padding:8px 26px 8px 0}
[dir=rtl] .facts li:before{left:auto;right:4px}
[dir=rtl] .lux .lx-facts li{padding:12px 24px 12px 0}
[dir=rtl] .lux .lx-facts li:before{left:auto;right:2px}
[dir=rtl] .lux .lx-count{right:auto;left:18px}
@media (max-width:760px){[dir=rtl] .lux .lx-count{left:14px}}
[dir=rtl] .lb .lb-p{left:auto;right:12px}
[dir=rtl] .lb .lb-n{right:auto;left:12px}
[dir=rtl] .lang-hint{padding:10px 20px 10px 48px}
[dir=rtl] .lang-hint button{right:auto;left:8px}
[dir=rtl] input[type=tel],[dir=rtl] input[type=email]{direction:ltr;text-align:right}
[dir=rtl] .skip{left:auto;right:-999px}
[dir=rtl] .skip:focus{right:8px}
[dir=rtl] .hp{left:auto!important;right:-9999px!important}

/* ---------- Talk to Nina (2026-10-26): floating button + voice modal (Nina's page in an iframe) ---------- */
.nina-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:45;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 20px 0 8px;border:0;border-radius:999px;background:#14161a;color:#f7f4ee;font:600 15.5px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:.01em;cursor:pointer;box-shadow:0 14px 34px -10px rgba(0,0,0,.55),inset 0 0 0 1px rgba(227,204,156,.35);-webkit-tap-highlight-color:transparent;transition:transform .2s ease,box-shadow .2s ease,bottom .45s cubic-bezier(.2,.7,.2,1)}
.nina-fab:hover{transform:translateY(-2px);box-shadow:0 18px 40px -10px rgba(0,0,0,.6),inset 0 0 0 1px rgba(227,204,156,.6)}
.nina-fab:focus-visible{outline:3px solid #e3cc9c;outline-offset:3px}
.nina-fab-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:#14161a;background:radial-gradient(circle at 35% 30%,#e3cc9c,#c9a96e 70%);position:relative}
.nina-fab-ic::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid rgba(201,169,110,.55);animation:ninaRing 2.4s ease-out infinite}
@keyframes ninaRing{0%{transform:scale(.9);opacity:.9}80%,100%{transform:scale(1.35);opacity:0}}
@media (prefers-reduced-motion:reduce){.nina-fab-ic::after{animation:none;display:none}}
html[dir=rtl] .nina-fab{right:auto;left:max(16px,env(safe-area-inset-left));padding:0 8px 0 20px}
body.nina-lift .nina-fab{bottom:calc(max(12px,env(safe-area-inset-bottom)) + 82px)}
body.nina-open{overflow:hidden}
body.nina-open .nina-fab{opacity:0;pointer-events:none}
.nina-modal{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center}
.nina-modal[hidden]{display:none}
.nina-backdrop{position:absolute;inset:0;background:rgba(8,10,14,.62);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.nina-sheet{position:relative;display:flex;flex-direction:column;width:min(440px,calc(100vw - 32px));height:min(660px,calc(100vh - 48px));background:#14161a;color:#f7f4ee;border-radius:22px;overflow:hidden;box-shadow:0 30px 80px -20px rgba(0,0,0,.7),inset 0 0 0 1px rgba(227,204,156,.22);animation:ninaIn .28s cubic-bezier(.2,.7,.2,1)}
@keyframes ninaIn{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}
.nina-head{display:flex;align-items:center;gap:12px;padding:16px 14px 12px 18px;border-bottom:1px solid rgba(227,204,156,.14)}
.nina-av{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e3cc9c,#c9a96e 70%);color:#14161a;font:700 18px/1 Georgia,serif}
.nina-hd{flex:1;min-width:0}
.nina-modal .nina-head h2{margin:0;font:600 19px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#f7f4ee;letter-spacing:0}
.nina-sub{margin:3px 0 0;font-size:13.5px;line-height:1.35;color:#b9b2a5}
.nina-x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#f7f4ee;cursor:pointer}
.nina-x:hover{background:rgba(255,255,255,.14)}
.nina-frame{flex:1;min-height:0;background:#14161a}
.nina-frame iframe{display:block;width:100%;height:100%;border:0;background:#14161a}
.nina-note{margin:0;padding:10px 18px calc(12px + env(safe-area-inset-bottom));font-size:12px;line-height:1.45;color:#8f897e;border-top:1px solid rgba(227,204,156,.1)}
.nina-modal .nina-alt,.nina-modal .nina-alt:visited{color:#e3cc9c;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
@media (max-width:600px){
  .nina-fab{height:50px;font-size:15px;padding-right:16px}
  .nina-fab-ic{width:36px;height:36px}
  .nina-modal{align-items:flex-end}
  .nina-sheet{width:100vw;height:min(620px,calc(100dvh - 24px));border-radius:22px 22px 0 0;animation-name:ninaUp}
  .nina-alt{white-space:normal}
}
@keyframes ninaUp{from{transform:translateY(40%)}to{transform:none}}

/* 2026-11-01 Follow us on Facebook pill (Tab) */
.ftr-social a.fb-follow{padding:8px 16px;border:1px solid currentColor;border-radius:999px;font-size:.92rem;letter-spacing:.02em;min-height:40px}
.ftr-social a.fb-follow:hover{border-color:currentColor}
