/* 2a · Pastel Floral Romance — blush/lavender, soft florals */
body { background: #fdf6f7; color: #4a3a3f; }

.site-nav { background: rgba(253, 246, 247, .9); border-bottom: 1px solid #f0d9df; }
.site-nav a { color: #7a5e68; }
.site-nav a.active { color: #c77f96; }

.hero { padding: 40px 24px 50px; }

.monogram { width: 78px; height: 78px; margin: 0 auto 14px; }
.monogram .halo {
  inset: -10px; opacity: .5; animation-duration: 9s;
  background: conic-gradient(from 0deg, transparent 0deg, #e3a9b8 70deg, transparent 160deg, transparent 200deg, #d8c9e8 300deg, transparent 360deg);
}
.monogram .ring { border: 1px solid #e3a9b8; animation-duration: 4.5s; }
.monogram .ring-inner { inset: 7px; border: 1px solid rgba(199, 127, 150, .4); }
.monogram .letters { background: rgba(255, 255, 255, .65); font-family: 'Great Vibes', cursive; font-size: 30px; color: #c77f96; }

.eyebrow { font-size: 10px; letter-spacing: 3px; color: #b98a9a; margin: 0 0 6px; }
.names {
  font-family: 'Cormorant Garamond', serif; font-weight: 500; font-size: 30px; margin: 4px 0 8px;
  background-image: linear-gradient(100deg, #4a3a3f 30%, #c77f96 45%, #e3a9b8 50%, #c77f96 55%, #4a3a3f 70%);
}
.hero-photo {
  width: 240px; height: 240px; margin: 14px auto; border-radius: 50%;
  border: 4px solid #fff; box-shadow: 0 10px 24px -10px rgba(150, 100, 110, .4);
}
.hero-date { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; color: #7a5e68; margin: 0 0 20px; }
.cd-value { font-family: 'Cormorant Garamond', serif; font-size: 24px; color: #4a3a3f; font-weight: 600; }
.cd-label { color: #b98a9a; }

#story { background: #f6ecef; }
.section-title { font-family: 'Great Vibes', cursive; font-size: 30px; color: #c77f96; margin: 0 0 4px; font-weight: 400; }
.section-sub { font-size: 11px; letter-spacing: 2px; color: #8a7680; margin: 0 0 26px; }
.polaroid { background: #fff; box-shadow: 0 8px 18px -10px rgba(150, 100, 110, .3); }
.polaroid:hover { box-shadow: 0 16px 28px -12px rgba(150, 100, 110, .45); }
.polaroid p { color: #4a3a3f; }

.kicker { font-size: 11px; letter-spacing: 2px; color: #b98a9a; margin: 0 0 4px; }
.events-intro { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 14px; color: #7a5e68; margin: 0 0 26px; }

.side-label.groom { color: #c77f96; --line: #e3a9b8; }
.side-label.bride { color: #8a6fa8; --line: #d8c9e8; }

.ev-card { background: #fff; border: 1px solid #f0d9df; border-radius: 8px; box-shadow: 0 6px 16px -12px rgba(150, 100, 110, .3); }
.ev-card:hover { box-shadow: 0 16px 26px -12px rgba(150, 100, 110, .45); }
.ev-day { font-family: 'Cormorant Garamond', serif; font-size: 25px; font-weight: 600; color: #4a3a3f; }
.ev-month { color: #b98a9a; }
.ev-title { font-family: 'Great Vibes', cursive; font-size: 19px; color: #c77f96; font-weight: 400; }
.ev-desc { color: #7a5e68; }
.ev-card.bride { border-color: #e4d9ef; box-shadow: 0 6px 16px -12px rgba(140, 110, 170, .3); }
.ev-card.bride:hover { box-shadow: 0 16px 26px -12px rgba(140, 110, 170, .45); }
.ev-card.bride .ev-month { color: #9a84b5; }
.ev-card.bride .ev-title { color: #8a6fa8; }

.together { color: #b98a9a; }
.shared-card {
  border: 1px solid #c77f96; border-radius: 8px;
  background: linear-gradient(180deg, #fff 0%, #fdf1f4 100%);
  box-shadow: 0 10px 22px -12px rgba(199, 127, 150, .4);
}
.shared-card:hover { box-shadow: 0 18px 30px -12px rgba(199, 127, 150, .5); }
.shared-card h3 { font-family: 'Great Vibes', cursive; font-size: 24px; color: #c77f96; font-weight: 400; }
.shared-card p { color: #7a5e68; }

#rsvp { background: #f6ecef; }
.rsvp-form input, .rsvp-form select { border: 1px solid #f0d9df; border-radius: 4px; color: #4a3a3f; background: #fff; }
.rsvp-form button { border-radius: 4px; background: #c77f96; color: #fff; }
.rsvp-error { color: #a8455f; }
.rsvp-thanks { border: 1px solid #f0d9df; border-radius: 6px; background: #fff; }
.rsvp-thanks p { font-family: 'Cormorant Garamond', serif; font-size: 18px; color: #4a3a3f; }

.footer img { opacity: .25; }
.footer-note { font-family: 'Great Vibes', cursive; font-size: 24px; color: #c77f96; }
