html{scroll-behavior:smooth}body{margin:0}#root{min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-warm:#f6f1e8;--surface-light:#fbf7ef;--surface-white:#fff;--border-warm:#e2d9c8;--text-dark:#1f2421;--text-muted:#8a8a80;--accent:#c8853f;--accent-hover:#a86b2c;--accent-tint:#f0e3d0;--charcoal:#2a2723}body{background-color:var(--bg-warm);color:var(--text-dark);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}.navbar{z-index:100;background-color:var(--bg-warm);border-bottom:1px solid var(--border-warm);position:sticky;top:0}.nav-content{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:1.5rem 3rem;display:flex}.nav-logo{color:var(--text-dark);letter-spacing:.05em;align-items:center;gap:.75rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:400;display:flex}.logo-icon{color:var(--accent);font-size:1.25rem}.nav-links{gap:3rem;display:flex}.nav-links a{color:var(--text-muted);letter-spacing:.02em;font-size:.95rem;font-weight:400;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--text-dark)}.hero{background-color:var(--bg-warm);align-items:center;min-height:100vh;padding:4rem 3rem 6rem;display:flex}.hero-content{grid-template-columns:1fr 1fr;align-items:center;gap:6rem;max-width:1400px;margin:0 auto;display:grid}.hero-text{flex-direction:column;gap:2rem;display:flex}.hero h1{letter-spacing:-.01em;color:var(--text-dark);font-family:DM Serif Display,serif;font-size:4rem;font-weight:400;line-height:1.15}.hero-subtitle{color:var(--text-muted);letter-spacing:.02em;font-size:1.1rem;font-weight:400}.btn-primary{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:fit-content;padding:.9rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{background-color:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #c8853f4d}.btn-hero{width:fit-content;color:var(--text-dark);border:1px solid var(--text-dark);letter-spacing:.02em;background-color:#0000;border-radius:30px;padding:.85rem 2.5rem;font-size:.95rem;font-weight:400;text-decoration:none;transition:all .3s;display:inline-block}.btn-hero:hover{background-color:var(--text-dark);color:var(--bg-warm)}.hero-image{border-radius:0;width:100%;height:600px;position:relative;overflow:hidden}.hero-image img{object-fit:cover;width:100%;height:100%;display:block}.btn-secondary{width:fit-content;color:var(--accent);border:2px solid var(--accent);background-color:#0000;border-radius:8px;padding:.9rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-secondary:hover{background-color:var(--accent);color:#fff;transform:translateY(-2px)}.hero-visual{position:relative}.browser-frame{background:var(--surface-white);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #1f24211f}.browser-bar{background:var(--surface-light);border-bottom:1px solid var(--border-warm);padding:.75rem 1rem}.traffic-lights{gap:.5rem;display:flex}.traffic-lights span{background-color:var(--border-warm);border-radius:50%;width:12px;height:12px}.traffic-lights span:first-child{background-color:#ff5f57}.traffic-lights span:nth-child(2){background-color:#ffbd2e}.traffic-lights span:nth-child(3){background-color:#28ca42}.browser-content img{width:100%;height:auto;display:block}.status-chip{background:var(--surface-white);color:var(--text-dark);white-space:nowrap;border-radius:24px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;position:absolute;bottom:-1rem;right:2rem;box-shadow:0 4px 16px #1f242126}.save-date{text-align:center;color:#fff;background:url(/assets/nikkah-Ch2hQVqp.webp?fit=crop) 50% 20%/cover no-repeat fixed;justify-content:center;align-items:center;min-height:70vh;padding:6rem 2rem;display:flex;position:relative}.save-date:before{content:"";background:#2a272399;position:absolute;inset:0}.save-date-content{z-index:1;max-width:800px;margin:0 auto;position:relative}.save-date h2{margin-bottom:2rem;font-family:DM Serif Display,serif;font-size:2.5rem;font-weight:700}.date-large{letter-spacing:.05em;margin-bottom:2rem;font-family:DM Serif Display,serif;font-size:5rem;font-weight:700}.date-details{justify-content:center;gap:4rem;margin-top:2rem;display:flex}.detail-item{flex-direction:column;gap:.5rem;display:flex}.detail-item strong{text-transform:uppercase;letter-spacing:.1em;opacity:.9;font-size:.9rem}.detail-item span{font-size:1.25rem;font-weight:500}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.schedule{background-color:var(--surface-white);align-items:center;min-height:100vh;padding:6rem 2rem;display:flex}.schedule h2{text-align:center;margin-bottom:4rem;font-family:DM Serif Display,serif;font-size:3rem;font-weight:700}.schedule h2 em{color:var(--accent);font-style:italic}.timeline{flex-direction:column;gap:3rem;max-width:700px;margin:0 auto;display:flex}.timeline-item{grid-template-columns:120px 1fr;align-items:start;gap:2rem;display:grid}.timeline-time{color:var(--accent);text-align:right;font-family:DM Serif Display,serif;font-size:2rem;font-weight:700}.timeline-content{background-color:var(--surface-light);border-left:4px solid var(--accent);border-radius:12px;padding:1.5rem}.timeline-content h3{margin-bottom:.5rem;font-family:DM Serif Display,serif;font-size:1.5rem;font-weight:600}.timeline-content p{color:var(--text-muted);font-size:.95rem}.gallery{background-color:var(--bg-warm);align-items:center;min-height:100vh;padding:6rem 2rem;display:flex;overflow:hidden}.gallery .container{width:100%}.gallery h2{text-align:center;width:100%;margin-bottom:1rem;font-family:DM Serif Display,serif;font-size:3rem;font-weight:700}.gallery h2 em{color:var(--accent);font-style:italic}.gallery-subtitle{text-align:center;color:var(--text-muted);width:100%;max-width:600px;margin-bottom:4rem;margin-left:auto;margin-right:auto;font-size:1.1rem}.carousel-wrapper{width:100%;position:relative}.carousel-arrow{color:#fff;cursor:pointer;z-index:10;-webkit-user-select:none;user-select:none;background:#c8853fe6;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:2rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 12px #0003}.carousel-arrow:hover{background:#a86b2c;transform:translateY(-50%)scale(1.1)}.carousel-arrow-left{left:20px}.carousel-arrow-right{right:20px}.carousel-container{cursor:grab;scrollbar-width:none;-ms-overflow-style:none;width:100%;padding:2rem 0;overflow:auto hidden}.carousel-container::-webkit-scrollbar{display:none}.carousel-container:active{cursor:grabbing}.carousel-track{gap:2rem;width:max-content;display:flex}.carousel-item{border-radius:16px;flex-shrink:0;width:350px;height:450px;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 8px 24px #1f242126}.carousel-item:hover{transform:translateY(-8px)scale(1.02);box-shadow:0 12px 32px #1f242140}.carousel-item img{object-fit:cover;width:100%;height:100%}.registry{background-color:var(--surface-white);text-align:center;align-items:center;min-height:50vh;padding:6rem 2rem;display:flex}.registry h2{margin-bottom:1.5rem;font-family:DM Serif Display,serif;font-size:3rem;font-weight:700}.registry h2 em{color:var(--accent);font-style:italic}.registry-text{max-width:600px;color:var(--text-muted);margin:0 auto 2rem;font-size:1.1rem;line-height:1.8}.rsvp{background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;align-items:center;min-height:100vh;padding:6rem 2rem;display:flex;position:relative}.rsvp:before{content:"";z-index:1;background:#1f2421b3;position:absolute;inset:0}.rsvp .container{z-index:2;max-width:1400px;position:relative}.rsvp-card{background:var(--charcoal);color:#fff;border:3px solid var(--accent);border-radius:16px;width:100%;max-width:1200px;margin:0 auto;padding:3rem;position:relative;box-shadow:0 8px 32px #1f242133}.most-loved-badge{background-color:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:.5rem 1.5rem;font-size:.85rem;font-weight:600;position:absolute;top:-1rem;left:50%;transform:translate(-50%)}.rsvp-card h2{text-align:center;margin-bottom:1rem;font-family:DM Serif Display,serif;font-size:2.5rem;font-weight:700}.rsvp-card>p{text-align:center;color:#fffc;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group label{margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{color:#fff;background-color:#ffffff1a;border:1px solid #fff3;border-radius:8px;width:100%;padding:.9rem;font-family:Inter,sans-serif;font-size:1rem;transition:border-color .2s}.form-group select option{background-color:var(--charcoal);color:#fff}.form-group input::placeholder,.form-group textarea::placeholder{color:#ffffff80}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical;min-height:200px}.form-checkbox{align-items:flex-end;display:flex}.checkbox-label{cursor:pointer;align-items:center;gap:.75rem;height:100%;padding:.9rem;font-weight:400;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--accent);flex-shrink:0}.checkbox-label span{font-size:1rem}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.modal-content{text-align:center;background:#fbf7ef;border-radius:20px;width:90%;max-width:450px;padding:3rem 2.5rem;animation:.3s slideIn;position:relative;box-shadow:0 20px 60px #0000004d}.modal-title{color:#1f2421;margin-bottom:1rem;font-family:DM Serif Display,serif;font-size:2rem}.modal-subtitle{color:#8a8a80;margin-bottom:2rem;font-size:1.1rem}.modal-qr{background:#fff;border-radius:12px;margin-bottom:2rem;padding:1.5rem;display:inline-block;box-shadow:0 4px 12px #0000001a}.modal-qr img{width:200px;height:200px;display:block}.modal-message{color:#1f2421;margin-bottom:2rem;font-size:1rem;line-height:1.6}.btn-modal-close{color:#fff;cursor:pointer;background:#c8853f;border:none;border-radius:8px;padding:.9rem 2.5rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-modal-close:hover{background:#a86b2c;transform:translateY(-2px);box-shadow:0 4px 12px #c8853f4d}.modal-success-icon{color:#fff;background:#4caf50;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;font-size:3rem;font-weight:700;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.modal-overlay.closing{animation:.3s forwards fadeOut}.modal-content.closing{animation:.3s forwards slideOut}.rsvp-card .btn-primary{width:100%;margin-top:1rem}.footer{background-color:var(--charcoal);color:#fff;padding:4rem 2rem 2rem}.footer-content{grid-template-columns:repeat(3,1fr);gap:3rem;margin-bottom:3rem;display:grid}.footer-section h3{color:var(--accent);margin-bottom:1rem;font-family:DM Serif Display,serif;font-size:1.25rem;font-weight:600}.footer-section p{color:#fffc;font-size:.95rem;line-height:1.8}.footer-links{flex-direction:column;gap:.75rem;display:flex}.footer-links a{color:#fffc;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}.footer-bottom{color:#fff9;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-top:2rem;font-size:.9rem;display:flex}.footer-legal{gap:2rem;display:flex}.footer-legal a{color:#fff9;text-decoration:none;transition:color .2s}.footer-legal a:hover{color:var(--accent)}@media (width<=968px){.hero-content{grid-template-columns:1fr;gap:3rem}.hero h1{font-size:2.5rem}.nav-content{padding:1.5rem 2rem}.nav-links{gap:1.5rem}.hero-image{height:400px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery h2{font-size:2.5rem}.gallery-subtitle{padding:0 1rem;font-size:1rem}.carousel-arrow{width:40px;height:40px;font-size:1.5rem}.carousel-arrow-left{left:10px}.carousel-arrow-right{right:10px}.carousel-item{width:280px;height:360px}.registry h2{font-size:2.5rem}.registry-text{padding:0 1rem;font-size:1rem}.footer-content{grid-template-columns:1fr;gap:2rem}.footer-bottom{text-align:center;flex-direction:column;gap:1rem}.form-row{grid-template-columns:1fr}.date-details{flex-direction:column;gap:1.5rem}.timeline-item{grid-template-columns:1fr;gap:.5rem}.timeline-time{text-align:left}}@media (width<=640px){.hero h1{font-size:2rem}.hero{padding:3rem 1.5rem 4rem}.hero-content{gap:2rem}.hero-image{height:350px}.date-large{font-size:3.5rem}.gallery-grid{grid-template-columns:1fr}.gallery h2{text-align:center;word-wrap:break-word;padding:0 1rem;font-size:1.75rem}.gallery-subtitle{text-align:center;padding:0 1.5rem;font-size:.95rem}.carousel-arrow{width:35px;height:35px;font-size:1.25rem}.carousel-arrow-left{left:5px}.carousel-arrow-right{right:5px}.carousel-item{width:250px;height:320px}.nav-content{padding:1rem 1.5rem}.nav-links{gap:1rem;font-size:.85rem}.schedule h2,.gallery h2,.registry h2{font-size:2rem}.registry-text{padding:0 1.5rem;font-size:.95rem}.rsvp-card{padding:2rem 1.5rem}}
