/* ==========================================================
   THEME: EMBER
   Vibra: Pasión, energía, transformación, intensidad
   Público: Entrenadores personales, nutrición deportiva, crossfit, running
   Color primario: Rojo-anaranjado (#ef4444 → #f97316)
========================================================== */

:root {
  /* --- COLOR PRIMARIO --- */
  --primary: #ef4444;
  --primary-hover: #dc2626;
  --primary-light: rgba(239, 68, 68, 0.12);
  --primary-gradient: linear-gradient(135deg, #ef4444, #f97316);

  /* --- COLORES SECUNDARIOS --- */
  --secondary: #f97316;
  --secondary-light: rgba(249, 115, 22, 0.08);
  --accent: #fef2f2;

  /* --- FONDOS Y SUPERFICIES --- */
  --color-background: #0f0e0e;
  --color-background-elevated: #1a1616;
  --color-background-soft: #221d1d;
  --color-surface: #1a1616;
  --color-surface-hover: #261f1f;

  --color-text: #f5f0ed;
  --color-text-secondary: #b8aaa5;
  --color-text-tertiary: #7a6a66;
  --color-text-inverse: #0f0e0e;

  --color-border: rgba(239, 68, 68, 0.08);
  --color-border-hover: rgba(239, 68, 68, 0.25);

  /* --- SOMBRAS --- */
  --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.5);
  --shadow-md: 0 4px 24px rgba(0, 0, 0, 0.6);
  --shadow-lg: 0 8px 48px rgba(0, 0, 0, 0.7);
  --shadow-xl: 0 16px 64px rgba(0, 0, 0, 0.8);
  --shadow-glow: 0 0 60px rgba(239, 68, 68, 0.08);

  /* --- RADIOS --- */
  --radius-sm: 6px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-xl: 30px;
  --radius-full: 9999px;

  /* --- DESIGN TOKENS DEL TEMA --- */
--header-background: rgba(15, 14, 14, 0.88);
  --header-background-scrolled: rgba(15, 14, 14, 0.95);
  --header-link-underline-height: 3px;

  --hero-overlay-background:
    linear-gradient(135deg, rgba(15, 14, 14, 0.9), rgba(15, 14, 14, 0.2) 60%, transparent),
    linear-gradient(0deg, rgba(15, 14, 14, 0.85), transparent 40%);
  --hero-title-weight: 700;
  --hero-claim-weight: var(--font-weight-medium);
  --hero-split-image-radius: 10px;

  --about-image-radius: 14px;

  --service-card-radius: 6px;
  --service-card-hover-shadow: var(--shadow-lg);
  --service-card-hover-translate-y: -6px;
  --service-title-weight: var(--font-weight-bold);
  --service-list-radius: 6px;
  --service-split-radius: 8px;

  --credential-card-radius: 6px;
  --credential-card-hover-shadow: var(--shadow-lg);
  --credential-card-hover-translate-y: -6px;
  --credential-title-weight: var(--font-weight-bold);

  --stats-card-radius: 6px;
  --stats-card-padding: var(--spacing-xl);
  --stats-card-hover-shadow: var(--shadow-glow);
  --stats-number-color: var(--primary);
  --stats-number-weight: 700;
  --stats-label-weight: var(--font-weight-semibold);
  --stats-label-size: 0.95rem;

  --gallery-slide-radius: 8px;
  --gallery-slide-hover-shadow: var(--shadow-lg);
  --gallery-slide-hover-scale: 1.04;

  --contact-image-radius: 8px;
  --contact-card-radius: 8px;
  --contact-card-shadow: var(--shadow-lg);
  --contact-secondary-radius: 8px;

  --footer-background: var(--color-background);
}

body {
  background:
    radial-gradient(ellipse at 30% 20%, rgba(239, 68, 68, 0.05), transparent 50%),
    radial-gradient(ellipse at 70% 80%, rgba(249, 115, 22, 0.04), transparent 45%),
    var(--color-background);
}

/* --- SELECTION --- */
::selection {
  background-color: var(--primary);
  color: #fff;
}

/* --- BOTONES --- */
.btn-primary {
  background: var(--primary-gradient);
  color: #fff;
  box-shadow: 0 4px 24px rgba(239, 68, 68, 0.25);
  border: none;
  border-radius: var(--radius-full);
  padding: 0 var(--spacing-xl);
  min-height: 48px;
  font-weight: var(--font-weight-semibold);
  transition: all var(--transition-base);
}

.btn-primary:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 8px 40px rgba(239, 68, 68, 0.35);
}

.btn-secondary {
  background: rgba(239, 68, 68, 0.06);
  color: var(--color-text);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  padding: 0 var(--spacing-xl);
  min-height: 48px;
  font-weight: var(--font-weight-medium);
  transition: all var(--transition-base);
}

.btn-secondary:hover {
  background: rgba(239, 68, 68, 0.12);
  border-color: var(--color-border-hover);
  transform: translateY(-3px);
}

/* --- EYEBROW --- */
.eyebrow {
  color: var(--primary);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 0.7rem;
}

.eyebrow::before {
  background: var(--primary-gradient);
}

.eyebrow::after {
  background: var(--primary-gradient);
}

.credential-card::before {
  content: "";
  display: block;
  width: 48px;
  height: 4px;
  margin-bottom: var(--spacing-lg);
  border-radius: var(--radius-full);
  background: var(--primary-gradient);
}

.hero-full::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 4px;
  background: var(--primary-gradient);
}

:root {
  --hero-full-bottom-gap: var(--spacing-md);
  --stats-mobile-margin-top: var(--spacing-lg);
}
.hero-full::after {
  bottom: 0;
}
