/* HotelesGT — tokens.css
   Única fuente de verdad del color (§3.1 y §14.1 del brief).
   Ningún hex se escribe a mano en un widget de Elementor.
   Contrastes verificados con verificar_tokens.py */

:root{
  /* Jade — estructural: marca, titulares, enlaces, header, footer */
  --jade-900  :#072E27;
  --jade-800  :#0A3F35;
  --jade-700  :#0D5344;   /* MARCA */
  --jade-600  :#14705C;
  --jade-500  :#1E8E76;
  --jade-100  :#D6E9E2;
  --jade-50   :#EDF6F2;

  /* Carmín — exclusivo de acción */
  --carmin-700:#8A1B31;
  --carmin-600:#A82039;  /* CTA PRIMARIO */
  --carmin-500:#C42B47;
  --carmin-100:#F7DDE2;

  /* Oro — exclusivo de calificaciones y sello de temporada */
  --oro-600   :#C8860D;

  /* Neutros */
  --fog       :#EFF2F0;
  --surface   :#FFFFFF;
  --line      :#D9E0DB;
  --line-ui   :#87948D;
  --ink       :#14201C;
  --ink-2     :#48544E;
  --ink-3     :#616C66;

  /* Semánticos */
  --ok        :#0D5344;
  --warn      :#8A6100;
  --error     :#9B1C1C;

  /* Tipografía (§4) */
  --fuente-display:'Newsreader',Georgia,serif;
  --fuente-texto  :'Figtree',system-ui,-apple-system,sans-serif;

  /* Forma y espacio (§5) — rejilla base de 8 px */
  --r-tarjeta:16px; --r-boton:10px; --r-badge:999px; --r-sello:8px;
  --ancho-general:1200px; --ancho-texto:680px;
  --sombra-reposo:0 1px 2px rgba(20,32,28,.06),0 2px 8px rgba(20,32,28,.04);
  --sombra-hover :0 4px 16px rgba(20,32,28,.10);
  --borde:1px solid var(--line);
}

/* Foco visible — §12: NUNCA se elimina el outline */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:2px solid var(--jade-700);
  outline-offset:2px;
}

/* Números tabulares en precios, calificaciones y distancias (§4) */
.hgt-num{font-variant-numeric:tabular-nums;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;}
}
