body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,body{margin:0}*{box-sizing:border-box;padding:0}:root{--rose:#e8587a;--rose-light:#f5a0b5;--rose-dark:#c13a5a;--blush:#fff0f3;--cream:#fdf6f0;--gold:#d4a574;--gold-light:#f0d5a8;--deep-wine:#1a0011;--wine:#3d0020;--burgundy:#6b1d3a;--soft-pink:#f8e8ee;--text-dark:#2d1520;--text-light:#fff}html{scroll-behavior:smooth}body{background:#1a0011;background:var(--deep-wine);color:#2d1520;color:var(--text-dark);font-family:Lora,Georgia,serif}.app,body{overflow-x:hidden}.script{font-family:Great Vibes,cursive}.section{overflow:hidden;padding:100px 20px;position:relative}.section-title{color:#e8587a;color:var(--rose);font-family:Playfair Display,serif;font-size:2.8rem;font-weight:700;margin-bottom:15px;text-align:center}.section-title.script{font-family:Great Vibes,cursive;font-size:3.5rem;font-weight:400}.section-title.light{color:#fff;color:var(--text-light)}.section-subtitle{color:#f5a0b5;color:var(--rose-light);font-family:Lora,serif;font-size:1.15rem;font-style:italic;margin-bottom:50px;text-align:center}.section-subtitle.light{color:#fffc}.scroll-reveal{opacity:0;transition:opacity .9s ease,transform .9s ease}.scroll-reveal.up{transform:translateY(60px)}.scroll-reveal.left{transform:translateX(-60px)}.scroll-reveal.right{transform:translateX(60px)}.scroll-reveal.visible{opacity:1;transform:translate(0)}.floating-hearts{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}.heart{animation:floatUp linear infinite;bottom:-30px;color:#e8587a;color:var(--rose);filter:blur(.5px);position:absolute}@keyframes floatUp{0%{opacity:0;transform:translateY(0) rotate(0deg) scale(1)}10%{opacity:1}90%{opacity:.6}to{opacity:0;transform:translateY(-110vh) rotate(1turn) scale(.3)}}.sparkle-field{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.sparkle{animation:sparkleAnim ease-in-out infinite;color:#f0d5a8;color:var(--gold-light);position:absolute}@keyframes sparkleAnim{0%,to{opacity:0;transform:scale(0) rotate(0deg)}50%{opacity:.8;transform:scale(1) rotate(180deg)}}.music-prompt{align-items:center;animation:fadeIn 1s ease;background:radial-gradient(ellipse at center,#1a0011f2 0,#1a0011fc 100%);cursor:pointer;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:10000}.music-prompt-content{animation:gentlePulse 2s ease-in-out infinite;color:#fff;color:var(--text-light);text-align:center}.music-prompt-heart{animation:heartBeat 1.5s ease-in-out infinite;font-size:5rem;margin-bottom:20px}.music-prompt-content p{color:#f5a0b5;color:var(--rose-light);font-family:Playfair Display,serif;font-size:1.8rem;margin-bottom:10px}.music-prompt-subtitle{color:#f0d5a8;color:var(--gold-light);font-family:Great Vibes,cursive;font-size:1.5rem}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes heartBeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}}.music-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a0011d9;border:2px solid #e8587a;border:2px solid var(--rose);border-radius:50%;bottom:30px;box-shadow:0 4px 20px #e8587a4d;cursor:pointer;display:flex;height:55px;justify-content:center;position:fixed;right:30px;transition:all .3s ease;width:55px;z-index:9999}.music-toggle:hover{box-shadow:0 4px 30px #e8587a80;transform:scale(1.1)}.music-bars{align-items:flex-end;display:flex;gap:3px;height:20px}.music-bars span{background:#e8587a;background:var(--rose);border-radius:2px;display:block;height:8px;transition:height .3s ease;width:3px}.music-toggle.playing .music-bars span:first-child{animation:musicBar .6s ease-in-out infinite}.music-toggle.playing .music-bars span:nth-child(2){animation:musicBar .6s ease-in-out .1s infinite}.music-toggle.playing .music-bars span:nth-child(3){animation:musicBar .6s ease-in-out .2s infinite}.music-toggle.playing .music-bars span:nth-child(4){animation:musicBar .6s ease-in-out .3s infinite}@keyframes musicBar{0%,to{height:6px}50%{height:20px}}.hero{align-items:center;display:flex;height:100vh;justify-content:center;min-height:700px;overflow:hidden;position:relative}.hero-bg{height:120%;left:0;position:absolute;top:-10%;width:100%;z-index:0}.hero-image{filter:brightness(.4) saturate(1.2);height:100%;object-fit:cover;width:100%}.hero-overlay{background:linear-gradient(180deg,#1a00114d,#1a001133 40%,#1a001199 80%,#1a0011);height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.hero-content{animation:fadeInUp 1.5s ease .3s both;color:#fff;color:var(--text-light);padding:20px;position:relative;text-align:center;z-index:3}.hero-subtitle-top{animation:fadeInUp 1.5s ease .5s both;color:#f0d5a8;color:var(--gold-light);font-family:Great Vibes,cursive;font-size:2rem;margin-bottom:10px}.hero-title{align-items:center;display:flex;flex-direction:column;gap:5px;margin-bottom:20px}.hero-name{-webkit-text-fill-color:#0000;animation:fadeInUp 1.5s ease .7s both;background:linear-gradient(135deg,#fff,#f5a0b5 50%,#f0d5a8);background:linear-gradient(135deg,#fff 0,var(--rose-light) 50%,var(--gold-light) 100%);-webkit-background-clip:text;background-clip:text;font-size:5.5rem;font-weight:400;line-height:1.1}.hero-ampersand,.hero-name{font-family:Great Vibes,cursive}.hero-ampersand{animation:fadeInUp 1.5s ease .9s both;color:#e8587a;color:var(--rose);font-size:3rem}.hero-tagline{animation:fadeInUp 1.5s ease 1.1s both;color:#f5a0b5;color:var(--rose-light);font-family:Playfair Display,serif;font-size:1.5rem;font-style:italic;margin-bottom:10px}.hero-date{animation:fadeInUp 1.5s ease 1.3s both;color:#f0d5a8;color:var(--gold-light);font-family:Lora,serif;font-size:1rem;letter-spacing:3px;margin-bottom:50px;text-transform:uppercase}.scroll-indicator{animation:fadeInUp 1.5s ease 1.8s both;color:#fff9;font-size:.9rem;font-style:italic}.scroll-arrow{animation:bounceDown 2s ease-in-out infinite;font-size:1.5rem;margin-top:10px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceDown{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(15px)}}.love-letter-section{background:linear-gradient(180deg,#1a0011,#2a0518 50%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#2a0518 50%,var(--deep-wine) 100%);padding:120px 20px}.love-letter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fff0f30d,#fff0f305);border:1px solid #e8587a33;border-radius:20px;margin:0 auto;max-width:700px;padding:60px 50px;position:relative}.letter-decoration{background:#1a0011;background:var(--deep-wine);color:#e8587a;color:var(--rose);font-size:2.5rem;left:50%;padding:0 20px;position:absolute;top:-20px;transform:translateX(-50%)}.love-letter .section-title{color:#f0d5a8;color:var(--gold-light);margin-bottom:30px}.letter-body{color:#ffffffd9;font-size:1.1rem;line-height:1.9}.letter-body p{margin-bottom:20px;text-indent:2em}.letter-signature{color:#f5a0b5;color:var(--rose-light);font-style:italic;margin-top:30px;text-align:right;text-indent:0!important}.signature{color:#f0d5a8;color:var(--gold-light);font-family:Great Vibes,cursive;font-size:2.5rem}.gallery-section{background:linear-gradient(180deg,#1a0011,#200e18 50%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#200e18 50%,var(--deep-wine) 100%);padding:100px 20px}.gallery-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:0 auto;max-width:1100px;padding:20px}.gallery-item{aspect-ratio:4/5;border-radius:15px;box-shadow:0 10px 40px #0000004d;cursor:pointer;overflow:hidden;position:relative;transition:transform .5s ease,box-shadow .5s ease}.gallery-item:hover{box-shadow:0 20px 60px #e8587a4d;transform:translateY(-8px) scale(1.02)}.gallery-item img{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.gallery-item:hover img{transform:scale(1.08)}.gallery-overlay{align-items:center;background:linear-gradient(180deg,#0000 50%,#1a0011b3);display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity .4s ease;width:100%}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay span{animation:heartBeat 1.5s ease-in-out infinite;color:#e8587a;color:var(--rose);font-size:3rem}.lightbox{align-items:center;animation:fadeIn .3s ease;background:#000000eb;cursor:pointer;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:10001}.lightbox-content{cursor:default;max-height:90vh;max-width:90vw;position:relative}.lightbox-content img{border-radius:10px;box-shadow:0 20px 80px #e8587a4d;max-height:85vh;max-width:90vw;object-fit:contain}.lightbox-close{align-items:center;background:#1a0011;background:var(--deep-wine);border:2px solid #e8587a;border:2px solid var(--rose);border-radius:50%;color:#e8587a;color:var(--rose);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:-15px;top:-15px;transition:all .3s ease;width:40px}.lightbox-close:hover{background:#e8587a;background:var(--rose);color:#fff}.timeline-section{background:linear-gradient(180deg,#1a0011,#1f0515 50%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#1f0515 50%,var(--deep-wine) 100%)}.timeline{margin:0 auto;max-width:900px;padding:40px 0;position:relative}.timeline-line{background:linear-gradient(180deg,#0000,#e8587a,#d4a574,#e8587a,#0000);background:linear-gradient(180deg,#0000,var(--rose),var(--gold),var(--rose),#0000);bottom:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:2px}.timeline-item{margin-bottom:40px;padding:25px;position:relative;width:45%}.timeline-item.left{margin-right:auto;padding-right:50px;text-align:right}.timeline-item.right{margin-left:auto;padding-left:50px;text-align:left}.timeline-dot{align-items:center;background:#1a0011;background:var(--deep-wine);border:2px solid #e8587a;border:2px solid var(--rose);border-radius:50%;color:#e8587a;color:var(--rose);display:flex;font-size:.9rem;height:35px;justify-content:center;position:absolute;top:30px;width:35px;z-index:2}.timeline-item.left .timeline-dot{right:-18px}.timeline-item.right .timeline-dot{left:-18px}.timeline-content{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(135deg,#e8587a14,#d4a5740d);border:1px solid #e8587a26;border-radius:15px;padding:25px}.timeline-year{color:#f0d5a8;color:var(--gold-light);font-size:1.1rem;font-weight:700;letter-spacing:2px;margin-bottom:5px}.timeline-title,.timeline-year{font-family:Playfair Display,serif}.timeline-title{color:#e8587a;color:var(--rose);font-size:1.4rem;margin-bottom:10px}.timeline-desc{color:#ffffffb3;font-size:.95rem;line-height:1.7}.quotes-section{background:linear-gradient(180deg,#1a0011,#1a0a12 50%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#1a0a12 50%,var(--deep-wine) 100%)}.quotes-grid{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:900px;padding:0 20px}.quote-card{background:linear-gradient(135deg,#e8587a0f,#d4a5740a);border:1px solid #e8587a1f;border-radius:20px;padding:40px 45px;position:relative;transition:all .4s ease}.quote-card:hover{border-color:#e8587a4d;box-shadow:0 10px 40px #e8587a1a;transform:translateY(-3px)}.quote-mark{color:#e8587a;color:var(--rose);font-size:4rem;line-height:1;margin-bottom:-15px;opacity:.3}.quote-mark,.quote-text{font-family:Playfair Display,serif}.quote-text{color:#ffffffd9;font-size:1.2rem;font-style:italic;line-height:1.8;margin-bottom:15px}.quote-author{color:#f0d5a8;color:var(--gold-light);font-family:Lora,serif;font-size:.9rem}.messages-section{background:linear-gradient(180deg,#1a0011,#200012 50%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#200012 50%,var(--deep-wine) 100%);padding:100px 20px}.messages-container{display:flex;flex-direction:column;gap:25px;margin:0 auto;max-width:700px}.message-bubble{background:linear-gradient(135deg,#e8587a1a,#d4a5740f);border:1px solid #e8587a26;border-radius:25px;padding:30px 35px;position:relative;transition:all .4s ease}.message-bubble:hover{border-color:#e8587a4d;box-shadow:0 15px 40px #e8587a26;transform:translateY(-3px)}.message-heart{background:#1a0011;background:var(--deep-wine);color:#e8587a;color:var(--rose);font-size:1.3rem;left:25px;padding:0 8px;position:absolute;top:-10px}.message-bubble p{color:#ffffffd9;font-family:Playfair Display,serif;font-size:1.2rem;font-style:italic;line-height:1.7;text-align:center}.countdown-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:80vh;padding:100px 20px;position:relative}.countdown-bg{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.countdown-bg img{filter:brightness(.3) saturate(1.3);height:100%;object-fit:cover;width:100%}.countdown-overlay{background:linear-gradient(180deg,#1a0011,#1a001199 30%,#1a001199 70%,#1a0011);background:linear-gradient(180deg,var(--deep-wine) 0,#1a001199 30%,#1a001199 70%,var(--deep-wine) 100%);height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.countdown-section .scroll-reveal{position:relative;z-index:2}.countdown-container{margin-top:40px}.countdown-label{color:#f0d5a8;color:var(--gold-light);font-family:Great Vibes,cursive;font-size:2rem;font-weight:400;margin-bottom:30px;text-align:center}.countdown-boxes{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.countdown-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e8587a1a;border:1px solid #e8587a4d;border-radius:15px;min-width:100px;padding:20px 25px;text-align:center}.countdown-number{color:#fff;color:var(--text-light);display:block;font-family:Playfair Display,serif;font-size:3rem;font-weight:700;line-height:1}.countdown-unit{color:#f5a0b5;color:var(--rose-light);display:block;font-family:Lora,serif;font-size:.85rem;letter-spacing:2px;margin-top:8px;text-transform:uppercase}.final-section{align-items:center;background:linear-gradient(180deg,#1a0011,#0d0008);background:linear-gradient(180deg,var(--deep-wine) 0,#0d0008 100%);display:flex;justify-content:center;min-height:100vh;padding:100px 20px}.final-content{position:relative;text-align:center;z-index:3}.final-ring{animation:ringFloat 3s ease-in-out infinite;font-size:4rem;margin-bottom:20px}@keyframes ringFloat{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-15px) rotate(5deg)}}.final-title{color:#f5a0b5;color:var(--rose-light);font-family:Great Vibes,cursive;font-size:4rem;font-weight:400;margin-bottom:30px}.final-message{color:#ffffffd9;font-family:Playfair Display,serif;font-size:1.4rem;font-style:italic;line-height:1.8;margin-bottom:30px}.final-heart-beat{animation:heartBeat 1.5s ease-in-out infinite;color:#e8587a;color:var(--rose);font-size:3rem;margin:30px 0}.final-footer{color:#fff9;font-family:Lora,serif;font-size:1.1rem;line-height:2}@media (max-width:768px){.hero-name{font-size:3.5rem}.hero-ampersand{font-size:2rem}.hero-subtitle-top{font-size:1.5rem}.hero-tagline{font-size:1.1rem}.section-title{font-size:2rem}.section-title.script{font-size:2.5rem}.love-letter{padding:40px 25px}.letter-body{font-size:1rem}.timeline-line{left:20px}.timeline-item{padding-left:55px!important;padding-right:15px!important;text-align:left!important;width:100%}.timeline-dot{left:3px!important;right:auto!important}.gallery-grid{gap:12px;grid-template-columns:repeat(2,1fr);padding:10px}.quote-card{padding:25px 20px}.quote-text{font-size:1.05rem}.countdown-box{min-width:70px;padding:15px}.countdown-number{font-size:2rem}.final-title{font-size:2.5rem}.final-message{font-size:1.1rem}.message-bubble{padding:25px 20px}.message-bubble p{font-size:1.05rem}}@media (max-width:480px){.hero-name{font-size:2.8rem}.gallery-grid{grid-template-columns:1fr;max-width:350px}.countdown-boxes{gap:10px}.countdown-box{min-width:60px;padding:12px 10px}.countdown-number{font-size:1.6rem}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#1a0011;background:var(--deep-wine)}::-webkit-scrollbar-thumb{background:#e8587a;background:var(--rose);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#c13a5a;background:var(--rose-dark)}::selection{background:#e8587a;background:var(--rose);color:#fff}
/*# sourceMappingURL=main.e5a27748.css.map*/