/* ==========================================================================
   LANDYWOOD LANDSCAPES — brand tokens v1.0 (2026-07-22)
   Landywood's OWN identity (a faithful refresh, not a rebrand).
   NOT HumanAmp / ProblemSmith — do not import their tokens here.

   IDENTITY
   - Wordmark: "Landywood" set in Playfair Display; "Landscapes" recedes to a
     scope line. The legal name stays "Landywood Landscapes".
   - Palette scraped from landywoodlandscapes.co.uk: deep evergreen anchor,
     pale mint, off-white paper, near-black ink; a deep red used sparingly.
   - Type: Playfair Display (headings), Manrope (body).

   GOVERNANCE
   - No hardcoded hex in the page. index.html consumes var(--lw-*) only.
     (Grep '#[0-9a-f]{6}' before shipping — it should only hit this file.)
   - Green is the system colour and carries actions (CTAs). Red is reserved for
     the rare true-warning accent, never for buttons.
   - One warm film-grain treatment on every photo (--lw-grain-opacity).
   - Consumers must honour prefers-reduced-motion.
   ========================================================================== */

:root{
  /* ---- type */
  --lw-font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
  --lw-font-sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;

  /* ---- base neutrals (off-white paper, near-black ink) */
  --lw-paper: #F3F7F6;          /* page background            */
  --lw-paper-alt: #E7EEEC;      /* alternating section band   */
  --lw-card: #FBFDFC;           /* card surface               */
  --lw-ink: #171717;            /* body / heading ink         */
  --lw-ink-soft: #47504D;       /* secondary text             */
  --lw-ink-faint: #7C837F;      /* captions, meta             */
  --lw-line: #D6DFDC;           /* hairlines                  */
  --lw-white: #FFFFFF;
  --lw-linkedin: #0A66C2;       /* LinkedIn brand blue, follow button only */
  --lw-linkedin-deep: #004182;
  --lw-ink-rgb: 23, 23, 23;
  --lw-paper-rgb: 243, 247, 246;

  /* ---- brand green (anchor · carries actions) */
  --lw-green: #185951;          /* primary evergreen          */
  --lw-green-deep: #124440;     /* pressed / hover            */
  --lw-green-deep-rgb: 18, 68, 64; /* HUM-1566 card shadow (same colour as --lw-green-deep) */
  --lw-green-soft: #2C6E64;     /* lifted green for on-dark   */
  --lw-green-rgb: 24, 89, 81;

  /* ---- mint (soft accent · pale section fills, underlines) */
  --lw-mint: #C2DBD7;
  --lw-mint-deep: #A9CBC5;
  --lw-mint-rgb: 194, 219, 215;

  /* ---- lime (the "fresh cut" energy accent · used sparingly: rules, marks) */
  --lw-lime: #8FB33A;
  --lw-lime-rgb: 143, 179, 58;

  /* ---- ochre (the tree frame accent, used for illustrated details) */
  --lw-ochre: #A67622;

  /* ---- mow-stripe motif (the signature: alternating cut lines) */
  --lw-stripe-dark: repeating-linear-gradient(90deg, rgba(var(--lw-band-deep-rgb),0) 0 38px, rgba(var(--lw-band-deep-rgb),0.55) 38px 76px);
  --lw-stripe-soft: repeating-linear-gradient(90deg, rgba(var(--lw-green-rgb),0.05) 0 40px, rgba(var(--lw-green-rgb),0.11) 40px 80px);

  /* ---- deep red (sparing — warnings/emphasis only, never buttons) */
  --lw-red: #9D221E;
  --lw-red-rgb: 157, 34, 30;
  /* brighter signal red: Ask Landy's muted microphone (mic, dot and "Muted") only */
  --lw-signal-red: #C0322B;
  --lw-signal-red-rgb: 192, 50, 43;

  /* ---- timber (temporary yard/shop notices only) */
  --lw-timber: #875631;
  --lw-timber-light: #B9824C;
  --lw-timber-deep: #56331F;
  --lw-timber-rgb: 135, 86, 49;
  --lw-timber-deep-rgb: 86, 51, 31;
  --lw-sign-paint: #F2E9D1;
  --lw-sign-paint-rgb: 242, 233, 209;

  /* ---- dark surfaces (deep forest band for hero base / footer) */
  --lw-band: #123F3A;           /* deep evergreen-charcoal    */
  --lw-band-deep: #0E332F;
  --lw-band-deep-rgb: 14, 51, 47;
  --lw-paper-on-dark: #EAF2F0;
  --lw-paper-on-dark-rgb: 234, 242, 240;
  --lw-soft-on-dark: #AFC4BF;
  --lw-line-on-dark: rgba(234, 242, 240, 0.16);

  /* ---- contact actions share the fresh-cut lime treatment */
  --lw-cta: var(--lw-lime);
  --lw-cta-deep: color-mix(in srgb, var(--lw-lime) 92%, var(--lw-band-deep));
  --lw-cta-ink: var(--lw-band-deep);

  /* ---- wordmark subsystem
     "Landywood" in Playfair Display SemiBold; a hand-drawn mint underline sits
     below the baseline. ™ is a sibling glyph in the sans, cap-aligned. */
  --lw-font-wordmark: 'Fraunces', Georgia, serif;
  --lw-wordmark-weight: 600;
  --lw-wordmark-tracking: -0.005em;
  --lw-wordmark-ink: var(--lw-green);
  --lw-wordmark-ink-on-dark: var(--lw-paper-on-dark);
  --lw-wordmark-underline: var(--lw-mint-deep);
  --lw-wordmark-underline-on-dark: var(--lw-green-soft);
  --lw-wordmark-tm: var(--lw-ink-faint);
  --lw-wordmark-tm-text: "\2122";   /* ™ — swap to ® only on registration */

  /* ---- signature devices */
  --lw-mark-highlight: linear-gradient(transparent 62%, rgba(var(--lw-mint-rgb), 0.85) 62%);
  --lw-grain-opacity: 0.05;
  /* one consistent warm photo grade (keeps blue-sky shots from reading cool) */
  --lw-photo-grade: saturate(1.05) contrast(1.02) brightness(1.01) sepia(0.05);

  /* ---- shape & shadow */
  --lw-radius-card: 10px;
  --lw-radius-photo: 12px;
  --lw-radius-pill: 999px;
  --lw-shadow-card: 0 1px 2px rgba(var(--lw-ink-rgb), 0.04), 0 8px 24px rgba(var(--lw-ink-rgb), 0.06);
  --lw-shadow-photo: 0 14px 44px rgba(var(--lw-ink-rgb), 0.16);
  --lw-shadow-nav: 0 8px 24px rgba(var(--lw-ink-rgb), 0.06);

  /* ---- fiddly geometry Lee re-corrects (tokenised once) */
  --lw-wordmark-bar-thickness: 3px;
  --lw-wordmark-bar-gap: -0.14em;   /* baseline → underline clearance knob */
  --lw-section-rhythm: 96px;        /* vertical rhythm between sections     */
  --lw-hairline: 1px;

  /* ---- enquiry and portal interface */
  --lw-space-4: 16px;
  --lw-space-6: 24px;
  --lw-space-8: 40px;
  --lw-radius-panel: 18px;
  --lw-control-height: 48px;

  /* ---- motion */
  --lw-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --lw-ease-quart: cubic-bezier(0.25, 1, 0.5, 1);
  --lw-motion-fast: 180ms;
  --lw-motion-reveal: 700ms;
}

