/* elovait Brandbook 3.0 · Ocean & Forest · 26 October 2026 */
:root {
  --elovait-ocean-deep: #286179;
  --elovait-ocean: #5aadc8;
  --elovait-ocean-light: #bce6ef;
  --elovait-forest-deep: #4f745d;
  --elovait-forest: #8eae89;
  --elovait-forest-light: #d9e7c8;
  --elovait-chapter-black: #0b1012;
  --elovait-ocean-night: #0d1822;
  --elovait-paper: #f5f8f7;
  --elovait-white: #ffffff;
  --elovait-ink: #22333b;
  --elovait-forest-ink: #172c23;
  --elovait-muted: #5c6d73;
  --elovait-line: #dbe4e3;
  --elovait-gradient-deep: linear-gradient(118deg, #245B72 0%, #2B6067 46%, #365C46 100%);
  --elovait-gradient-light: linear-gradient(118deg, #9FC6D0 0%, #99B9AC 48%, #A4BC8D 100%);
  --elovait-font: "Montserrat Variable", Montserrat, Arial, sans-serif;
  --elovait-type-display-size: clamp(2.25rem, 4vw, 3.75rem);
  --elovait-type-display-lineHeight: 1.16;
  --elovait-type-display-tracking: -0.045em;
  --elovait-type-display-weight: 500;
  --elovait-type-heading-size: clamp(2rem, 3.75vw, 3.5rem);
  --elovait-type-heading-lineHeight: 1.12;
  --elovait-type-heading-tracking: -0.045em;
  --elovait-type-heading-weight: 500;
  --elovait-type-body-size: 1rem;
  --elovait-type-body-lineHeight: 1.75;
  --elovait-type-body-tracking: -0.015em;
  --elovait-type-body-weight: 400;
  --elovait-type-label-size: 0.75rem;
  --elovait-type-label-lineHeight: 1.5;
  --elovait-type-label-tracking: 0.08em;
  --elovait-type-label-weight: 500;
  --elovait-space-4: 4px;
  --elovait-space-8: 8px;
  --elovait-space-12: 12px;
  --elovait-space-16: 16px;
  --elovait-space-24: 24px;
  --elovait-space-32: 32px;
  --elovait-space-48: 48px;
  --elovait-space-64: 64px;
  --elovait-space-96: 96px;
  --elovait-space-128: 128px;
  --elovait-content-max: 1280px;
  --elovait-gutter-desktop: 6vw;
  --elovait-gutter-mobile: 7vw;
  --elovait-radius-control: 6px;
  --elovait-control-min-height: 44px;
  --elovait-cta-height: 60px;
  --elovait-cta-height-mobile: 56px;
  --elovait-input-font-size: 16px;
  --elovait-focus-width: 2px;
  --elovait-focus-offset: 5px;
  --elovait-duration-quick: 180ms;
  --elovait-duration-standard: 250ms;
  --elovait-duration-transform: 350ms;
  --elovait-ease: cubic-bezier(.22, 1, .36, 1);
  --elovait-grain-tile: 192px;
  --elovait-grain-duration: 20s;
}
@media (prefers-reduced-motion: reduce) {
  :root { --elovait-duration-quick: 0ms; --elovait-duration-standard: 0ms; --elovait-duration-transform: 0ms; }
}
