*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f1e6;color:#3b2028;font-family:"DM Sans",sans-serif}a{text-decoration:none;color:inherit}button,input,select{font:inherit}.loader{position:fixed;inset:0;background:#32151e;color:#e9c777;display:grid;place-items:center;z-index:1000;transition:.7s}.loader p{position:absolute;margin-top:95px;letter-spacing:.18em;font-size:11px;text-transform:uppercase}.loader-ornament{font:70px "Cormorant Garamond";animation:pulse 1.3s infinite}.loader.hide{opacity:0;pointer-events:none}.topbar{position:fixed;top:0;left:0;right:0;height:72px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:#fff;background:linear-gradient(#251017aa,transparent);backdrop-filter:blur(7px)}.brand{font:600 28px "Cormorant Garamond";letter-spacing:.05em;color:#e9c777}.brand span{font-size:19px}.desktop-nav{display:flex;gap:28px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.desktop-nav a{opacity:.9;transition:.2s}.desktop-nav a:hover{color:#e9c777}.top-actions{display:flex;align-items:center;gap:10px}.icon-btn,.menu-btn{border:1px solid #e6c36f66;background:#ffffff12;color:#fff;border-radius:50%;width:38px;height:38px;cursor:pointer}.small-rsvp,.gold-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 25px;background:linear-gradient(135deg,#f0d48b,#b88327);color:#32151e;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 35px #0003;transition:transform .25s,box-shadow .25s}.gold-btn:hover{transform:translateY(-2px);box-shadow:0 14px 40px #0005}.menu-btn{display:none}.mobile-menu{display:none}.hero{min-height:100vh;position:relative;overflow:hidden;display:grid;place-items:center;text-align:center;color:#fff;background:radial-gradient(circle at 50% 25%,#987a75 0,#4c3340 35%,#201018 78%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#241017cc,#0000 35%,#0000 65%,#241017cc),linear-gradient(0deg,#1c0d14 0,transparent 40%);z-index:1}.hero-glow{position:absolute;width:70vw;height:70vw;border-radius:50%;background:#e6b95b1c;filter:blur(50px)}.arch{position:absolute;inset:8% 10%;border:24px solid #b98334aa;border-bottom:0;border-radius:50% 50% 0 0;box-shadow:0 0 80px #e7b95922,inset 0 0 50px #e7b9591c}.arch-back{transform:scale(.85);opacity:.5}.hero-content{position:relative;z-index:3;margin-top:-5vh}.eyebrow{font-size:10px;letter-spacing:.27em;font-weight:500}.hero h1,.section h2,.rsvp-section h2{font:500 clamp(55px,9vw,112px) "Cormorant Garamond";line-height:.85;margin:18px 0 10px}.hero h1 span{font-size:.55em;color:#e8c36e}.ornament{font:30px "Cormorant Garamond";color:#e9c777}.hero-sub{letter-spacing:.18em;font-size:11px}.date{font:600 14px "Cormorant Garamond";letter-spacing:.35em;margin:20px 0 28px;color:#efd18a}.couple-silhouette{position:absolute;z-index:2;bottom:-3px;left:50%;transform:translateX(-50%);width:220px;height:330px}.couple-glow{position:absolute;inset:25% 0 0;background:#efc86933;filter:blur(45px);border-radius:50%}.person{position:absolute;bottom:0;background:linear-gradient(#20151a,#080609);filter:drop-shadow(0 0 20px #000)}.person:before{content:"";position:absolute;border-radius:50%;background:#181014;width:48px;height:48px;top:-43px;left:50%;transform:translateX(-50%)}.person-a{left:22px;width:94px;height:245px;border-radius:48% 48% 12% 12%}.person-b{right:15px;width:86px;height:265px;border-radius:46% 46% 10% 10%}.person-b:after{content:"";position:absolute;bottom:0;left:-28px;border-right:70px solid #130c10;border-top:110px solid transparent}.scroll-cue{position:absolute;z-index:4;bottom:25px;font-size:9px;letter-spacing:.22em}.scroll-cue span{display:block;margin:0 auto 8px;width:1px;height:26px;background:#e9c777}.lantern{position:absolute;color:#e9c777;font-size:24px;z-index:2;animation:float 4s ease-in-out infinite}.l1{left:12%;top:25%}.l2{right:13%;top:32%;animation-delay:1s}.l3{left:21%;top:62%;animation-delay:2s}.section{padding:110px 6%}.cream{background:#faf5eb}.ivory-pattern{background:#f6ede0}.section-inner{max-width:1180px;margin:auto}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.story-copy h2,.section-heading h2,.venue-copy h2{font-size:68px;margin:12px 0}.dark{color:#6d3e48}.thin-line{height:1px;width:100px;background:#bd8a3c;margin:22px 0}.story-copy p,.venue-copy p{max-width:470px;line-height:1.8;font-size:15px}.muted{color:#806d6b}.outline-btn{display:inline-flex;border:1px solid #a46d3b;border-radius:999px;padding:11px 23px;color:#6c3c42;text-transform:uppercase;font-size:11px;letter-spacing:.1em;margin-top:15px}.story-card{position:relative;height:450px;border-radius:170px 170px 20px 20px;overflow:hidden;box-shadow:0 25px 70px #6b3b3026}.story-image{height:100%;background:linear-gradient(#0000,#24131a99),url("assets/wedding-preview.png") center 13%/cover}.story-caption{position:absolute;bottom:0;left:0;right:0;padding:22px;text-align:center;color:#fff;background:#351721aa;font:italic 20px "Cormorant Garamond"}.countdown-card{grid-column:1/-1;text-align:center;padding:45px 20px;border-top:1px solid #d9c8b1;border-bottom:1px solid #d9c8b1}.countdown{display:flex;justify-content:center;gap:55px;margin:25px 0}.countdown strong{display:block;font:600 50px "Cormorant Garamond";color:#7b3d48}.countdown span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#8b7772}.section-heading{text-align:center;max-width:800px;margin:0 auto 45px}.dark-ornament{color:#9a6b37}.events-grid{max-width:1200px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.event-card{padding:38px 18px;text-align:center;border:1px solid #d9c5a8;background:#fffaf2;box-shadow:0 12px 40px #6b3b3010;transition:.3s}.event-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px #6b3b3020}.event-card.featured{background:#5a2735;color:#fff;border-color:#5a2735}.event-icon{font-size:26px;color:#bd8839}.event-card h3{font:500 30px "Cormorant Garamond";margin:14px 0}.event-card p,.event-card strong,.event-card span{display:block;font-size:11px;margin:7px 0}.event-card strong{color:#9b7138}.featured strong,.featured .event-icon{color:#e6c16e}.gallery-section{background:#2b141c;padding-bottom:120px}.section-heading.light{color:#fff}.gallery-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:180px;gap:14px}.gallery-item{border:0;border-radius:4px;cursor:pointer;background-size:cover;background-position:center;transition:.4s;box-shadow:0 15px 40px #0005}.gallery-item:hover{transform:scale(.98)}.g1{grid-column:span 5;grid-row:span 2;background-image:url("assets/wedding-preview.png");background-position:18% 20%}.g2{grid-column:span 3;background-image:url("assets/wedding-preview.png");background-position:50% 45%}.g3{grid-column:span 4;background-image:url("assets/wedding-preview.png");background-position:80% 35%}.g4{grid-column:span 4;background-image:url("assets/wedding-preview.png");background-position:30% 75%}.g5{grid-column:span 3;background-image:url("assets/wedding-preview.png");background-position:65% 75%}.g6{grid-column:span 5;background-image:url("assets/wedding-preview.png");background-position:90% 75%}.venue-wrap{max-width:1150px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.dark-gold{background:#6c3a45;color:#fff}.map-card{height:360px;border-radius:20px;position:relative;overflow:hidden;background:#ded8c7;box-shadow:0 25px 70px #4c26321c}.map-grid{position:absolute;inset:0;background-image:linear-gradient(25deg,transparent 48%,#9ba187 49%,#9ba187 51%,transparent 52%),linear-gradient(100deg,transparent 48%,#b9a889 49%,#b9a889 51%,transparent 52%),repeating-linear-gradient(15deg,#e8e2d5 0 35px,#d9d2c3 36px 39px);opacity:.8}.map-pin{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50% 50% 50% 0;background:#8b3d4c;color:#fff;display:grid;place-items:center;rotate:-45deg;box-shadow:0 8px 20px #0004}.map-pin::first-letter{rotate:45deg}.map-card span{position:absolute;left:20px;bottom:18px;background:#fffdf8ee;padding:10px 14px;border-radius:10px;font-size:10px;line-height:1.5}.rsvp-section{position:relative;overflow:hidden;min-height:560px;padding:100px 20px;background:radial-gradient(circle at 50% 20%,#642f3c,#32151e 65%);color:#fff;text-align:center}.rsvp-section:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#e9c77733 1px,transparent 1px);background-size:28px 28px;opacity:.3}.rsvp-box{position:relative;max-width:650px;margin:auto}.rsvp-section h2{font-size:72px;color:#f0d28c}.rsvp-section form{max-width:430px;margin:30px auto;display:grid;gap:12px}.rsvp-section input,.rsvp-section select{border:1px solid #e9c77766;background:#fff0;color:#fff;padding:14px 18px;border-radius:999px;outline:0}.rsvp-section input::placeholder{color:#d9c9c7}.rsvp-section option{color:#32151e}.form-message{min-height:22px;color:#e9c777;font-size:13px}.footer-heart{margin-top:55px;color:#cdb6b5;font-size:12px}.footer-heart span{color:#e6b35f}.lightbox{position:fixed;inset:0;background:#14090dcc;z-index:100;display:none;align-items:center;justify-content:center;flex-direction:column;padding:30px}.lightbox.open{display:flex}.lightbox button{position:absolute;right:30px;top:20px;background:none;border:0;color:#fff;font-size:42px;cursor:pointer}.lightbox-image{width:min(850px,90vw);height:min(70vh,650px);background:url("assets/wedding-preview.png") center/cover;border-radius:12px;box-shadow:0 30px 100px #000}.lightbox p{color:#fff;font:26px "Cormorant Garamond"}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@keyframes pulse{50%{transform:scale(1.08);opacity:.7}}@keyframes float{50%{transform:translateY(-18px)}}
@media(max-width:900px){.desktop-nav{display:none}.menu-btn{display:block}.small-rsvp{display:none}.mobile-menu{position:fixed;top:72px;right:15px;z-index:49;background:#351721ee;backdrop-filter:blur(12px);border:1px solid #e9c77744;border-radius:14px;padding:14px;display:none;flex-direction:column;gap:2px}.mobile-menu.open{display:flex}.mobile-menu a{color:#fff;padding:12px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.story-grid,.venue-wrap{grid-template-columns:1fr}.story-card{max-width:500px;margin:auto}.events-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}.gallery-item{grid-column:auto!important;grid-row:auto!important}.g1{grid-row:span 2!important}.countdown{gap:20px}.countdown strong{font-size:38px}.section-heading h2,.story-copy h2,.venue-copy h2{font-size:54px}}
@media(max-width:560px){.topbar{padding:0 18px}.hero h1{font-size:58px}.arch{inset:12% 2%;border-width:15px}.couple-silhouette{transform:translateX(-50%) scale(.78);transform-origin:bottom}.section{padding:75px 18px}.events-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:150px}.g1{grid-row:span 2!important}.countdown{gap:10px}.countdown strong{font-size:30px}.countdown span{font-size:8px}.map-card{height:280px}.rsvp-section h2{font-size:58px}.rsvp-section{padding:75px 18px}}
