/* Hallmark · custom theme: "Cenote" · CÉFIRO — climatización de precisión, Riviera Maya
 * paper: caliza L94% (light band) · display: warm roman-serif (Newsreader) · accent: teal-cenote (cool 189°) + ocre-sol (warm 55°)
 * vibe: "luminous limestone cenote, warm-premium, engineering precision"
 * LOCKED — every colour/font/space/timing declaration references a token below. No mid-render improvisation.
 */

:root {
  /* ---- Colour · escalera de luz caliza (no cajas grises) ---- */
  --color-bg:        oklch(0.941 0.017 79);   /* #F4ECE0 caliza/sascab — base luminosa */
  --color-surface:   oklch(0.918 0.023 76);   /* #EFE4D4 arena — elevación +1 */
  --color-surface-3: oklch(0.882 0.033 78);   /* #E7D9C4 arena-2 — elevación +2 */

  --color-ink:       oklch(0.255 0.008 61);   /* #2A2622 grafito cálido — texto primario */
  --color-ink-2:     oklch(0.455 0.014 66);   /* #6B6055 secundario */
  --color-ink-3:     oklch(0.585 0.014 76);   /* #8C8375 captions */

  --color-cenote:    oklch(0.475 0.083 189);  /* #12716B teal profundo — POLO FRÍO / acento marca */
  --color-cenote-hi: oklch(0.405 0.076 189);  /* hover/pressed cenote */
  --color-agua:      oklch(0.727 0.062 185);  /* #6FB7AE aqua-cáustica — luz de agua, glows */
  --color-sol:       oklch(0.647 0.106 55);   /* #C97C43 ocre-terracota — POLO CÁLIDO */
  --color-sol-hot:   oklch(0.565 0.122 47);   /* #B65A2A pico de calor */
  --color-white:     #ffffff;                 /* solo glass/UI mínima, raro */

  /* alpha helpers para escrims/scrims del signature */
  --scrim-sol:  oklch(0.647 0.106 55 / 0.34);
  --scrim-agua: oklch(0.727 0.062 185 / 0.24);
  --hair:       oklch(0.255 0.008 61 / 0.14);   /* hairline sutil, último recurso */
  --hair-soft:  oklch(0.255 0.008 61 / 0.08);
  --shadow-1:   0 1px 2px oklch(0.255 0.008 61 / 0.05), 0 8px 24px oklch(0.255 0.008 61 / 0.06);
  --shadow-2:   0 2px 4px oklch(0.255 0.008 61 / 0.06), 0 18px 48px oklch(0.255 0.008 61 / 0.10);

  --color-focus: oklch(0.475 0.083 189);

  /* ---- Type ---- */
  --font-display: "Newsreader", Georgia, "Times New Roman", serif;   /* editorial cálido */
  --font-body:    "Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;  /* grotesca humanista */
  --font-mono:    "Space Mono", ui-monospace, "SFMono-Regular", monospace; /* precisión de ingeniería */

  /* Escala modular 1.25 (major third), fluida en rem, lock 320→1240 */
  --text-xs:   0.75rem;    /* 12px  — mono labels */
  --text-sm:   0.8125rem;  /* 13px  — captions */
  --text-base: 1rem;       /* 16px  — body floor */
  --text-md:   1.1875rem;  /* 19px  — lead */
  --text-lg:   clamp(1.35rem, 1.1rem + 1.1vw, 1.62rem);
  --text-xl:   clamp(1.7rem, 1.3rem + 1.9vw, 2.15rem);
  --text-2xl:  clamp(2.15rem, 1.5rem + 3vw, 3.05rem);
  --text-3xl:  clamp(2.6rem, 1.6rem + 4.4vw, 3.9rem);
  --text-display:   clamp(2.9rem, 1.6rem + 5.6vw, 5.1rem);
  --text-display-s: clamp(2.4rem, 1.5rem + 4vw, 3.9rem);

  --lh-tight: 1.06;
  --lh-snug:  1.18;
  --lh-body:  1.62;
  --track-tight: -0.02em;
  --track-kicker: 0.14em;

  /* ---- Spacing · 4pt scale ---- */
  --space-3xs: 0.25rem;  /* 4  */
  --space-2xs: 0.5rem;   /* 8  */
  --space-xs:  0.75rem;  /* 12 */
  --space-sm:  1rem;     /* 16 */
  --space-md:  1.5rem;   /* 24 */
  --space-lg:  2.5rem;   /* 40 */
  --space-xl:  4rem;     /* 64 */
  --space-2xl: 6rem;     /* 96 */
  --space-3xl: clamp(5rem, 3rem + 8vw, 9rem);  /* section rhythm */
  --measure: 62ch;

  /* ---- Radius · un solo sistema ---- */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-pill: 999px;

  /* ---- Motion · un solo sistema de timing ---- */
  --ease-out:    cubic-bezier(0, 0, 0.2, 1);
  --ease-in:     cubic-bezier(0.4, 0, 1, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-micro: 200ms;
  --dur-ui:    300ms;
  --dur-in:    350ms;   /* entrada de hover (asimétrico) */
  --dur-out:   180ms;   /* salida de hover */
  --dur-large: 450ms;

  --nav-h: 68px;
  --edge: clamp(1.15rem, 5vw, 4rem);   /* margen de página */
  --maxw: 1240px;
}
