/* ============================================================
   base.css — Fondasi: variabel, font, reset, utilitas
   File ini hanya untuk hal global. Jangan taruh style
   navbar/hero/section/footer di sini agar bug mudah dilacak.
   ============================================================ */
:root {
  --navy-950: #0b1220;
  --navy-900: #0f172a;
  --navy-800: #1e293b;
  --gold-500: #c9a86a;
  --gold-400: #d9bc85;
  --gold-100: #f5ecd9;
  --paper: #faf8f3;
  --ink: #1e293b;
  --muted: #64748b;
  --line: #e7e0d2;
}

* { -webkit-tap-highlight-color: transparent; }

html { scroll-behavior: smooth; }

body {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  background: var(--paper);
  color: var(--ink);
}

.font-serif-elegant { font-family: 'Playfair Display', Georgia, serif; }

.section-label {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  color: #926f2e;
}
.section-label::before {
  content: "";
  width: 2.25rem;
  height: 2px;
  background: var(--gold-500);
  display: inline-block;
}

.gold-divider {
  width: 64px;
  height: 3px;
  background: linear-gradient(90deg, var(--gold-500), transparent);
  border-radius: 999px;
}

.card-elegant {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 1.25rem;
  box-shadow: 0 10px 30px rgba(11, 18, 32, 0.05);
}

.btn-gold {
  background: linear-gradient(135deg, #d9bc85, #c9a86a);
  color: #0f172a;
  font-weight: 800;
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
  box-shadow: 0 12px 28px rgba(201, 168, 106, 0.35);
}
.btn-gold:hover { filter: brightness(1.05); transform: translateY(-1px); }

.btn-outline-light {
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px);
  transition: background 0.2s ease;
}
.btn-outline-light:hover { background: rgba(255, 255, 255, 0.16); }

/* Reveal animation — dikontrol oleh assets/js/reveal.js */
.reveal { opacity: 0; transform: translateY(26px); transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal.visible { opacity: 1; transform: none; }
