@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,500&family=Marcellus&family=Jost:wght@300;400;500;600&display=swap";.invite-root{--ivory: #FBF6EE;--cream: #F5EEDF;--blush: #F1D9DB;--gold: #B8935A;--gold-light: #E7CE9C;--burgundy: #7A2233;--ink: #3A2C24;--ink-soft: #6B584C;background:var(--ivory);color:var(--ink);font-family:Jost,sans-serif;position:relative;overflow-x:hidden;width:100%}.invite-root:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--gold) 1px,transparent 1.2px),radial-gradient(circle,var(--gold) .8px,transparent 1px);background-size:46px 46px,46px 46px;background-position:0 0,23px 23px;opacity:.045;pointer-events:none}.font-display{font-family:Cormorant Garamond,serif}.font-accent{font-family:Marcellus,serif}.gold-icon{color:var(--gold)}.muted-text{color:var(--ink-soft)}.divider-line{width:44px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.section{position:relative;padding:64px 20px;max-width:640px;margin:0 auto}.section-alt{background:var(--cream)}.eyebrow{font-family:Marcellus,serif;letter-spacing:.22em;text-transform:uppercase;font-size:11px;color:var(--gold);text-align:center}.section-title{font-family:Cormorant Garamond,serif;font-weight:600;font-size:34px;text-align:center;color:var(--ink);margin-top:6px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal-visible{opacity:1;transform:translateY(0)}.reduce-motion .reveal{transition:opacity .3s ease;transform:none}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 24px 48px;position:relative;background:radial-gradient(ellipse at top,rgba(184,147,90,.16),transparent 60%),linear-gradient(180deg,var(--ivory),var(--cream))}.hero-logo{width:min(54vw,200px);height:auto;margin:0 auto 2px;display:block;opacity:0;animation:fade-in 1.1s ease forwards 1.3s}.reduce-motion .hero-logo{opacity:1;animation:none}.arch-wrap{position:relative;width:min(70vw,260px);margin:0 auto 4px;color:var(--gold)}.mandala-ring{position:absolute;top:50%;left:50%;width:142%;height:142%;transform:translate(-50%,-50%);color:var(--gold);opacity:.16;animation:spin-slow 90s linear infinite;pointer-events:none}.reduce-motion .mandala-ring{animation:none}@keyframes spin-slow{to{transform:translate(-50%,-50%) rotate(360deg)}}.arch-outline{width:100%;height:auto;display:block;position:relative}.arch-path{stroke-dasharray:900;stroke-dashoffset:900;animation:draw-arch 2.4s ease forwards .3s}.arch-path-inner{animation-delay:.7s}.reduce-motion .arch-path{stroke-dashoffset:0;animation:none}@keyframes draw-arch{to{stroke-dashoffset:0}}.arch-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14% 14% 8%}.shloka{font-family:Cormorant Garamond,serif;font-size:17px;color:var(--burgundy);letter-spacing:.02em;opacity:0;animation:fade-in 1s ease forwards 1.6s}.blessing-line{font-family:Jost,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-top:14px;opacity:0;animation:fade-in 1s ease forwards 1.95s}.invite-line{font-family:Cormorant Garamond,serif;font-style:italic;font-size:15px;color:var(--ink);margin-top:10px;max-width:300px;opacity:0;animation:fade-in 1s ease forwards 2.25s}.parent-names{font-family:Marcellus,serif;font-size:15px;color:var(--burgundy);margin-top:8px;opacity:0;animation:fade-in 1s ease forwards 2.5s}.reduce-motion .shloka,.reduce-motion .blessing-line,.reduce-motion .invite-line,.reduce-motion .parent-names,.reduce-motion .couple-names,.reduce-motion .hero-date{opacity:1;animation:none}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.couple-names{font-family:Cormorant Garamond,serif;font-weight:600;font-size:60px;line-height:1.1;color:var(--ink);margin-top:22px;opacity:0;animation:fade-in 1.2s ease forwards 2.75s}.couple-names .amp{display:block;font-size:22px;color:var(--gold);margin:2px 0}.shimmer-name{background:linear-gradient(100deg,var(--gold) 30%,var(--gold-light) 45%,var(--gold) 60%);background-size:250% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 4.5s linear infinite}.reduce-motion .shimmer-name{animation:none;color:var(--gold);background:none}@keyframes shimmer{to{background-position:-250% center}}.hero-date{margin-top:18px;font-family:Marcellus,serif;font-size:13px;letter-spacing:.08em;color:var(--ink-soft);opacity:0;animation:fade-in 1s ease forwards 3.35s}.hero-date .sep{color:var(--gold);margin:0 8px}.scroll-cue{margin-top:26px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);opacity:0;animation:fade-in 1s ease forwards 3.85s,bob 2.2s ease-in-out infinite 3.85s}.reduce-motion .scroll-cue{animation:fade-in .4s ease forwards}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.petals-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.petal{position:absolute;top:-5%;width:9px;height:9px;background:var(--blush);border-radius:0 60%;opacity:.7;animation-name:fall;animation-timing-function:ease-in;animation-iteration-count:infinite}@keyframes fall{0%{transform:translateY(-10%) rotate(0);opacity:0}10%{opacity:.7}to{transform:translateY(115vh) rotate(320deg);opacity:0}}.message-card{border:1px solid var(--gold-light);border-radius:4px;padding:34px 24px 30px;background:var(--ivory);text-align:center;position:relative}.arch-cap{width:64px;height:auto;color:var(--gold);margin:0 auto 14px;display:block}.message-text{font-family:Cormorant Garamond,serif;font-size:19px;line-height:1.7;color:var(--ink);font-style:italic}.message-sign{margin-top:18px;font-family:Marcellus,serif;font-size:13px;line-height:1.8;color:var(--burgundy)}.countdown-box{background:var(--ivory);border:1px solid var(--gold-light);border-radius:4px;padding:14px 4px;text-align:center}.countdown-value{font-family:Cormorant Garamond,serif;font-size:30px;font-weight:600;color:var(--burgundy)}.countdown-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-top:2px}.event-card{display:flex;gap:16px;padding:20px;background:var(--ivory);border:1px solid var(--gold-light);border-radius:4px;margin-bottom:16px;transition:transform .3s ease,box-shadow .3s ease}.event-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #7a223314}.event-icon{font-size:26px;line-height:1}.event-name{font-family:Cormorant Garamond,serif;font-size:21px;font-weight:600;color:var(--ink)}.event-desc{font-size:13px;color:var(--ink-soft);margin-top:3px}.event-meta{margin-top:10px;display:flex;flex-direction:column;gap:4px}.event-meta-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-soft)}.event-map-btn{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--burgundy);border:1px solid var(--burgundy);padding:6px 12px;border-radius:20px;text-decoration:none}.venue-card{text-align:center;padding:34px 22px;border:1px solid var(--gold-light);background:var(--ivory);border-radius:4px}.venue-name{font-family:Cormorant Garamond,serif;font-size:26px;font-weight:600}.venue-address{font-size:13px;color:var(--ink-soft);margin-top:6px}.venue-buttons{margin-top:20px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn-gold,.btn-outline{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:11px 20px;border-radius:24px;text-decoration:none;cursor:pointer}.btn-gold{background:var(--gold);color:#fff;border:1px solid var(--gold)}.btn-outline{background:transparent;color:var(--burgundy);border:1px solid var(--burgundy)}.footer{text-align:center;padding:60px 24px 80px;background:linear-gradient(180deg,var(--cream),var(--ivory))}.footer-blessing{font-family:Cormorant Garamond,serif;font-style:italic;font-size:19px;color:var(--ink)}.footer-parents{font-family:Marcellus,serif;font-size:14px;color:var(--burgundy);margin-top:10px}.footer-couple{font-family:Cormorant Garamond,serif;font-size:30px;font-weight:600;margin-top:14px}.footer-note{font-size:12px;color:var(--ink-soft);margin-top:16px;max-width:320px;margin-left:auto;margin-right:auto}.music-toggle-wrap{position:fixed;bottom:20px;right:20px;z-index:40}.music-toggle{width:44px;height:44px;border-radius:50%;background:var(--gold);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #3a2c2440}.intro-cover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none}.intro-panel{position:absolute;top:0;bottom:0;width:50%;background:linear-gradient(160deg,var(--cream),var(--ivory));transition:transform 1.05s cubic-bezier(.7,0,.3,1)}.intro-panel-left{left:0;border-right:1px solid var(--gold-light)}.intro-panel-right{right:0;border-left:1px solid var(--gold-light)}.intro-panel-line{position:absolute;top:50%;width:30px;height:30px;border:1px solid var(--gold);transform:translateY(-50%) rotate(45deg);opacity:.5}.intro-panel-left .intro-panel-line{right:-15px;border-right:none;border-top:none}.intro-panel-right .intro-panel-line{left:-15px;border-left:none;border-bottom:none}.intro-cover-open .intro-panel-left{transform:translate(-100%)}.intro-cover-open .intro-panel-right{transform:translate(100%)}.intro-seal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:82px;height:82px;display:flex;align-items:center;justify-content:center;color:var(--gold);transition:opacity .6s ease,transform .6s ease}.intro-cover-open .intro-seal{opacity:0;transform:translate(-50%,-50%) scale(.7)}.intro-seal-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;animation:spin-slow 40s linear infinite}.intro-seal-text{font-family:Marcellus,serif;font-size:14px;letter-spacing:.08em;color:var(--burgundy)}@media (min-width: 640px){.couple-names{font-size:72px}.section{padding:88px 24px}}.flex{display:flex}.flex-1{flex:1 1 0%}.grid{display:grid}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.items-center{align-items:center}.justify-center{justify-content:center}.inline{display:inline}.text-center{text-align:center}.text-xs{font-size:.75rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-4{margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.max-w-md{max-width:28rem}@media (min-width: 640px){.sm\:gap-4{gap:1rem}}
