/* Public pages only; staff screens retain their existing theme. */
body:has(#publicView) { --public-ink: #242421; --public-muted: #62625e; --public-gold: #ffc400; --public-gold-ink: #946000; }
#publicView, .site-header, .site-footer, .property-dialog { font-family: "Noto Sans Thai", "Noto Sans", "Thonburi", sans-serif; letter-spacing: 0; }
#publicView :is(h1,h2,h3,p,span,button,label,a,strong), .site-header :is(a,span) { letter-spacing: 0; }
.site-header { background: rgba(26,26,24,.94); }
.site-header.is-scrolled { background: rgba(26,26,24,.98); }
.site-header::after { background: linear-gradient(180deg,rgba(26,26,24,.65),transparent); }
.site-header .brand-heading { font-size: 15px; font-weight: 700; color: #fff; }
.site-header .brand-byline { font-size: 12px; color: #ddd; }
.site-header .desktop-nav a { font-size: 14px; font-weight: 500; }
.site-header .desktop-nav a:hover { color: var(--public-gold); }
#publicView :is(.search-intro h2,.section-heading h2,.trust-section h2,.story-copy h2), .showcase-band h2 { color: var(--public-ink); font-size: 28px; font-weight: 700; line-height: 1.45; letter-spacing: 0; }
#publicView .property-card h3 { color: var(--public-ink); font-size: 18px; font-weight: 700; line-height: 1.5; }
#publicView .property-price, .dialog-property-content .dialog-price { color: var(--public-gold-ink); font-size: 24px; font-weight: 800; line-height: 1.4; font-variant-numeric: tabular-nums; }
#publicView :is(.property-id,.property-location,.property-features span,.card-footer) { font-size: 13px; line-height: 1.6; }
#publicView :is(.property-id,.property-location,.property-features span) { color: var(--public-muted); }
#publicView .card-footer { color: var(--public-gold-ink); font-weight: 700; }
#publicView .search-panel label { font-size: 14px; font-weight: 600; line-height: 1.5; }
#publicView .search-panel :is(input,select) { font-size: 16px; }
#publicView .filter-button { background: #242421; border-color: #242421; color: #fff; font-size: 15px; font-weight: 600; }
#publicView .filter-button:hover { background: #41413b; }
#showcaseMetrics { background: #1d1d1b; }
#showcaseMetrics .trust-metrics dd { color: var(--public-gold); font-size: 32px; font-weight: 800; line-height: 1.4; }
#showcaseMetrics .trust-metrics dt,#showcaseMetrics .trust-metrics small { color: #d3d3ce; font-size: 13px; line-height: 1.6; }
@media(max-width:780px) {
  .site-header .brand-heading { font-size: 14px; }
  .site-header .brand-byline { font-size: 12px; }
  #publicView :is(.search-intro h2,.section-heading h2,.trust-section h2,.story-copy h2), .showcase-band h2 { font-size: 24px; }
  #publicView .property-card h3 { font-size: 18px; }
  #publicView .property-price, .dialog-property-content .dialog-price { font-size: 22px; }
}
@media(max-width:359px) { .site-header .brand-heading { font-size: 12px; } }
