@import url(https://fonts.googleapis.com/css2?family=Lora:wght@400;500;600;700&family=Open+Sans:wght@300;400;500;600;700&family=Dancing+Script:wght@400;500;600;700&display=swap);.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffff0f2;border-bottom:1px solid #d4a57433;position:relative;transition:all .3s ease}.header.scrolled{background:#fffff0fa;box-shadow:0 2px 20px #d4a57426}.header-content{align-items:center;display:flex;justify-content:space-between;padding:.8rem 0}.logo{text-decoration:none}.logo h2{color:var(--dusty-rose);font-family:var(--font-script);font-size:1.4rem;font-weight:400;margin:0;transition:var(--transition)}.logo:hover h2{color:var(--gold);transform:scale(1.05)}.nav{align-items:center;display:flex}.nav-list{display:flex;gap:1.2rem;list-style:none;margin:0;padding:0}.nav-item,.nav-link{position:relative}.nav-link{color:var(--text-dark);font-family:var(--font-body);font-size:.9rem;font-weight:500;padding:.4rem 0;text-decoration:none;transition:var(--transition)}.nav-link:after{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link.active:after,.nav-link:hover:after{width:100%}.nav-link.active,.nav-link:hover{color:var(--dusty-rose)}.nav-link.active{font-weight:600}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:4px;padding:.5rem}.mobile-menu-btn span{background:var(--dusty-rose);border-radius:2px;height:3px;transition:var(--transition);width:25px}.mobile-menu-btn.open span:first-child{transform:rotate(45deg) translate(6px,6px)}.mobile-menu-btn.open span:nth-child(2){opacity:0}.mobile-menu-btn.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width:768px){.nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffff0fa;border-top:1px solid #d4a57433;left:0;opacity:0;position:fixed;right:0;top:100%;transform:translateY(-100%);transition:all .3s ease;visibility:hidden}.nav.nav-open{opacity:1;transform:translateY(0);visibility:visible}.nav-list{flex-direction:column;gap:0;padding:1rem 0}.nav-item{width:100%}.nav-link{border-bottom:1px solid #d4a5741a;display:block;padding:1rem 2rem}.nav-link:after{display:none}.nav-link.active,.nav-link:hover{background:#d4a5741a}.mobile-menu-btn{display:flex}.logo h2{font-size:1.3rem}}@media (max-width:480px){.header-content{padding:.5rem 0}.logo h2{font-size:1.2rem}.nav-link{font-size:.9rem;padding:.8rem 1.5rem}}.home{color:var(--text-dark);font-family:var(--font-body);overflow-x:hidden}.hero{align-items:center;display:flex;height:100vh;justify-content:center;overflow:hidden;position:relative}.hero-background{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.hero-image{filter:blur(1px);height:100%;object-fit:cover;object-position:center 80%;width:100%}.hero-overlay{background:linear-gradient(135deg,#ffffff1a,#ffffff4d 50%,#ffffff1a);height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.hero-content{margin-left:-380px;text-align:left}.main-content{align-items:flex-start;display:flex;flex-direction:column;gap:30px}.couple-names{color:#1a1a1a;font-family:var(--font-script);font-size:5rem;font-weight:600;letter-spacing:1px;line-height:1.1;margin:0;text-shadow:2px 2px 4px #fff,0 0 8px #fffc,0 0 16px #fff9}.wedding-announcement{margin:20px 0;text-align:left}.announcement-text{margin-bottom:15px;text-transform:lowercase}.announcement-text,.wedding-date{color:var(--charcoal);font-family:var(--font-body);font-size:1.4rem;font-weight:400;letter-spacing:2px;line-height:1.3;text-shadow:1px 1px 4px #fffc}.wedding-date{margin:0;text-transform:capitalize}.explore-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #fffc;border-radius:30px;box-shadow:0 8px 25px #0000001a;color:var(--charcoal);cursor:pointer;font-family:var(--font-body);font-size:1rem;font-weight:500;letter-spacing:1px;margin-top:30px;padding:15px 40px;text-transform:uppercase;transition:all .3s ease}.explore-button:hover{background:#fff;border-color:#fff;box-shadow:0 12px 30px #00000026;transform:translateY(-2px)}.countdown-section{background:linear-gradient(135deg,var(--white) 0,var(--light-rose) 100%);padding:100px 30px;text-align:center}.countdown-container{margin:0 auto;max-width:900px}.countdown-title{color:var(--dusty-rose);font-family:var(--font-script);font-size:3.2rem;font-weight:400;margin-bottom:60px;text-shadow:2px 2px 8px #0000001a}.countdown-timer{margin-bottom:40px}.wedding-day{color:var(--dusty-rose);font-family:var(--font-script);font-size:2.8rem;font-weight:400}.countdown-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0 auto;max-width:700px}.countdown-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #d4a57433;border-radius:25px;box-shadow:0 15px 35px #0000001a;padding:30px 20px;text-align:center;transition:all .3s ease}.countdown-item:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-8px)}.countdown-number{color:var(--charcoal);font-family:var(--font-heading);font-size:3.5rem;font-weight:700;line-height:1;margin-bottom:15px}.countdown-label{color:var(--text-light);font-family:var(--font-body);font-size:1rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.quick-info-section{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:100px 30px}.info-cards-container{display:flex;flex-direction:column;gap:40px;margin:0 auto;max-width:1200px}.events-row{grid-gap:50px;display:grid;gap:50px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.rsvp-row{display:flex;justify-content:center}.rsvp-card{max-width:600px;width:100%}.info-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid #d4a57433;border-radius:30px;box-shadow:0 20px 40px #0000001a;padding:50px 40px;transition:all .3s ease}.info-card:hover{box-shadow:0 25px 50px #00000026;transform:translateY(-10px)}.card-icon{font-size:3.5rem;margin-bottom:25px}.info-card h3{color:var(--charcoal);font-family:var(--font-heading);font-size:1.8rem;font-weight:600;margin-bottom:20px}.info-card p{font-size:1.125rem;font-weight:400;line-height:1.7;margin-bottom:10px}.card-detail{color:var(--dusty-rose);font-size:1rem;font-weight:500}@media (max-width:768px){.hero-content{padding:0 20px}.couple-names{font-size:3.5rem}.announcement-text{font-size:1.2rem;letter-spacing:1px}.wedding-date{font-size:1.2rem}.countdown-title{font-size:2.5rem}.countdown-number{font-size:2.8rem}.countdown-grid{gap:25px;grid-template-columns:repeat(2,1fr)}.events-row{gap:35px;grid-template-columns:1fr}.rsvp-card{max-width:none}.info-card{padding:40px 30px}}@media (max-width:480px){.hero{height:100vh}.main-content{gap:25px}.couple-names{font-size:2.8rem}.announcement-text{font-size:1rem;letter-spacing:1px}.wedding-date{font-size:1rem}.explore-button{font-size:.9rem;padding:12px 30px}.countdown-grid{gap:20px;grid-template-columns:1fr}.countdown-item{padding:25px 15px}.countdown-number{font-size:2.5rem}}.our-story{padding-top:0}.story-hero{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 0 80px;text-align:center}.story-hero .hero-content{margin-left:0!important;margin:0 auto;max-width:800px;padding:0 30px;text-align:center!important}.timeline,.timeline-section{position:relative}.timeline{margin:0 auto;max-width:1200px}.timeline:before{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border-radius:2px;bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:4px}.timeline-item{margin-bottom:80px;width:100%}.timeline-item:last-child{margin-bottom:0}.timeline-content{align-items:center;background:#fffffff2;border:1px solid #d4a5741a;border-radius:20px;box-shadow:0 15px 40px #d4a57426;display:flex;overflow:hidden;transition:var(--transition)}.timeline-content:hover{box-shadow:0 20px 50px #d4a57440;transform:translateY(-5px)}.timeline-item.left .timeline-content{flex-direction:row;margin-right:50%;padding-right:40px}.timeline-item.right .timeline-content{flex-direction:row-reverse;margin-left:50%;padding-left:40px}.timeline-image{border:4px solid #d4a57433;border-radius:50%;flex:0 0 200px;height:200px;overflow:hidden}.timeline-image img{height:100%;object-fit:cover;transition:var(--transition);width:100%}.timeline-content:hover .timeline-image img{transform:scale(1.1)}.timeline-text{flex:1 1;padding:2rem}.timeline-date{color:var(--dusty-rose);font-size:.9rem;font-weight:600;letter-spacing:1px;margin-bottom:.5rem;text-transform:uppercase}.timeline-text h3{color:var(--dusty-rose);font-size:1.8rem;margin-bottom:1rem}.timeline-text p{color:var(--text-light);line-height:1.7;margin:0}.timeline-marker{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.marker-dot{background:var(--white);border:4px solid var(--dusty-rose);border-radius:50%;box-shadow:0 0 0 8px #d4a5741a;height:20px;transition:var(--transition);width:20px}.timeline-item:hover .marker-dot{background:var(--dusty-rose);box-shadow:0 0 0 12px #d4a57433}.story-footer{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:100px 0;text-align:center}.footer-content h2{color:var(--dusty-rose);font-size:3rem;margin-bottom:2rem}.footer-content p{color:var(--text-light);font-size:1.2rem;line-height:1.8;margin:0 auto 3rem;max-width:800px}.love-quote{background:#ffffffe6;border:1px solid #d4a5741a;border-radius:15px;box-shadow:0 10px 30px #d4a5741a;margin:0 auto;max-width:600px;padding:2rem}.love-quote p{color:var(--dusty-rose);font-size:1.3rem;font-style:italic;margin-bottom:1rem}.love-quote span{color:var(--text-light);font-size:1rem;font-weight:500}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.timeline:before{left:30px}.timeline-item.left .timeline-content,.timeline-item.right .timeline-content{flex-direction:column;margin:0 0 0 60px;padding:0}.timeline-image{border:3px solid #d4a57433;border-radius:50%;flex:0 0 150px;height:150px;width:100%}.timeline-text{padding:1.5rem}.timeline-text h3{font-size:1.5rem}.timeline-marker{left:30px}.footer-content h2{font-size:2rem}.footer-content p{font-size:1.1rem}.love-quote{padding:1.5rem}.love-quote p{font-size:1.1rem}}@media (max-width:480px){.story-hero{padding:100px 0 60px}.hero-content h1{font-size:2rem}.timeline-section{padding:60px 0}.timeline-item{margin-bottom:60px}.timeline-item.left .timeline-content,.timeline-item.right .timeline-content{margin:0 0 0 50px}.timeline-image{border:2px solid #d4a57433;border-radius:50%;flex:0 0 120px;height:120px}.timeline-text{padding:1rem}.timeline-text h3{font-size:1.3rem}.timeline-marker{left:25px}.marker-dot{border-width:3px;height:16px;width:16px}.story-footer{padding:60px 0}.footer-content h2{font-size:1.8rem}.footer-content p{font-size:1rem}.love-quote{padding:1rem}.love-quote p{font-size:1rem}}.wedding-details{color:var(--text-dark);font-family:var(--font-body);padding-top:0}.details-hero{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 0 80px;position:relative;text-align:center}.hero-content{margin-left:0!important;margin:0 auto;max-width:800px;padding:0 30px;position:relative;text-align:center!important;z-index:3}.section-header{margin-bottom:60px}.section-title{color:var(--dusty-rose);font-family:var(--font-script);font-size:3.2rem;font-weight:400;margin-bottom:15px;text-shadow:2px 2px 8px #0000001a}.section-subtitle{color:var(--text-light);font-size:1.2rem;font-style:italic;margin:0 auto;max-width:600px}.events-section{background:linear-gradient(135deg,var(--white) 0,var(--light-rose) 100%);padding:100px 0}.events-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));margin:0 auto;max-width:1400px}.event-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #d4a57433;border-radius:25px;box-shadow:0 20px 40px #0000001a;overflow:hidden;transition:all .3s ease}.event-card:hover{box-shadow:0 25px 50px #00000026;transform:translateY(-8px)}.card-header{background:linear-gradient(135deg,#d4a5741a,#d4af370d);padding:40px 40px 20px;text-align:center}.card-icon{display:block;font-size:3rem;margin-bottom:20px}.card-header h2{color:var(--charcoal);font-family:var(--font-heading);font-size:1.8rem;font-weight:600;margin-bottom:10px}.event-date{color:var(--dusty-rose);font-size:1rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}.card-content{padding:20px 40px 40px}.detail-item{align-items:flex-start;display:flex;gap:15px;margin-bottom:25px}.detail-icon{flex-shrink:0;font-size:1.5rem;margin-top:5px}.detail-content h3{color:var(--charcoal);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:5px}.detail-content p{color:var(--text-light);font-size:1rem;line-height:1.6;margin:0}.map-section{background:linear-gradient(135deg,var(--ivory) 0,var(--white) 100%);padding:100px 0}.map-container{margin:0 auto;max-width:1200px}.map-wrapper{box-shadow:0 20px 40px #0000001a;overflow:hidden}.map-instructions,.map-wrapper{border-radius:15px;margin-bottom:30px}.map-instructions{background:#ffffffe6;border:2px solid #d4a57433;box-shadow:0 10px 25px #0000001a;padding:25px}.map-instructions p{color:var(--charcoal);font-size:1.1rem;margin-bottom:20px;text-align:center}.search-links{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.venue-link{align-items:center;background:#fffc;border:2px solid #d4a57433;border-radius:12px;color:var(--charcoal);display:flex;font-weight:500;gap:12px;padding:15px 20px;text-decoration:none;transition:all .3s ease}.venue-link:hover{background:#fffffff2;border-color:var(--dusty-rose);box-shadow:0 10px 25px #00000026;transform:translateY(-3px)}.link-icon{flex-shrink:0;font-size:1.5rem}.link-text{font-size:.95rem;line-height:1.4}.mehendi-link:hover{border-color:#ff6b6b}.ceremony-link:hover{border-color:#4ecdc4}.reception-link:hover{border-color:#45b7d1}.venue-info{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.venue-card{align-items:center;background:#ffffffe6;border:2px solid #d4a57433;border-radius:20px;box-shadow:0 15px 35px #0000001a;display:flex;gap:20px;padding:30px;transition:all .3s ease}.venue-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-5px)}.venue-icon{flex-shrink:0;font-size:2.5rem}.venue-details h3{color:var(--charcoal);font-family:var(--font-heading);font-size:1.3rem;font-weight:600;margin-bottom:8px}.venue-details p{color:var(--text-light);font-size:1rem;line-height:1.6;margin:0}.timeline-section{background:var(--white);padding:100px 0}.timeline-container{margin:0 auto;max-width:800px;position:relative}.timeline-day{margin-bottom:60px}.timeline-day:last-child{margin-bottom:0}.day-title{color:var(--dusty-rose);font-family:var(--font-heading);font-size:1.5rem;font-weight:600;margin-bottom:40px;position:relative;text-align:center}.day-title:after{background:var(--gold);border-radius:2px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.timeline-item{align-items:center;display:flex;margin-bottom:30px;padding-left:80px;position:relative}.timeline-item:before{border:3px solid var(--white);border-radius:50%;box-shadow:0 2px 8px #0000001a;height:12px;left:0;width:12px;z-index:2}.timeline-item:after,.timeline-item:before{background:var(--gold);content:"";position:absolute;top:50%;transform:translateY(-50%)}.timeline-item:after{height:calc(100% + 30px);left:5px;width:2px;z-index:1}.timeline-item:last-child:after{display:none}.timeline-time{border:1px solid #0000001a;border-radius:20px;color:var(--charcoal);flex:0 0 120px;font-family:var(--font-heading);font-size:1rem;font-weight:600;margin-right:20px;padding:10px 15px;text-align:center}.timeline-event,.timeline-time{background:var(--white);box-shadow:0 4px 15px #0000001a}.timeline-event{border:1px solid #0000001a;border-radius:15px;flex:1 1;padding:20px 25px}.timeline-event h4{color:var(--charcoal);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:5px}.timeline-event p{color:var(--text-light);font-size:.9rem;line-height:1.4;margin:0}@media (max-width:768px){.hero-title{font-size:3rem}.section-title{font-size:2.5rem}.events-grid{gap:30px}.dress-suggestions,.events-grid,.venue-info{grid-template-columns:1fr}.timeline-container{padding:0 20px}.day-title{font-size:1.3rem;margin-bottom:30px}.timeline-item{align-items:flex-start;flex-direction:column;margin-bottom:25px;padding-left:60px}.timeline-item:before{left:0}.timeline-item:after{height:calc(100% + 25px);left:5px}.timeline-time{flex:none;margin:0 0 15px;width:100%}.timeline-event{width:100%}}@media (max-width:480px){.hero-title{font-size:2.5rem}.section-title{font-size:2rem}.card-content,.card-header{padding:30px 25px}.dress-description{padding:0 25px}.dress-suggestions{padding:0 25px 30px}.timeline-item{padding-left:50px}.timeline-container:before,.timeline-item:before{left:25px}}.gallery{color:var(--text-dark);font-family:var(--font-body);overflow-x:hidden}.gallery-header{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 30px 80px;position:relative;text-align:center}.gallery-header .header-content{margin-left:0!important;margin:0 auto;max-width:800px;padding:0 30px;text-align:center!important}.gallery-header:before{background:radial-gradient(circle at 30% 20%,#d4a5741a 0,#0000 50%),radial-gradient(circle at 70% 80%,#d4af3714 0,#0000 50%);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.header-content{margin:0 auto;max-width:800px;position:relative;z-index:2}.gallery-title{color:var(--dusty-rose);font-family:var(--font-script);font-size:4rem;font-weight:400;margin-bottom:20px;text-shadow:2px 2px 8px #0000001a}.gallery-subtitle{color:var(--text-light);font-size:1.25rem;font-weight:400;line-height:1.7;margin:0 auto;max-width:600px}.gallery-section{background:linear-gradient(135deg,var(--white) 0,var(--light-rose) 100%);padding:80px 30px}.gallery-container{margin:0 auto;max-width:1400px}.gallery-grid{grid-gap:30px;display:grid;gap:30px;grid-auto-flow:row dense;grid-auto-rows:250px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.gallery-item:nth-child(3n+1){grid-row:span 2}.gallery-item:nth-child(5n+2){grid-row:span 1}.gallery-item:nth-child(7n+3){grid-row:span 2}.gallery-item:nth-child(11n+4){grid-row:span 1}.gallery-item{border-radius:20px;box-shadow:0 15px 35px #0000001a;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.gallery-item:hover{box-shadow:0 25px 50px #0003;transform:translateY(-8px)}.image-container{height:100%;overflow:hidden;position:relative;width:100%}.gallery-image{height:100%;object-fit:cover;object-position:center;transition:transform .6s ease;width:100%}.gallery-item:hover .gallery-image{transform:scale(1.1)}.image-overlay{align-items:flex-end;background:linear-gradient(135deg,#0000004d,#0000001a 50%,#d4a57466);display:flex;height:100%;left:0;opacity:0;padding:25px;position:absolute;top:0;transition:opacity .3s ease;width:100%}.gallery-item:hover .image-overlay{opacity:1}.overlay-content{color:var(--white);width:100%}.image-title{font-family:var(--font-heading);font-size:1.3rem;font-weight:600;margin-bottom:8px;text-shadow:2px 2px 4px #00000080}.view-icon{font-size:1.5rem;opacity:.8}.lightbox{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;position:fixed;z-index:9999}.lightbox,.lightbox-backdrop{height:100%;left:0;top:0;width:100%}.lightbox-backdrop{background:#000000e6;cursor:pointer;position:absolute}.lightbox-content{flex-direction:column;gap:20px;max-height:90vh;max-width:90vw;position:relative;z-index:10000}.lightbox-close,.lightbox-content{align-items:center;display:flex;justify-content:center}.lightbox-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:50%;color:var(--white);cursor:pointer;font-size:2rem;height:50px;position:absolute;right:0;top:-50px;transition:all .3s ease;width:50px}.lightbox-close:hover{background:#ffffff4d;transform:scale(1.1)}.lightbox-nav{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:50%;color:var(--white);cursor:pointer;display:flex;font-size:3rem;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10001}.lightbox-prev{left:-80px}.lightbox-next{right:-80px}.lightbox-nav:hover{background:#ffffff4d;transform:translateY(-50%) scale(1.1)}.lightbox-image-container{border-radius:15px;box-shadow:0 25px 50px #00000080;max-height:100%;max-width:100%;overflow:hidden;position:relative}.lightbox-image{display:block;max-height:80vh;max-width:100%;object-fit:contain}.lightbox-info{background:none;color:var(--white);padding:0;text-align:center}.lightbox-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;margin-bottom:8px;text-shadow:2px 2px 4px #000c}.lightbox-counter{font-size:1rem;font-weight:400;opacity:.9;text-shadow:1px 1px 2px #000c}@media (max-width:1200px){.gallery-grid{gap:25px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){.gallery-header{padding:100px 20px 60px}.gallery-title{font-size:3rem}.gallery-subtitle{font-size:1.1rem}.gallery-section{padding:60px 20px}.gallery-grid{gap:20px;grid-auto-rows:200px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.gallery-item:nth-child(3n+1),.gallery-item:nth-child(7n+3){grid-row:span 1}.lightbox-nav{font-size:2rem;height:50px;width:50px}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}.lightbox-close{font-size:1.5rem;height:40px;top:-40px;width:40px}}@media (max-width:480px){.gallery-header{padding:80px 15px 40px}.gallery-title{font-size:2.5rem}.gallery-subtitle{font-size:1rem}.gallery-section{padding:40px 15px}.gallery-grid{gap:15px;grid-auto-rows:250px;grid-template-columns:1fr}.gallery-item:nth-child(3n+1),.gallery-item:nth-child(7n+3){grid-row:span 1}.lightbox-content{max-height:95vh;max-width:95vw}.lightbox-nav{font-size:1.8rem;height:45px;width:45px}.lightbox-prev{left:-50px}.lightbox-next{right:-50px}.lightbox-close{height:35px;top:-35px;width:35px}.lightbox-close,.lightbox-title{font-size:1.2rem}.lightbox-info{padding:20px 15px 15px}}.lightbox:focus{outline:none}.add-photos-message{display:flex;justify-content:center;margin-top:60px}.message-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #d4a57433;border-radius:20px;box-shadow:0 15px 35px #0000001a;max-width:600px;padding:40px;text-align:center}.message-card h3{color:var(--charcoal);font-family:var(--font-heading);font-size:1.8rem;font-weight:600;margin-bottom:20px}.message-card p{color:var(--text-light);font-size:1.1rem;line-height:1.6;margin-bottom:15px}.message-card ol{margin:20px 0;padding-left:20px;text-align:left}.message-card li{color:var(--text-light);font-size:1rem;line-height:1.5;margin-bottom:8px}.message-card code{background:#d4a5741a;border-radius:4px;color:var(--dusty-rose);font-family:Courier New,monospace;font-size:.9rem;padding:2px 6px}.message-card .note{color:var(--dusty-rose);font-size:1rem;font-style:italic;margin-top:20px}.gallery-image{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.gallery-image[src]{animation:none;background:none}.travel-accommodation{padding-top:0}.travel-hero{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 0 80px;text-align:center}.travel-hero .hero-content{margin-left:0!important;margin:0 auto;max-width:800px;padding:0 30px;text-align:center!important}.welcome-section{background:var(--white);padding:80px 0}.welcome-content{margin:0 auto;max-width:800px;text-align:center}.welcome-content h2{color:var(--dusty-rose);font-size:3rem;margin-bottom:2rem}.welcome-content p{color:var(--text-light);font-size:1.2rem;line-height:1.8}.accommodation-section{background:var(--ivory);padding:100px 0}.section-header{margin-bottom:4rem;text-align:center}.section-header h2{color:var(--dusty-rose);font-size:3rem;margin-bottom:1rem}.section-header p{color:var(--text-light);font-size:1.2rem}.hotels-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.hotel-card{background:#fffffff2;border:1px solid #d4a5741a;border-radius:20px;box-shadow:0 15px 40px #d4a57426;padding:2.5rem;transition:var(--transition)}.hotel-card:hover{box-shadow:0 20px 50px #d4a57440;transform:translateY(-5px)}.hotel-header{align-items:center;border-bottom:2px solid #d4a5741a;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.hotel-header h3{color:var(--dusty-rose);font-size:1.8rem;margin:0}.price-range{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border-radius:20px;color:var(--white);font-size:.9rem;font-weight:600;padding:.5rem 1rem}.hotel-info{margin-bottom:2rem}.hotel-description{color:var(--text-light);font-size:1.1rem;line-height:1.6;margin-bottom:1rem}.hotel-address,.hotel-distance,.hotel-phone{color:var(--text-light);font-size:.95rem;margin:.5rem 0}.hotel-amenities{margin-bottom:2rem}.hotel-amenities h4{color:var(--dusty-rose);font-family:var(--font-body);font-size:1.2rem;margin-bottom:1rem}.hotel-amenities ul{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));list-style:none;margin:0;padding:0}.hotel-amenities li{color:var(--text-light);padding:.5rem 0 .5rem 1.5rem;position:relative}.hotel-amenities li:before{color:var(--dusty-rose);content:"✓";font-weight:700;left:0;position:absolute}.hotel-booking{border-top:2px solid #d4a5741a;display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem}.booking-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.block-info p{color:var(--text-light);font-size:.9rem;margin:.3rem 0}.booking-btn{font-size:.9rem;padding:10px 20px}.special-offer{background:linear-gradient(135deg,var(--gold),var(--light-gold));border:2px solid var(--gold);border-radius:15px;margin-bottom:1.5rem;padding:1.5rem;text-align:center;width:100%}.special-offer p{color:var(--text-dark);margin:.5rem 0}.offer-highlight{color:var(--dusty-rose);font-size:1.3rem;font-weight:700;text-shadow:0 1px 2px #0000001a}.attractions-section{background:var(--white);padding:100px 0}.attractions-grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.attraction-card{background:#fffffff2;border:1px solid #d4a5741a;border-radius:15px;box-shadow:0 10px 30px #d4a5741a;padding:2rem;text-align:center;transition:var(--transition)}.attraction-card:hover{box-shadow:0 15px 40px #d4a57433;transform:translateY(-5px)}.attraction-header{margin-bottom:1.5rem}.attraction-header h3{color:var(--dusty-rose);font-size:1.5rem;margin-bottom:.5rem}.category{background:#d4a5741a;border-radius:15px;color:var(--dusty-rose);font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.3rem .8rem;text-transform:uppercase}.attraction-description{color:var(--text-light);line-height:1.6;margin-bottom:1.5rem}.attraction-details{margin-bottom:1.5rem}.attraction-details p{color:var(--text-light);font-size:.9rem;margin:0}.secondary-btn{background:#0000;border:2px solid var(--dusty-rose);font-size:.9rem;padding:8px 20px}.secondary-btn:hover{background:var(--dusty-rose);color:var(--white)}.travel-info-section{background:var(--ivory);padding:100px 0}.travel-info-content h2{color:var(--dusty-rose);font-size:3rem;margin-bottom:3rem;text-align:center}.info-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-card{background:#fffffff2;border:1px solid #d4a5741a;border-radius:15px;box-shadow:0 10px 30px #d4a5741a;padding:2rem;text-align:center;transition:var(--transition)}.info-card:hover{box-shadow:0 15px 40px #d4a57433;transform:translateY(-5px)}.info-icon{font-size:3rem;margin-bottom:1rem}.info-card h3{color:var(--dusty-rose);font-family:var(--font-body);font-size:1.3rem;margin-bottom:1rem}.info-card p{color:var(--text-light);font-size:.95rem;line-height:1.5;margin:.5rem 0}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.welcome-content h2{font-size:2rem}.welcome-content p{font-size:1.1rem}.section-header h2{font-size:2rem}.section-header p{font-size:1.1rem}.hotels-grid{gap:2rem;grid-template-columns:1fr}.hotel-card{padding:2rem}.hotel-header h3{font-size:1.5rem}.hotel-amenities ul{grid-template-columns:1fr}.hotel-booking{align-items:stretch;flex-direction:column}.attractions-grid{gap:2rem;grid-template-columns:1fr}.attraction-card{padding:1.5rem}.travel-info-content h2{font-size:2rem}.info-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}.info-card{padding:1.5rem}}@media (max-width:480px){.travel-hero{padding:100px 0 60px}.hero-content h1{font-size:2rem}.welcome-section{padding:60px 0}.welcome-content h2{font-size:1.8rem}.accommodation-section{padding:60px 0}.section-header h2{font-size:1.8rem}.hotel-card{padding:1.5rem}.hotel-header{align-items:flex-start;flex-direction:column;gap:1rem}.hotel-header h3{font-size:1.3rem}.attractions-section{padding:60px 0}.attraction-card{padding:1rem}.attraction-header h3{font-size:1.3rem}.travel-info-section{padding:60px 0}.travel-info-content h2{font-size:1.8rem}.info-grid{gap:1rem;grid-template-columns:1fr}.info-card{padding:1rem}.info-icon{font-size:2rem}.info-card h3{font-size:1.1rem}}.rsvp{padding-top:0}.rsvp-hero{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 0 80px;text-align:center}.rsvp-hero .hero-content{margin-left:0!important;margin:0 auto;max-width:800px;padding:0 30px;text-align:center!important}.rsvp-form-section{background:var(--white);padding:100px 0}.form-container{margin:0 auto;max-width:600px}.rsvp-info-box{align-items:flex-start;background:linear-gradient(135deg,#d4a5741a,#ffd7001a);border:1px solid #d4a5744d;border-radius:12px;display:flex;gap:.75rem;margin-bottom:2rem;padding:1rem 1.5rem}.info-icon{flex-shrink:0;font-size:1.2rem;margin-top:.1rem}.info-content p{color:var(--text-light);font-size:.95rem;line-height:1.5;margin:0}.info-content strong{color:var(--dusty-rose)}.rsvp-form{background:#fffffff2;border:1px solid #d4a5741a;border-radius:20px;box-shadow:0 20px 60px #d4a57426;padding:3rem}.form-group{margin-bottom:2rem}.form-group label{color:var(--text-dark);display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:var(--white);border:2px solid #d4a57433;border-radius:10px;font-family:var(--font-body);font-size:1rem;padding:12px 16px;transition:var(--transition);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--dusty-rose);box-shadow:0 0 0 3px #d4a5741a;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#999}.error-message{color:#e74c3c;display:block;font-size:.9rem;margin-top:.5rem}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:1rem}.checkbox-option{align-items:center;background:var(--white);border:2px solid #d4a57433;border-radius:10px;cursor:pointer;display:flex;padding:1rem;transition:var(--transition)}.checkbox-option:hover{background:#d4a5740d;border-color:var(--dusty-rose)}.checkbox-option input[type=checkbox]{display:none}.checkbox-custom{background:var(--white);border:2px solid #d4a5744d;border-radius:4px;height:20px;margin-right:12px;position:relative;transition:var(--transition);width:20px}.checkbox-option input[type=checkbox]:checked+.checkbox-custom{background:var(--dusty-rose);border-color:var(--dusty-rose)}.checkbox-option input[type=checkbox]:checked+.checkbox-custom:after{color:var(--white);content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.checkbox-label{color:var(--text-dark);font-size:1rem;font-weight:500}.radio-option{align-items:center;background:var(--white);border:2px solid #d4a57433;border-radius:10px;cursor:pointer;display:flex;padding:1rem;transition:var(--transition)}.radio-option:hover{background:#d4a5740d;border-color:var(--dusty-rose)}.radio-option input[type=radio]{display:none}.radio-custom{border:2px solid #d4a5744d;border-radius:50%;height:20px;margin-right:12px;position:relative;transition:var(--transition);width:20px}.radio-option input[type=radio]:checked+.radio-custom{background:var(--dusty-rose);border-color:var(--dusty-rose)}.radio-option input[type=radio]:checked+.radio-custom:after{background:var(--white);border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.radio-label{color:var(--text-dark);font-size:1rem;font-weight:500}.submit-btn{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border:none;color:var(--white);cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1rem;padding:15px;transition:var(--transition);width:100%}.submit-btn:disabled{cursor:not-allowed;opacity:.7;transform:none!important}.submit-btn:hover:not(:disabled){box-shadow:0 8px 25px #d4a57466;transform:translateY(-2px)}.thank-you-message{align-items:center;background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:100px 0;text-align:center}.thank-you-icon{animation:bounce 2s infinite;font-size:4rem;margin-bottom:2rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.thank-you-message h1{color:var(--dusty-rose);font-size:3rem;margin-bottom:1rem}.thank-you-message p{color:var(--text-light);font-size:1.2rem;margin-bottom:1rem;max-width:500px}.thank-you-message .subtitle{color:var(--text-light);font-size:1rem;font-style:italic;opacity:.8}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.rsvp-form{margin:0 1rem;padding:2rem}.radio-group{gap:.8rem}.radio-option{padding:.8rem}.checkbox-group{gap:.8rem}.checkbox-option{padding:.8rem}.thank-you-message{padding:60px 0}.thank-you-message h1{font-size:2rem}.thank-you-message p{font-size:1.1rem}}@media (max-width:480px){.hero-content h1{font-size:2rem}.rsvp-hero{padding:100px 0 60px}.rsvp-form-section{padding:60px 0}.rsvp-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{font-size:.9rem;padding:10px 12px}.radio-option{padding:.6rem}.radio-label{font-size:.9rem}.checkbox-option{padding:.6rem}.checkbox-label{font-size:.9rem}.submit-btn{font-size:1rem;padding:12px}.thank-you-icon{font-size:3rem}.thank-you-message h1{font-size:1.8rem}.thank-you-message p{font-size:1rem}}.admin-view{padding-top:0}.admin-hero{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);padding:120px 0 80px;text-align:center}.hero-content h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--dusty-rose),var(--gold));-webkit-background-clip:text;background-clip:text;font-size:4rem;margin-bottom:1rem}.hero-subtitle{color:var(--text-light);font-size:1.3rem;font-style:italic;margin:0 auto;max-width:600px}.loading{padding:100px 0;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #d4a57433;border-radius:50%;border-top:4px solid var(--dusty-rose);height:50px;margin:0 auto 2rem;width:50px}.loading p{color:var(--text-light);font-size:1.2rem}.error-message{padding:100px 0;text-align:center}.error-message h2{color:#e74c3c;margin-bottom:1rem}.error-message p{color:var(--text-light);margin-bottom:2rem}.summary-section{background:var(--white);padding:80px 0}.summary-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.summary-card{background:#fffffff2;border:1px solid #d4a5741a;border-radius:15px;box-shadow:0 10px 30px #d4a5741a;padding:2rem;text-align:center;transition:var(--transition)}.summary-card:hover{box-shadow:0 15px 40px #d4a57433;transform:translateY(-5px)}.summary-icon{font-size:3rem;margin-bottom:1rem}.summary-card h3{color:var(--text-dark);font-family:var(--font-body);font-size:1.2rem;margin-bottom:1rem}.summary-number{color:var(--dusty-rose);font-family:var(--font-body);font-size:2.5rem;font-weight:700;margin:0}.summary-date{color:var(--text-light);font-size:1.1rem;margin:0}.rsvp-table-section{background:var(--ivory);padding:80px 0}.table-container{background:#fffffff2;border:1px solid #d4a5741a;border-radius:20px;box-shadow:0 20px 60px #d4a57426;padding:2rem}.table-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.table-header h2{color:var(--dusty-rose);font-size:2rem;margin:0}.refresh-btn{font-size:.9rem;padding:10px 20px}.no-data{color:var(--text-light);font-size:1.1rem;padding:3rem;text-align:center}.table-wrapper{border:1px solid #d4a5741a;border-radius:10px;overflow-x:auto}.rsvp-table{background:var(--white);border-collapse:collapse;width:100%}.rsvp-table td,.rsvp-table th{border-bottom:1px solid #d4a5741a;padding:1rem;text-align:left}.rsvp-table th{background:#d4a5740d;color:var(--text-dark);font-size:.9rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.rsvp-table td{color:var(--text-light);font-size:.95rem}.rsvp-table tr:hover{background:#d4a57405}.status{border-radius:20px;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status.attending{background:#2ecc711a;color:#27ae60}.status.declined{background:#e74c3c1a;color:#e74c3c}.message-cell{max-width:200px;position:relative}.message-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-tooltip{background:var(--text-dark);border-radius:8px;bottom:100%;box-shadow:0 5px 15px #0003;color:var(--white);font-size:.85rem;left:0;max-width:300px;opacity:0;padding:.8rem;position:absolute;transition:var(--transition);visibility:hidden;white-space:normal;z-index:1000}.message-tooltip:after{border:5px solid #0000;border-top:5px solid var(--text-dark);content:"";left:20px;position:absolute;top:100%}.message-cell:hover .message-tooltip{opacity:1;visibility:visible}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.summary-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}.summary-card{padding:1.5rem}.summary-number{font-size:2rem}.table-container{padding:1.5rem}.table-header{align-items:flex-start;flex-direction:column}.table-header h2{font-size:1.5rem}.rsvp-table td,.rsvp-table th{font-size:.85rem;padding:.8rem .5rem}.message-cell{max-width:150px}}@media (max-width:480px){.admin-hero{padding:100px 0 60px}.hero-content h1{font-size:2rem}.summary-section{padding:60px 0}.summary-grid{gap:1rem;grid-template-columns:1fr}.summary-card{padding:1rem}.summary-icon{font-size:2rem}.summary-number{font-size:1.8rem}.rsvp-table-section{padding:60px 0}.table-container{padding:1rem}.rsvp-table td,.rsvp-table th{font-size:.8rem;padding:.6rem .3rem}.status{font-size:.7rem;padding:3px 8px}.message-cell{max-width:120px}.message-tooltip{font-size:.8rem;max-width:250px}}.events-list{display:flex;flex-wrap:wrap;gap:.3rem}.event-tag{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.2rem .5rem;text-transform:uppercase;white-space:nowrap}.filters-section{background:var(--white);padding:80px 0}.filters-container{background:#fffffff2;border:1px solid #d4a5741a;border-radius:20px;box-shadow:0 15px 40px #d4a57426;padding:2.5rem}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.filters-header h2{color:var(--dusty-rose);font-size:2rem;margin:0}.clear-filters-btn{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:.8rem 1.5rem;transition:var(--transition)}.clear-filters-btn:hover{box-shadow:0 8px 25px #d4a5744d;transform:translateY(-2px)}.filters-row.search-filters{grid-gap:1.5rem;grid-template-columns:1fr 1fr}.filters-grid,.filters-row.search-filters{display:grid;gap:1.5rem;margin-bottom:2rem}.filters-grid{grid-gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filters-row.date-filters{margin-bottom:2rem}.date-range-group{max-width:500px}.filter-group{display:flex;flex-direction:column}.filter-group label{color:var(--text-dark);font-size:1rem;font-weight:600;margin-bottom:.8rem}.filter-group input,.filter-group select{background:var(--white);border:2px solid #d4a57433;border-radius:10px;font-family:var(--font-body);font-size:1rem;padding:.8rem;transition:var(--transition)}.filter-group input:focus,.filter-group select:focus{border-color:var(--dusty-rose);box-shadow:0 0 0 3px #d4a5741a;outline:none}.checkbox-filters{display:flex;flex-direction:column;gap:.8rem}.filter-checkbox{align-items:center;color:var(--text-dark);cursor:pointer;display:flex;font-weight:500}.filter-checkbox input[type=checkbox]{display:none}.checkmark{background:var(--white);border:2px solid #d4a5744d;border-radius:4px;height:20px;margin-right:10px;position:relative;transition:var(--transition);width:20px}.filter-checkbox input[type=checkbox]:checked+.checkmark{background:var(--dusty-rose);border-color:var(--dusty-rose)}.filter-checkbox input[type=checkbox]:checked+.checkmark:after{color:var(--white);content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.date-range{align-items:center;display:flex;gap:1rem}.date-range input{flex:1 1}.date-range span{color:var(--text-light);font-weight:500}.filter-results{background:#d4a5740d;border:1px solid #d4a5741a;border-radius:10px;padding:1.5rem;text-align:center}.filter-results p{color:var(--text-dark);font-size:1.1rem;margin:0}.filter-active{color:var(--dusty-rose);font-weight:600}@media (max-width:1024px){.filters-grid{gap:1.3rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:768px){.event-tag{font-size:.7rem;padding:.15rem .4rem}.filters-section{padding:60px 0}.filters-container{padding:1.5rem}.filters-header{flex-direction:column;gap:1rem;text-align:center}.filters-header h2{font-size:1.5rem}.filters-grid,.filters-row.search-filters{gap:1.2rem;grid-template-columns:1fr}.date-range{flex-direction:column;gap:.5rem}.date-range span{order:-1}.date-range-group{max-width:100%}}.not-found{align-items:center;background:linear-gradient(135deg,#d4a5741a,#ffffffe6 50%,#d4a5741a);display:flex;justify-content:center;min-height:100vh;padding:80px 0}.not-found-content{background:#fffffff2;border:1px solid #d4a5741a;border-radius:25px;box-shadow:0 20px 50px #d4a57433;margin:0 auto;max-width:600px;padding:3rem;text-align:center}.error-icon{margin-bottom:2rem}.error-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--dusty-rose),var(--gold));-webkit-background-clip:text;background-clip:text;display:block;font-size:8rem;font-weight:700;line-height:1;text-shadow:0 4px 8px #d4a5744d}.error-title{color:var(--dusty-rose);font-family:var(--font-heading);font-size:2.5rem;font-weight:600;margin-bottom:1rem}.error-message{color:var(--text-dark);font-size:1.3rem;font-weight:500;margin-bottom:1rem}.error-description{color:var(--text-light);font-size:1.1rem;line-height:1.6;margin-bottom:2.5rem}.error-actions{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-bottom:3rem}.btn{align-items:center;border-radius:12px;display:inline-flex;font-size:1.1rem;gap:.5rem;padding:1rem 2rem}.home-btn{background:linear-gradient(135deg,var(--dusty-rose),var(--gold));box-shadow:0 8px 25px #d4a5744d;color:#fff}.home-btn:hover{box-shadow:0 12px 35px #d4a57466;transform:translateY(-3px)}.secondary-btn{background:#d4a5741a;border:2px solid #d4a5744d;color:var(--dusty-rose)}.secondary-btn:hover{background:#d4a57433;border-color:var(--dusty-rose);transform:translateY(-2px)}.btn-icon{font-size:1.2rem}.helpful-links{border-top:1px solid #d4a57433;padding-top:2rem}.links-title{color:var(--text-dark);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.links-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0 auto;max-width:400px}.quick-link{background:#d4a5740d;border:1px solid #d4a5741a;border-radius:8px;color:var(--dusty-rose);font-weight:500;padding:.8rem 1rem;text-decoration:none;transition:var(--transition)}.quick-link:hover{background:#d4a57426;border-color:var(--dusty-rose);transform:translateY(-2px)}@media (max-width:768px){.not-found{padding:60px 0}.not-found-content{margin:0 1rem;padding:2rem 1.5rem}.error-number{font-size:6rem}.error-title{font-size:2rem}.error-message{font-size:1.1rem}.error-description{font-size:1rem}.error-actions{align-items:center;flex-direction:column}.btn{justify-content:center;max-width:250px;width:100%}.links-grid{gap:.8rem;grid-template-columns:1fr 1fr}.quick-link{font-size:.9rem;padding:.6rem .8rem}}@media (max-width:480px){.error-number{font-size:5rem}.error-title{font-size:1.8rem}.links-grid{grid-template-columns:1fr}}.App{background:linear-gradient(135deg,var(--ivory) 0,var(--light-rose) 100%);min-height:100vh}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{transition:opacity .3s,transform .3s}.page-enter-active,.page-exit{opacity:1;transform:translateY(0)}.page-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s}.loading{align-items:center;color:var(--dusty-rose);display:flex;font-family:var(--font-script);font-size:2rem;height:100vh;justify-content:center}.loading:after{animation:spin 1s linear infinite;border:2px solid var(--dusty-rose);border-radius:50%;border-top:2px solid #0000;content:"";height:20px;margin-left:10px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.text-center{text-align:center}.mb-2{margin-bottom:2rem}.mb-3{margin-bottom:3rem}.mt-2{margin-top:2rem}.mt-3{margin-top:3rem}.hidden{display:none}.visible{display:block}@media (max-width:768px){.container{padding:0 15px}}@media (max-width:480px){.container{padding:0 10px}}*{box-sizing:border-box;margin:0;padding:0}:root{--dusty-rose:#d4a574;--gold:#d4af37;--ivory:ivory;--dark-rose:#b8860b;--light-rose:#f5e6d3;--text-dark:#2c2c2c;--text-light:#4a4a4a;--navy:#1a1a2e;--charcoal:#2c2c2c;--white:#fff;--black:#000;--font-heading:"Lora",serif;--font-body:"Open Sans",sans-serif;--font-script:"Dancing Script",cursive;--section-padding:100px 0;--container-padding:0 30px;--transition:all 0.3s ease}body{background-color:ivory;background-color:var(--ivory);color:#2c2c2c;color:var(--text-dark);font-family:Open Sans,sans-serif;font-family:var(--font-body);font-weight:400;line-height:1.7;overflow-x:hidden}html{scroll-behavior:smooth}h1,h2,h3,h4,h5,h6{color:#2c2c2c;color:var(--charcoal);font-family:Lora,serif;font-family:var(--font-heading);font-weight:600;line-height:1.3;margin-bottom:1.5rem}h1{font-size:4rem;font-weight:700;letter-spacing:-.02em}h2{font-size:3.2rem;letter-spacing:-.01em}h2,h3{font-weight:600}h3{font-size:2.4rem}h4{font-size:1.8rem}h4,h5{font-weight:500}h5{font-size:1.4rem}h6{font-size:1.2rem;font-weight:500}p{color:#4a4a4a;color:var(--text-light);font-size:1.125rem;line-height:1.7;margin-bottom:1.5rem}.script-font,p{font-weight:400}.script-font{color:#d4a574;color:var(--dusty-rose);font-family:Dancing Script,cursive;font-family:var(--font-script)}.btn{background:linear-gradient(135deg,#d4a574,#d4af37);background:linear-gradient(135deg,var(--dusty-rose),var(--gold));border:none;border-radius:50px;box-shadow:0 4px 15px #d4a5744d;color:#fff;color:var(--white);cursor:pointer;display:inline-block;font-family:Open Sans,sans-serif;font-family:var(--font-body);font-size:1rem;font-weight:600;padding:12px 30px;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.btn:hover{box-shadow:0 6px 20px #d4a57466;transform:translateY(-2px)}.btn-secondary{background:#0000;border:2px solid #d4a574;border:2px solid var(--dusty-rose);color:#d4a574;color:var(--dusty-rose)}.btn-secondary:hover{background:#d4a574;background:var(--dusty-rose);color:#fff;color:var(--white)}.container{margin:0 auto;max-width:1200px;padding:0 30px;padding:var(--container-padding)}.section{padding:100px 0;padding:var(--section-padding)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in-up{animation:fadeInUp .8s ease-out}.fade-in{animation:fadeIn 1s ease-out}@media (max-width:768px){h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.8rem}.section{padding:60px 0}.container{padding:0 15px}}@media (max-width:480px){h1{font-size:2rem}h2{font-size:1.8rem}h3{font-size:1.5rem}.section{padding:40px 0}.btn{font-size:.9rem;padding:10px 25px}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f5e6d3;background:var(--light-rose)}::-webkit-scrollbar-thumb{background:#d4a574;background:var(--dusty-rose);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b8860b;background:var(--dark-rose)}
/*# sourceMappingURL=main.b0d1f5c5.css.map*/