/* =====================================================
   BRAND.CSS — HORIZONTE DEUTSCHLAND
   Color tokens, typography, brand design system
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root {
  /* ── CORE PALETTE ─────────────────────────────── */
  --c-primary:    #243A4A;   /* Alpine Lake Blue      */
  --c-secondary:  #344B3F;   /* Black Forest Pine     */
  --c-accent:     #E6B85C;   /* Golden Wheat Light    */
  --c-accent-h:   #EDC46F;   /* Accent hover          */
  --c-accent2:    #A94A3F;   /* Brick Heritage Red    */
  --c-bg:         #F1F2EE;   /* Soft Limestone        */
  --c-bg-alt:     #E3E5DF;   /* Lighter limestone     */
  --c-bg-dark:    #3B4147;   /* Deep Slate Stone      */
  --c-text:       #222629;   /* Charcoal Ink          */
  --c-text-light: #5C636A;
  --c-text-muted: #8A9199;
  --c-white:      #FFFFFF;
  --c-border:     rgba(36, 58, 74, 0.12);
  --c-border-inv: rgba(241, 242, 238, 0.18);

  /* ── GRADIENTS ────────────────────────────────── */
  --grad-hero:    linear-gradient(140deg, #243A4A 0%, #344B3F 55%, #3B4147 100%);
  --grad-light:   linear-gradient(180deg, #F1F2EE 0%, #E3E5DF 100%);
  --grad-accent:  linear-gradient(135deg, #E6B85C 0%, #F2CF85 100%);
  --grad-forest:  linear-gradient(135deg, #344B3F 0%, #5C7A68 100%);
  --overlay:      rgba(36, 58, 74, 0.40);
  --overlay-light: rgba(36, 58, 74, 0.22);

  /* ── TYPOGRAPHY ───────────────────────────────── */
  --ff-body:    'Inter', 'Manrope', sans-serif;
  --ff-display: 'Manrope', 'Inter', sans-serif;
  --ff-mono:    'IBM Plex Mono', monospace;

  --fs-xs:   0.75rem;
  --fs-sm:   0.875rem;
  --fs-base: 1rem;
  --fs-lg:   1.125rem;
  --fs-xl:   1.25rem;
  --fs-2xl:  1.5rem;
  --fs-3xl:  1.875rem;
  --fs-4xl:  2.25rem;
  --fs-5xl:  clamp(2.25rem, 4vw, 3rem);
  --fs-6xl:  clamp(2.75rem, 5vw, 4rem);
  --fs-hero: clamp(3rem, 6.5vw, 5.5rem);

  --lh-tight:   1.15;
  --lh-snug:    1.35;
  --lh-base:    1.65;
  --lh-relaxed: 1.82;

  --fw-light:    300;
  --fw-regular:  400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;
  --fw-extrabold:800;

  /* ── LAYOUT ───────────────────────────────────── */
  --container:     1240px;
  --container-pad: clamp(1.25rem, 5vw, 2.5rem);
  --section-py:    clamp(4.5rem, 9vw, 9rem);
  --section-gap:   clamp(2rem, 4vw, 4rem);

  /* ── BORDERS ──────────────────────────────────── */
  --radius-xs: 3px;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 32px;
  --radius-full: 9999px;

  /* ── SHADOWS ──────────────────────────────────── */
  --shadow-xs:     0 1px 4px rgba(36, 58, 74, 0.06);
  --shadow-sm:     0 2px 10px rgba(36, 58, 74, 0.08);
  --shadow-md:     0 4px 24px rgba(36, 58, 74, 0.11);
  --shadow-lg:     0 8px 40px rgba(36, 58, 74, 0.14);
  --shadow-xl:     0 16px 64px rgba(36, 58, 74, 0.18);
  --shadow-accent: 0 8px 28px rgba(230, 184, 92, 0.40);
  --shadow-card:   0 2px 14px rgba(36, 58, 74, 0.07), 0 8px 32px rgba(36, 58, 74, 0.05);

  /* ── TRANSITIONS ──────────────────────────────── */
  --tr-fast:   0.15s ease;
  --tr-base:   0.3s ease;
  --tr-slow:   0.5s ease;
  --tr-spring: 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}
