/* TrueNest: logo-inspired charcoal and gold with warm architectural neutrals. */
:root {
  --ink: #292720;
  --ink-deep: #191a17;
  --gold: #80632e;
  --gold-light: #dcc28e;
  --paper: #fdfcf8;
  --stone: #f2eee4;
  --line: #d9d1c0;
  --muted: #686254;
  --brand-dark: #191a17;
  --brand-light: #f5efdf;
}
body { background: var(--paper); color: var(--ink); }
::selection { background: #dcc28e; color: #191a17; }
.site-header { background: #191a17f7; color: var(--brand-light); border-bottom-color: #665638; }
.desktop-nav a:hover, .header-call:hover, .menu-toggle:hover { color: var(--gold-light); }
.header-visit { color: var(--gold-light); border-color: #9c804a; background: transparent; }
.header-visit:hover { background: var(--gold-light); border-color: var(--gold-light); color: var(--brand-dark); }
.home-hero { background: var(--brand-dark); }
.hero-visual-shade { background: linear-gradient(180deg,#191a1708 0%,#191a1708 25%,#191a1759 62%,#191a17bf 100%); }
.hero-image-label { background: #191a17b8; border-color: #dcc28e; color: #f5efdf; }
.hero-copy .button { color: #fff; border-bottom-color: var(--gold-light); }
.hero-copy .button:hover { color: var(--gold-light); background: transparent; }
.hero-bottom { background: #e9dfc9; border-color: var(--line); }
.hero-bottom .shell { color: #514632; }
.story-section { background: var(--paper); color: var(--ink); }
.story-heading h2 em { color: var(--gold); }
.eyebrow, .story-heading .eyebrow, .project-location { color: var(--gold); }
.story-copy, .story-copy .hero-description, .hero-footnote p, .hero-footnote strong,
.section-heading>p, .project-card-meta, #no-projects { color: var(--muted); }
.small-line { background: var(--gold); }
.story-copy .hero-footnote { border-color: var(--line); }
.collection-section, .group-section, .configurations-section { background: var(--stone); }
.collection-tools input { color: var(--ink); border-color: #a99978; background: transparent; }
.collection-tools input::placeholder { color: var(--muted); }
.collection-filters button { color: #59492e; background: var(--paper); border-color: #b9a884; }
.collection-filters button.active, .collection-filters button:hover { background: var(--brand-dark); color: var(--gold-light); border-color: var(--brand-dark); }
.project-card h3 { color: var(--ink); }
.project-card-meta { border-color: var(--line); }
.project-card-meta>a, .text-link, .story-copy .text-link { color: var(--gold); }
.project-card-meta>a:hover, .text-link:hover { color: #513d1a; }
.project-status { background: var(--brand-light); color: #4f3c1a; border: 1px solid #d9c69f; }
.project-image-link, .project-hero-image { background: #e9dfc9; }
.button-dark, .project-hero .button-light { background: #80632e; color: #fff; border-color: #80632e; }
.button-dark:hover, .project-hero .button-light:hover { background: #60491f; color: #fff; border-color: #60491f; }
.button-light { background: var(--brand-light); color: var(--ink); }
.button-light:hover { background: var(--gold-light); }
.visit-banner { background: var(--brand-dark); color: var(--brand-light); }
.visit-banner .eyebrow { color: var(--gold-light); }
.visit-banner p { color: #d2cbbc; }
.visit-banner .button-dark { background: var(--gold-light); color: var(--brand-dark); border-color: var(--gold-light); }
.visit-banner .button-dark:hover { background: #ead5ad; border-color: #ead5ad; }
.site-footer { background: #20211d; color: var(--brand-light); }
.footer-brand p, .footer-grid>div:not(:first-child)>a, .site-footer .footer-address { color: #d2cbbc; }
.footer-label, .site-footer .footer-address strong { color: var(--gold-light); }
.footer-grid a:hover { color: #fff; }
.footer-bottom { border-color: #514d41; color: #c5beae; }
.interior-hero, .project-hero { background: var(--stone); color: var(--ink); }
.interior-hero .eyebrow, .project-hero-copy>.eyebrow { color: var(--gold); }
.interior-hero h1 em { color: var(--gold); }
.interior-hero p:last-child, .project-hero-location, .project-tagline { color: var(--muted); }
.project-subnav { background: var(--paper); border-color: var(--line); }
.project-subnav a:hover { color: var(--gold); }
.breadcrumbs, .project-facts dt { color: var(--muted); }
.breadcrumbs a { color: var(--gold); }
.breadcrumbs a:hover { color: #513d1a; }
.breadcrumbs>span:last-child, .project-hero .details-link { color: var(--muted); }
.project-facts, .project-facts>div, .group-grid>article, .location-details, .highlights li { border-color: var(--line); }
.configuration-card { background: var(--paper); border-color: var(--line); }
.amenity>span { color: var(--gold); }
.contact-card { background: var(--stone); }
.mobile-menu, .gallery-dialog, .gallery-stage>img { background: var(--brand-dark); color: var(--brand-light); }
.mobile-menu nav>a { border-color: #514d41; }
.mobile-menu nav>a:hover { color: var(--gold-light); }
.mobile-menu>p { color: #d2cbbc; }
.mobile-menu .brand-name { color: var(--gold-light); }
.enquiry-dialog { background: var(--paper); color: var(--ink); }
input, select, textarea { background-color: #fffefa; color: var(--ink); border-color: #b9ad94; }
input::placeholder, textarea::placeholder { color: var(--muted); }
input:focus, select:focus, textarea:focus { border-color: var(--gold); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #a6813c; outline-offset: 4px; }
.site-header :focus-visible, .site-footer :focus-visible, .visit-banner :focus-visible, .mobile-menu :focus-visible { outline-color: var(--gold-light); }
.mobile-actions { background: var(--paper); border-color: var(--line); }
.mobile-actions>a { color: var(--ink); }
.mobile-actions>button { background: var(--brand-dark); color: var(--gold-light); }
