/* ==========================================================================
   DREAMFYRE TECHNOLOGIES — SISTEMA DE TOKENS OFICIALES (EDICIÓN ARQUITECTÓNICA)
   Fuente de verdad: Kit de Identidad v2.0 (15-10-2026)
   ========================================================================== */

/* Tipografía de Títulos: Manrope (OFL) */
@font-face {
  font-family: "Manrope";
  src: url("../assets/fonts/Manrope-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src: url("../assets/fonts/Manrope-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src: url("../assets/fonts/Manrope-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src: url("../assets/fonts/Manrope-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Manrope";
  src: url("../assets/fonts/Manrope-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* Tipografía de Lectura, Navegación y Formularios: Inter (OFL) */
@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  /* --- PALETA DE MARCA MAESTRA (SÓLIDA, SIN DEGRADADOS AJENOS) --- */
  --brand-violeta: #5B36D6;
  --brand-violeta-hover: #4826B3;
  --brand-violeta-soft: #EDE8FC;
  --brand-tinta: #181625;
  --brand-tinta-elevated: #221F30;
  --brand-tinta-surface: #282438;
  --brand-hielo: #F6F5FA;
  --brand-hielo-deep: #ECEAF4;
  --brand-lavanda: #C7B8FF;
  --brand-lavanda-soft: #F2EEFF;
  --brand-menta: #B7E4D7;
  --brand-menta-soft: #E6F6F1;

  /* --- TOKENS SEMÁNTICOS DE SUPERFICIE Y TEXTO --- */
  --surface: #FFFFFF;
  --canvas: #F6F5FA;
  --text: #181625;
  --text-secondary: #585369;
  --text-muted: #756F88;
  --action: #5B36D6;
  --action-text: #FFFFFF;
  --action-hover: #4826B3;
  --border-subtle: #DCD8E8;
  --border-strong: #C2BBD6;
  --border-control: #80788F;
  --focus: #5B36D6;

  /* --- ESTADOS DE RETROALIMENTACIÓN VERIFICADOS --- */
  --success-text: #145947;
  --success-surface: #E9F5EF;
  --success-border: #6BC2A8;
  --warning-text: #7A4B00;
  --warning-surface: #FFF3D6;
  --error-text: #B42318;
  --error-surface: #FDECEB;
  --error-border: #EC847B;

  /* --- FAMILIAS TIPOGRÁFICAS --- */
  --font-display: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  /* --- ESCALA TIPOGRÁFICA EDITORIAL --- */
  --text-xs: clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem);
  --text-sm: clamp(0.875rem, 0.84rem + 0.2vw, 0.95rem);
  --text-base: clamp(1rem, 0.96rem + 0.22vw, 1.08rem);
  --text-lg: clamp(1.125rem, 1.05rem + 0.35vw, 1.3rem);
  --text-xl: clamp(1.3rem, 1.18rem + 0.55vw, 1.65rem);
  --text-2xl: clamp(1.65rem, 1.4rem + 1vw, 2.25rem);
  --text-3xl: clamp(2.15rem, 1.8rem + 1.6vw, 3.25rem);
  --text-4xl: clamp(2.6rem, 2.1rem + 2.2vw, 4rem);
  --text-hero: clamp(3rem, 2.3rem + 3.2vw, 5.15rem);

  /* --- ESPACIADO ARQUITECTÓNICO --- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5.5rem;
  --space-24: 7rem;
  --space-32: 9rem;

  /* --- RADIOS GEOMÉTRICOS --- */
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-full: 9999px;

  /* --- CURVAS CINEMATOGRÁFICAS --- */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out-quart: cubic-bezier(0.76, 0, 0.24, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --transition-fast: 0.22s var(--ease-out-expo);
  --transition-normal: 0.4s var(--ease-out-expo);
  --transition-slow: 0.75s var(--ease-out-expo);

  /* --- SOMBRAS ARQUITECTÓNICAS --- */
  --shadow-sm: 0 2px 8px rgba(24, 22, 37, 0.04);
  --shadow-md: 0 12px 32px -8px rgba(24, 22, 37, 0.08);
  --shadow-lg: 0 24px 56px -12px rgba(24, 22, 37, 0.14);
  --shadow-violet: 0 16px 40px -8px rgba(91, 54, 214, 0.28);

  /* --- CONTENEDORES --- */
  --container-max: 1320px;
  --container-wide: 1440px;
}

/* Contexto Tinta (Modo Oscuro Editorial) */
.theme-dark,
.section-dark,
.site-footer,
.contact-editorial-info {
  --surface: #221F30;
  --canvas: #181625;
  --text: #F6F5FA;
  --text-secondary: #C4BFD6;
  --text-muted: #9E97B8;
  --action: #C7B8FF;
  --action-text: #181625;
  --action-hover: #DED4FF;
  --border-subtle: #353047;
  --border-strong: #4E4766;
  --focus: #C7B8FF;
}

:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
