/*
 * Belle Property — brand colours and type on the heritage layout.
 *
 * Evidence (October 2026):
 *  - belleproperty.com homepage (rendered in Chrome): <meta name="theme-color" content="#386351">; header and footer
 *    background rgb(56, 99, 81) = #386351; search button #6e8878; panels #f1f2f2 / #e6e7e8; body text #000 and
 *    rgba(0,0,0,.7); square corners; white outline buttons on the green bar.
 *  - propvuecdn.4thmode.net/belle/public/css/structure.css: most-used colours #386351 (87×), #6e8878 (98×),
 *    #bbbdbf, #e6e7e8, #f1f2f2, #4d5254; @font-face "Lato" (self-hosted); headings use `quiche-sans` from
 *    Typekit (use.typekit.net/onq3xab.css) at weight 500; body Lato with 0.96px (0.06em) tracking.
 *  - Belle Property Brand Guidelines 2021 (fliphtml5.com/vpsmi/vign): Quiche Sans Medium for headlines, Lato for
 *    secondary headings and body copy.
 * Typefaces: Lato is a Google Font (used as-is). Quiche Sans is proprietary (Adam Ladd), so headings use Marcellus,
 * the closest Google Fonts match for its high-contrast, flared-stroke letterforms.
 */
.brand-belle_property {
  --font-display: "Marcellus", Georgia, "Times New Roman", serif;
  --font-body: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-ui: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;

  --color-bg: #ffffff;
  --color-bg-alt: #f1f2f2;
  --color-surface: #ffffff;
  --color-text: #1c1e1f;
  --color-muted: #4d5254;
  --color-rule: #dcdedf;
  --color-accent: #386351;
  --color-accent-hover: #2b4d3f;
  --color-accent-contrast: #ffffff;
  --color-gold-text: #56705f;
  --color-green: #386351;
  --color-green-light: #6e8878;
  --color-dark: #1c1e1f;
  --color-dark-text: #ffffff;

  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --radius-btn: 0;
  --heading-weight: 400;
  --heading-tracking: 0.02em;
  --title-size: clamp(2.1rem, 1.5rem + 2.2vw, 3.2rem);
  --label-tracking: 0.2em;
  --btn-pad: 0.95rem 2.1rem;
  --btn-weight: 700;
  --btn-tracking: 0.05em;
  --nav-font-size: 0.95rem;
  --nav-tracking: 0.05em;
  --nav-case: none;
  --nav-height: 76px;
  --gallery-radius: 0;
  --field-radius: 0;
  --footer-bg: #386351;
  --footer-text: #ffffff;
  --footer-rule: rgba(255, 255, 255, 0.22);
  --mobile-cta-bg: #386351;
  --back-to-top-bg: #386351;
  --back-to-top-color: #ffffff;
  --back-to-top-radius: 0;
}
.brand-belle_property body { letter-spacing: 0.04em; line-height: 1.7; }
.brand-belle_property body::after { display: none; }

/* flat square buttons, no gold glow */
.brand-belle_property .btn--primary, .brand-belle_property .btn--primary:hover { box-shadow: none; transform: none; }
.brand-belle_property .btn--outline { border-width: 1px; }

/* centred section heads like belleproperty.com, black titles with a sage eyebrow */
.brand-belle_property .section-head { margin-inline: auto; text-align: center; }
.brand-belle_property .section-head__lede { margin-inline: auto; }
.brand-belle_property .section-head__eyebrow { justify-content: center; color: var(--color-gold-text); }
.brand-belle_property .section-head__eyebrow::before, .brand-belle_property .section-head__eyebrow::after { content: ""; width: 32px; height: 1px; background: var(--color-green-light); }
.brand-belle_property .section-head__title { color: var(--color-text); }
.brand-belle_property :is(.offer-cta, .enquiry) .section-head { margin-inline: 0; text-align: left; }
.brand-belle_property :is(.offer-cta, .enquiry) .section-head__eyebrow { justify-content: flex-start; }
.brand-belle_property :is(.offer-cta, .enquiry) .section-head__eyebrow::after { display: none; }
.brand-belle_property :is(.offer-cta, .enquiry) .section-head__lede { margin-inline: 0; }
.brand-belle_property .section + .section::before { background: linear-gradient(90deg, transparent, var(--color-green-light), transparent); }

