@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Cormorant+Garamond:wght@600&family=DM+Sans:wght@400;500&family=Dancing+Script:wght@400&display=swap');

:root {
  --cream: #FDF0E6;
  --peach: #FCDFC8;
  --orange: #E8732A;
  --orange-dark: #B85C38;
  --green: #3D5A40;
  --dark: #1A1410;
  --teal: #1D4D4A;
  --gold: #D4B896;
  --lavender: #C4A8D0;
  --text: #2A1F1A;

  --lavender-25: rgba(196, 168, 208, 0.25);
  --shadow-warm: rgba(42, 31, 26, 0.08);
  --shadow-warm-deep: rgba(42, 31, 26, 0.16);
  --overlay-dark: rgba(26, 20, 16, 0.55);

  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 16px;
  --sp-4: 24px;
  --sp-5: 40px;
  --sp-6: 64px;
  --sp-7: 96px;
  --sp-8: 128px;

  --font-display: 'Playfair Display', serif;
  --font-editorial: 'Cormorant Garamond', serif;
  --font-body: 'DM Sans', sans-serif;
  --font-script: 'Dancing Script', cursive;

  --radius-pill: 999px;
  --radius-card: 32px;
  --radius-image: 24px;
  --radius-arch: 999px 999px 0 0;

  --nav-height: 72px;
}

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

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--nav-height);
  overflow-x: hidden;
}

body {
  font-family: var(--font-body);
  color: var(--text);
  background-color: var(--cream);
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

ul, ol {
  list-style: none;
}

button {
  cursor: pointer;
  font-family: var(--font-body);
  border: none;
  background: none;
}

@media (scripting: none) {
  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}
