.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--red-darkest)}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.35)}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#4b040480,#8b1a1a66,#4b0404b3);z-index:1}.hero-content{position:relative;z-index:2;text-align:center;padding:40px 20px;animation:fadeInUp 1.2s ease forwards}.hero-badge{display:inline-block;font-family:var(--font-heading);font-size:.85rem;letter-spacing:6px;text-transform:uppercase;color:var(--gold-light);border:1px solid rgba(212,168,71,.4);padding:8px 24px;margin-bottom:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#d4a84714}.hero-names{font-family:var(--font-script);color:var(--white);font-size:4.5rem;line-height:1.3;margin-bottom:.5rem;text-shadow:0 2px 30px rgba(0,0,0,.3)}.hero-ampersand{display:block;font-family:var(--font-script);font-size:3rem;color:var(--gold-primary);margin:.2rem 0;animation:float 3s ease-in-out infinite}.hero-date{font-family:var(--font-heading);font-size:1.4rem;color:var(--gold-light);letter-spacing:8px;margin-top:1.5rem;font-weight:300}.hero-lunar{font-family:var(--font-heading);font-size:.9rem;color:#f0d78cb3;letter-spacing:3px;margin-top:.5rem;font-style:italic}.hero-scroll{position:absolute;bottom:30px;left:50%;transform:translate(-50%);z-index:2;color:var(--gold-light);font-size:.75rem;letter-spacing:3px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px;animation:pulseSoft 2s ease-in-out infinite;cursor:pointer}.hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--gold-primary),transparent);animation:float 2s ease-in-out infinite}@media (max-width: 768px){.hero-names{font-size:clamp(2rem,8vw,2.8rem);white-space:nowrap}.hero-ampersand{font-size:2rem}.hero-date{font-size:1.1rem;letter-spacing:4px}.hero-badge{font-size:.7rem;letter-spacing:4px}}@media (max-width: 480px){.hero-names{font-size:clamp(1.8rem,8vw,2.2rem);white-space:nowrap}}.invitation{padding:var(--section-padding);background:linear-gradient(180deg,var(--cream) 0%,var(--white) 50%,var(--cream) 100%);text-align:center;position:relative;overflow:hidden}.invitation:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold-primary),transparent)}.invitation-card{max-width:700px;margin:0 auto;padding:50px 40px;background:var(--white);border:1px solid rgba(212,168,71,.2);border-radius:2px;position:relative;box-shadow:0 20px 60px #8b1a1a14}.invitation-card:before,.invitation-card:after{content:"❦";position:absolute;font-size:1.5rem;color:var(--gold-primary);opacity:.5}.invitation-card:before{top:15px;left:20px}.invitation-card:after{bottom:15px;right:20px}.invitation-families{font-family:var(--font-heading);font-size:1.1rem;color:var(--text-dark);line-height:2;margin-bottom:2rem}.invitation-families .family-name{font-weight:600;color:var(--red-dark);font-size:1.2rem}.invitation-main-text{font-family:var(--font-heading);font-size:1.15rem;color:var(--text-body);line-height:2;font-style:italic}.invitation-highlight{font-family:var(--font-script);font-size:2rem;color:var(--red-primary);margin:1.5rem 0}@media (max-width: 768px){.invitation-card{padding:35px 25px}.invitation-families{font-size:1rem}}.couple{padding:var(--section-padding);background:linear-gradient(180deg,var(--cream) 0%,var(--red-lightest) 50%,var(--cream) 100%)}.couple-photo{max-width:600px;margin:0 auto 3rem;border-radius:8px;overflow:hidden;box-shadow:0 20px 60px #8b1a1a26;border:4px solid var(--gold-light);position:relative}.couple-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:8px;border:1px solid rgba(212,168,71,.3);pointer-events:none}.couple-photo img{width:100%;height:auto;display:block;transition:transform .8s ease}.couple-photo:hover img{transform:scale(1.03)}.couple-container{display:flex;gap:60px;align-items:stretch;max-width:var(--container-max);margin:0 auto}.couple-person{flex:1;text-align:center;padding:40px 30px;background:var(--white);border-radius:4px;box-shadow:0 10px 40px #8b1a1a0f;border:1px solid rgba(212,168,71,.15);transition:var(--transition-smooth);position:relative;overflow:hidden}.couple-person:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--red-primary),var(--gold-primary))}.couple-person:hover{transform:translateY(-5px);box-shadow:0 20px 60px #8b1a1a1f}.couple-role{font-family:var(--font-heading);font-size:.85rem;letter-spacing:4px;text-transform:uppercase;color:var(--gold-dark);margin-bottom:.5rem}.couple-name{font-family:var(--font-script);font-size:2.5rem;color:var(--red-dark);margin-bottom:1rem}.couple-parents{font-family:var(--font-heading);font-size:.95rem;color:var(--gray);line-height:1.8;margin-bottom:1rem}.couple-parents span{display:block;color:var(--text-dark);font-weight:600}.couple-desc{font-size:.9rem;color:var(--gray-dark);line-height:1.8;font-style:italic}.couple-heart{display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--red-primary);animation:heartbeat 2s ease-in-out infinite;align-self:center}@media (max-width: 768px){.couple-container{flex-direction:column;gap:20px}.couple-heart{transform:rotate(90deg)}.couple-photo{max-width:90%}.couple-name{font-size:2rem}}.timeline-section{padding:var(--section-padding);background:linear-gradient(180deg,var(--cream) 0%,var(--white) 100%)}.timeline{position:relative;max-width:800px;margin:0 auto;padding:20px 0}.timeline:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:2px;height:100%;background:linear-gradient(to bottom,var(--gold-primary),var(--red-lighter),var(--gold-primary))}.timeline-item{display:flex;align-items:center;margin-bottom:50px;position:relative}.timeline-item:nth-child(odd){flex-direction:row-reverse}.timeline-content{flex:1;padding:30px;background:var(--white);border-radius:4px;box-shadow:0 8px 30px #8b1a1a0f;border:1px solid rgba(212,168,71,.15);position:relative;transition:var(--transition-smooth)}.timeline-content:hover{box-shadow:0 12px 40px #8b1a1a1f;transform:translateY(-3px)}.timeline-dot{width:50px;min-width:50px;height:50px;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:1.2rem;z-index:1;box-shadow:0 4px 15px #b222224d;margin:0 20px}.timeline-spacer{flex:1}.timeline-event-title{font-family:var(--font-script);font-size:1.8rem;color:var(--red-dark);margin-bottom:.5rem}.timeline-event-time{font-family:var(--font-heading);font-size:1.1rem;color:var(--gold-dark);font-weight:600;margin-bottom:.3rem}.timeline-event-location{font-family:var(--font-heading);font-size:1rem;color:var(--text-dark);font-weight:600;margin-bottom:.3rem}.timeline-event-address{font-size:.85rem;color:var(--gray);margin-bottom:.5rem}.timeline-event-desc{font-size:.9rem;color:var(--gray-dark);font-style:italic}.timeline-map-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:8px 16px;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));color:var(--white);border-radius:4px;font-size:.8rem;letter-spacing:1px;text-transform:uppercase;transition:var(--transition-smooth)}.timeline-map-link:hover{color:var(--white);transform:translateY(-2px);box-shadow:0 4px 15px #b222224d}@media (max-width: 768px){.timeline:before{left:25px}.timeline-item,.timeline-item:nth-child(odd){flex-direction:row-reverse}.timeline-dot{width:40px;min-width:40px;height:40px;font-size:1rem;margin:0 15px 0 5px}.timeline-content{padding:20px}.timeline-event-title{font-size:1.4rem}.timeline-spacer{display:none}}.gallery{padding:var(--section-padding);background:linear-gradient(180deg,var(--red-darkest) 0%,var(--red-darker) 100%);overflow:hidden}.gallery .section-title{color:var(--gold-light)}.gallery .section-subtitle{color:#ffffff80}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;max-width:var(--container-max);margin:0 auto}.gallery-item{position:relative;overflow:hidden;border-radius:4px;aspect-ratio:4/5;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(75,4,4,.6),transparent);opacity:0;transition:opacity .4s ease}.gallery-item:hover img{transform:scale(1.08)}.gallery-item:hover:after{opacity:1}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000f2;display:flex;align-items:center;justify-content:center;animation:fadeInUp .3s ease;cursor:pointer}.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:4px;box-shadow:0 20px 60px #00000080}.lightbox-close{position:absolute;top:20px;right:30px;color:var(--white);font-size:2rem;cursor:pointer;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:50%;border:none;transition:var(--transition-smooth)}.lightbox-close:hover{background:#fff3}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);color:var(--white);font-size:2rem;cursor:pointer;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:50%;border:none;transition:var(--transition-smooth)}.lightbox-nav:hover{background:#ffffff40}.lightbox-prev{left:20px}.lightbox-next{right:20px}@media (max-width: 768px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (max-width: 480px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.countdown-section{padding:var(--section-padding);background:linear-gradient(135deg,var(--red-dark) 0%,var(--red-darkest) 100%);text-align:center;position:relative;overflow:hidden}.countdown-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background: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 25 L55 30 L35 35 L30 55 L25 35 L5 30 L25 25 Z' fill='rgba(212,168,71,0.03)'/%3E%3C/svg%3E");opacity:.5}.countdown-section .section-title{color:var(--gold-light);position:relative}.countdown-section .section-subtitle{color:#ffffff80;position:relative}.countdown-boxes{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;position:relative}.countdown-box{width:120px;padding:25px 15px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(212,168,71,.2);border-radius:4px;text-align:center;transition:var(--transition-smooth)}.countdown-box:hover{background:#ffffff1f;transform:translateY(-5px);border-color:#d4a84766}.countdown-number{font-family:var(--font-heading);font-size:3rem;font-weight:700;color:var(--gold-light);line-height:1;margin-bottom:5px;background:linear-gradient(135deg,var(--gold-light),var(--gold-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.countdown-label{font-family:var(--font-heading);font-size:.8rem;letter-spacing:3px;text-transform:uppercase;color:#fff9}@media (max-width: 768px){.countdown-boxes{gap:10px;flex-wrap:nowrap}.countdown-box{width:75px;padding:15px 5px}.countdown-number{font-size:2rem}.countdown-label{font-size:.6rem;letter-spacing:1px}}.rsvp{padding:var(--section-padding);background:linear-gradient(180deg,var(--cream) 0%,var(--white) 50%,var(--cream) 100%)}.rsvp-form{max-width:550px;margin:0 auto;padding:50px 40px;background:var(--white);border-radius:4px;box-shadow:0 20px 60px #8b1a1a14;border:1px solid rgba(212,168,71,.15)}.rsvp-group{margin-bottom:1.5rem}.rsvp-group label{display:block;font-family:var(--font-heading);font-size:.9rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-dark);margin-bottom:8px;font-weight:600}.rsvp-group input,.rsvp-group textarea,.rsvp-group select{width:100%;padding:14px 18px;border:1px solid var(--gray-light);border-radius:4px;font-family:var(--font-body);font-size:.95rem;color:var(--text-body);background:var(--cream);transition:var(--transition-smooth);outline:none}.rsvp-group input:focus,.rsvp-group textarea:focus,.rsvp-group select:focus{border-color:var(--red-primary);box-shadow:0 0 0 3px #b222221a;background:var(--white)}.rsvp-group textarea{resize:vertical;min-height:100px}.rsvp-submit{width:100%;padding:16px;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));color:var(--white);border:none;border-radius:4px;font-family:var(--font-heading);font-size:1rem;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);position:relative;overflow:hidden}.rsvp-submit:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--gold-primary),var(--gold-dark));opacity:0;transition:opacity .4s ease}.rsvp-submit:hover:before{opacity:1}.rsvp-submit span{position:relative;z-index:1}.rsvp-submit:hover{transform:translateY(-2px);box-shadow:0 8px 25px #b222224d}.rsvp-success{text-align:center;padding:40px}.rsvp-success-icon{font-size:4rem;margin-bottom:1rem;animation:scaleIn .5s ease}.rsvp-success h3{font-family:var(--font-script);font-size:2rem;color:var(--red-dark);margin-bottom:.5rem}.rsvp-success p{color:var(--gray);font-style:italic}@media (max-width: 768px){.rsvp-form{padding:30px 20px}}.wishes{padding:var(--section-padding);background:linear-gradient(180deg,var(--red-lightest) 0%,var(--cream) 100%)}.wishes-form{max-width:600px;margin:0 auto 3rem;display:flex;gap:10px;flex-wrap:wrap}.wishes-form input{flex:1;min-width:150px;padding:14px 18px;border:1px solid var(--gray-light);border-radius:4px;font-family:var(--font-body);font-size:.95rem;background:var(--white);outline:none;transition:var(--transition-smooth)}.wishes-form input:focus{border-color:var(--red-primary);box-shadow:0 0 0 3px #b222221a}.wishes-form textarea{width:100%;padding:14px 18px;border:1px solid var(--gray-light);border-radius:4px;font-family:var(--font-body);font-size:.95rem;background:var(--white);outline:none;resize:vertical;min-height:80px;transition:var(--transition-smooth)}.wishes-form textarea:focus{border-color:var(--red-primary);box-shadow:0 0 0 3px #b222221a}.wishes-form button{padding:14px 30px;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));color:var(--white);border:none;border-radius:4px;font-family:var(--font-heading);font-size:.85rem;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);width:100%}.wishes-form button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #b222224d}.wishes-list{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:15px}.wish-card{padding:25px;background:var(--white);border-radius:4px;box-shadow:0 4px 20px #8b1a1a0d;border-left:3px solid var(--gold-primary);animation:fadeInUp .5s ease}.wish-card-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.wish-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-family:var(--font-heading);font-weight:700;font-size:1rem}.wish-name{font-family:var(--font-heading);font-weight:600;color:var(--text-dark);font-size:1.05rem}.wish-time{font-size:.75rem;color:var(--gray);margin-left:auto}.wish-message{font-size:.95rem;color:var(--gray-dark);line-height:1.7;font-style:italic;padding-left:50px}.footer{padding:50px 20px;background:var(--red-darkest);text-align:center;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold-primary),transparent)}.footer-names{font-family:var(--font-script);font-size:clamp(1.8rem,8vw,2.5rem);color:var(--gold-light);margin-bottom:1rem;white-space:nowrap}.footer-date{font-family:var(--font-heading);font-size:.9rem;letter-spacing:4px;color:#fff6;text-transform:uppercase}.footer-thanks{font-family:var(--font-heading);font-size:1rem;color:#fff9;margin-top:1.5rem;font-style:italic}.footer-heart{color:var(--red-light);animation:heartbeat 2s ease-in-out infinite;display:inline-block}.particles-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.particle{position:absolute;top:-20px;animation:particleFall linear forwards;pointer-events:none;opacity:.7}@keyframes particleFall{0%{transform:translateY(-20px) rotate(0) translate(0);opacity:0}10%{opacity:.8}90%{opacity:.6}to{transform:translateY(100vh) rotate(720deg) translate(100px);opacity:0}}.music-btn{position:fixed;bottom:25px;right:25px;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--red-primary),var(--red-dark));border:2px solid var(--gold-primary);color:var(--white);font-size:1.2rem;cursor:pointer;z-index:100;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth);box-shadow:0 4px 20px #b2222266}.music-btn:hover{transform:scale(1.1);box-shadow:0 6px 25px #b2222280}.music-btn.playing{animation:pulseSoft 1.5s ease-in-out infinite}.bank-section{padding:var(--section-padding);background:linear-gradient(180deg,var(--cream) 0%,var(--white) 100%)}.bank-cards{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;max-width:var(--container-max);margin:0 auto}.bank-card{flex:1;min-width:280px;max-width:400px;padding:35px 30px;background:var(--white);border-radius:4px;box-shadow:0 10px 40px #8b1a1a0f;border:1px solid rgba(212,168,71,.15);text-align:center;transition:var(--transition-smooth)}.bank-card:hover{transform:translateY(-5px);box-shadow:0 15px 50px #8b1a1a1f}.bank-card-icon{font-size:2.5rem;margin-bottom:1rem}.bank-card-name{font-family:var(--font-heading);font-size:1.2rem;color:var(--text-dark);font-weight:600;margin-bottom:.5rem}.bank-card-bank{font-size:.85rem;color:var(--gray);margin-bottom:.3rem}.bank-card-number{font-family:var(--font-heading);font-size:1.1rem;color:var(--red-dark);font-weight:600;letter-spacing:2px;padding:10px;background:var(--cream);border-radius:4px;margin-top:10px;cursor:pointer;transition:var(--transition-smooth);position:relative}.bank-card-number:hover{background:var(--red-lightest)}.bank-card-number .copy-tooltip{position:absolute;top:-30px;left:50%;transform:translate(-50%);background:var(--red-dark);color:var(--white);padding:4px 12px;border-radius:4px;font-size:.75rem;animation:fadeInDown .3s ease}.bank-card-qr{width:150px;height:150px;margin:15px auto 0;border-radius:4px;overflow:hidden;border:2px solid var(--gray-light)}.bank-card-qr img{width:100%;height:100%;object-fit:cover}.gift-box-wrapper{cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:10px 0}.animated-gift{font-size:4.5rem;margin-bottom:1.5rem;display:inline-block;animation:gift-bounce 2s infinite ease-in-out;cursor:pointer;filter:drop-shadow(0 4px 15px rgba(212,168,71,.3));transition:transform .3s ease}.gift-box-wrapper:hover .animated-gift{transform:scale(1.1) rotate(5deg)}@keyframes gift-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}.gift-box-desc{font-size:.9rem;color:var(--gray);margin:.5rem 0 1.5rem;font-style:italic}.gift-box-btn{background:var(--red-dark);color:var(--white);border:none;padding:10px 24px;font-family:var(--font-heading);font-weight:500;border-radius:20px;font-size:.9rem;cursor:pointer;box-shadow:0 4px 15px #8b1a1a33;transition:var(--transition-smooth)}.gift-box-btn:hover{background:var(--red-light);transform:translateY(-2px);box-shadow:0 6px 20px #8b1a1a4d}.bank-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:20000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease;padding:20px}.bank-modal-content{background:var(--white);width:100%;max-width:420px;padding:35px 30px;border-radius:8px;box-shadow:0 25px 60px #8b1a1a26;border:1px solid rgba(212,168,71,.2);text-align:center;position:relative;animation:scaleUp .4s cubic-bezier(.34,1.56,.64,1);box-sizing:border-box}@keyframes scaleUp{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.bank-modal-close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:1.3rem;color:var(--gray);cursor:pointer;transition:var(--transition-smooth);padding:5px;line-height:1}.bank-modal-close:hover{color:var(--red-dark);transform:rotate(90deg)}.bank-modal-title{font-family:var(--font-heading);font-size:1.4rem;color:var(--red-dark);font-weight:600;margin-bottom:20px;letter-spacing:1px}.bank-modal-info{background:var(--cream);padding:20px;border-radius:6px;border:1px solid rgba(212,168,71,.15);margin-bottom:20px;text-align:left}.bank-info-item{margin-bottom:15px}.bank-info-item:last-child{margin-bottom:0}.info-label{font-size:.75rem;color:var(--gray);display:block;text-transform:uppercase;letter-spacing:1px;font-weight:500}.info-value{font-size:1.05rem;color:var(--text-dark);font-weight:600;display:block;margin-top:4px}.modal-number{margin-top:6px!important;text-align:center;box-shadow:inset 0 1px 3px #00000005;border:1px dashed rgba(139,26,26,.2)}.bank-modal-qr{margin-top:20px;display:flex;flex-direction:column;align-items:center}.bank-modal-qr img{width:170px;height:170px;object-fit:cover;border-radius:4px;border:2px solid var(--gray-light);box-shadow:0 5px 15px #0000000d}.qr-hint{font-size:.8rem;color:var(--gray);margin-top:10px;font-style:italic}.bank-modal-btn-close{background:linear-gradient(135deg,var(--red-primary),var(--red-dark));color:var(--white);border:none;padding:11px 30px;font-family:var(--font-heading);font-size:.95rem;font-weight:500;border-radius:20px;cursor:pointer;box-shadow:0 4px 15px #8b1a1a33;transition:var(--transition-smooth);margin-top:20px;width:100%}.bank-modal-btn-close:hover{background:linear-gradient(135deg,var(--red-light),var(--red-primary));transform:translateY(-2px);box-shadow:0 6px 20px #8b1a1a4d}.envelope-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:linear-gradient(135deg,var(--red-darkest),var(--red-dark));display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;transition:opacity .8s ease,visibility .8s ease}.envelope-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.envelope-content{text-align:center;animation:float 3s ease-in-out infinite}.envelope-icon{font-size:5rem;margin-bottom:2rem;filter:drop-shadow(0 4px 20px rgba(0,0,0,.3))}.envelope-text{font-family:var(--font-script);font-size:2.5rem;color:var(--gold-light);margin-bottom:1rem}.envelope-hint{font-family:var(--font-heading);font-size:.85rem;letter-spacing:4px;text-transform:uppercase;color:#ffffff80;animation:pulseSoft 2s ease-in-out infinite}@media (max-width: 768px){.envelope-text{font-size:1.8rem}.envelope-icon{font-size:3.5rem}}:root{--red-darkest: #4A0404;--red-darker: #6B0F0F;--red-dark: #8B1A1A;--red-primary: #B22222;--red-medium: #CC2936;--red-light: #DC3545;--red-lighter: #E8666D;--red-lightest: #FDEAEA;--gold-dark: #B8860B;--gold-primary: #D4A847;--gold-light: #F0D78C;--gold-lightest: #FFF8E7;--white: #FFFFFF;--cream: #FFF9F0;--cream-dark: #F5EDE0;--gray-light: #E8E0D8;--gray: #8B8178;--gray-dark: #5C534A;--text-dark: #2D1810;--text-body: #4A3728;--font-script: "Great Vibes", cursive;--font-heading: "Cormorant Garamond", serif;--font-body: "Montserrat", sans-serif;--section-padding: 100px 20px;--container-max: 1100px;--transition-smooth: all .4s cubic-bezier(.25, .46, .45, .94);--transition-bounce: all .6s cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--text-body);background-color:var(--cream);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:var(--red-primary);text-decoration:none;transition:var(--transition-smooth)}a:hover{color:var(--gold-primary)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--red-lighter);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--red-primary)}.container{max-width:var(--container-max);margin:0 auto;padding:0 20px}.section-title{font-family:var(--font-script);font-size:3rem;color:var(--red-dark);text-align:center;margin-bottom:.5rem;font-weight:400}.section-subtitle{font-family:var(--font-heading);font-size:1.1rem;color:var(--gray);text-align:center;letter-spacing:3px;text-transform:uppercase;margin-bottom:3rem;font-weight:400}.divider{display:flex;align-items:center;justify-content:center;gap:15px;margin:2rem auto}.divider:before,.divider:after{content:"";width:80px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-primary),transparent)}.divider-icon{color:var(--gold-primary);font-size:1.2rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}60%{transform:scale(1)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.7}}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.reveal.active{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-60px);transition:opacity .8s ease,transform .8s ease}.reveal-left.active{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transform:translate(60px);transition:opacity .8s ease,transform .8s ease}.reveal-right.active{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transform:scale(.85);transition:opacity .8s ease,transform .8s ease}.reveal-scale.active{opacity:1;transform:scale(1)}@media (max-width: 768px){:root{--section-padding: 60px 15px}.section-title{font-size:2.2rem}.section-subtitle{font-size:.9rem;letter-spacing:2px;margin-bottom:2rem}.divider:before,.divider:after{width:50px}}@media (max-width: 480px){.section-title{font-size:1.9rem}}
