:root{--color-bg:#000a14;--color-primary:#00145c;--color-primary-light:#1a3a8f;--color-gold:#d6b970;--color-gold-dim:#8a7645;--color-gold-glow:hsla(43,55%,64%,.4);--color-white:#fff;--color-text-muted:#94a3b8;--glass-bg:hsla(0,0%,100%,.03);--glass-border:hsla(0,0%,100%,.08);--radius-lg:24px;--radius-md:16px;--radius-sm:8px;--font-main:"Poppins",sans-serif;--transition:all 0.4s cubic-bezier(0.25,0.8,0.25,1);--header-height:80px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:#000d22!important;font-family:var(--font-main);line-height:1.6;overflow-x:hidden}body,h2,h3,h4{color:var(--color-white)!important}.container{margin:0 auto;max-width:1100px;padding:0 24px}.text-gold{color:var(--color-gold)}.text-center{text-align:center}h1,h2,h3,h4{font-weight:600;letter-spacing:-.02em}h2{font-size:clamp(2rem,4vw,3rem)}h2,p{margin-bottom:16px}p{color:var(--color-text-muted)!important;font-weight:300}.btn{align-items:center;border:none;border-radius:100px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:10px;justify-content:center;padding:16px 32px;text-decoration:none;transition:var(--transition)}.btn-primary{background:var(--color-gold);box-shadow:0 4px 20px var(--color-gold-glow);color:#000}.btn-primary:hover{background:#e5c77d;box-shadow:0 10px 30px var(--color-gold-glow);transform:scale(1.05)}.btn-outline{background:transparent;border:1px solid var(--glass-border);color:var(--color-white)}.btn-outline:hover{border-color:var(--color-gold);color:var(--color-gold)}.fade-in-up{animation:fadeInUp 1s ease forwards;opacity:0;transform:translateY(30px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.section{opacity:0;padding:100px 0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.section.visible{opacity:1;transform:translateY(0)}#login-gate{align-items:center;background:var(--color-bg);display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;transition:opacity .6s ease,visibility .6s ease;width:100%;z-index:9999}#login-gate.hidden{opacity:0;pointer-events:none;visibility:hidden}.login-card{backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 20px 50px rgba(0,0,0,.5);max-width:400px;padding:40px;text-align:center;width:90%}.login-logo{margin-bottom:30px;width:150px}.input-modern{background:hsla(0,0%,100%,.05);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-white);font-family:var(--font-main);font-size:1.1rem;margin-bottom:20px;outline:none;padding:16px;text-align:center;transition:border-color .3s;width:100%}.input-modern:focus{border-color:var(--color-gold)}header{backdrop-filter:blur(15px);background:rgba(0,10,20,.8);border-bottom:1px solid var(--glass-border);height:var(--header-height);left:0;position:fixed;top:0;transition:var(--transition);width:100%;z-index:1000}.nav-container{align-items:center;display:flex;height:100%;justify-content:space-between}.nav-logo img{filter:brightness(0) invert(1);height:40px}.nav-menu{display:flex;gap:30px}.nav-link{color:var(--color-text-muted);font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s}.nav-link:hover{color:var(--color-white)}.menu-toggle{cursor:pointer;display:none;font-size:1.5rem}@media (max-width:768px){.nav-menu{display:none}.menu-toggle{display:block}}#hero{align-items:center;display:flex;height:100vh;justify-content:center;overflow:hidden;position:relative;text-align:center}#hero-canvas{height:100%;left:0;opacity:.6;position:absolute;top:0;width:100%;z-index:1}.hero-content{max-width:800px;padding:0 20px;position:relative;z-index:2}.hero-logo{filter:drop-shadow(0 0 20px rgba(214,185,112,.2));margin-bottom:30px;max-width:40vw;width:200px}.hero-title{background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1;margin-bottom:20px;-webkit-text-fill-color:transparent}.scroll-indicator{animation:bounce 2s infinite;bottom:30px;color:var(--color-text-muted);cursor:pointer;font-size:2rem;left:50%;position:absolute;transform:translateX(-50%);z-index:2}@keyframes bounce{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.grid-3{display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:40px}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;height:100%;padding:30px;transition:var(--transition)}.card:hover{background:hsla(0,0%,100%,.05);transform:translateY(-5px)}.card-icon{color:var(--color-gold);font-size:2.5rem;margin-bottom:20px}.hotel-section{background:linear-gradient(180deg,hsla(0,0%,100%,.02),transparent);border:1px solid var(--glass-border);border-radius:var(--radius-lg);display:grid;grid-template-columns:1fr;overflow:hidden}@media(min-width:992px){.hotel-section{grid-template-columns:1fr 1fr}}.hotel-content{padding:50px}.hotel-image{background:url(https://lh3.googleusercontent.com/p/AF1QipMLtU9C9-ul77rrAIXIalvPEMlAEWy-0zqj2wH7=s1360-w1360-h1020-rw) 50%/cover no-repeat;background-color:#1a1a1a;min-height:350px;position:relative}.hotel-image:after{background:linear-gradient(to top,var(--color-bg),transparent);content:"";inset:0;position:absolute}.code-display{align-items:center;background:rgba(0,0,0,.3);border:1px solid var(--color-gold-dim);border-radius:var(--radius-md);color:var(--color-gold);cursor:pointer;display:inline-flex;font-family:monospace;font-size:1.2rem;gap:15px;margin-top:10px;padding:15px 25px;transition:all .2s}.code-display:active{transform:scale(.98)}.benefit-banner{background:linear-gradient(135deg,hsla(43,55%,64%,.1),transparent);border:1px solid hsla(43,55%,64%,.3);border-radius:var(--radius-lg);overflow:hidden;padding:60px 20px;position:relative;text-align:center}.benefit-amount{color:var(--color-gold);font-size:clamp(3rem,6vw,5rem);font-weight:700;line-height:1;margin:20px 0;text-shadow:0 0 30px hsla(43,55%,64%,.3)}.step-list{counter-reset:step;list-style:none}.step-item{margin-bottom:40px;padding-left:60px;position:relative}.step-item:before{align-items:center;background:var(--color-primary);border:1px solid var(--glass-border);border-radius:50%;color:var(--color-gold);content:counter(step);counter-increment:step;display:flex;font-weight:700;height:40px;justify-content:center;left:0;position:absolute;top:0;width:40px}.step-item:after{background:var(--glass-border);bottom:-30px;content:"";left:20px;position:absolute;top:50px;width:1px}.step-item:last-child:after{display:none}.rsvp-wrapper{margin:0 auto;max-width:650px;position:relative}.rsvp-wrapper:before{background:radial-gradient(circle at 50% 0,hsla(43,55%,64%,.15),transparent 70%);border-radius:40px;bottom:-20px;content:"";left:-20px;position:absolute;right:-20px;top:-20px;z-index:0}.rsvp-card{backdrop-filter:blur(20px);background:rgba(10,15,25,.7);border:1px solid hsla(0,0%,100%,.1);border-radius:30px;border-top-color:hsla(0,0%,100%,.2);box-shadow:0 20px 60px rgba(0,0,0,.5);overflow:hidden;padding:60px;position:relative;z-index:1}.rsvp-watermark{color:hsla(0,0%,100%,.02);font-family:Poppins,sans-serif;font-size:200px;font-weight:800;pointer-events:none;position:absolute;right:-50px;top:-50px;z-index:-1}.form-floating-group{margin-bottom:35px;position:relative}.form-input{background:transparent;border:none;border-bottom:1px solid hsla(0,0%,100%,.2);border-radius:0;color:var(--color-white);font-family:var(--font-main);font-size:1.1rem;outline:none;padding:10px 0;transition:all .3s ease;width:100%}.form-input:focus{border-bottom-color:var(--color-gold);box-shadow:0 1px 0 0 var(--color-gold)}.form-input[readonly]{color:var(--color-gold);cursor:not-allowed;font-weight:600;opacity:.7}.form-label{color:var(--color-text-muted);font-size:1rem;left:0;pointer-events:none;position:absolute;top:10px;transition:all .3s ease}.form-input:focus~.form-label,.form-input:not(:placeholder-shown)~.form-label{color:var(--color-gold);font-size:.85rem;top:-20px}.radio-group{display:flex;gap:30px;justify-content:center;margin-bottom:35px}.radio-label{align-items:center;cursor:pointer;display:flex;font-size:1.1rem;gap:10px}.radio-label input{display:none}.radio-custom{align-items:center;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;display:flex;height:24px;justify-content:center;transition:all .2s;width:24px}.radio-dot{background:var(--color-gold);border-radius:50%;height:12px;transform:scale(0);transition:transform .2s;width:12px}.radio-label input:checked+.radio-custom{border-color:var(--color-gold)}.radio-label input:checked+.radio-custom .radio-dot{transform:scale(1)}.checkbox-group{align-items:flex-start;cursor:pointer;display:flex;gap:15px;margin-bottom:25px}.custom-checkbox{align-items:center;border:1px solid hsla(0,0%,100%,.3);border-radius:6px;display:flex;flex-shrink:0;height:22px;justify-content:center;margin-top:2px;transition:all .2s;width:22px}.checkbox-group input:checked+.custom-checkbox{background:var(--color-gold);border-color:var(--color-gold);color:#000}.checkbox-group input{display:none}#conditional-fields-yes{display:none;opacity:0;transform:translateY(-10px);transition:all .4s}#conditional-fields-yes.active{display:block;opacity:1;transform:translateY(0)}.form-grid-2{display:grid;gap:30px;grid-template-columns:1fr 1fr}@media (max-width:600px){.rsvp-card{padding:30px 20px}.form-grid-2{grid-template-columns:1fr}}.accordion-item{border-bottom:1px solid var(--glass-border);margin-bottom:10px}.accordion-header{align-items:center;background:none;border:none;color:var(--color-white);cursor:pointer;display:flex;font-family:var(--font-main);font-size:1.1rem;justify-content:space-between;padding:20px 0;text-align:left;width:100%}.accordion-content{color:var(--color-text-muted);max-height:0;overflow:hidden;transition:max-height .3s ease-out}.accordion-content.active{max-height:200px;padding-bottom:20px}.active .ph-caret-down{transform:rotate(180deg)}#floating-status{align-items:center;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.9);border-radius:50px;bottom:30px;box-shadow:0 10px 30px rgba(0,0,0,.3);color:#000;cursor:pointer;display:flex;font-weight:600;gap:10px;opacity:0;padding:15px 30px;position:fixed;right:30px;transform:translateY(100px);transition:var(--transition);z-index:900}#floating-status.visible{opacity:1;transform:translateY(0)}#floating-status:hover{transform:translateY(-5px)}.status-dot{background:#ef4444;border-radius:50%;height:10px;width:10px}#floating-status.confirmed .status-dot{background:#10b981}footer{border-top:1px solid var(--glass-border);font-size:.9rem;margin-top:80px;padding:40px 0;text-align:center}