:root{--paper:#fffdfc;--ivory:#fbf7f4;--blush:#f3dfe2;--blush2:#ead0d4;--rose:#bb7b86;--rose-dark:#8f5962;--ink:#2e2728;--muted:#786d6f;--line:#eadfdd;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;font-weight:300;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}.overline{margin:0 0 22px;font:500 10px/1.2 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--rose-dark)}
.site-nav{position:fixed;z-index:50;top:0;left:0;width:100%;padding:24px 0;transition:.35s}.site-nav.is-scrolled{padding:12px 0;background:rgba(255,253,252,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,223,221,.7)}.nav-shell{width:min(1320px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:44px}.monogram{width:46px;height:46px;border:1px solid rgba(46,39,40,.35);border-radius:50%;display:grid;place-items:center;text-decoration:none;font:500 19px var(--serif);background:rgba(255,255,255,.35)}.nav-links{display:flex;gap:36px;justify-content:center}.nav-links a,.nav-rsvp{font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--rose-dark);transition:.25s}.nav-links a:hover:after{right:0}.nav-rsvp{border-bottom:1px solid var(--ink);padding-bottom:5px}.menu-btn{display:none;background:none;border:0;padding:10px}.menu-btn span{display:block;width:25px;height:1px;background:var(--ink);margin:6px}
.editorial-hero{min-height:100svh;display:grid;grid-template-columns:47% 53%;position:relative;padding-top:90px;background:linear-gradient(90deg,#fffdfc 0 47%,#f9f2f1 47%)}.hero-copy{align-self:center;padding:80px 6vw 90px 9vw;position:relative;z-index:2}.hero-names{font:500 clamp(5.8rem,8.8vw,10.3rem)/.69 var(--serif);letter-spacing:-.065em;display:flex;flex-direction:column;margin:24px 0 42px}.hero-names em{font-size:.47em;font-weight:400;color:var(--rose);margin:.17em 0 .08em 1.35em}.hero-meta{display:flex;align-items:center;gap:15px;max-width:420px}.hero-meta span{height:1px;background:var(--blush2);flex:1}.hero-meta strong{font:400 12px var(--sans);text-transform:uppercase;letter-spacing:.18em;white-space:nowrap}.hero-intro{max-width:430px;color:var(--muted);font-size:14px;line-height:1.9;margin:29px 0 33px}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:8px}.text-link i{font-style:normal;font-size:16px}.hero-visual{position:relative;min-height:calc(100svh - 90px);overflow:hidden;display:grid;place-items:center;padding:5vh 7vw 6vh 3vw}.hero-blush{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:var(--blush);right:-14%;top:5%;opacity:.72}.hero-frame{position:relative;z-index:2;width:min(475px,77%);height:min(73vh,760px);margin:0;box-shadow:0 28px 60px rgba(82,54,59,.11)}.hero-frame:before{content:"";position:absolute;z-index:-1;inset:-16px 16px 16px -16px;border:1px solid rgba(143,89,98,.28)}.hero-frame img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero-stamp{position:absolute;z-index:3;right:6%;bottom:14%;width:114px;height:114px;border-radius:50%;background:rgba(255,253,252,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg);box-shadow:0 16px 34px rgba(65,42,45,.08);font:italic 20px/1 var(--serif)}.hero-stamp strong{font-weight:400;color:var(--rose);font-size:14px}.hero-flower{position:absolute;left:7%;bottom:9%;font-size:25px;color:var(--rose);transform:rotate(20deg)}.scroll-cue{position:absolute;z-index:5;bottom:26px;left:50%;transform:translateX(-50%);text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:9px;font-size:8px;text-transform:uppercase;letter-spacing:.25em}.scroll-cue i{height:38px;width:1px;background:var(--ink);opacity:.4}
.love-note{padding:145px 24px;background:#fff}.love-note-inner{max-width:940px;margin:auto;text-align:center}.love-note blockquote{margin:0 auto;font:italic 400 clamp(2.9rem,5.2vw,5.7rem)/1.06 var(--serif);letter-spacing:-.025em}.tiny-heart{display:block;margin-top:30px;color:var(--rose);font:28px var(--serif)}
.story-section{max-width:1320px;margin:auto;padding:130px 64px 180px;display:grid;grid-template-columns:1.12fr .88fr;gap:9vw;align-items:center}.story-images{position:relative;min-height:720px}.story-image-main{position:absolute;left:0;top:0;width:72%;height:620px;margin:0}.story-image-main img,.story-image-small img{width:100%;height:100%;object-fit:cover}.story-image-small{position:absolute;right:0;bottom:0;width:43%;height:350px;margin:0;border:12px solid var(--paper)}.story-number{position:absolute;right:1%;top:4%;font:italic 4.4rem var(--serif);color:var(--blush2)}.story-text{max-width:470px}.story-text h2,.day-heading h2,.program-heading h2,.gallery-heading h2,.rsvp-aside h2,.guestbook-intro h2,.words-heading h2{font:500 clamp(3.6rem,5.4vw,6.1rem)/.92 var(--serif);letter-spacing:-.04em;margin:0}.story-lead{font-size:15px;line-height:2;color:var(--muted);margin:36px 0}.signature{font:italic 2.2rem var(--serif);color:var(--rose-dark)}
.countdown-section{background:var(--ivory);padding:120px 60px}.countdown-heading{text-align:center}.countdown-heading h2{font:500 clamp(3rem,5vw,5.1rem)/1 var(--serif);margin:0}.countdown{max-width:900px;margin:70px auto 0;display:grid;grid-template-columns:repeat(4,1fr)}.countdown>div{text-align:center;position:relative}.countdown>div:not(:last-child):after{content:"";position:absolute;right:0;top:12%;height:75%;width:1px;background:var(--line)}.countdown strong{display:block;font:400 clamp(3.7rem,6vw,6.8rem)/.9 var(--serif);color:var(--rose-dark)}.countdown span{font-size:9px;letter-spacing:.23em;text-transform:uppercase;color:var(--muted)}
.day-section{padding:150px 64px;background:#fff}.day-heading{max-width:1320px;margin:0 auto 90px}.day-details{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 110px 1fr;align-items:center}.day-details article{text-align:center;padding:30px 55px}.detail-index{display:block;color:var(--blush2);font:italic 3rem var(--serif)}.detail-time{font:500 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--rose-dark);margin:12px 0 22px}.day-details h3{font:500 3rem/1 var(--serif);margin:0 0 21px}.day-details article>p:last-child{white-space:pre-line;line-height:1.9;color:var(--muted);max-width:360px;margin:auto}.day-divider{height:300px;border-left:1px solid var(--line);border-right:1px solid var(--line);display:grid;place-items:center}.day-divider span{width:48px;height:48px;background:#fff;display:grid;place-items:center;color:var(--rose);font:28px var(--serif);transform:translateX(-1px)}
.program-section{padding:150px 64px;background:var(--ivory);display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.program-heading{padding-left:max(0px,calc((100vw - 1320px)/2));position:sticky;top:140px;align-self:start}.program-heading>p:last-child{color:var(--muted);line-height:1.8;max-width:320px}.program-list{max-width:720px}.program-row{display:grid;grid-template-columns:44px 90px 1fr 34px;gap:20px;align-items:start;padding:31px 0;border-bottom:1px solid #dfd1cf}.program-index{font:italic 1rem var(--serif);color:var(--rose)}.program-row time{font:500 12px var(--sans);letter-spacing:.1em;padding-top:7px}.program-row h3{margin:0 0 7px;font:500 2rem var(--serif)}.program-row p{margin:0;color:var(--muted);line-height:1.6}.program-row a{text-decoration:none;font-size:18px}
.gallery-section{padding:150px 42px 170px;background:#fff}.gallery-heading{max-width:1220px;margin:0 auto 75px}.editorial-gallery{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.1fr .8fr 1fr;grid-template-rows:330px 260px 360px;gap:16px}.gallery-item{margin:0;overflow:hidden;position:relative;background:var(--ivory);cursor:zoom-in}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.gallery-item:hover img{transform:scale(1.025)}.gallery-1{grid-row:1/3}.gallery-2{grid-column:2/4}.gallery-3{grid-column:2}.gallery-4{grid-column:3;grid-row:2/4}.gallery-5{grid-column:1/3}.gallery-6,.gallery-7{display:none}.gallery-item figcaption{position:absolute;left:18px;bottom:16px;color:#fff;font:italic 18px var(--serif);text-shadow:0 1px 8px rgba(0,0,0,.35)}.gallery-empty{grid-column:1/-1;padding:90px;text-align:center;border:1px solid var(--line);color:var(--muted)}
.dress-section{padding:145px 30px;text-align:center;background:#f8edef;position:relative;overflow:hidden}.dress-ornament{position:absolute;left:50%;top:50%;transform:translate(-50%,-51%);font:400 19rem/1 var(--serif);color:rgba(255,255,255,.55);pointer-events:none}.dress-section>*:not(.dress-ornament){position:relative;z-index:2}.dress-section h2{font:italic 500 clamp(4rem,7vw,7rem)/1 var(--serif);margin:0}.dress-section>p:not(.overline){max-width:520px;margin:25px auto;color:var(--muted);line-height:1.8}.dress-colors{display:flex;justify-content:center;gap:12px;margin-top:30px}.dress-colors span{width:26px;height:26px;border-radius:50%;border:4px solid rgba(255,255,255,.8);box-shadow:0 0 0 1px rgba(80,55,60,.08)}
.rsvp-section{display:grid;grid-template-columns:.78fr 1.22fr;max-width:1320px;margin:0 auto;padding:160px 64px;gap:9vw}.rsvp-aside{padding-top:20px}.rsvp-aside>p:nth-of-type(2){max-width:360px;color:var(--muted);line-height:1.9;margin:35px 0}.rsvp-capacity{display:flex;align-items:center;gap:15px;margin-top:44px;padding-top:25px;border-top:1px solid var(--line);max-width:360px}.rsvp-capacity strong{font:500 3rem var(--serif);color:var(--rose-dark)}.rsvp-capacity span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;line-height:1.6}.rsvp-form{max-width:680px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.form-line{margin-bottom:28px}.form-line label{display:block;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;margin-bottom:9px;color:var(--muted)}.form-line input,.form-line select,.form-line textarea{width:100%;border:0;border-bottom:1px solid #cfbfc0;background:transparent;padding:12px 2px 13px;color:var(--ink);font:400 14px var(--sans);outline:0;border-radius:0}.form-line input:focus,.form-line select:focus,.form-line textarea:focus{border-color:var(--rose-dark)}.chips{display:flex;flex-wrap:wrap;gap:9px;padding-top:6px}.chip{position:relative}.chip input{position:absolute;opacity:0}.chip span{display:block;border:1px solid var(--line);padding:10px 14px;font-size:10px;letter-spacing:.06em;cursor:pointer;background:#fff}.chip input:checked+span{background:var(--rose-dark);border-color:var(--rose-dark);color:#fff}.submit-rsvp{width:100%;margin-top:22px;border:0;background:var(--ink);color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;letter-spacing:.16em;font:500 10px var(--sans);cursor:pointer;transition:.25s}.submit-rsvp:hover{background:var(--rose-dark)}.submit-rsvp i{font-style:normal;font-size:19px}.submit-rsvp:disabled{opacity:.45}.notice{background:#f8e9eb;color:#7b4952;padding:14px 16px;margin-bottom:24px;border-left:2px solid var(--rose)}
.words-section{padding:145px 64px;background:var(--ivory)}.words-heading{max-width:1220px;margin:0 auto 70px}.words-grid{max-width:1220px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.words-grid article{border-top:1px solid #d9cac9;padding-top:25px}.words-grid article>span{font:5rem/.5 var(--serif);color:var(--blush2)}.words-grid article p{font:italic 1.55rem/1.45 var(--serif)}.words-grid small{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}
.guestbook-form-section{padding:150px 64px;max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.guestbook-form{align-self:end}.text-button{border:0;border-bottom:1px solid var(--ink);background:none;padding:8px 0;font:500 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.text-button span{margin-left:15px}.site-footer{padding:110px 30px;background:#302729;color:#fff;text-align:center}.footer-mark{margin:auto;width:64px;height:64px;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-items:center;font:italic 1.7rem var(--serif)}.footer-names{font:500 clamp(3.8rem,6vw,6.6rem)/1 var(--serif);margin:27px 0 10px}.site-footer>p{font-size:10px;letter-spacing:.23em;text-transform:uppercase;color:#d8c7ca}.footer-love{display:block;margin-top:48px;font:italic 1.1rem var(--serif);color:#cfaab0}
.lightbox{position:fixed;z-index:100;inset:0;background:rgba(29,22,23,.94);display:none;place-items:center;padding:30px}.lightbox.open{display:grid}.lightbox img{max-width:min(1100px,94vw);max-height:90vh;object-fit:contain}.lightbox button{position:absolute;right:25px;top:18px;background:none;border:0;color:#fff;font-size:36px;font-weight:200;cursor:pointer}.reveal{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform .85s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.nav-shell{width:calc(100% - 36px);grid-template-columns:auto 1fr auto}.nav-links{display:none;position:absolute;top:76px;left:18px;right:18px;background:rgba(255,253,252,.98);padding:30px;flex-direction:column;align-items:center;box-shadow:0 18px 50px rgba(50,35,38,.08)}.nav-links.open{display:flex}.nav-rsvp{display:none}.menu-btn{display:block;justify-self:end}.editorial-hero{grid-template-columns:1fr;min-height:auto;background:var(--paper);padding-top:90px}.hero-copy{text-align:center;padding:75px 30px 55px}.hero-names{font-size:clamp(5rem,17vw,8rem);align-items:center}.hero-names em{margin:.1em 0}.hero-meta{margin:auto}.hero-intro{margin:28px auto}.hero-visual{min-height:700px;background:#f9f2f1;padding:60px 30px}.hero-frame{height:620px;width:min(450px,72%)}.scroll-cue{display:none}.story-section{grid-template-columns:1fr;padding:110px 36px;gap:70px}.story-images{min-height:650px}.story-text{margin-left:auto;margin-right:auto;text-align:center}.day-details{grid-template-columns:1fr}.day-divider{height:80px;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.program-section{grid-template-columns:1fr;padding:110px 36px;gap:60px}.program-heading{position:static;padding:0}.program-list{max-width:none}.editorial-gallery{grid-template-columns:1fr 1fr;grid-template-rows:450px 260px 360px}.gallery-1{grid-row:1}.gallery-2{grid-column:2}.gallery-3{grid-column:1}.gallery-4{grid-column:2;grid-row:2}.gallery-5{grid-column:1/3}.rsvp-section,.guestbook-form-section{grid-template-columns:1fr;padding:110px 36px}.rsvp-aside{text-align:center}.rsvp-aside>p:nth-of-type(2),.rsvp-capacity{margin-left:auto;margin-right:auto}.words-grid{grid-template-columns:1fr}}
@media(max-width:600px){.site-nav{padding:14px 0}.monogram{width:40px;height:40px}.editorial-hero{padding-top:68px}.hero-copy{padding:64px 20px 42px}.hero-names{font-size:clamp(4.4rem,20vw,6.2rem)}.hero-meta strong{font-size:9px}.hero-intro{font-size:13px;line-height:1.8}.hero-visual{min-height:520px;padding:42px 22px}.hero-frame{width:80%;height:455px}.hero-stamp{width:86px;height:86px;font-size:16px;right:3%;bottom:12%}.love-note{padding:95px 24px}.story-section{padding:90px 20px 110px}.story-images{min-height:500px}.story-image-main{width:78%;height:430px}.story-image-small{width:46%;height:230px;border-width:8px}.story-text h2,.day-heading h2,.program-heading h2,.gallery-heading h2,.rsvp-aside h2,.guestbook-intro h2,.words-heading h2{font-size:3.65rem}.countdown-section{padding:90px 20px}.countdown{grid-template-columns:1fr 1fr;gap:30px 0;margin-top:50px}.countdown>div:nth-child(2):after{display:none}.countdown strong{font-size:4rem}.day-section{padding:100px 20px}.day-heading{margin-bottom:55px}.day-details article{padding:35px 10px}.program-section{padding:100px 20px}.program-row{grid-template-columns:30px 62px 1fr;gap:12px}.program-row>a{display:none}.program-row h3{font-size:1.6rem}.gallery-section{padding:100px 12px}.gallery-heading{padding:0 10px}.editorial-gallery{grid-template-columns:1fr 1fr;grid-template-rows:330px 220px 260px;gap:8px}.gallery-1{grid-column:1/3}.gallery-2{grid-column:1}.gallery-3{grid-column:2}.gallery-4{grid-column:1}.gallery-5{grid-column:2}.dress-section{padding:100px 20px}.dress-ornament{font-size:12rem}.rsvp-section{padding:100px 20px}.form-grid{grid-template-columns:1fr;gap:0}.chips{gap:6px}.chip span{padding:9px 10px}.words-section{padding:100px 20px}.guestbook-form-section{padding:100px 20px}.site-footer{padding:85px 20px}.footer-names{font-size:4rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}
.admin-fab{position:fixed;right:18px;bottom:18px;z-index:90;display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:999px;background:rgba(42,34,37,.88);color:#fff!important;text-decoration:none;font:600 11px/1 Manrope,system-ui,sans-serif;letter-spacing:.02em;box-shadow:0 10px 30px rgba(42,34,37,.18);backdrop-filter:blur(12px);transition:.25s}.admin-fab:hover{transform:translateY(-2px);background:#2a2225}@media(max-width:640px){.admin-fab{right:12px;bottom:12px;padding:9px 12px;font-size:10px}}
.hero-frame.is-slideshow img{position:absolute;inset:0;opacity:0;transform:scale(1.025);transition:opacity 1s ease,transform 5.2s ease}.hero-frame.is-slideshow img.active{opacity:1;transform:scale(1)}

/* Public refresh: immersive premium wedding frontage. */
:root{--paper:#fffaf6;--ivory:#f8efe8;--blush:#f3cad2;--blush2:#ddb1b9;--rose:#c86f82;--rose-dark:#8d3f51;--sage:#7f9b83;--gold:#c89a5d;--ink:#24191d;--muted:#75676b;--line:#eadbd6}
.site-nav{color:#fff}.site-nav.is-scrolled{color:var(--ink);background:rgba(255,250,246,.9);box-shadow:0 14px 45px rgba(50,30,35,.08)}.site-nav:not(.is-scrolled) .monogram{border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);backdrop-filter:blur(14px)}.site-nav:not(.is-scrolled) .menu-btn span{background:#fff}.site-nav:not(.is-scrolled) .nav-rsvp{border-color:#fff}.nav-rsvp{padding:12px 18px;border:1px solid currentColor;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(14px)}
.editorial-hero{min-height:100svh;display:grid;grid-template-columns:1fr;padding-top:0;background:#FFF9FA;overflow:hidden}.editorial-hero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,14,18,.78),rgba(24,14,18,.42) 44%,rgba(24,14,18,.12)),linear-gradient(0deg,rgba(24,14,18,.42),transparent 42%)}.hero-copy{align-self:center;max-width:790px;padding:150px 8vw 90px;z-index:2;color:#fff}.hero-names{font-weight:500;letter-spacing:0;text-shadow:0 22px 70px rgba(0,0,0,.38)}.hero-names em{color:#ffd6df;margin-left:1.1em}.hero-meta span{background:rgba(255,255,255,.42)}.hero-meta strong,.hero-intro,.hero-copy .overline{color:rgba(255,255,255,.9)}.hero-intro{font-size:16px;max-width:520px}.hero-copy .text-link{border-color:rgba(255,255,255,.75);color:#fff}.hero-visual{position:absolute;inset:0;min-height:100%;padding:0;z-index:0}.hero-blush,.hero-flower{display:none}.hero-frame{width:100%;height:100%;max-width:none;margin:0;box-shadow:none}.hero-frame:before{display:none}.hero-frame img{object-position:center 35%;filter:saturate(1.02) contrast(1.02)}.hero-stamp{right:7vw;bottom:9vh;background:rgba(255,250,246,.9);color:var(--ink);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.62)}.scroll-cue{color:#fff}
.love-note{background:linear-gradient(180deg,#fffaf6,#fff)}.story-section,.day-section,.gallery-section,.guestbook-form-section{background:#fffaf6}.countdown-section,.program-section,.words-section{background:#f7efe7}.day-details article,.words-grid article,.rsvp-form{border:1px solid rgba(200,154,93,.18);border-radius:28px;background:rgba(255,255,255,.72);box-shadow:0 24px 70px rgba(89,56,48,.08)}.day-details article{padding:42px 48px}.day-divider{border-color:rgba(200,154,93,.25)}
.program-list{display:grid;gap:14px}.program-row{border:1px solid rgba(200,154,93,.18);border-radius:24px;background:rgba(255,255,255,.76);padding:22px 24px;box-shadow:0 18px 50px rgba(89,56,48,.06)}.program-row h3{font-size:1.8rem}.program-day-label{text-transform:uppercase;letter-spacing:.12em;color:var(--rose-dark);font-weight:700;font-size:10px}.gallery-item{border-radius:26px;box-shadow:0 25px 70px rgba(89,56,48,.1)}.dress-section{background:linear-gradient(135deg,#f4d6dd,#f6ead7 48%,#eaf0df)}.submit-rsvp{border-radius:999px;background:linear-gradient(135deg,var(--rose-dark),#2f473b)}.text-button{color:var(--rose-dark);border-color:var(--rose-dark)}
.event-reception{margin-top:8px;padding-top:8px;border-top:1px solid rgba(200,154,93,.2);color:#8d3f51;font-size:13px;font-weight:700}
@media(max-width:980px){.nav-links.open{color:var(--ink);border-radius:26px}.hero-copy{text-align:left;padding:132px 28px 70px}.hero-visual{min-height:100%}.hero-frame{width:100%;height:100%}.hero-stamp{display:none}.editorial-hero{min-height:92svh}.day-details article{padding:36px 24px}.program-row{grid-template-columns:34px 68px 1fr}}
@media(max-width:600px){.hero-copy{text-align:center;padding:116px 20px 66px}.hero-names{font-size:clamp(4.2rem,19vw,6rem)}.hero-meta{margin:auto}.hero-intro{font-size:14px}.editorial-hero{min-height:88svh}.program-row{border-radius:20px;padding:18px 16px}}

/* Romantic Blush final visual direction: bright, photo-led, premium wedding UI. */
:root{
  --white:#FFFFFF;
  --rose-white:#FFF9FA;
  --soft-blush:#FCECEF;
  --blush:#F4CDD5;
  --romantic-rose:#D98B9A;
  --deep-rose:#A94F64;
  --soft-burgundy:#733746;
  --ink:#30272A;
  --muted:#786B70;
  --line:#F0E1E4;
  --paper:#FFF9FA;
  --ivory:#FFFFFF;
  --rose:var(--romantic-rose);
  --rose-dark:var(--deep-rose);
  --blush2:#EFBBC5;
  --sage:#849F89;
  --gold:#B89462;
}
body{background:var(--rose-white);color:var(--ink)}
.site-nav{color:var(--ink);padding:22px 0}.site-nav:not(.is-scrolled){background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(255,255,255,0));backdrop-filter:blur(10px)}.site-nav.is-scrolled{background:rgba(255,255,255,.86);border-bottom:1px solid rgba(240,225,228,.82);box-shadow:0 12px 28px rgba(115,55,70,.06)}
.site-nav:not(.is-scrolled) .monogram{border-color:rgba(169,79,100,.36);background:rgba(255,255,255,.62);color:var(--soft-burgundy);box-shadow:none}.site-nav:not(.is-scrolled) .menu-btn span{background:var(--soft-burgundy)}.site-nav:not(.is-scrolled) .nav-rsvp{border-color:rgba(169,79,100,.45);color:var(--soft-burgundy);background:rgba(255,249,250,.72)}
.monogram{border-color:rgba(169,79,100,.35);color:var(--soft-burgundy);background:rgba(255,255,255,.74)}.nav-links a:after{background:var(--deep-rose)}.nav-rsvp{border:1px solid rgba(169,79,100,.42);border-radius:12px;background:rgba(255,249,250,.72);padding:12px 18px;color:var(--deep-rose)}
.editorial-hero{min-height:100svh;background:var(--rose-white);overflow:hidden}.editorial-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,249,250,.88) 34%,rgba(255,249,250,.42) 58%,rgba(255,255,255,.05) 100%)}.editorial-hero:after{background:linear-gradient(180deg,rgba(255,249,250,.28),rgba(255,255,255,.82))}
.hero-copy{max-width:760px;color:var(--ink);padding:148px 8vw 92px;z-index:2}.hero-copy .overline{color:var(--deep-rose)}.hero-names{color:var(--ink);text-shadow:none;letter-spacing:-.045em}.hero-names em{color:var(--romantic-rose);text-shadow:none}.hero-meta span{background:rgba(169,79,100,.22)}.hero-meta strong{color:var(--soft-burgundy)}.hero-intro{max-width:560px;color:var(--soft-burgundy);font-size:18px;line-height:1.75}.hero-copy .text-link{border-color:var(--deep-rose);color:var(--deep-rose)}
.hero-frame img{filter:saturate(1.04) brightness(1.06);object-position:center 32%}.hero-stamp{background:rgba(255,255,255,.82);border:1px solid rgba(244,205,213,.8);color:var(--soft-burgundy);box-shadow:0 12px 34px rgba(115,55,70,.1)}.hero-stamp strong{color:var(--deep-rose)}.scroll-cue{color:var(--soft-burgundy)}.scroll-cue i{background:var(--deep-rose)}
.love-note{background:#fff;padding-top:120px}.love-note blockquote{color:var(--soft-burgundy)}.tiny-heart{color:var(--deep-rose)}
.story-section,.day-section,.gallery-section,.guestbook-form-section{background:#fff}.story-image-main,.story-image-small,.gallery-item{border-radius:20px}.story-image-small{border-color:#fff}.story-number{color:var(--blush)}.signature{color:var(--deep-rose)}
.countdown-section,.program-section,.words-section{background:var(--rose-white)}.countdown strong,.detail-index,.rsvp-capacity strong{color:var(--deep-rose)}
.day-heading,.gallery-heading,.words-heading{color:var(--ink)}.day-details article,.words-grid article,.rsvp-form{background:rgba(255,255,255,.88);border:1px solid var(--line);box-shadow:0 10px 28px rgba(115,55,70,.06);border-radius:20px}.day-divider{border-color:var(--line)}.day-divider span{color:var(--deep-rose);background:#fff}
.program-list{gap:16px}.program-row{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 26px rgba(115,55,70,.045)}.program-index,.program-day-label,.event-reception{color:var(--deep-rose)}
.gallery-item{box-shadow:0 12px 32px rgba(115,55,70,.08)}.gallery-item figcaption{background:rgba(48,39,42,.32);padding:6px 10px;border-radius:10px}
.dress-section{background:linear-gradient(135deg,#FFF9FA 0%,#FCECEF 52%,#FFFFFF 100%)}.dress-ornament{color:rgba(244,205,213,.45)}
.form-line input,.form-line select,.form-line textarea{border-bottom-color:#D8C6CB}.form-line input:focus,.form-line select:focus,.form-line textarea:focus{border-color:var(--deep-rose)}
.chip span{border-color:var(--line);border-radius:12px}.chip input:checked+span,.submit-rsvp{background:var(--deep-rose);border-color:var(--deep-rose);color:#fff}.submit-rsvp{border-radius:14px;box-shadow:none}.submit-rsvp:hover{background:#8D4054}.notice{background:var(--soft-blush);color:var(--soft-burgundy);border-color:var(--blush)}
.text-button,.text-link{color:var(--deep-rose);border-color:var(--deep-rose)}.site-footer{background:var(--soft-burgundy)}.footer-love{color:var(--blush)}
.admin-fab{border-radius:12px;background:rgba(255,255,255,.86);color:var(--soft-burgundy)!important;border:1px solid rgba(169,79,100,.2);box-shadow:0 10px 26px rgba(115,55,70,.08)}.admin-fab:hover{background:#fff;color:var(--deep-rose)!important}
@media(max-width:980px){.editorial-hero:before{background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,249,250,.72) 44%,rgba(255,255,255,.06) 100%)}.hero-copy{text-align:center}.hero-copy,.hero-intro,.hero-meta{margin-left:auto;margin-right:auto}.nav-links.open{background:rgba(255,255,255,.97);border:1px solid var(--line);box-shadow:0 16px 36px rgba(115,55,70,.1)}}
@media(max-width:600px){.hero-intro{font-size:15px}.site-nav{padding:12px 0}.nav-shell{width:calc(100% - 28px)}.day-details article,.program-row,.rsvp-form{border-radius:16px}.admin-fab span{display:none}}
.hero-subdate{margin:12px 0 0;color:var(--soft-burgundy);font:700 11px var(--sans);letter-spacing:.12em;text-transform:uppercase}

/* Performance layer: keep the first paint light without changing the Romantic Blush design. */
.hero-frame.is-slideshow img:not([src]){visibility:hidden}
.story-section,
.countdown-section,
.day-section,
.program-section,
.gallery-section,
.dress-section,
.rsvp-section,
.words-section,
.guestbook-form-section,
.site-footer{content-visibility:auto;contain-intrinsic-size:720px}
.gallery-item img,
.story-image-main img,
.story-image-small img{background:var(--rose-white)}
