/* Design tokens — La Montserratina
   Extraído de los assets de marca provistos por La Web Figital Agency.
   Ajustar valores si la guía de marca oficial difiere. */

:root {
  /* Color: paleta oficial de www.montserratina.com */
  --c-bg: #000000;          /* Negro de fondo */
  --c-bg-soft: #0a0a0a;     /* Negro suave para capas secundarias */
  --c-fg: #ffffff;          /* Texto principal */
  --c-fg-muted: #adafb2;    /* Texto secundario (del sitio oficial) */
  --c-fg-subtle: #808080;   /* Texto terciario / captions */
  --c-accent: #ff9b42;      /* Naranja de marca oficial (sitio oficial) */
  --c-accent-strong: #d45d00;  /* Naranja hover / oscuro (sitio oficial) */
  --c-accent-soft: rgba(255, 155, 66, 0.18); /* Tinte para fondos */
  --c-accent-light: #fbd5aa; /* Naranja claro (hover sutil, sitio oficial) */
  --c-line: rgba(255, 255, 255, 0.12);
  --c-danger: #cc0000;      /* Rojo alertas (sitio oficial) */
  --c-success: #4dd17a;

  /* Tipografía — Google Fonts alternativas (Bebas Neue + Inter) */
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-display: "Bebas Neue", "Oswald", "Arial Narrow", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;

  /* Brand-aligned spacing */
  --letter-spacing-display: 0.04em;  /* Headlines uppercase */
  --text-shadow-hero: 2px 2px 2px rgba(0, 0, 0, 0.8);  /* Hero headlines */
  --radius-sharp: 4px;  /* Botones brand-aligned (sitio oficial border-radius: 0) */

  /* Type scale (modular, base 16px) */
  --fs-xs: 0.75rem;     /* 12px */
  --fs-sm: 0.875rem;    /* 14px */
  --fs-md: 1rem;        /* 16px */
  --fs-lg: 1.125rem;    /* 18px */
  --fs-xl: 1.375rem;    /* 22px */
  --fs-2xl: 1.75rem;    /* 28px */
  --fs-3xl: 2.25rem;    /* 36px */
  --fs-4xl: 3rem;       /* 48px */
  --fs-5xl: 4rem;       /* 64px */

  /* Spacing (8px scale) */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-5: 1.5rem;
  --s-6: 2rem;
  --s-7: 3rem;
  --s-8: 4rem;
  --s-9: 6rem;

  /* Radius */
  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 16px;
  --r-xl: 24px;
  --r-pill: 999px;

  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.25);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.35);
  --shadow-lg: 0 24px 64px rgba(255, 155, 66, 0.2);

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 180ms;
  --dur-base: 280ms;
  --dur-slow: 600ms;

  /* Layout */
  --container-max: 720px;
  --gutter: clamp(1rem, 4vw, 2rem);
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}