/* Design tokens — su marca: celeste del logo (#31B0EC) y blanco, amable y luminosa (2026-10-30).
   Sustituye a la estética de agosto (coral/verde/mostaza, bordes negros y sombras duras), que él vio
   «cutre» y «demasiado negra». Referencia: columbuspre-school.com y su propia web original. */
:root {
  /* color */
  --color-bg:            #FFFFFF;
  --color-bg-alt:        #F1FAFE; /* cielo: franja celeste muy pálida */
  --color-surface:       #FFFFFF;
  --color-ink:           #3F5163; /* texto: gris azulado, nunca negro */
  --color-ink-soft:      #6A7B8C;
  --color-heading:       #17739F; /* títulos: celeste intenso */
  --color-border:        #E2F4FC; /* bordes suaves */
  --color-border-soft:   #EEF8FD;

  --color-primary:       #31B0EC; /* celeste de la marca */
  --color-primary-dark:  #1B8CC4;
  --color-primary-tint:  #E2F4FC;

  --color-secondary:     #17739F;
  --color-secondary-dark:#17739F;
  --color-secondary-tint:#F1FAFE;

  --color-accent:        #FFD45C; /* sol: solo para detalles muy puntuales */
  --color-accent-tint:   #F1FAFE;

  --color-focus:         #1B8CC4;
  --color-error:         #C1121F;
  --color-error-tint:    #FBE2E2;

  /* tipografía: redondeada para títulos, amable para el texto */
  --font-heading: "Baloo 2", "Nunito", system-ui, sans-serif;
  --font-body: "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;

  --font-size-xs:  0.85rem;
  --font-size-sm:  0.95rem;
  --font-size-base:1.06rem;
  --font-size-md:  1.3rem;
  --font-size-lg:  1.7rem;
  --font-size-xl:  2.3rem;
  --font-size-2xl: 3rem;
  --font-size-3xl: 4rem;

  --line-height-body: 1.7;
  --line-height-heading: 1.12;

  /* espaciado (base 8px) */
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 3rem;
  --space-6: 4.5rem;
  --space-7: 6rem;

  /* forma: esquinas redondeadas, bordes finos y sombras suaves */
  --radius-sm: 10px;
  --radius-md: 18px;
  --radius-lg: 26px;
  --border-w: 2px;
  --shadow-soft: 0 8px 24px rgba(49, 176, 236, .12);
  --shadow-lift: 0 14px 34px rgba(49, 176, 236, .2);

  /* layout */
  --content-max: 72rem;
  --content-narrow: 46rem;
  --header-height: 4.8rem;
}