@media (prefers-reduced-motion: reduce){
  :root{
    --lw-motion-fast: 1ms;
    --lw-motion-reveal: 1ms;
  }
}

/* HUM-1343 values exist only on the opt-in panel; the OFF cascade is unchanged. */
#landywood-chat.cw-final-mobile {
  --lw-final-sage: #EAF1EC;
  --lw-final-visitor: #CFE3D3;
  --lw-final-placeholder: #6B736F;
  /* HUM-1147: Chat-Core.dc.html:463,672,773; #5A6360 remains held. */
  --lw-final-unavailable: #F2EFEA;
  --lw-final-off-surface: #E4DAD5;
  --lw-final-off-ink: #6E645E;
  --lw-final-warning: #FBECEA;
  --lw-final-shadow-rgb: 41,43,47;
}

/* HUM-1359: Dave-approved credit menu row, Linear specification 31 October. */
.cw-final-credit { --lw-credit-surface:#F6F8F7; }

/* Lee canvas Chat-Core.dc.html:399-444; final-only motion SVG colours. */
#landywood-chat.cw-final-mobile {
  --lw-motion-1: #F4F6F5;
  --lw-motion-2: #C9D0CD;
  --lw-motion-3: #9AA5A1;
  --lw-motion-4: #3B423F;
  --lw-motion-5: #1C2120;
  --lw-motion-6: #0E1211;
  --lw-motion-7: #3A3F3C;
  --lw-motion-8: #D9CFB2;
  --lw-motion-9: #232927;
  --lw-motion-10: #000000;
  --lw-motion-11: #5C6662;
  --lw-motion-12: #AFC4BF;
  --lw-motion-13: #8FB33A;
  --lw-motion-14: #2C6E64;
}
