/* ==========================================================================
   Event Hive — base tokens, fonts, and primitives
   Static site: no build step. Link this on every page.
   ========================================================================== */

/* --------------------------------------------------------------------------
   FONTS

   Montserrat .......... OFL. Free to self-host and use commercially. Active.
   The Seasons ......... MadeType. The files delivered in the brand kit are
                         Fontspring DEMO builds. TWO blockers:
                           1. EULA is PERSONAL USE ONLY — must contact
                              Madetypeinfo@gmail.com to license commercially.
                           2. The demo has 97 glyphs and NO French accents
                              (é è ê à â ç î ô ù û « » ’ … €). French titles
                              would render half in The Seasons, half in the
                              fallback serif.
                         Declared below but NOT wired into --eh-font-title.
                         See assets/fonts/TheSeasons-LICENSE.txt
   Brittany Signature .. Creatype Studio. PERSONAL USE ONLY, no commercial use
                         (https://creatypestudio.co/brittany). Glyph coverage
                         is fine for taglines. Declared and wired, but must be
                         licensed before this site goes public.
                         See assets/fonts/BrittanySignature-LICENSE.txt
   -------------------------------------------------------------------------- */

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Variable.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Italic-Variable.woff2")
    format("woff2-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-LightItalic.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "The Seasons";
  src: url("../fonts/TheSeasons-BoldItalic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Brittany Signature";
  src: url("../fonts/BrittanySignature.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Cormorant Garamond (OFL) — licensed stand-in for The Seasons.
   Self-hosted variable subsets, latin + latin-ext. */
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/CormorantGaramond-Variable-latin.woff2")
    format("woff2-variations");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/CormorantGaramond-Variable-latin-ext.woff2")
    format("woff2-variations");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304,
    U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB,
    U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* --------------------------------------------------------------------------
   TOKENS
   -------------------------------------------------------------------------- */

:root {
  /* Palette. Verified against the brandboard swatches and the app screens.
     NOTE: the brandboard PDF transposes the labels on swatches 1 and 3 —
     this mapping is the corrected one. */
  --eh-primary: #8d4b41; /* CTAs, nav active, filled hexagons — dominant */
  --eh-deep: #640017; /* headings, strong/destructive actions */
  --eh-rust: #872512; /* accent */
  --eh-olive: #82773e; /* accent, partial hexagon outlines */
  --eh-white: #ffffff;

  /* Grounds. The site is white-first: white is the default page ground,
     with tinted and deep sections used to break up the scroll. */
  --eh-bg: #ffffff; /* page ground */
  --eh-bg-soft: #fcf6ef; /* warm off-white, alternating sections */
  --eh-bg-cream: #f4e2ce; /* brand cream, feature sections */

  /* Text/fills sitting on the deep gradient. Kept warm so it reads as part
     of the palette rather than pure white. */
  --eh-on-dark: #fdf7f0;
  /* Accent for text on the deep gradient. 4.63:1 against its lightest
     stop (#8d4b41), so it passes AA at small sizes too. */
  --eh-on-deep-accent: #f2d3c4;

  /* Type.
     --eh-font-title deliberately does NOT include "The Seasons": the demo
     build lacks French accents and is not licensed for commercial use.
     Once a licensed, full-charset copy is in assets/fonts/, prepend it:
       "The Seasons", "Cormorant Garamond", Georgia, serif
     Cormorant Garamond and Playfair Display (both OFL) are the closest
     licensed stand-ins in the meantime. */
  --eh-font-title: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --eh-font-body: "Montserrat", system-ui, -apple-system, sans-serif;
  --eh-font-accent: "Brittany Signature", "Snell Roundhand", cursive;

  /* Surfaces */
  --eh-card: #ffffff;
  --eh-line: rgba(100, 0, 23, 0.11);
  --eh-line-strong: rgba(100, 0, 23, 0.16);
  --eh-muted: #7d5750; /* body copy — 6.3:1 on white, passes AA */

  --eh-radius-pill: 999px;
  --eh-radius-card: 20px;
  --eh-radius-lg: 32px;

  /* Light touch: on a white ground heavy shadows read as grubby. */
  --eh-shadow: 0 14px 34px -22px rgba(100, 0, 23, 0.28);
  --eh-shadow-lg: 0 34px 70px -38px rgba(100, 0, 23, 0.34);

  --eh-container: 1160px;
  --eh-gutter: clamp(1.25rem, 4vw, 3rem);

  /* Pointy-top hexagon — the signature shape */
  --eh-hex: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);

  /* Gradients and glows */
  --eh-grad-deep: linear-gradient(
    135deg,
    #640017 0%,
    #872512 55%,
    #8d4b41 100%
  );
  --eh-grad-warm: linear-gradient(120deg, #8d4b41 0%, #872512 100%);
  --eh-grad-text: linear-gradient(
    100deg,
    #872512 0%,
    #8d4b41 55%,
    #82773e 100%
  );
  --eh-glow-primary: radial-gradient(
    closest-side,
    rgba(141, 75, 65, 0.16),
    rgba(141, 75, 65, 0)
  );
  --eh-glow-olive: radial-gradient(
    closest-side,
    rgba(130, 119, 62, 0.13),
    rgba(130, 119, 62, 0)
  );

  /* Glass */
  --eh-glass: rgba(255, 255, 255, 0.78);
  --eh-glass-dark: rgba(244, 226, 206, 0.08);

  --eh-shadow-sm: 0 4px 14px -10px rgba(100, 0, 23, 0.22);
  --eh-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* --------------------------------------------------------------------------
   BASE
   -------------------------------------------------------------------------- */

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--eh-bg);
  color: var(--eh-deep);
  font-family: var(--eh-font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3 {
  font-family: var(--eh-font-title);
  font-weight: 400;
  line-height: 1.15;
  color: var(--eh-deep);
}

img {
  max-width: 100%;
  height: auto;
}

/* --------------------------------------------------------------------------
   BUTTONS — always fully pill-shaped, uppercase, letter-spaced
   -------------------------------------------------------------------------- */

.eh-btn {
  display: inline-block;
  padding: 1rem 2.25rem;
  border: 0;
  border-radius: var(--eh-radius-pill);
  background: var(--eh-primary);
  color: var(--eh-white);
  font-family: var(--eh-font-body);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
}

.eh-btn:hover {
  background: var(--eh-rust);
}

.eh-btn--deep {
  background: var(--eh-deep);
}

.eh-btn--ghost {
  background: transparent;
  color: var(--eh-primary);
  box-shadow: inset 0 0 0 1px currentColor;
}
