:root{--color-teal:teal;--color-dark-teal:#005050;--color-burgundy:#800020;--color-peach:#ffc9b8;--color-bg:#e8f6f5;--color-text:#333;--font-heading:"Playfair Display",serif;--font-body:"Lora",serif}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#e8f6f5;background-color:var(--color-bg);color:#333;color:var(--color-text);font-family:Lora,serif;font-family:var(--font-body);margin:0;padding:0}h1,h2,h3,h4,h5,h6{color:teal;color:var(--color-teal);font-family:Playfair Display,serif;font-family:var(--font-heading);font-weight:600;margin-top:0}a{text-decoration:none;transition:color .2s ease}a,a:hover{color:#005050;color:var(--color-dark-teal)}.section-container{margin:0 auto;max-width:1000px;padding:80px 20px}.section-title{font-size:2.5rem;margin-bottom:40px;text-align:center}.btn{background-color:teal;background-color:var(--color-teal);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-family:Lora,serif;font-family:var(--font-body);font-size:1.1rem;padding:12px 28px;text-align:center;transition:background-color .3s ease}.btn:hover{background-color:#005050;background-color:var(--color-dark-teal)}.btn.secondary{background-color:#800020;background-color:var(--color-burgundy)}.btn.secondary:hover{background-color:#600018}.App{text-align:center}.wedding-site{position:relative}.gatekeeper-container,.wedding-site{display:flex;flex-direction:column;min-height:100vh}.gatekeeper-container{align-items:center;background:linear-gradient(135deg,#0080801a 0,#ffc9b833 100%),var(--color-bg);justify-content:center;padding:20px}.gatekeeper-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000000d;max-width:500px;padding:60px 40px;text-align:center;width:100%}.gatekeeper-card h1{font-size:3rem;margin-bottom:10px}.gatekeeper-subtitle{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:30px}.gatekeeper-form{align-items:center;display:flex;flex-direction:column;gap:20px}.gatekeeper-input{border:1px solid #ddd;border-radius:4px;font-family:var(--font-body);font-size:1rem;max-width:300px;padding:15px;text-align:center;transition:border-color .3s ease;width:100%}.gatekeeper-input:focus{border-color:var(--color-teal);outline:none}.gatekeeper-input.error{border-color:var(--color-burgundy)}.gatekeeper-error{color:var(--color-dark-teal);font-size:.9rem;margin:0}.navbar{background-color:initial;left:0;padding:25px 0;position:fixed;top:0;transition:background-color .3s ease,padding .3s ease,box-shadow .3s ease;width:100%;z-index:1000}.navbar.scrolled{background-color:#fafafafa;box-shadow:0 2px 15px #0000000d;padding:15px 0}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 30px}.navbar-logo{color:#fff;font-family:var(--font-heading);font-size:1.8rem;font-weight:700;text-decoration:none;text-shadow:0 1px 4px #0006;transition:color .3s ease}.navbar.scrolled .navbar-logo{color:var(--color-teal);text-shadow:none}.navbar-links{display:flex;gap:35px}.navbar-links a{color:#fff;font-size:.9rem;font-weight:500;letter-spacing:1.5px;position:relative;text-shadow:0 1px 3px #0006;text-transform:uppercase}.navbar.scrolled .navbar-links a{color:var(--color-text);text-shadow:none}.navbar-links a:after{background-color:var(--color-peach);bottom:-5px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.navbar.scrolled .navbar-links a:after{background-color:var(--color-burgundy)}.navbar-links a:hover:after{width:100%}.navbar-mobile-icon{color:#fff;cursor:pointer;display:none}.navbar.scrolled .navbar-mobile-icon{color:var(--color-text)}@media (max-width:768px){.navbar-links{align-items:center;background-color:var(--color-bg);box-shadow:0 10px 15px #0000001a;flex-direction:column;gap:25px;left:0;opacity:0;padding:30px 0;position:absolute;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden;width:100%}.navbar-links.open{opacity:1;transform:translateY(0);visibility:visible}.navbar-links a{color:var(--color-text);font-size:1.1rem;text-shadow:none}.navbar-mobile-icon{display:block}}.hero-section{align-items:center;background-attachment:fixed;background-position:center 30%;background-size:cover;display:flex;height:100vh;justify-content:center;min-height:600px;position:relative;text-align:center}.hero-overlay{background:linear-gradient(180deg,#0000004d 0,#0009);bottom:0;left:0;position:absolute;right:0;top:0}.hero-content{animation:fadeIn 1.5s ease-out forwards;color:#fff;padding:0 20px;position:relative;z-index:1}.hero-content h1{color:#fff;font-size:5rem;letter-spacing:2px;margin-bottom:15px;text-shadow:0 2px 15px #0006}.hero-date{font-family:var(--font-heading);font-size:1.8rem;letter-spacing:3px;margin-bottom:10px;text-transform:uppercase}.hero-location{font-size:1.2rem;letter-spacing:1px;margin-bottom:50px;opacity:.9}.hero-btn{background-color:initial;border:2px solid #fff;font-size:1.1rem;letter-spacing:2px;padding:16px 45px;text-transform:uppercase}.hero-btn:hover{background-color:#fff;box-shadow:0 5px 15px #0003;color:var(--color-teal);transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.hero-content h1{font-size:3.5rem}.hero-date{font-size:1.4rem}.hero-section{background-attachment:scroll}}.schedule-wrapper{background-color:var(--color-bg);padding:0 20px}.schedule-section{background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #00000014;margin-top:-80px;padding:60px 40px;position:relative;z-index:10}.schedule-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:40px}.schedule-card{align-items:center;background:#fafafa;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 4px 15px #00000008;display:flex;flex-direction:column;padding:40px 30px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.schedule-card:hover{box-shadow:0 10px 25px #0000000f;transform:translateY(-5px)}.schedule-icon{align-items:center;background-color:#0080801a;border-radius:50%;color:var(--color-teal);display:flex;height:64px;justify-content:center;margin-bottom:20px;width:64px}.schedule-title{color:var(--color-text);font-size:1.6rem;margin-bottom:10px}.schedule-time{color:var(--color-dark-teal);font-size:1.2rem;font-weight:700;letter-spacing:1px;margin-bottom:15px}.schedule-desc{color:#666;font-size:1rem;line-height:1.6;margin:0}@media (max-width:900px){.schedule-grid{grid-template-columns:1fr;margin:40px auto 0;max-width:400px}}@media (max-width:600px){.schedule-section{padding:40px 20px}}.venue-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000000d;display:flex;overflow:hidden}.venue-image{flex:1.2 1;min-height:400px}.venue-image img{height:100%;object-fit:cover;width:100%}.venue-details{display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:50px}.venue-details h3{font-size:2.5rem;margin-bottom:15px}.address{align-items:center;color:var(--color-dark-teal);display:flex;font-size:1.1rem;font-weight:700;gap:10px;margin-bottom:25px}.description{color:#555;font-size:1.1rem;line-height:1.8;margin-bottom:30px}.dress-code{background:var(--color-bg);border-left:4px solid var(--color-teal);border-radius:0 8px 8px 0;padding:20px}.dress-code h4{color:var(--color-dark-teal);font-family:var(--font-body);font-size:1.2rem;margin-bottom:8px}.dress-code p{color:#666;line-height:1.5;margin:0}@media (max-width:768px){.venue-card{flex-direction:column}.venue-image{min-height:300px}.venue-details{padding:40px 25px}}.lodging-wrapper{background-color:var(--color-bg)}.lodging-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 1fr}.info-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000000d;flex-direction:column;padding:50px 40px;text-align:center}.icon-wrapper,.info-card{align-items:center;display:flex}.icon-wrapper{background-color:#00808014;border-radius:50%;color:var(--color-teal);height:80px;justify-content:center;margin-bottom:20px;width:80px}.info-card h3{font-size:2rem;margin-bottom:15px}.hotel-name{color:var(--color-dark-teal);font-size:1.2rem;font-weight:700;line-height:1.5;margin-bottom:10px}.hotel-contact{color:#555;font-size:1rem;line-height:1.5;margin-bottom:20px}.hotel-contact p{margin:5px 0}.reference-code-container{align-items:center;background:var(--color-bg);border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-top:20px;max-width:250px;padding:15px 25px;width:100%}.reference-code-container span{color:#666;font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.code-inline{align-items:center;display:flex;gap:10px}.code-inline strong{color:var(--color-teal);font-size:1.8rem;letter-spacing:2px}.copy-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--color-teal);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background-color .2s ease}.copy-btn:hover{background-color:#0080801a}.mt-4{margin-top:25px}@media (max-width:768px){.lodging-grid{grid-template-columns:1fr}}.transit-card{align-items:center;display:flex;flex-direction:row;gap:40px;margin-top:40px;padding:40px 50px;text-align:left}.transit-card .icon-wrapper{flex-shrink:0;height:100px;margin-bottom:0;width:100px}.transit-content{flex:1 1}.transit-links{display:flex;gap:15px;margin-top:25px}@media (max-width:900px){.transit-card{flex-direction:column;gap:20px;padding:40px 30px;text-align:center}.transit-card .icon-wrapper{margin-bottom:10px}.transit-links{flex-wrap:wrap;justify-content:center}}.registry-section{text-align:center}.registry-content{background:linear-gradient(135deg,#ffc9b826,#fff0),#fff;border-radius:12px;box-shadow:0 10px 30px #0000000d;margin:0 auto;max-width:800px;padding:60px 40px}.registry-icon{color:var(--color-peach);margin-bottom:20px}.registry-text{color:#555;font-size:1.2rem;line-height:1.8;margin-bottom:35px}.registry-links{display:flex;gap:20px;justify-content:center}@media (max-width:600px){.registry-content{padding:40px 20px}}.rsvp-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000000d;margin:0 auto;max-width:700px;padding:50px}.rsvp-subtitle{color:#666;font-size:1.1rem;font-style:italic;margin-bottom:30px;text-align:center}.rsvp-form{gap:20px}.form-group,.rsvp-form{display:flex;flex-direction:column}.form-group{flex:1 1;gap:8px}.guests-list{display:flex;flex-direction:column;gap:12px}.guests-list label{margin-bottom:3px}.form-group label,.guests-list label{color:var(--color-dark-teal);font-size:.95rem;font-weight:600}.guest-input-row{align-items:center;display:flex;gap:10px}.form-group input,.form-group select,.form-group textarea,.guest-input-row input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-family:var(--font-body);font-size:1rem;padding:12px 15px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.guest-input-row input:focus{border-color:var(--color-teal);outline:none}.btn-remove-guest{align-items:center;background:none;border:none;border-radius:4px;color:var(--color-burgundy);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background-color .2s}.btn-remove-guest:hover{background-color:#8000201a}.btn-add-guest{align-items:center;background:none;border:2px dashed var(--color-teal);border-radius:4px;color:var(--color-teal);cursor:pointer;display:flex;font-family:var(--font-body);font-weight:600;gap:5px;justify-content:center;padding:12px;transition:all .2s ease}.btn-add-guest:hover{background-color:#0080800d}.btn-submit{font-size:1.2rem;margin-top:10px;padding:15px;width:100%}.rsvp-success{padding:40px 0;text-align:center}.rsvp-success h3{color:var(--color-teal);font-size:2.5rem;margin-bottom:15px}.rsvp-success p{color:#555;font-size:1.2rem}@media (max-width:600px){.rsvp-card{padding:30px 20px}}
/*# sourceMappingURL=main.d40737a4.css.map*/