/* Brelanta · tokens de marca. Importa este archivo una vez y usa solo var(--...). */

@font-face{font-family:'Outfit';src:url('fonts/outfit-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('fonts/outfit-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('fonts/outfit-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('fonts/figtree-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('fonts/figtree-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('fonts/figtree-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

:root{
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:24px;
  --space-6:32px;
  --space-7:48px;
  --space-8:64px;
  --space-9:88px;
  --radius-sm:14px;
  --radius-md:20px;
  --radius-lg:24px;
  --radius-xl:32px;
  --radius-panel:40px;
  --radius-bowl:44px;
  --radius-leaf:8px;
  --radius-pill:999px;
  --font-display:Outfit,system-ui,sans-serif;
  --font-text:Figtree,system-ui,sans-serif;
  color-scheme:light;
  --bg:#ffffff;
  --surface:#e4f7f4;
  --surface-raised:#ffffff;
  --border:#cfe9e5;
  --ink:#0d2b33;
  --ink-soft:#4f6b70;
  --brand:#17c3b2;
  --brand-deep:#0b7f78;
  --on-brand:#0d2b33;
  --on-brand-deep:#ffffff;
  --accent-cta:#ff7a5c;
  --on-accent-cta:#0d2b33;
  --mint-tint:#8fe8de;
}

/* Modo oscuro: automático según el sistema, salvo que la página fuerce data-theme="light" */
@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]){ color-scheme:dark;
  --bg:#08191e;
  --surface:#0d2b33;
  --surface-raised:#123a44;
  --border:#1f4c56;
  --ink:#f2fbfa;
  --ink-soft:#a9cfcb;
  --brand:#17c3b2;
  --brand-deep:#17c3b2;
  --on-brand:#0d2b33;
  --on-brand-deep:#0d2b33;
  --accent-cta:#ff7a5c;
  --on-accent-cta:#0d2b33;
  --mint-tint:#8fe8de;
}
}

/* Modo oscuro forzado con el botón de la web: <html data-theme="dark"> */
:root[data-theme="dark"],[data-theme="dark"]{ color-scheme:dark;
  --bg:#08191e;
  --surface:#0d2b33;
  --surface-raised:#123a44;
  --border:#1f4c56;
  --ink:#f2fbfa;
  --ink-soft:#a9cfcb;
  --brand:#17c3b2;
  --brand-deep:#17c3b2;
  --on-brand:#0d2b33;
  --on-brand-deep:#0d2b33;
  --accent-cta:#ff7a5c;
  --on-accent-cta:#0d2b33;
  --mint-tint:#8fe8de;
}

/* Modo claro forzado en una zona: <div data-theme="light"> */
[data-theme="light"]{ color-scheme:light;
  --bg:#ffffff;
  --surface:#e4f7f4;
  --surface-raised:#ffffff;
  --border:#cfe9e5;
  --ink:#0d2b33;
  --ink-soft:#4f6b70;
  --brand:#17c3b2;
  --brand-deep:#0b7f78;
  --on-brand:#0d2b33;
  --on-brand-deep:#ffffff;
  --accent-cta:#ff7a5c;
  --on-accent-cta:#0d2b33;
  --mint-tint:#8fe8de;
}

/* Estilos de texto */
.t-display{font-family:var(--font-display);font-size:56px;line-height:60px;font-weight:700;letter-spacing:-0.025em;}
.t-h1{font-family:var(--font-display);font-size:44px;line-height:48px;font-weight:700;letter-spacing:-0.02em;}
.t-h2{font-family:var(--font-display);font-size:26px;line-height:32px;font-weight:600;letter-spacing:-0.015em;}
.t-h3{font-family:var(--font-display);font-size:22px;line-height:28px;font-weight:600;}
.t-wordmark{font-family:var(--font-display);font-size:34px;line-height:34px;font-weight:600;letter-spacing:-0.02em;}
.t-lead{font-family:var(--font-text);font-size:20px;line-height:30px;font-weight:400;}
.t-body{font-family:var(--font-text);font-size:17px;line-height:26px;font-weight:400;}
.t-ui{font-family:var(--font-text);font-size:16px;line-height:24px;font-weight:600;}
.t-small{font-family:var(--font-text);font-size:14px;line-height:20px;font-weight:500;}
.t-caption{font-family:var(--font-text);font-size:13px;line-height:18px;font-weight:400;}
@media (max-width:720px){.t-display{font-size:36px;line-height:39px}.t-h1{font-size:32px;line-height:35px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
