/* ============================================================
   RESET & BASE STYLES
   ============================================================ */

@font-face {
  font-family: 'ClassyVogue';
  src: url('../assets/fonts/ClassyVoguePersonalUse.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
  font-size: 16px;
}

/* Global Font Overrides: Use Montserrat for all body text elements */
html, body, p, span, li, button, a, div, input, textarea, select, label {
  font-family: 'Montserrat', sans-serif !important;
}

/* Heading elements use ClassyVogue */
h1, h2, h3, h4, h5, h6 {
  font-family: 'ClassyVogue', 'Cormorant Garamond', 'Georgia', serif !important;
}

/* Except the header and the menu section, which use Montserrat */
#navbar, #navbar * {
  font-family: 'Montserrat', sans-serif !important;
}

body {
  background-color: #0d0305;
  color: var(--color-white);
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img { display: block; max-width: 100%; }
a   { color: inherit; text-decoration: none; }
ul  { list-style: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }

/* ── Scrollbar ── */
::-webkit-scrollbar        { width: 4px; }
::-webkit-scrollbar-track  { background: #0d0305; }
::-webkit-scrollbar-thumb  { background: var(--color-gold); border-radius: 2px; }

/* ── Selection ── */
::selection { background: rgba(196,158,80,0.3); color: var(--color-white); }

/* ── Scroll-reveal utility (used by future sections) ── */
.reveal {
  opacity: 0;
  transform: translateY(15px); /* Subtly shift up by 15px to prevent exaggerated jumping */
  transition: opacity 1.4s cubic-bezier(0.25, 1, 0.5, 1), transform 1.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.reveal.is-visible { 
  opacity: 1; 
  transform: translateY(0); 
}

.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }
.delay-3 { transition-delay: 0.3s; }
.delay-4 { transition-delay: 0.4s; }
.delay-5 { transition-delay: 0.5s; }
.delay-6 { transition-delay: 0.6s; }
