:root{--color-white:#ffffff;--color-blush:#f8d7da;--color-blush-light:#fdf0f1;--color-gold:#c9a96a;--color-gold-dark:#a8883f;--color-gold-light:#e8d5b0;--color-ivory:#fdfaf7;--color-text:#3a2e2e;--color-text-muted:#7a6a6a;--color-border:#e8ddd5;--font-heading:"Playfair Display",Georgia,serif;--font-body:"Poppins",Arial,sans-serif;--transition:all 0.35s cubic-bezier(0.4,0,0.2,1);--shadow-soft:0 8px 32px rgba(58,46,46,0.08);--shadow-card:0 4px 20px rgba(58,46,46,0.10);--radius:16px;--radius-sm:8px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-ivory);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.25}a:not(.btn-gold):not(.btn-outline-gold){color:var(--color-gold);text-decoration:none;transition:var(--transition)}a:not(.btn-gold):not(.btn-outline-gold):hover{color:var(--color-gold-dark)}img{max-width:100%;height:auto;display:block}section{overflow:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-ivory)}::-webkit-scrollbar-thumb{background:var(--color-gold-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}::selection{background:var(--color-blush);color:var(--color-text)}[data-theme=home1]{--color-accent:#c9a96a;--color-accent-dark:#8a6e2e;--color-accent-light:#e8d5b0;--color-primary-bg:#f8d7da;--color-primary-light:#fdf0f1;--color-ivory:#fdfaf7;--color-white:#ffffff;--color-text:#3a2e2e;--color-text-muted:#7a6a6a;--color-border:#f0d5d8;--color-blush:#f8d7da;--color-blush-light:#fdf0f1;--color-gold:#c9a96a;--color-gold-dark:#8a6e2e;--color-gold-light:#e8d5b0;--btn-bg-start:#c9a96a;--btn-bg-end:#8a6e2e;--btn-text:#ffffff;--shadow-soft:0 8px 32px rgba(196,120,130,0.12);--shadow-card:0 4px 20px rgba(196,120,130,0.10)}[data-theme=home2]{--color-accent:#d4a843;--color-accent-dark:#8a6515;--color-accent-light:#f0d896;--color-primary-bg:#1a0f0f;--color-primary-light:#241515;--color-ivory:#f9f4ec;--color-white:#ffffff;--color-text:#2a1e1e;--color-text-muted:#6a5a4a;--color-border:#e2d5bf;--color-blush:#f5e8cc;--color-blush-light:#faf4e8;--color-gold:#d4a843;--color-gold-dark:#8a6515;--color-gold-light:#f0d896;--btn-bg-start:#d4a843;--btn-bg-end:#8a6515;--btn-text:#ffffff;--shadow-soft:0 8px 32px rgba(10,5,5,0.20);--shadow-card:0 4px 20px rgba(10,5,5,0.15)}[data-theme=home3]{--color-accent:#5a7a30;--color-accent-dark:#3d5a1e;--color-accent-light:#b8d48a;--color-primary-bg:#eef4e6;--color-primary-light:#f5f9f0;--color-ivory:#f9f6ef;--color-white:#ffffff;--color-text:#2a3a1e;--color-text-muted:#5a6a4a;--color-border:#ccdcb0;--color-blush:#eef4e6;--color-blush-light:#f5f9f0;--color-gold:#5a7a30;--color-gold-dark:#3d5a1e;--color-gold-light:#b8d48a;--btn-bg-start:#5a7a30;--btn-bg-end:#3d5a1e;--btn-text:#ffffff;--shadow-soft:0 8px 32px rgba(30,60,20,0.10);--shadow-card:0 4px 20px rgba(30,60,20,0.08)}[data-theme=home4]{--color-accent:#924545;--color-accent-dark:#6e2e2e;--color-accent-light:#daa8a8;--color-primary-bg:#f5f0eb;--color-primary-light:#faf7f4;--color-ivory:#faf7f4;--color-white:#ffffff;--color-text:#1a1212;--color-text-muted:#6a5858;--color-border:#e0d4cc;--color-blush:#f0e0dc;--color-blush-light:#f8f0ee;--color-gold:#924545;--color-gold-dark:#6e2e2e;--color-gold-light:#daa8a8;--btn-bg-start:#924545;--btn-bg-end:#6e2e2e;--btn-text:#ffffff;--shadow-soft:0 8px 32px rgba(26,18,18,0.10);--shadow-card:0 4px 20px rgba(26,18,18,0.08)}[data-theme=home5]{--color-accent:#9a3f60;--color-accent-dark:#72224a;--color-accent-light:#e8a8bc;--color-primary-bg:#fce8ef;--color-primary-light:#fef4f7;--color-ivory:#fef8fa;--color-white:#ffffff;--color-text:#3a1e28;--color-text-muted:#7a5868;--color-border:#f0c8d8;--color-blush:#fce8ef;--color-blush-light:#fef4f7;--color-gold:#9a3f60;--color-gold-dark:#72224a;--color-gold-light:#e8a8bc;--btn-bg-start:#9a3f60;--btn-bg-end:#72224a;--btn-text:#ffffff;--shadow-soft:0 8px 32px rgba(160,50,80,0.12);--shadow-card:0 4px 20px rgba(160,50,80,0.09)}[data-theme]{--color-gold:var(--color-accent);--color-gold-dark:var(--color-accent-dark);--color-gold-light:var(--color-accent-light)}[data-theme] .btn-gold,[data-theme] a.btn-gold,[data-theme] button.btn-gold{background:linear-gradient(135deg,var(--btn-bg-start,var(--color-gold)) 0,var(--btn-bg-end,var(--color-gold-dark)) 100%)!important;color:var(--btn-text,#ffffff)!important;text-shadow:0 1px 4px rgba(0,0,0,.4)!important;font-weight:600!important}[data-theme] .btn-gold:hover,[data-theme] a.btn-gold:hover,[data-theme] button.btn-gold:hover{background:linear-gradient(135deg,var(--btn-bg-end,var(--color-gold-dark)) 0,var(--btn-bg-start,var(--color-gold)) 100%)!important;color:var(--btn-text,#ffffff)!important}[data-theme] .btn-outline-gold,[data-theme] a.btn-outline-gold{color:var(--color-gold-dark)!important;border-color:var(--color-gold-dark)!important;font-weight:600}[data-theme] .btn-outline-gold:hover,[data-theme] a.btn-outline-gold:hover{background:var(--color-gold-dark)!important;color:#ffffff!important;border-color:var(--color-gold-dark)!important;text-shadow:0 1px 3px rgba(0,0,0,.3)}[data-theme=home3] a,[data-theme=home4] a,[data-theme=home5] a{color:var(--color-gold-dark)}.section-padding{padding:100px 0}.section-padding-sm{padding:60px 0}.section-title{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);color:var(--color-text);margin-bottom:.5rem}.section-subtitle{font-family:var(--font-body);font-size:1rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem}.gold-divider{display:flex;align-items:center;gap:12px;justify-content:center;margin:1.25rem 0 2.5rem}.gold-divider span{display:block;height:1px;width:60px}.gold-divider i{font-size:1rem}.btn-gold{background:linear-gradient(135deg,var(--color-gold) 0,var(--color-gold-dark) 100%);border:none;padding:14px 36px;font-family:var(--font-body);font-size:.875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border-radius:40px;cursor:pointer;transition:var(--transition);box-shadow:0 4px 16px color-mix(in srgb,var(--color-gold) 35%,transparent);display:inline-block;text-shadow:0 1px 3px rgba(0,0,0,.35)}.btn-gold,.btn-gold:hover{color:#ffffff!important;text-decoration:none}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--color-gold) 50%,transparent);background:linear-gradient(135deg,var(--color-gold-dark) 0,var(--color-gold) 100%)}.btn-outline-gold{background:transparent;color:var(--color-gold);border:1.5px solid var(--color-gold);padding:12px 32px;font-family:var(--font-body);font-size:.875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border-radius:40px;cursor:pointer;transition:var(--transition);display:inline-block}.btn-outline-gold:hover{background:var(--color-gold);color:#fff;transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,var(--color-gold) 35%,transparent)}.wedding-navbar{position:fixed;top:0;width:100%;z-index:1050;padding:20px 0;transition:var(--transition);background:transparent}.wedding-navbar.scrolled{background:color-mix(in srgb,var(--color-ivory) 97%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:12px 0;box-shadow:0 2px 20px rgba(58,46,46,.08)}.navbar-logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-white)!important;letter-spacing:.04em;transition:var(--transition)}.wedding-navbar.scrolled .navbar-logo{color:var(--color-text)!important}.navbar-nav .nav-link{font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9)!important;padding:8px 14px!important;transition:var(--transition);position:relative}.navbar-nav .nav-link:after{content:"";position:absolute;bottom:2px;left:14px;right:14px;height:1px;background:var(--color-gold);transform:scaleX(0);transition:var(--transition)}.navbar-nav .nav-link:hover:after{transform:scaleX(1)}.navbar-nav .nav-link:hover{color:var(--color-gold)!important}.wedding-navbar.scrolled .navbar-nav .nav-link{color:var(--color-text-muted)!important}.wedding-navbar.scrolled .navbar-nav .nav-link:hover{color:var(--color-gold)!important}.navbar-toggler{border:1px solid rgba(255,255,255,.4);padding:6px 10px}.wedding-navbar.scrolled .navbar-toggler{border-color:var(--color-border)}.navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.wedding-navbar.scrolled .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(58,46,46,0.8)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(180deg,rgba(30,20,20,.55) 0,rgba(30,20,20,.35) 60%,rgba(30,20,20,.6)),url(https://images.unsplash.com/photo-1519741497674-611481863552?w=1800&q=80) 50%/cover no-repeat;overflow:hidden}.hero-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(201,169,106,.1) 0,transparent 70%);pointer-events:none}.hero-content{position:relative;z-index:2;text-align:center;padding:0 20px}.hero-pre-title{font-family:var(--font-body);font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-gold-light);margin-bottom:1.25rem;display:block}.hero-names{font-family:var(--font-heading);font-size:clamp(3.5rem,9vw,7.5rem);font-weight:700;color:#fff;line-height:1;margin-bottom:.25rem;text-shadow:0 4px 32px rgba(0,0,0,.25)}.hero-ampersand{color:var(--color-gold);font-style:italic;display:block;font-size:clamp(2rem,5vw,4rem);margin:.15em 0}.hero-date{font-family:var(--font-body);font-size:1rem;letter-spacing:.25em;color:rgba(255,255,255,.85);text-transform:uppercase;margin:1.5rem 0 2.5rem}.countdown-wrapper{display:flex;gap:2rem;justify-content:center;margin-bottom:3rem;flex-wrap:wrap}.countdown-item{text-align:center}.countdown-number{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:700;color:#fff;line-height:1;display:block;min-width:60px}.countdown-label{font-family:var(--font-body);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold-light);margin-top:4px;display:block}.countdown-separator{font-family:var(--font-heading);font-size:2rem;color:var(--color-gold);align-self:center;margin-top:-12px;opacity:.6}.scroll-indicator{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;animation:floatBounce 2s ease-in-out infinite}.scroll-indicator span{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6)}.scroll-indicator i{color:rgba(255,255,255,.6);font-size:1rem}@keyframes floatBounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}.hero-petal{position:absolute;pointer-events:none;opacity:.12}.hero-petal.top-left{top:60px;left:40px;font-size:5rem;color:#fff;transform:rotate(-30deg)}.hero-petal.top-right{top:80px;right:60px;font-size:4rem;color:var(--color-gold-light);transform:rotate(20deg)}.hero-petal.bottom-left{bottom:100px;left:80px;font-size:3.5rem;color:#fff;transform:rotate(15deg)}.hero-petal.bottom-right{bottom:120px;right:50px;font-size:4.5rem;color:var(--color-gold-light);transform:rotate(-20deg)}.about-section{background:var(--color-white);position:relative}.about-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--color-gold),transparent)}.couple-card{background:var(--color-ivory);border-radius:var(--radius);padding:2.5rem 2rem;text-align:center;border:1px solid var(--color-border);transition:var(--transition);position:relative;overflow:hidden}.couple-card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;transform:scaleX(0);transition:var(--transition)}.couple-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-soft)}.couple-card:hover:before{transform:scaleX(1)}.couple-photo-wrapper{width:180px;height:180px;margin:0 auto 1.5rem;position:relative}.couple-photo-wrapper:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--color-gold-light);transition:var(--transition)}.couple-card:hover .couple-photo-wrapper:before{inset:-8px}.couple-photo{width:100%;height:100%;border-radius:50%;object-fit:cover}.couple-name{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--color-text);margin-bottom:.25rem}.couple-role{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold);margin-bottom:1rem}.couple-bio{font-size:.9rem;color:var(--color-text-muted);line-height:1.8}.heart-divider{display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--color-gold);margin:2rem 0}.love-story-section{background:var(--color-ivory);position:relative}.timeline{position:relative;padding:2rem 0}.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;transform:translateX(-50%)}.timeline-item{display:flex;gap:2rem;margin-bottom:4rem;position:relative;align-items:center}.timeline-item:last-child{margin-bottom:0}.timeline-item.left{flex-direction:row}.timeline-item.right{flex-direction:row-reverse}.timeline-content{flex:1 1;background:var(--color-white);border-radius:var(--radius);padding:2rem;border:1px solid var(--color-border);box-shadow:var(--shadow-card);transition:var(--transition)}.timeline-content:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft)}.timeline-image-wrapper{flex:1 1;border-radius:var(--radius);overflow:hidden;height:260px;box-shadow:var(--shadow-card)}.timeline-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.timeline-image-wrapper:hover img{transform:scale(1.05)}.timeline-dot{position:absolute;left:50%;transform:translateX(-50%);width:44px;height:44px;background:var(--color-white);border:2px solid var(--color-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;font-size:1rem;box-shadow:0 0 0 6px rgba(201,169,106,.12)}.timeline-date{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold);margin-bottom:.5rem}.timeline-title{font-family:var(--font-heading);font-size:1.4rem;margin-bottom:.75rem}.timeline-text{font-size:.9rem;color:var(--color-text-muted);line-height:1.8}.details-section{background:var(--color-white);position:relative}.details-section:after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c9a96a' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none;z-index:0}.details-card{position:relative;z-index:1;background:var(--color-ivory);border-radius:var(--radius);padding:2.5rem;text-align:center;border:1px solid var(--color-border);transition:var(--transition);overflow:hidden}.details-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft)}.details-card-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-size:1.4rem}.details-card-type{font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:var(--color-gold);margin-bottom:.5rem}.details-card-title{font-family:var(--font-heading);font-size:1.5rem;margin-bottom:1.25rem}.details-card-info p{font-size:.9rem;color:var(--color-text-muted);margin-bottom:.4rem;display:flex;align-items:center;gap:8px;justify-content:center}.details-card-info i{color:var(--color-gold);font-size:.85rem}.map-wrapper{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card);margin-top:2rem;height:300px}.map-wrapper iframe{width:100%;height:100%;border:0}.party-section{background:var(--color-ivory)}.party-card{background:var(--color-white);border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);text-align:center}.party-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-soft)}.party-photo-wrapper{overflow:hidden;height:250px}.party-photo-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.party-card:hover .party-photo-wrapper img{transform:scale(1.08)}.party-card-body{padding:1.25rem}.party-card-name{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:.25rem}.party-card-role{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-gold)}.party-tab-btn{background:transparent;border:1.5px solid var(--color-border);color:var(--color-text-muted);padding:10px 28px;border-radius:30px;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition);font-family:var(--font-body)}.party-tab-btn.active,.party-tab-btn:hover{color:#fff}.gallery-section{background:var(--color-white)}.gallery-grid{column-count:3;column-gap:16px}@media (max-width:768px){.gallery-grid{column-count:2}}@media (max-width:480px){.gallery-grid{column-count:1}}.gallery-item{page-break-inside:avoid;break-inside:avoid;margin-bottom:16px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;position:relative}.gallery-item img{width:100%;display:block;transition:transform .45s ease}.gallery-item:hover img{transform:scale(1.06)}.gallery-overlay{position:absolute;inset:0;background:rgba(58,46,46,.4);opacity:0;transition:var(--transition);display:flex;align-items:center;justify-content:center}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay i{color:#fff;font-size:1.5rem}.lightbox-overlay{position:fixed;inset:0;background:rgba(10,8,8,.92);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.lightbox-img{max-width:90vw;max-height:85vh;border-radius:var(--radius-sm);box-shadow:0 20px 80px rgba(0,0,0,.6)}.lightbox-close{position:absolute;top:20px;right:20px;background:rgba(255,255,255,.1);border:none;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:var(--transition);display:flex;align-items:center;justify-content:center}.lightbox-close:hover{background:var(--color-gold)}.registry-section{background:var(--color-ivory)}.registry-card{background:var(--color-white);border-radius:var(--radius);padding:2rem;border:1px solid var(--color-border);transition:var(--transition);height:100%}.registry-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft)}.registry-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.25rem}.registry-name{font-family:var(--font-heading);font-size:1.2rem;margin-bottom:.5rem}.registry-desc{font-size:.88rem;color:var(--color-text-muted);margin-bottom:1.25rem}.registry-progress-bar{height:6px;background:var(--color-blush);border-radius:4px;overflow:hidden;margin-bottom:.4rem}.registry-progress-fill{height:100%;border-radius:4px;width:0;transition:width 1.5s ease}.registry-amounts{display:flex;justify-content:space-between;font-size:.78rem;color:var(--color-text-muted);margin-bottom:1.25rem}.registry-raised{font-weight:600}.rsvp-section{background:linear-gradient(135deg,rgba(248,215,218,.4) 0,rgba(253,250,247,1) 50%,rgba(201,169,106,.12) 100%),var(--color-ivory);position:relative}.rsvp-card{background:var(--color-white);border-radius:var(--radius);padding:3rem;box-shadow:var(--shadow-soft);border:1px solid var(--color-border);max-width:680px;margin:0 auto}.form-label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-weight:500;margin-bottom:.5rem}.form-control,.form-select{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 16px;font-family:var(--font-body);font-size:.9rem;color:var(--color-text);background:var(--color-ivory);transition:var(--transition);outline:none}.form-control:focus,.form-select:focus{box-shadow:0 0 0 3px rgba(201,169,106,.12);background:var(--color-white)}.rsvp-radio-group{display:flex;gap:1rem}.rsvp-radio-label{flex:1 1;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 16px;text-align:center;cursor:pointer;font-size:.9rem;color:var(--color-text-muted);transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:8px}.rsvp-radio-label.selected,.rsvp-radio-label:has(input:checked){border-color:var(--color-gold);background:rgba(201,169,106,.08);color:var(--color-gold-dark);font-weight:500}.rsvp-radio-label input{display:none}.rsvp-radio-input-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;pointer-events:none!important}.form-success{text-align:center;padding:2rem}.form-success i{font-size:3rem;color:var(--color-gold);margin-bottom:1rem}.form-success h3{font-family:var(--font-heading);font-size:1.75rem;margin-bottom:.5rem}.form-success p{color:var(--color-text-muted)}.blog-section{background:var(--color-white)}.blog-card{background:var(--color-ivory);border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);height:100%}.blog-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-soft)}.blog-image-wrapper{overflow:hidden;height:220px}.blog-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.blog-card:hover .blog-image-wrapper img{transform:scale(1.06)}.blog-card-body{padding:1.5rem}.blog-category{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.5rem}.blog-title{font-family:var(--font-heading);font-size:1.2rem;margin-bottom:.75rem;line-height:1.4}.blog-excerpt{font-size:.88rem;line-height:1.8;margin-bottom:1.25rem}.blog-excerpt,.blog-meta{color:var(--color-text-muted)}.blog-meta{display:flex;align-items:center;gap:12px;font-size:.78rem}.blog-meta i{color:var(--color-gold);font-size:.7rem}.blog-read-more{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:var(--transition);margin-top:1rem;border:none;background:none;cursor:pointer;font-family:var(--font-body);padding:0}.blog-read-more:hover{gap:10px}.footer{background:#1e1414;color:rgba(255,255,255,.75);padding:60px 0 0;position:relative}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--color-gold),transparent)}.footer-logo{font-family:var(--font-heading);font-size:2rem;color:#fff;margin-bottom:.25rem}.footer-tagline{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold-light);opacity:.7;margin-bottom:1.5rem}.footer-heading{font-family:var(--font-heading);font-size:1.1rem;color:#fff;margin-bottom:1.25rem}.footer-links{list-style:none;padding:0}.footer-links li{margin-bottom:.5rem}.footer-links a{font-size:.88rem;color:rgba(255,255,255,.6);transition:var(--transition)}.footer-links a:hover{color:var(--color-gold);padding-left:4px}.footer-contact-item{display:flex;align-items:center;gap:10px;font-size:.88rem;color:rgba(255,255,255,.6);margin-bottom:.75rem}.footer-contact-item i{color:var(--color-gold);font-size:.85rem;width:16px}.footer-social{display:flex;gap:12px;margin-top:1.25rem}.footer-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(201,169,106,.3);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);font-size:.85rem;transition:var(--transition)}.footer-social a:hover{color:#fff;transform:translateY(-3px)}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px 0;margin-top:40px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.35)}.footer-bottom a{color:var(--color-gold-light);opacity:.7}.back-to-top{position:fixed;bottom:28px;right:28px;width:44px;height:44px;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(201,169,106,.45);z-index:999;transition:var(--transition);opacity:0;pointer-events:none;transform:translateY(10px)}.back-to-top.visible{opacity:1;pointer-events:all;transform:translateY(0)}.back-to-top:hover{transform:translateY(-3px)}@media (max-width:991px){.timeline:before{left:20px}.timeline-item.left,.timeline-item.right{flex-direction:column}.timeline-dot{left:20px}.timeline-image-wrapper{height:200px}.section-padding{padding:70px 0}}@media (max-width:767px){.hero-names{font-size:clamp(2.5rem,12vw,4.5rem)}.countdown-wrapper{gap:1.25rem}.rsvp-card{padding:2rem 1.5rem}.rsvp-radio-group{flex-direction:column}}.couple-card:before{background:linear-gradient(90deg,transparent,var(--color-gold),transparent)}.couple-photo-wrapper:before{border-color:var(--color-gold-light)}.couple-card:hover .couple-photo-wrapper:before{border-color:var(--color-gold)}.timeline:before{background:linear-gradient(to bottom,transparent,var(--color-gold-light),var(--color-gold),var(--color-gold-light),transparent)}.timeline-dot{border-color:var(--color-gold);color:var(--color-gold);box-shadow:0 0 0 6px color-mix(in srgb,var(--color-gold) 12%,transparent)}.details-card-icon{background:linear-gradient(135deg,var(--color-blush),var(--color-gold-light));color:var(--color-gold-dark)}.party-tab-btn.active,.party-tab-btn:hover{background:var(--color-gold);border-color:var(--color-gold)}.registry-icon{background:linear-gradient(135deg,var(--color-blush),var(--color-gold-light));color:var(--color-gold-dark)}.registry-progress-fill{background:linear-gradient(90deg,var(--color-gold),var(--color-gold-dark))}.registry-raised,.rsvp-radio-label.selected{color:var(--color-gold-dark)}.rsvp-radio-label.selected{border-color:var(--color-gold);background:color-mix(in srgb,var(--color-gold) 8%,transparent)}.form-control:focus,.form-select:focus{border-color:var(--color-gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-gold) 12%,transparent)}.blog-read-more{color:var(--color-gold)}.blog-read-more:hover{color:var(--color-gold-dark)}.blog-category{color:var(--color-gold)}.footer-social a:hover{border-color:var(--color-gold)}.back-to-top,.footer-social a:hover{background:var(--color-gold)}.back-to-top:hover{background:var(--color-gold-dark)}.section-subtitle{color:var(--color-text-muted)}.gold-divider i{color:var(--color-gold)}.gold-divider span{background:linear-gradient(90deg,transparent,var(--color-gold))}.gold-divider span:last-child{background:linear-gradient(90deg,var(--color-gold),transparent)}[data-theme=home2] .wedding-navbar.scrolled{background:rgba(26,15,15,.97)}[data-theme=home2] .wedding-navbar.scrolled .navbar-logo{color:#fff!important}[data-theme=home2] .wedding-navbar.scrolled .navbar-nav .nav-link{color:rgba(255,255,255,.7)!important}[data-theme=home2] .wedding-navbar.scrolled .navbar-nav .nav-link:hover{color:var(--color-gold)!important}[data-theme=home2] .wedding-navbar.scrolled .navbar-toggler{border-color:rgba(201,169,106,.3)}[data-theme=home2] .wedding-navbar.scrolled .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.8)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-theme=home3] .section-subtitle,[data-theme=home3] a:not(.btn-gold):not(.btn-outline-gold),[data-theme=home4] a:not(.btn-gold):not(.btn-outline-gold),[data-theme=home5] .section-subtitle,[data-theme=home5] a:not(.btn-gold):not(.btn-outline-gold){color:var(--color-gold-dark)}[data-theme] a.btn-gold,[data-theme] a.btn-gold:active,[data-theme] a.btn-gold:focus,[data-theme] a.btn-gold:hover,[data-theme] a.btn-gold:visited{color:#ffffff!important;text-decoration:none}[data-theme] a.btn-outline-gold{color:var(--color-gold);text-decoration:none}[data-theme] a.btn-outline-gold:hover{color:#ffffff!important;text-decoration:none}.gallery-filter-btn{background:transparent;color:var(--color-text-muted);border:1.5px solid var(--color-border);padding:8px 22px;border-radius:30px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:var(--transition);font-family:var(--font-body);font-weight:400;display:inline-flex;align-items:center;gap:4px}.gallery-filter-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.gallery-filter-btn.active{background:var(--color-gold);color:#fff;border-color:var(--color-gold);font-weight:600}.gallery-filter-count{font-size:.68rem;opacity:.75}.gallery-overlay{flex-direction:column;gap:8px}.gallery-overlay-caption{color:#fff;font-size:.72rem;letter-spacing:.06em;text-align:center;padding:0 12px;opacity:0;transition:opacity .3s ease .1s;font-family:var(--font-body)}.gallery-item:hover .gallery-overlay-caption{opacity:1}.gallery-empty{text-align:center;padding:60px 20px;color:var(--color-text-muted);column-span:all;width:100%}.gallery-empty i{font-size:2.5rem;opacity:.3;display:block;margin-bottom:12px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:1.1rem;transition:var(--transition);display:flex;align-items:center;justify-content:center;z-index:10000}.lightbox-nav:hover{background:var(--color-gold);border-color:var(--color-gold)}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-footer{position:absolute;bottom:50px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px}.lightbox-caption{color:rgba(255,255,255,.7);font-size:.82rem;letter-spacing:.06em;font-family:var(--font-body);font-style:italic}.lightbox-counter{color:rgba(255,255,255,.4);font-size:.7rem;letter-spacing:.1em}.lightbox-hint{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.25);font-size:.68rem;letter-spacing:.1em;white-space:nowrap;margin:0}@media (max-width:576px){.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-nav{width:38px;height:38px;font-size:.9rem}}.form-error-msg{color:#dc3545;font-size:.8rem;margin-top:4px;margin-bottom:0;display:flex;align-items:center;gap:4px}.form-error-msg:before{content:"\f06a";font-family:Font Awesome\ 6 Free;font-weight:900;font-size:.72rem}.error-page-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-ivory,#fdfaf7);padding:3rem 1.5rem;text-align:center}.error-page-inner{max-width:560px;width:100%}.error-petal{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-blush,#f8d7da),var(--color-gold-light,#e8d5b0));display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:1.75rem}.error-code,.error-petal{color:var(--color-gold,#c9a96a)}.error-code{font-size:clamp(4rem,14vw,8rem);font-weight:800;line-height:1;margin-bottom:.5rem;letter-spacing:-.02em}.error-code,.error-title{font-family:var(--font-heading,Georgia,serif)}.error-title{font-size:clamp(1.4rem,4vw,2rem);color:var(--color-text,#3a2e2e);margin-bottom:0}.error-message{color:var(--color-text-muted,#7a6a6a);line-height:1.8;font-size:.95rem;margin-bottom:2rem;padding:0 1rem}.error-actions{gap:12px;margin-bottom:2.5rem}.error-actions,.error-quick-links{display:flex;flex-wrap:wrap;justify-content:center}.error-quick-links{gap:8px 20px;border-top:1px solid var(--color-border,#e8ddd5);padding-top:1.5rem}.error-quick-links a{font-size:.78rem;letter-spacing:.06em;color:var(--color-text-muted,#7a6a6a);text-decoration:none;transition:color .2s}.error-quick-links a:hover{color:var(--color-gold,#c9a96a)}[data-theme=home3] .wedding-navbar:not(.scrolled) .navbar-logo{color:var(--color-accent-dark)!important}[data-theme=home3] .wedding-navbar:not(.scrolled) .navbar-nav .nav-link{color:var(--color-text)!important}[data-theme=home3] .wedding-navbar:not(.scrolled) .navbar-nav .nav-link:hover{color:var(--color-gold)!important}[data-theme=home3] .wedding-navbar:not(.scrolled) .navbar-toggler{border-color:rgba(42,58,30,.4)}[data-theme=home3] .wedding-navbar:not(.scrolled) .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(42,58,30,0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-theme=home3] .wedding-navbar.scrolled{background:color-mix(in srgb,var(--color-ivory) 97%,transparent)}[data-theme=home3] .wedding-navbar.scrolled .navbar-logo{color:var(--color-text)!important}[data-theme=home3] .wedding-navbar.scrolled .navbar-nav .nav-link{color:var(--color-text-muted)!important}[data-theme=home3] .wedding-navbar.scrolled .navbar-nav .nav-link:hover{color:var(--color-gold)!important}[data-theme=home4] .wedding-navbar:not(.scrolled) .navbar-logo{color:var(--color-accent-dark)!important}[data-theme=home4] .wedding-navbar:not(.scrolled) .navbar-nav .nav-link{color:var(--color-text)!important}[data-theme=home4] .wedding-navbar:not(.scrolled) .navbar-nav .nav-link:hover{color:var(--color-gold)!important}[data-theme=home4] .wedding-navbar:not(.scrolled) .navbar-toggler{border-color:rgba(26,18,18,.3)}[data-theme=home4] .wedding-navbar:not(.scrolled) .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(26,18,18,0.8)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-theme=home4] .wedding-navbar.scrolled{background:color-mix(in srgb,var(--color-ivory) 97%,transparent)}[data-theme=home4] .wedding-navbar.scrolled .navbar-logo{color:var(--color-text)!important}[data-theme=home4] .wedding-navbar.scrolled .navbar-nav .nav-link{color:var(--color-text-muted)!important}[data-theme=home4] .wedding-navbar.scrolled .navbar-nav .nav-link:hover{color:var(--color-gold)!important}