/* Visitor-selectable palettes. Illustrations remain in their original colors. */
:root{--palette-dark:#192530;--palette-dark-text:#ffffff;--palette-panel:#ffffff;--palette-ink:#192530;--palette-muted:#5b6670;--palette-border:#d5dde2;--palette-accent:#b84418}
html[data-palette]:not([data-palette="grove"]){--ink:#000000;--muted:#5c5c5c;--line:#dedede;--paper:#ffffff;--white:#ffffff;--surface:#ffffff;--tint:#f3f3f3;--header:#ffffff;--dark:#000000;--footer:#000000;--secondary:#444444;--hero-rgb:255,255,255;--accent:#ff6200;--accent-light:#ff6200;--palette-dark:#000000;--palette-panel:#ffffff;--palette-ink:#000000;--palette-muted:#5c5c5c;--palette-border:#dedede;--palette-accent:#ff6200}
html[data-palette]:not([data-palette="grove"]) body{background:var(--paper);color:var(--ink)}
html[data-palette]:not([data-palette="grove"]) header{background:var(--header)}
html[data-palette]:not([data-palette="grove"]) .card,html[data-palette]:not([data-palette="grove"]) .resource,html[data-palette]:not([data-palette="grove"]) .property-card{background:var(--white);box-shadow:0 8px 28px #00000007}
html[data-palette]:not([data-palette="grove"]) .card p{color:var(--secondary)}
html[data-palette]:not([data-palette="grove"]) .hero-illustrated{background:var(--surface)}
html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(90deg,rgba(var(--hero-rgb),.96) 0%,rgba(var(--hero-rgb),.84) 27%,rgba(var(--hero-rgb),.17) 60%,transparent 85%)}
html[data-palette]:not([data-palette="grove"]) .feature,html[data-palette]:not([data-palette="grove"]) .feature .copy,html[data-palette]:not([data-palette="grove"]) .contact{background:var(--dark);color:#fff}
html[data-palette]:not([data-palette="grove"]) .foot{background:var(--footer);color:#e0e0e0}
html[data-palette]:not([data-palette="grove"]) .feature p,html[data-palette]:not([data-palette="grove"]) .contact-direct .small,html[data-palette]:not([data-palette="grove"]) .foot small{color:#cecece}
html[data-palette]:not([data-palette="grove"]) .contact .eyebrow,html[data-palette]:not([data-palette="grove"]) .feature .eyebrow{color:var(--accent-light)}
html[data-palette]:not([data-palette="grove"]) .contact a:hover,html[data-palette]:not([data-palette="grove"]) .foot a:hover{color:var(--accent-light)}
html[data-palette]:not([data-palette="grove"]) .contact-direct .button:hover{background:#fff;color:var(--ink)}
html[data-palette]:not([data-palette="grove"]) .feature-art,html[data-palette]:not([data-palette="grove"]) .sold-teaser,html[data-palette]:not([data-palette="grove"]) .team-monogram{background:var(--tint);color:var(--ink)}
html[data-palette]:not([data-palette="grove"]) .note,html[data-palette]:not([data-palette="grove"]) .ask-sold,html[data-palette]:not([data-palette="grove"]) .property-image,html[data-palette]:not([data-palette="grove"]) .newsletter{background:var(--surface)}
html[data-palette]:not([data-palette="grove"]) .ask-sold strong{color:var(--accent)}
html[data-palette]:not([data-palette="grove"]) .sold-teaser p span,html[data-palette]:not([data-palette="grove"]) .sold-teaser small{color:var(--muted)}
html[data-palette]:not([data-palette="grove"]) .mobile-contact-bar a:last-child{color:var(--accent-light)}
html[data-palette]:not([data-palette="grove"]) .contact-direct .button{border-color:#cecece}
html[data-palette]:not([data-palette="grove"]) .team-card{box-shadow:none}
html[data-palette]:not([data-palette="grove"]) .button.dark:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.palette-switcher{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:22px;z-index:45;font-family:'DM Sans',Arial,sans-serif;color:var(--palette-ink);font-size:14px;line-height:1.4}
.palette-trigger{display:flex;gap:9px;align-items:center;justify-content:center;min-height:48px;padding:12px 17px;border:1px solid var(--palette-dark);border-radius:999px;background:var(--palette-dark);color:#fff;font-weight:600;box-shadow:0 4px 20px #0002;touch-action:manipulation}
.palette-trigger:hover{background:var(--palette-dark);color:#fff}.palette-trigger svg{flex-shrink:0}.palette-trigger-dot{width:8px;height:8px;border-radius:50%;background:var(--accent,var(--palette-accent));border:1px solid #ffffff80}
.palette-panel[hidden]{display:none!important}
.palette-panel{position:absolute;right:0;bottom:60px;width:360px;max-width:calc(100vw - 32px);max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--palette-panel);border:1px solid var(--palette-border);border-radius:18px;padding:22px;box-shadow:0 16px 65px #0003}
.palette-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.palette-heading h2{font-size:30px;line-height:1.1;margin:5px 0 0;letter-spacing:-.025em;color:var(--palette-ink)}
.palette-eyebrow{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--palette-muted)}
.palette-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--palette-border);border-radius:50%;background:var(--palette-panel);color:var(--palette-ink);font-size:26px;line-height:1}
.palette-help{font-size:13px;color:var(--palette-muted);margin:14px 0 16px}.palette-options{display:grid;gap:7px}
.palette-choice{position:relative;width:100%;min-height:64px;display:flex;align-items:center;gap:10px;padding:12px 10px;border:1px solid var(--palette-border);border-radius:10px;background:var(--palette-panel);text-align:left;color:var(--palette-ink);font:inherit;touch-action:manipulation}
.palette-choice[aria-pressed="true"]{border:2px solid var(--palette-ink);padding:11px 9px}.palette-choice:hover{border-color:var(--palette-ink)}
.palette-number{font-size:10px;color:var(--palette-muted);font-variant-numeric:tabular-nums;align-self:flex-start;margin-top:2px}.palette-choice-copy{flex:1;min-width:0}.palette-choice-copy strong{display:block;font-size:13px;font-weight:700}.palette-choice-copy>span{display:block;font-size:10px;color:var(--palette-muted);margin-top:3px}.palette-swatches{display:flex;align-items:center;padding-right:14px;flex-shrink:0}.palette-swatches>span{display:block;width:16px;height:23px;border:1px solid #0002;margin-left:-2px}.palette-swatches>span:first-child{border-radius:4px 0 0 4px}.palette-swatches>span:last-child{border-radius:0 4px 4px 0}.palette-check{display:none;position:absolute;right:8px;bottom:6px;font-size:10px;font-weight:700}.palette-choice[aria-pressed="true"] .palette-check{display:block}.palette-footnote{font-size:10px;color:var(--palette-muted);margin:16px 0 0;max-width:260px}.palette-live{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:900px){html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(90deg,rgba(var(--hero-rgb),.96),rgba(var(--hero-rgb),.64) 58%,rgba(var(--hero-rgb),.08))}}
@media(max-width:650px){.palette-switcher{right:max(16px,env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom))}.palette-panel{width:346px;bottom:60px;padding:18px;max-height:calc(100vh - 220px);max-height:calc(100dvh - 220px)}.palette-trigger{min-height:46px;padding:11px 15px;font-size:13px}.palette-heading h2{font-size:28px}.palette-choice{min-height:64px}.palette-choice-copy strong{font-size:13px}.palette-choice-copy>span{font-size:11px}.palette-help{font-size:12px}.palette-footnote{font-size:11px}html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(180deg,rgba(var(--hero-rgb),.96) 3%,rgba(var(--hero-rgb),.86) 53%,rgba(var(--hero-rgb),.04) 94%)}}
@media(max-width:360px){.palette-panel{padding:15px}.palette-swatches>span{width:13px}.palette-choice{gap:7px;padding-left:8px;padding-right:8px}.palette-choice[aria-pressed="true"]{padding-left:7px;padding-right:7px}.palette-number{display:none}}
@media(forced-colors:active){.palette-choice[aria-pressed="true"]{outline:2px solid Highlight}.palette-trigger-dot,.palette-swatches{forced-color-adjust:none}}
/* Exact statement orange is decorative or paired with black, not small white
   type: #ff6200 / white lacks sufficient text contrast. */
html[data-palette]:not([data-palette="grove"]) .eyebrow{color:#000}
html[data-palette]:not([data-palette="grove"]) .eyebrow::before{content:"";display:inline-block;width:24px;height:3px;background:#ff6200;vertical-align:middle;margin:0 10px 3px 0}
html[data-palette]:not([data-palette="grove"]) .tag,html[data-palette]:not([data-palette="grove"]) .status{background:#ff6200;color:#000;padding:3px 7px}
html[data-palette]:not([data-palette="grove"]) a:hover{color:inherit;text-decoration-color:#ff6200}
html[data-palette]:not([data-palette="grove"]) .text-link{border-bottom-color:#ff6200}
html[data-palette]:not([data-palette="grove"]) .button.dark,html[data-palette]:not([data-palette="grove"]) .button.dark:hover{background:#ff6200;border-color:#ff6200;color:#000}
html[data-palette]:not([data-palette="grove"]) .contact .eyebrow,html[data-palette]:not([data-palette="grove"]) .feature .eyebrow{color:#fff}
html[data-palette]:not([data-palette="grove"]) .contact-direct .button:first-child{background:#ff6200;border-color:#ff6200;color:#000}
html[data-palette]:not([data-palette="grove"]) .ask-sold strong{color:#000}
html[data-palette]:not([data-palette="grove"]) nav a.active{color:#000;border-bottom-color:#ff6200}
html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.74) 30%,rgba(255,255,255,.05) 68%,transparent 90%)}
@media(max-width:650px){html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(180deg,rgba(255,255,255,.97) 3%,rgba(255,255,255,.85) 52%,rgba(255,255,255,.02) 94%)}}
/* 01 White-led: orange is punctuation, with a high-contrast type panel. */
html[data-palette]:not([data-palette="grove"]) .hero-illustrated{background:#fff}
html[data-palette]:not([data-palette="grove"]) .hero-image{filter:saturate(1.08)}
html[data-palette]:not([data-palette="grove"]) .feature-art{background:#000;color:#ff6200;border-top:3px solid #ff6200;flex-direction:column}
html[data-palette]:not([data-palette="grove"]) .feature-art span{color:#fff}
html[data-palette]:not([data-palette="grove"]) .sold-teaser{background:#fff;border:1px solid var(--line);border-top:3px solid #ff6200}
html[data-palette="noir"][data-palette] .button.dark,html[data-palette="noir"][data-palette] .button.dark:hover{background:#000;color:#fff;border-color:#000}
html[data-palette="noir"][data-palette] .contact-direct .button:first-child{background:transparent;color:#fff;border-color:#fff}
html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.90) 26%,rgba(255,255,255,.32) 57%,transparent 84%)}
/* 02 Orange-led: black masthead and big, deliberate orange surfaces. */
html[data-palette="tangerine"][data-palette] header{background:#000;color:#fff;border-color:#000}
html[data-palette="tangerine"][data-palette] header nav{background:#000;color:#fff}
html[data-palette="tangerine"][data-palette] header nav a.active{color:#ff6200}
html[data-palette="tangerine"][data-palette] header .search-toggle{border-color:#fff;color:#fff}
html[data-palette="tangerine"][data-palette] .feature-art{background:#ff6200;color:#000;border-color:#000}
html[data-palette="tangerine"][data-palette] .feature-art span{color:#000}
html[data-palette="tangerine"][data-palette] .sold-teaser{background:#ff6200;color:#000;border:0}
html[data-palette="tangerine"][data-palette] .sold-teaser :is(.tag,p span,small){color:#000}
html[data-palette="tangerine"][data-palette] .hero-illustrated{border-bottom:6px solid #ff6200}
html[data-palette="tangerine"][data-palette] .team-intro{border-bottom:3px solid #ff6200}
/* 03 Black-led: a genuinely dark composition, not navy-tinted white. */
html[data-palette="afterdark"][data-palette]{--ink:#ffffff;--muted:#bbbbbb;--line:#353535;--paper:#000000;--white:#111111;--surface:#111111;--tint:#171717;--header:#000000;--secondary:#cccccc;--hero-rgb:0,0,0}
html[data-palette="afterdark"][data-palette] .hero-illustrated{background:#000}
html[data-palette="afterdark"][data-palette] .hero-shade{background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.94) 27%,rgba(0,0,0,.35) 62%,rgba(0,0,0,.06) 100%)}
html[data-palette="afterdark"][data-palette] :is(.eyebrow,.ask-sold strong,nav a.active){color:#fff}
html[data-palette="afterdark"][data-palette] :is(.tag,.status){color:#000}
html[data-palette="afterdark"][data-palette] :is(.card,.resource,.property-card){border:1px solid #353535}
html[data-palette="afterdark"][data-palette] .sold-teaser{background:#111;color:#fff}
html[data-palette="afterdark"][data-palette] :is(.searchbar input,.searchresults,.empty){background:#111;color:#fff}
html[data-palette="afterdark"][data-palette] .team-monogram{background:#fff;color:#000}
html[data-palette="afterdark"][data-palette] .feature-art{background:#ff6200;color:#000;border-color:#ff6200}
html[data-palette="afterdark"][data-palette] .feature-art span{color:#000}
html[data-palette="afterdark"][data-palette] .palette-trigger{border-color:#888}
html[data-palette="afterdark"][data-palette] .mobile-contact-bar{background:#000}
html[data-palette="afterdark"][data-palette] :is(.mobile-contact-bar,.team-strip){background:#000;color:#fff}
html[data-palette="afterdark"][data-palette] .palette-panel .palette-eyebrow{color:#5c5c5c}
html[data-palette="afterdark"][data-palette] .button:not(.dark):hover{background:#fff;color:#000;border-color:#fff}
html[data-palette="afterdark"][data-palette] .contact-direct .button:hover{background:#fff;color:#000;border-color:#fff}
html[data-palette="afterdark"][data-palette] .filter.selected{background:#fff;color:#000}
html[data-palette="afterdark"][data-palette] .skip-link{background:#ff6200;color:#000}
@media(max-width:650px){
 html[data-palette]:not([data-palette="grove"]) .hero-shade{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.97) 48%,rgba(255,255,255,.14) 80%,transparent 100%)}
 html[data-palette="afterdark"][data-palette] .hero-shade{background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.96) 50%,rgba(0,0,0,.18) 85%,rgba(0,0,0,.05) 100%)}
}
