/* ─── Linda Quinceañera — Shared Design Tokens ─── */

:root {
  --rose: #163A5C;
  --rose-light: #2B5F8E;
  --gold: #D4A853;
  --gold-light: #E8C97A;
  --dark: #091B2E;
  --dark-soft: #0F2B46;
  --cream: #FDF6EC;
  --warm-white: #FFF9F0;
  --purple-deep: #061220;
  --purple-soft: #163A5C;
}

/* ─── RESET ─── */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  font-family: 'Inter', sans-serif;
  color: var(--dark);
  background: var(--dark);
  overflow-x: hidden;
}

/* ─── SHARED TYPOGRAPHY ─── */
.section-title {
  font-family: 'Great Vibes', cursive;
  font-size: clamp(2.625rem, 4.5vw, 3.625rem);
  color: var(--dark);
  margin-bottom: 0.5rem;
}

.section-title-line {
  width: 4rem;
  height: 2px;
  background: var(--gold);
  margin: 1.5rem auto;
}

/* ─── SHARED ANIMATIONS ─── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes float {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50%      { transform: translateX(-50%) translateY(8px); }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}
