@import "https://fonts.googleapis.com/css2?family=Imperial+Script&display=swap";@import "https://fonts.googleapis.com/css2?family=Imperial+Script&display=swap";@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=Montserrat:wght@300;400;500&display=swap";.welcome-overlay{z-index:1000;text-align:center;background:radial-gradient(circle,#1f1f1f 0%,#0d0d0d 100%);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.welcome-logo{filter:drop-shadow(0 0 10px #d4af374d);width:70px;margin-bottom:1.5rem}.welcome-title{color:var(--primary-gold);letter-spacing:4px;margin-bottom:.5rem;font-family:Imperial Script,cursive;font-size:3rem}.welcome-date{letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:2.5rem;font-size:.85rem}.welcome-btn{border:1px solid var(--primary-gold);color:var(--primary-gold);font-family:var(--font-sans);letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:50px;padding:.8rem 2.2rem;font-size:.9rem;transition:all .3s}.welcome-btn:hover{background:var(--primary-gold);color:#000;box-shadow:0 0 20px #d4af3766}.reveal-text-wrapper{opacity:0;will-change:opacity, transform;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);transform:translateY(25px)}.reveal-text-wrapper.active{opacity:1;transform:translateY(0)}.hero-section{text-align:center;background-color:var(--bg-color);background-image:linear-gradient(#121212b3,#121212f2),url(/fotos/1.jpg);background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;align-items:center;min-height:90vh;padding:4rem 2rem;display:flex;position:relative}.hero-header{margin-bottom:2rem}.hero-subtitle{font-family:var(--font-sans);letter-spacing:4px;text-transform:uppercase;color:var(--primary-gold);margin-bottom:.5rem;font-size:.8rem}.hero-date{font-family:var(--font-serif);letter-spacing:2px;color:var(--text-main);font-size:1.2rem}.hero-body{max-width:600px;margin:auto}.hero-couple{color:var(--gold-light);letter-spacing:2px;margin-bottom:1rem;font-family:Imperial Script,cursive;font-size:clamp(2.5rem,5vw,3.5rem)}.hero-quote{font-family:var(--font-serif);color:var(--text-muted);font-size:1.1rem;font-style:italic;line-height:1.6}.countdown-section{background-color:var(--card-bg);text-align:center;border-top:1px solid #d4af3726;border-bottom:1px solid #d4af3726;padding:4rem 2rem}.countdown-title{font-family:var(--font-serif);color:var(--primary-gold);letter-spacing:2px;margin-bottom:.5rem;font-size:2.2rem}.countdown-date-text{letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);margin-bottom:2.5rem;font-size:.9rem}.countdown-grid{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;max-width:550px;margin:0 auto 2.5rem;display:flex}.countdown-box{background:var(--bg-color);border:1px solid #d4af374d;border-radius:8px;flex:1;min-width:80px;padding:1.2rem 1rem;box-shadow:0 4px 15px #0000004d}.countdown-number{font-family:var(--font-serif);color:var(--gold-light);margin-bottom:.2rem;font-size:2.2rem;display:block}.countdown-label{text-transform:uppercase;letter-spacing:2px;color:var(--text-muted);font-size:.7rem}.countdown-message{font-family:var(--font-serif);color:var(--text-main);letter-spacing:1px;font-size:1.2rem;font-style:italic}@media (width<=480px){.countdown-grid{gap:.6rem;padding:0 .5rem}.countdown-box{min-width:65px;padding:.8rem .5rem}.countdown-number{font-size:1.6rem}.countdown-label{letter-spacing:1px;font-size:.6rem}}.ceremony-reception-section{background-color:var(--bg-color);max-width:1000px;margin:0 auto;padding:5rem 2rem}.section-heading{text-align:center;font-family:var(--font-serif);color:var(--primary-gold);letter-spacing:2px;margin-bottom:3rem;font-size:2.5rem}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;display:grid}.event-card{text-align:center;background-position:50%;background-size:cover;border:1px solid #d4af374d;border-radius:12px;padding:3rem 2rem;transition:transform .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 10px 30px #0009}.event-card:before{content:"";z-index:1;background:linear-gradient(#0f0f0fd9,#0f0f0feb);position:absolute;inset:0}.event-card>*{z-index:2;position:relative}.event-card:hover{border-color:var(--primary-gold);transform:translateY(-5px)}.event-title{font-family:var(--font-serif);color:var(--gold-light);margin-bottom:1rem;font-size:2rem}.event-time{color:var(--primary-gold);letter-spacing:1px;margin-bottom:.8rem;font-size:1.1rem;font-weight:500}.event-place{font-family:var(--font-serif);color:var(--text-main);margin-bottom:.5rem;font-size:1.2rem}.event-address{color:var(--text-muted);margin-bottom:2rem;font-size:.9rem;line-height:1.5}.map-btn{border:1px solid var(--primary-gold);color:var(--primary-gold);letter-spacing:2px;text-transform:uppercase;background:0 0;border-radius:50px;padding:.7rem 1.8rem;font-size:.8rem;text-decoration:none;transition:all .3s;display:inline-block}.map-btn:hover{background:var(--primary-gold);color:#000;box-shadow:0 0 15px #d4af3766}.gallery-section{text-align:center;max-width:800px;margin:0 auto;padding:60px 20px}.gallery-heading{font-family:var(--font-serif);color:var(--primary-gold);letter-spacing:2px;margin-bottom:10px;font-size:2.2rem}.gallery-sub{font-family:var(--font-sans);color:var(--text-muted);letter-spacing:1px;margin-bottom:30px;font-size:1rem}.carousel-container{background-color:var(--card-bg,#1a1a1a);border:1px solid #d4af374d;border-radius:12px;justify-content:center;align-items:center;max-width:450px;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 25px #0009}.carousel-track-wrapper{justify-content:center;align-items:center;width:100%;height:580px;display:flex;overflow:hidden}.gallery-item{justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .25s ease-in-out;display:flex}.fade-in{opacity:1}.fade-out{opacity:0}.gallery-image{object-fit:cover;width:100%;height:100%}.carousel-btn{color:var(--primary-gold);cursor:pointer;z-index:10;background-color:#0009;border:1px solid #d4af3766;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;padding:0;font-size:1.1rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-btn:hover{background-color:var(--primary-gold);color:#000;box-shadow:0 0 10px var(--primary-gold)}.carousel-btn.prev{left:15px}.carousel-btn.next{right:15px}.carousel-dots{justify-content:center;gap:10px;margin-top:20px;display:flex}.dot{cursor:pointer;background-color:#d4af374d;border-radius:50%;width:10px;height:10px;transition:all .3s}.dot.active{background-color:var(--primary-gold);box-shadow:0 0 8px var(--primary-gold);transform:scale(1.2)}@media (width<=768px){.carousel-btn{padding:8px 12px;font-size:1rem}.carousel-container{max-width:100%}.carousel-track-wrapper{height:480px}.carousel-btn{width:38px;height:38px;font-size:.9rem}}.itinerary-section{text-align:center;max-width:800px;margin:0 auto;padding:60px 20px}.timeline-container{margin-top:40px;padding:20px 0;position:relative}.timeline-line-bg{background-color:#d4af3733;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-line-progress{background:var(--primary-gold);width:2px;height:0%;box-shadow:0 0 12px var(--primary-gold);transition:height .1s ease-out;position:absolute;top:0;left:50%;transform:translate(-50%)}.timeline-item{box-sizing:border-box;width:50%;padding:20px 30px;position:relative}.timeline-item.left{text-align:right;left:0}.timeline-item.right{text-align:left;left:50%}.timeline-dot{background-color:var(--bg-color);z-index:2;border:2px solid #d4af3766;border-radius:50%;width:14px;height:14px;transition:all .4s;position:absolute;top:32px}.timeline-dot.active{background-color:var(--primary-gold);border-color:var(--gold-light);box-shadow:0 0 15px var(--primary-gold), 0 0 25px var(--primary-gold);transform:scale(1.25)}.timeline-item.left .timeline-dot{right:-7px}.timeline-item.right .timeline-dot{left:-7px}.timeline-card{background-color:var(--card-bg,#1a1a1a);border:1px solid #d4af374d;border-radius:8px;padding:20px;transition:transform .3s,box-shadow .3s,border-color .3s;box-shadow:0 4px 15px #00000080}.timeline-item .timeline-dot.active+.timeline-card{border-color:var(--primary-gold);box-shadow:0 6px 20px #d4af3740}.itinerary-time{font-family:var(--font-serif);color:var(--primary-gold);margin-bottom:5px;font-size:1.2rem;font-weight:600;display:block}.itinerary-title{font-family:var(--font-serif);color:var(--text-main);letter-spacing:1px;margin-bottom:8px;font-size:1.4rem}.itinerary-desc{font-family:var(--font-sans);color:var(--text-muted);font-size:.95rem;line-height:1.5}@media (width<=768px){.timeline-line-bg,.timeline-line-progress{left:20px}.timeline-item{width:100%;padding-left:45px;padding-right:10px;text-align:left!important}.timeline-item.right{left:0}.timeline-item.left .timeline-dot,.timeline-item.right .timeline-dot{left:13px;right:auto}}.gifts-section{background-color:var(--bg-color);text-align:center;padding:5rem 2rem}.gifts-heading{font-family:var(--font-serif);color:var(--primary-gold);letter-spacing:2px;margin-bottom:3rem;font-size:2.5rem}.gifts-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;max-width:800px;margin:0 auto;display:grid}.gift-card{text-align:center;background-position:50%;background-size:cover;border:1px solid #d4af374d;border-radius:12px;padding:3rem 2rem;transition:transform .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 10px 30px #0009}.gift-card:before{content:"";z-index:1;background:linear-gradient(#0f0f0fd9,#0f0f0feb);position:absolute;inset:0}.gift-card>*{z-index:2;position:relative}.gift-card:hover{border-color:var(--primary-gold);transform:translateY(-5px)}.gift-title{font-family:var(--font-serif);color:var(--gold-light);margin-bottom:1rem;font-size:1.8rem}.gift-desc{color:var(--text-muted);margin-bottom:1.8rem;font-size:.9rem;line-height:1.6}.gift-link{border:1px solid var(--primary-gold);color:var(--primary-gold);letter-spacing:2px;text-transform:uppercase;background:0 0;border-radius:50px;padding:.6rem 1.5rem;font-size:.8rem;text-decoration:none;transition:all .3s;display:inline-block}.gift-link:hover{background:var(--primary-gold);color:#000;box-shadow:0 0 15px #d4af3766}.dresscode-rsvp-section{background-color:var(--card-bg);text-align:center;padding:5rem 2rem}.dresscode-container{max-width:600px;margin:0 auto 4rem}.dresscode-heading{font-family:var(--font-serif);color:var(--primary-gold);margin-bottom:1rem;font-size:2.2rem}.dresscode-subtitle{letter-spacing:3px;text-transform:uppercase;color:var(--gold-light);margin-bottom:1rem;font-size:1.2rem}.dresscode-desc{color:var(--text-muted);font-size:.95rem;line-height:1.6}.rsvp-box{background:var(--bg-color);border:1px solid #d4af3766;border-radius:16px;max-width:600px;margin:0 auto;padding:3rem 2rem;box-shadow:0 15px 35px #0009}.rsvp-title{font-family:var(--font-serif);color:var(--primary-gold);margin-bottom:1rem;font-size:2.2rem}.rsvp-desc{color:var(--text-muted);margin-bottom:2rem;font-size:.95rem}.whatsapp-btn{color:#fff;letter-spacing:1px;background-color:#25d366;border-radius:50px;align-items:center;gap:.8rem;padding:.9rem 2.2rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background-color .3s,transform .2s;display:inline-flex;box-shadow:0 4px 15px #25d3664d}.whatsapp-btn:hover{background-color:#20ba5a;transform:translateY(-2px)}.footer-section{background-color:var(--bg-color);text-align:center;border-top:1px solid #d4af3726;padding:3rem 2rem}.footer-content{max-width:600px;margin:0 auto}.footer-names{font-family:var(--font-serif);color:var(--primary-gold);letter-spacing:2px;margin-bottom:.5rem;font-size:1.8rem}.footer-date{color:var(--gold-light);letter-spacing:3px;text-transform:uppercase;margin-bottom:1.5rem;font-size:.9rem}.footer-copy{color:var(--text-muted);letter-spacing:1px;margin-bottom:2rem;font-size:.8rem}.footer-credits{color:#fff6;letter-spacing:1px;border-top:1px dashed #d4af371a;padding-top:1.5rem;font-size:.75rem}.footer-link{color:var(--primary-gold);text-underline-offset:4px;font-weight:500;text-decoration:underline;transition:color .3s}.footer-link:hover{color:var(--gold-light)}:root{--bg-color:#121212;--card-bg:#1a1a1a;--primary-gold:#d4af37;--gold-light:#f3e5ab;--text-main:#e5e5e5;--text-muted:#a3a3a3;--font-serif:"Cormorant Garamond", serif;--font-sans:"Montserrat", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-sans);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif)}.main-content-wrapper{animation:.8s forwards fadeInContent}@keyframes fadeInContent{0%{opacity:0}to{opacity:1}}.main-content-wrapper>*{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp;transform:translateY(30px)}.main-content-wrapper>:first-child{animation-delay:.1s}.main-content-wrapper>:nth-child(2){animation-delay:.2s}.main-content-wrapper>:nth-child(3){animation-delay:.3s}.main-content-wrapper>:nth-child(4){animation-delay:.4s}.main-content-wrapper>:nth-child(5){animation-delay:.5s}.main-content-wrapper>:nth-child(6){animation-delay:.6s}.main-content-wrapper>:nth-child(7){animation-delay:.7s}.main-content-wrapper>:nth-child(8){animation-delay:.8s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}
