/* Cozatel — tokens de marca. Copiados de "Cozatel Design System/tokens/". No editar a mano:
   si cambian los valores de marca, se actualiza ahí y se vuelve a copiar aquí. */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&family=Barlow:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Barlow+Condensed:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');

:root{
  /* Tinta / navy (base del logo) */
  --ink-1000:#01060d;--ink-900:#010a13;--ink-800:#0a1723;--ink-700:#122435;--ink-600:#1c3345;
  --ink-500:#2b4557;--ink-400:#456277;--ink-300:#6f8a9c;--ink-200:#a7bac6;--ink-100:#d6dfe6;--ink-050:#eef2f5;
  /* Oro (marca) */
  --gold-900:#5c3f12;--gold-800:#6b4a16;--gold-700:#8c6321;--gold-600:#a87d2e;--gold-500:#c29941;
  --gold-400:#d3ab52;--gold-300:#eac364;--gold-200:#f2d894;--gold-100:#f8ecc9;--gold-050:#fdf7e8;
  /* Neutros cálidos */
  --paper-000:#ffffff;--paper-050:#faf8f4;--paper-100:#f3efe8;--paper-200:#e6e0d5;--paper-300:#cec6b7;
  /* Semánticos */
  --green-600:#1e7d52;--green-100:#e2f2ea;
  --amber-600:#b26a00;--amber-100:#fdf1de;
  --red-600:#b3352c;--red-100:#fbeae8;
  --info-600:#2b6d8a;--info-100:#e3eef3;

  --grad-gold:linear-gradient(160deg,#f2d894 0%,#c29941 38%,#8c6321 72%,#d3ab52 100%);
  --grad-gold-rule:linear-gradient(90deg,rgba(194,153,65,0) 0%,#c29941 18%,#eac364 50%,#c29941 82%,rgba(194,153,65,0) 100%);
  --veil-bottom:linear-gradient(180deg,rgba(1,10,19,0) 0%,rgba(1,10,19,.55) 45%,rgba(1,10,19,.94) 100%);
  --veil-side:linear-gradient(90deg,rgba(1,10,19,.94) 0%,rgba(1,10,19,.72) 48%,rgba(1,10,19,.15) 100%);

  --surface-page:var(--ink-900);
  --surface-raised:var(--ink-800);
  --surface-sunken:var(--ink-1000);
  --surface-card:var(--ink-800);
  --surface-card-light:var(--paper-000);
  --surface-page-light:var(--paper-050);
  --surface-field:rgba(255,255,255,.04);
  --surface-veil:rgba(1,6,13,.72);

  --text-strong:var(--paper-000);
  --text-body:var(--ink-200);
  --text-muted:var(--ink-300);
  --text-brand:var(--gold-300);
  --text-on-gold:var(--ink-1000);
  --text-strong-light:var(--ink-900);
  --text-body-light:var(--ink-500);
  --text-muted-light:var(--ink-400);
  --text-link:var(--gold-400);
  --text-link-hover:var(--gold-200);

  --border-hairline:rgba(214,223,230,.12);
  --border-strong:rgba(214,223,230,.22);
  --border-gold:rgba(194,153,65,.45);
  --border-light:var(--paper-200);

  --accent:var(--gold-500);
  --accent-hover:var(--gold-400);
  --accent-press:var(--gold-700);
  --accent-quiet:rgba(194,153,65,.12);

  --state-ok:var(--green-600);--state-ok-bg:var(--green-100);
  --state-warn:var(--amber-600);--state-warn-bg:var(--amber-100);
  --state-error:var(--red-600);--state-error-bg:var(--red-100);
  --state-info:var(--info-600);--state-info-bg:var(--info-100);
  --state-handoff:var(--gold-300);--state-handoff-bg:rgba(194,153,65,.14);

  /* Tipografía */
  --font-brand:'Cinzel',Georgia,'Times New Roman',serif;
  --font-sans:'Barlow','Segoe UI',system-ui,-apple-system,sans-serif;
  --font-condensed:'Barlow Condensed','Barlow',system-ui,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;

  --fs-2xs:11px;--fs-xs:12px;--fs-sm:14px;--fs-base:16px;--fs-md:18px;--fs-lg:21px;
  --fs-xl:26px;--fs-2xl:32px;--fs-3xl:40px;--fs-4xl:52px;--fs-5xl:68px;--fs-6xl:88px;

  --lh-tight:1.05;--lh-snug:1.18;--lh-normal:1.35;--lh-body:1.6;--lh-loose:1.75;

  --fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:900;

  --ls-brand:.16em;--ls-eyebrow:.22em;--ls-tight:-.02em;--ls-normal:0;--ls-wide:.04em;

  --type-wordmark:var(--fw-bold) var(--fs-xl)/var(--lh-tight) var(--font-brand);
  --type-display:var(--fw-bold) var(--fs-5xl)/var(--lh-tight) var(--font-sans);
  --type-h1:var(--fw-bold) var(--fs-4xl)/var(--lh-snug) var(--font-sans);
  --type-h2:var(--fw-bold) var(--fs-2xl)/var(--lh-snug) var(--font-sans);
  --type-h3:var(--fw-semibold) var(--fs-lg)/var(--lh-normal) var(--font-sans);
  --type-eyebrow:var(--fw-semibold) var(--fs-xs)/var(--lh-normal) var(--font-condensed);
  --type-body:var(--fw-regular) var(--fs-base)/var(--lh-body) var(--font-sans);
  --type-body-lg:var(--fw-regular) var(--fs-md)/var(--lh-body) var(--font-sans);
  --type-small:var(--fw-regular) var(--fs-sm)/var(--lh-normal) var(--font-sans);
  --type-label:var(--fw-semibold) var(--fs-xs)/var(--lh-normal) var(--font-sans);
  --type-button:var(--fw-semibold) var(--fs-sm)/1 var(--font-sans);
  --type-data:var(--fw-medium) var(--fs-sm)/var(--lh-normal) var(--font-mono);

  /* Espacio, radios, sombras, movimiento */
  --sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;
  --sp-7:32px;--sp-8:40px;--sp-9:48px;--sp-10:64px;--sp-11:80px;--sp-12:104px;--sp-13:136px;

  --gutter-page:24px;--gutter-page-lg:56px;
  --measure:66ch;
  --container:1200px;--container-narrow:760px;
  --section-y:var(--sp-12);--section-y-sm:var(--sp-10);

  --r-0:0;--r-xs:2px;--r-sm:3px;--r-md:5px;--r-lg:8px;--r-xl:12px;--r-pill:999px;

  --bw-hair:1px;--bw-rule:2px;--bw-accent:3px;

  --shadow-none:none;
  --shadow-sm:0 1px 2px rgba(1,6,13,.18);
  --shadow-md:0 6px 20px rgba(1,6,13,.14);
  --shadow-lg:0 18px 48px rgba(1,6,13,.20);
  --shadow-dark:0 20px 60px rgba(0,0,0,.55);
  --glow-gold:0 0 0 1px rgba(194,153,65,.35),0 8px 30px rgba(194,153,65,.14);
  --inset-hair:inset 0 1px 0 rgba(255,255,255,.06);
  --ring-focus:0 0 0 2px var(--ink-900),0 0 0 4px var(--gold-400);

  --ease-out:cubic-bezier(.2,.7,.3,1);
  --ease-in-out:cubic-bezier(.4,0,.2,1);
  --dur-fast:120ms;--dur-base:180ms;--dur-slow:280ms;--dur-slower:420ms;

  --blur-veil:10px;--blur-modal:6px;
  --z-base:0;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark;scroll-behavior:smooth}
body{margin:0;font:var(--type-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;color:var(--text-strong);text-wrap:balance}
h1{font:var(--type-h1);letter-spacing:var(--ls-tight)}
h2{font:var(--type-h2);letter-spacing:var(--ls-tight)}
h3{font:var(--type-h3)}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover)}
a:active{color:var(--gold-600)}
img{max-width:100%;display:block}
button{font-family:inherit}
:focus-visible{outline:none;box-shadow:var(--ring-focus)}
::selection{background:var(--gold-500);color:var(--ink-1000)}
.cz-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--gold-400)}
.cz-rule{height:2px;background:var(--grad-gold-rule);border:0}