/* nav: white over the hero, Belle green once scrolled; the CTA becomes a white outline on the green bar */
.brand-belle_property .site-nav { --nav-bg: #386351; --nav-color: #ffffff; --nav-rule: transparent; }
.brand-belle_property .site-nav::before { backdrop-filter: none; -webkit-backdrop-filter: none; }
.brand-belle_property .site-nav__brand-street { letter-spacing: 0.04em; }
@media (min-width: 1101px) {
  .brand-belle_property .site-nav .btn--primary { background: transparent; border: 1px solid rgba(255, 255, 255, 0.8); color: #ffffff; }
  .brand-belle_property .site-nav .btn--primary:hover { background: #ffffff; border-color: #ffffff; color: #386351; }
}

/* hero: green-tinted shade, white square pill */
.brand-belle_property .hero--heritage .hero__overlay { background: linear-gradient(180deg, rgba(18, 34, 27, 0.5), rgba(18, 34, 27, 0.28) 45%, rgba(18, 34, 27, 0.66)); }
.brand-belle_property .hero--heritage .hero__pill { border-radius: 0; border-color: rgba(255, 255, 255, 0.6); background: rgba(56, 99, 81, 0.6); color: #ffffff; letter-spacing: 0.28em; }
.brand-belle_property .hero--heritage .hero__title { letter-spacing: 0.02em; }
.brand-belle_property .hero--heritage .btn--outline { backdrop-filter: none; }

/* cards: square corners, hairline borders instead of soft shadows */
.brand-belle_property :is(.room-card, .feature-group, .highlight, .facts__price-card, .stats, .document-card, .form-card, .inspection, .places-group) { border-radius: 0; }
.brand-belle_property .room-card { box-shadow: none; border: 1px solid var(--color-rule); }
.brand-belle_property .feature-group { border: 1px solid var(--color-rule); }
.brand-belle_property .feature-group__title { color: var(--color-text); }
.brand-belle_property .feature-group__title::before { border-radius: 0; background: var(--color-green); box-shadow: none; width: 24px; height: 2px; }
.brand-belle_property .places-group { border-left-color: var(--color-green); }
.brand-belle_property .facts__price-card { background: var(--color-green); color: #ffffff; }
.brand-belle_property .facts__price-card .facts__label, .brand-belle_property .facts__price-card .facts__method { color: rgba(255, 255, 255, 0.82); }
.brand-belle_property .facts__price { color: #ffffff; }
.brand-belle_property .facts__price-card .btn--primary { background: #ffffff; border-color: #ffffff; color: #386351; }
.brand-belle_property .facts__price-card .btn--primary:hover { background: #f1f2f2; border-color: #f1f2f2; color: #2b4d3f; }
.brand-belle_property .facts__price-card .btn--outline { color: #ffffff; }
.brand-belle_property .inspection__day, .brand-belle_property .inspection__month { color: rgba(255, 255, 255, 0.82); }
.brand-belle_property .chip { border-radius: 0; }
.brand-belle_property .agent-grid:has(> .agent-card:only-of-type) { margin-inline: auto; }

/* footer and mobile bar on Belle green */
.brand-belle_property .site-footer { border-top: 0; }
.brand-belle_property .site-footer__address { color: #ffffff; }
.brand-belle_property .mobile-cta { border-top: 0; }
.brand-belle_property .mobile-cta .btn--primary { background: #ffffff; border-color: #ffffff; color: #386351; }
.brand-belle_property .mobile-cta .btn--outline { color: #ffffff; border-color: rgba(255, 255, 255, 0.75); }
