/* Oltin klassika — krem/oltin, nafis serif */

:root {
  --bg: #f8f4ec;
  --ink: #3d3527;
  --gold: #b8933d;
  --gold-soft: #d5bc7f;
  --card: #fffdf8;
}

body {
  background: var(--bg);
  color: var(--ink);
  font-family: "Cormorant Garamond", serif;
  font-size: 1.1rem;
}

/* Overlay */
.invite-overlay { background: var(--bg); }
.overlay-ornament { color: var(--gold); font-size: 1.6rem; margin-bottom: 14px; }
.overlay-kicker {
  text-transform: uppercase; letter-spacing: 0.35em; font-size: 0.75rem;
  color: var(--gold); margin-bottom: 14px;
}
.overlay-names {
  font-family: "Playfair Display", serif; font-weight: 400;
  font-size: clamp(1.8rem, 7vw, 2.6rem);
}
.overlay-names em { font-family: "Great Vibes", cursive; color: var(--gold); font-style: normal; }
.overlay-open-btn { background: var(--gold); color: #fff; }

/* Ramka */
.frame {
  border: 1px solid var(--gold-soft);
  outline: 1px solid var(--gold-soft);
  outline-offset: 5px;
  margin-top: 26px; padding: 10px 18px;
  background: var(--card);
}

/* Hero */
.hero { text-align: center; padding-top: 52px; }
.monogram {
  font-family: "Playfair Display", serif; font-size: 1.5rem; color: var(--gold);
  width: 84px; height: 84px; margin: 0 auto 22px; border: 1px solid var(--gold-soft);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  letter-spacing: 0.05em;
}
.monogram span { font-family: "Great Vibes", cursive; font-size: 1.1rem; margin: 0 3px; }
.kicker {
  text-transform: uppercase; letter-spacing: 0.35em; font-size: 0.72rem;
  color: var(--gold);
}
.names {
  font-family: "Playfair Display", serif; font-weight: 400;
  font-size: clamp(2rem, 8vw, 3rem); line-height: 1.25; margin: 14px 0 8px;
}
.names .amp {
  display: block; font-family: "Great Vibes", cursive;
  font-size: 0.55em; color: var(--gold); margin: 2px 0;
}
.date-line { font-size: 1.15rem; letter-spacing: 0.06em; font-style: italic; }
.divider { text-align: center; color: var(--gold); font-size: 1.4rem; padding: 10px 0; }

/* Matn */
.invite-text {
  text-align: center; font-size: 1.18rem; font-style: italic; line-height: 1.8;
  max-width: 460px; margin: 0 auto;
}

/* Countdown */
.section-heading {
  font-family: "Playfair Display", serif; font-weight: 400;
  font-size: 1.4rem; letter-spacing: 0.04em;
}
.cd-item { background: var(--bg); border: 1px solid var(--gold-soft); }
.cd-item span { font-family: "Playfair Display", serif; color: var(--gold); font-weight: 600; }
.cd-item small { color: var(--ink); opacity: 0.7; }
.countdown-done { color: var(--gold); font-family: "Playfair Display", serif; }

/* Xarita */
.btn-directions { background: var(--gold); color: #fff; }
.map-wrap { border: 1px solid var(--gold-soft); border-radius: 8px; }

/* Tabriklar */
.greet-form input, .greet-form textarea {
  background: var(--bg); border-color: var(--gold-soft); color: var(--ink);
  border-radius: 6px; font-family: inherit; font-size: 1.05rem;
}
.greet-form input:focus, .greet-form textarea:focus { border-color: var(--gold); }
.greet-form button { background: var(--gold); color: #fff; }
.greet-item { background: var(--bg); border: 1px solid #eee4cf; border-radius: 8px; }
.greet-item b { font-family: "Playfair Display", serif; color: var(--gold); font-weight: 600; }

/* Musiqa */
.music-btn { background: var(--gold); color: #fff; }
