:root{--wedding-rose: #be185d;--wedding-rose-light: #f9a8d4;--wedding-rose-dark: #881337;--wedding-blush: #fdf2f8;--wedding-champagne: #fef3c7;--wedding-gold: #d4af37;--wedding-gold-dark: #a67c00;--wedding-ivory: #fffbeb;--wedding-cream: #fef9ef;--wedding-sage: #d1fae5;--wedding-slate: #334155;--wedding-charcoal: #1e293b}.main-wrapper{background:linear-gradient(180deg,var(--wedding-blush) 0%,var(--wedding-ivory) 15%,white 30%,var(--wedding-blush) 50%,white 70%,var(--wedding-champagne) 85%,var(--wedding-blush) 100%)!important;position:relative}.main-wrapper:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 5 L35 30 L30 55 L25 30 Z' fill='none' stroke='%23d4af37' stroke-width='0.3' opacity='0.08'/%3E%3C/svg%3E");pointer-events:none;z-index:0}.wedding-hero{background:linear-gradient(180deg,#fdf2f8 0%,#fce7f3 10%,#fbcfe8 25%,#fef3c7 50%,var(--wedding-ivory) 75%,white 100%);position:relative}.wedding-hero:before{content:"💕";position:absolute;top:15%;left:5%;font-size:2rem;opacity:.3;animation:float-heart 6s ease-in-out infinite}.wedding-hero:after{content:"💒";position:absolute;top:20%;right:8%;font-size:2.5rem;opacity:.25;animation:float-heart 7s ease-in-out infinite 1s}@keyframes float-heart{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-20px) rotate(5deg)}}#nav-spacer{height:5rem!important}@media(min-width:768px){#nav-spacer{height:6.5rem!important}}#main-nav{background:linear-gradient(180deg,#fdf2f8fa,#fdf2f8f2)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border-bottom:2px solid var(--wedding-gold)!important}#main-nav a:not(.group){color:var(--wedding-rose-dark)!important}#main-nav a:not(.group):hover{color:var(--wedding-rose)!important}#main-nav button svg{color:var(--wedding-rose-dark)!important}#main-nav .bg-coral-500,#main-nav [class*=bg-coral]{background:linear-gradient(135deg,var(--wedding-rose) 0%,var(--wedding-rose-dark) 100%)!important;border:2px solid var(--wedding-gold)!important}.ring-frame{position:relative;border:4px solid var(--wedding-gold);border-radius:50%;padding:2rem}.ring-frame:before,.ring-frame:after{content:"💍";position:absolute;font-size:1.5rem}.ring-frame:before{top:-.75rem;left:50%;transform:translate(-50%)}.ring-frame:after{bottom:-.75rem;left:50%;transform:translate(-50%) rotate(180deg)}.era-card{background:linear-gradient(135deg,white 0%,var(--wedding-blush) 100%);border:2px solid var(--wedding-gold);border-radius:1rem;position:relative;overflow:hidden;transition:all .3s ease}.era-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--wedding-rose),var(--wedding-gold),var(--wedding-rose))}.era-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #be185d26}.invitation-ticket{background:var(--wedding-ivory);border:2px dashed var(--wedding-gold);position:relative;padding:1.5rem}.invitation-ticket:before,.invitation-ticket:after{content:"";position:absolute;width:20px;height:20px;background:var(--wedding-blush);border-radius:50%}.invitation-ticket:before{left:-10px;top:50%;transform:translateY(-50%)}.invitation-ticket:after{right:-10px;top:50%;transform:translateY(-50%)}@keyframes bubble-rise{0%{transform:translateY(0) scale(1);opacity:.8}50%{transform:translateY(-30px) scale(1.2);opacity:.5}to{transform:translateY(-60px) scale(.8);opacity:0}}.champagne-bubbles{position:relative}.champagne-bubbles:before,.champagne-bubbles:after{content:"○";position:absolute;font-size:.5rem;color:var(--wedding-gold);animation:bubble-rise 3s ease-in-out infinite}.champagne-bubbles:before{left:30%;animation-delay:0s}.champagne-bubbles:after{left:60%;animation-delay:1.5s}@keyframes confetti-fall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(30px) rotate(360deg);opacity:0}}section,[class*=py-]{background-color:transparent!important}.bg-cream-100,.bg-cream-50,.bg-white,.bg-sage-50{background:linear-gradient(180deg,white 0%,var(--wedding-blush) 100%)!important}.bg-charcoal-700,.bg-charcoal-800{background:linear-gradient(180deg,var(--wedding-charcoal) 0%,#0f172a 100%)!important}.text-charcoal-700,.text-charcoal-800{color:var(--wedding-slate)!important}.text-charcoal-400,.text-charcoal-500,.text-charcoal-600{color:#64748b!important}.bg-charcoal-700 .text-charcoal-400,.bg-charcoal-700 .text-charcoal-300{color:#ffffffb3!important}.text-coral-500,.text-coral-600{color:var(--wedding-rose)!important}.bg-coral-500,.bg-coral-600,[class*=bg-coral]{background:linear-gradient(135deg,var(--wedding-rose) 0%,var(--wedding-rose-dark) 100%)!important;border-color:var(--wedding-gold)!important}.bg-coral-500:hover,.bg-coral-600:hover{background:linear-gradient(135deg,#db2777 0%,var(--wedding-rose) 100%)!important}[style*="box-shadow: 5px 5px 0 0 #2D3047"]{box-shadow:5px 5px 0 0 var(--wedding-rose-dark)!important}.bg-coral-100{background:#be185d1a!important;background-color:#be185d1a!important;color:var(--wedding-rose-dark)!important}.bg-white{background:linear-gradient(135deg,#ffffff 0%,var(--wedding-blush) 100%)!important}.border-charcoal-700,.border-charcoal-200,.border-charcoal-100{border-color:#be185d26!important}.border-2.border-charcoal-700{border-color:#d4af3766!important}.ring-coral-500,.ring-coral-400{--tw-ring-color: var(--wedding-gold) !important}.bg-gradient-to-br.from-coral-500{background:linear-gradient(135deg,var(--wedding-rose) 0%,var(--wedding-rose-dark) 100%)!important}blockquote,.testimonial-card{background:linear-gradient(135deg,#ffffff 0%,var(--wedding-blush) 100%)!important;border-color:#d4af374d!important}section.bg-charcoal-700.text-white{background:linear-gradient(135deg,var(--wedding-charcoal) 0%,#0f172a 50%,#1e1b4b 100%)!important}section.bg-charcoal-700 blockquote{color:#fff!important;background:transparent!important}section.bg-charcoal-700 .text-coral-400{color:var(--wedding-gold)!important}section.bg-charcoal-700 .text-charcoal-300{color:#fffc!important}footer{background:linear-gradient(180deg,var(--wedding-charcoal) 0%,#0f172a 100%)!important}footer a:hover{color:var(--wedding-gold)!important}@keyframes ring-shine{0%,to{filter:brightness(1) drop-shadow(0 0 5px rgba(212,175,55,.3))}50%{filter:brightness(1.3) drop-shadow(0 0 15px rgba(212,175,55,.6))}}@keyframes petal-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(100px) rotate(360deg);opacity:0}}@keyframes heart-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes veil-float{0%,to{transform:translate(0) skew(0)}50%{transform:translate(5px) skew(2deg)}}.ring-shine{animation:ring-shine 3s ease-in-out infinite}.petal-fall{animation:petal-fall 4s linear infinite}.heart-pulse{animation:heart-pulse 1.5s ease-in-out infinite}.veil-float{animation:veil-float 4s ease-in-out infinite}::-moz-selection{background:var(--wedding-rose);color:#fff}::selection{background:var(--wedding-rose);color:#fff}.gradient-text-wedding{background:linear-gradient(135deg,var(--wedding-rose) 0%,var(--wedding-gold) 50%,var(--wedding-rose-dark) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-gold{background:linear-gradient(135deg,var(--wedding-gold-dark) 0%,var(--wedding-gold) 50%,#fbbf24 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.video-glow-wedding{box-shadow:0 8px 32px #be185d33,inset 0 0 0 4px var(--wedding-gold);border-radius:1rem}.era-pill{background:linear-gradient(135deg,var(--wedding-ivory) 0%,var(--wedding-champagne) 100%);border:2px solid var(--wedding-gold);color:var(--wedding-rose-dark);font-weight:700;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem}
