:root{--navy:#172b45;--wine:#60222b;--cream:#f1efe8;--gold:#c2a777}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--cream);color:var(--navy);font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}header{height:86px;background:var(--navy);color:var(--cream);display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #ffffff25}.monogram{text-decoration:none;font-family:Georgia,serif;font-size:28px;letter-spacing:3px}.monogram i{color:var(--gold);font-size:22px}nav{display:flex;gap:36px}nav a{text-decoration:none;font-size:14px}.header-date{font-size:14px;letter-spacing:2px}.hero{position:relative;background:var(--navy);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;min-height:740px;padding-bottom:52px}.hero-copy{padding:65px 10% 60px 12%;position:relative;z-index:1}.eyebrow{font-size:12px;font-weight:400;letter-spacing:3px;margin:0 0 30px}.hero h1{font:normal clamp(65px,7.4vw,112px)/1.06 Georgia,serif;letter-spacing:-3px;margin:0 0 32px}.amp{font-style:italic;color:var(--gold);font-size:.65em}.hero-rule{height:1px;width:70px;background:var(--gold);margin-bottom:24px}.hero-date{font-size:17px}.hero-date span{margin:0 8px;color:var(--gold)}.hero-note{color:#d8dbe0;margin:23px 0 34px;font-size:16px}.button{display:inline-block;text-decoration:none;border:1px solid;padding:13px 23px;font-size:14px;letter-spacing:.3px;transition:background .25s,color .25s}.button.light{border-color:#c2a77780;color:var(--cream)}.button.light:hover{background:var(--cream);color:var(--navy)}.button.dark{border-color:var(--navy);margin-top:22px}.button.dark:hover{background:var(--navy);color:var(--cream)}.hero-image{position:relative;margin:32px 40px 0 0;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.82);position:absolute;inset:0}.image-caption{position:absolute;bottom:24px;left:24px;right:24px;color:white;font-size:12px;letter-spacing:2px;text-shadow:0 1px 6px black}.hero-bottom{position:absolute;bottom:15px;left:6%;font-size:12px;letter-spacing:3px;color:#c2a777}.section{padding:110px max(6%,calc((100vw - 1180px)/2))}h2{font:normal clamp(38px,4.7vw,66px)/1.14 Georgia,serif;letter-spacing:-1.6px;margin:0 0 28px}h2 em{color:var(--wine);font-weight:normal}h3{font:normal 28px Georgia,serif}.invite{text-align:center;max-width:1000px;margin:auto;padding-left:6%;padding-right:6%}.body-copy{max-width:620px;margin:30px auto}.signature{font:italic 25px Georgia,serif;color:var(--wine);margin-top:38px}.date-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #172b4520}.big-date{font:normal 29px Georgia,serif;letter-spacing:3px}.calendar{padding:36px;border:1px solid #172b4530;align-self:center}.calendar-title{font:normal 34px Georgia,serif;display:flex;justify-content:space-between;margin-bottom:25px}.calendar-title span{font-size:24px;color:var(--wine)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px 4px;text-align:center}.day{display:flex;align-items:center;justify-content:center;aspect-ratio:1;font:normal 20px Georgia,serif}.weekday{font-size:12px;letter-spacing:1px;opacity:.65}.selected{border:1px solid var(--wine);border-radius:50%;background:var(--wine);color:var(--cream);position:relative}.selected:after{content:'♥';position:absolute;bottom:-10px;font-size:13px;color:var(--wine);background:var(--cream);line-height:1;padding:1px 4px}.photo-band{height:430px;position:relative;overflow:hidden}.photo-band img{height:100%;width:100%;object-fit:cover;object-position:center 65%;filter:brightness(.37)}.photo-quote{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;text-align:center;color:var(--cream);font:normal clamp(28px,4vw,52px)/1.3 Georgia,serif;padding:20px}.photo-quote em{font-weight:normal}.place{display:grid;grid-template-columns:1fr 1fr;gap:90px}.location{font-size:20px;line-height:1.8}.arrival{border-left:1px solid #172b4530;padding-left:60px}.arrival-time{font:normal 80px Georgia,serif;color:var(--wine)}.arrival h3{margin:10px 0 18px}.arrival-line{height:1px;width:70px;background:var(--gold);margin:28px 0}.small{font-size:14px;opacity:.75}.dress{background:#e5e4df;display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.dress-images{height:530px;position:relative;padding-right:20%}.dress-images img{width:100%;height:88%;object-fit:cover}.dress-images .style-photo{position:absolute;width:44%;height:59%;right:0;bottom:0;border:8px solid #e5e4df;object-position:50% 25%}.swatches{display:flex;gap:18px;margin:34px 0}.swatches>div{text-align:center;flex:1}.swatches span{display:block;width:60px;height:60px;border-radius:50%;background:var(--swatch);margin:0 auto 9px;border:1px solid #172b4520}.swatches small{font-size:12px}.countdown{text-align:center}.counter{display:flex;justify-content:center;gap:48px;margin:38px 0}.counter strong{display:block;font:normal 64px Georgia,serif}.counter span{font-size:12px;letter-spacing:2px}footer{text-align:center;background:var(--wine);color:var(--cream);padding:80px 20px 45px}.footer-names{font:normal clamp(33px,5vw,62px) Georgia,serif}.footer-names em{color:var(--gold)}footer a{display:inline-block;margin-top:30px;font-size:13px;text-underline-offset:5px}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:translateY(0)}a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}@media(max-width:760px){header{height:72px;padding:0 6%}.header-date{display:none}nav{gap:18px}nav a{font-size:12px}.hero{grid-template-columns:1fr;padding-bottom:45px}.hero-copy{padding:47px 7% 42px}.hero h1{font-size:72px;letter-spacing:-2px}.hero-image{height:390px;margin:0 6%}.hero-image img{position:static}.hero-bottom{font-size:10px}.section{padding:70px 7%}.eyebrow{letter-spacing:2px;margin-bottom:22px}h2{font-size:42px}.date-section,.place,.dress{grid-template-columns:1fr;gap:45px}.calendar{padding:24px}.photo-band{height:320px}.arrival{padding-left:25px}.dress-images{height:440px}.dress-copy{order:-1}.counter{gap:22px}.counter strong{font-size:42px}.counter span{font-size:10px}.swatches{gap:10px}.swatches span{width:53px;height:53px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}}
/* Refined editorial edition */
:root{--cream:#f4f1eb;--gold:#bea57d}body{font-weight:400}header{position:absolute;z-index:4;top:0;left:0;right:0;background:transparent;border-bottom:1px solid #f4f1eb33;height:96px;padding:0 6%}nav a{letter-spacing:1px}.hero{min-height:860px;height:100svh;max-height:1200px;display:flex;align-items:center;justify-content:center;text-align:center;padding:110px 20px 90px;overflow:hidden}.hero-image{position:absolute;inset:0;margin:0;z-index:0;height:auto}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 47%;filter:brightness(.42) saturate(.8);transform:scale(1.025)}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#1023388c 0%,#172b4530 35%,#102338b8 100%)}.hero-copy{padding:35px 60px;max-width:1100px;width:100%}.hero-copy .eyebrow{margin-bottom:42px;letter-spacing:4px;color:#e7d6b8}.hero h1{font:normal clamp(86px,10vw,144px)/1.07 Georgia,serif;letter-spacing:-5px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:24px;margin-bottom:32px;text-shadow:0 5px 35px #0002}.hero .amp{font-size:.54em;font-style:italic;color:#d4b990}.hero-rule{margin:0 auto 25px;width:100px}.hero-date{letter-spacing:3px;font-size:16px}.hero-note{font:italic 24px Georgia,serif;color:var(--cream);margin:29px 0 37px}.hero .button{border-color:#f4f1eb70;padding:15px 34px}.hero-bottom{left:6%;bottom:28px;color:#ede3d3;font-size:12px}.hero-side{position:absolute;right:6%;bottom:28px;font-size:12px;letter-spacing:2px;z-index:1;color:#ede3d3}.hero-bottom{z-index:1}.section{position:relative;padding-top:128px;padding-bottom:128px}.section-index{font-size:12px;letter-spacing:2px;color:#737680;position:absolute;top:34px;left:6%}.invite{max-width:unset;padding-top:100px;padding-bottom:100px}.invite .section-index{position:static;margin-bottom:42px}.invitation-seal{width:82px;height:82px;border:1px solid #bea57d;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 45px;font:normal 25px Georgia,serif;color:var(--wine);gap:2px}.invitation-seal span{font-style:italic;font-size:17px;color:#bea57d}.invite h2{font-size:clamp(44px,5vw,74px)}.invite .body-copy{max-width:590px;font-size:17px;line-height:1.9}.signature{margin-top:42px}.editorial-gallery{display:grid;grid-template-columns:1fr .9fr 1fr;gap:40px;padding:0 6% 110px;align-items:center}figure{margin:0}.editorial-gallery img{width:100%;height:440px;object-fit:cover}.gallery-flower img{object-position:50% 44%}.gallery-detail{margin-top:115px}.gallery-detail img{height:340px}.editorial-gallery figcaption{font-size:12px;letter-spacing:2px;margin-top:16px;text-align:center;color:#696a70}.gallery-center{text-align:center}.gallery-quote{font:normal clamp(26px,2.7vw,40px)/1.5 Georgia,serif;letter-spacing:-.5px}.gallery-quote em{color:var(--wine)}.gallery-center>span{display:block;font:italic 28px Georgia,serif;color:var(--gold);margin-top:40px}.date-section{background:#e9e8e3;border:0;gap:110px}.calendar{border:0;border-top:1px solid #172b4540;border-bottom:1px solid #172b4540;padding:35px 10px}.calendar-title{margin-bottom:35px}.calendar-grid{gap:12px 5px}.day{font-size:23px}.selected{background:transparent;border-color:var(--wine);color:var(--wine)}.selected:after{background:#e9e8e3}.big-date{font-size:34px}.photo-band{height:480px;margin:0}.photo-band img{object-position:center 43%;filter:brightness(.4) saturate(.7)}.photo-quote{font-size:clamp(30px,4vw,56px)}.place{gap:110px}.arrival{align-self:center;border-left:0;padding:35px 0 35px 45px;border-top:1px solid #bea57d;border-bottom:1px solid #bea57d}.arrival-time{font-size:100px}.dress{background:var(--navy);color:var(--cream);gap:100px}.dress .section-index{color:#f4f1eb80}.dress h2 em{color:#d4b990}.dress-images{height:610px}.dress-images>img{height:90%;border-radius:160px 160px 0 0}.dress-images .style-photo{border-radius:0;border-color:var(--navy);width:46%;height:55%;border-width:10px}.swatches{margin:40px 0}.swatches span{border:1px solid #ffffff35;width:66px;height:66px}.dress-copy>p:not(.eyebrow){line-height:1.9}.counter{gap:65px}.counter strong{font-size:80px;color:var(--wine)}footer{background:#4a1822;padding:95px 20px 50px}.footer-names{font-size:clamp(40px,6vw,86px)}.reading-progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);z-index:9;width:0;pointer-events:none}@media(min-width:761px){.hero-copy:before,.hero-copy:after{content:'';position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(transparent,#d4b99080,transparent)}.hero-copy:before{left:0}.hero-copy:after{right:0}}@media(max-width:760px){header{height:76px}.hero{min-height:790px;max-height:none;padding:125px 6% 85px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:10px;letter-spacing:2.5px;margin-bottom:34px}.hero h1{font-size:82px;display:flex;flex-direction:column;gap:4px;letter-spacing:-3px;line-height:1.03}.hero .amp{font-size:42px;line-height:1.1}.hero-date{font-size:14px;letter-spacing:1px}.hero-note{font-size:22px}.hero-side{font-size:10px;letter-spacing:1px;bottom:25px}.hero-bottom{font-size:10px;bottom:25px}.hero-image img{object-position:52% 50%;position:absolute}.section{padding:90px 7% 75px}.section-index{top:28px;font-size:10px}.invite{padding-top:70px}.invite .section-index{margin-bottom:30px}.invite h2{font-size:43px}.invite .body-copy{font-size:16px}.editorial-gallery{grid-template-columns:1fr 1fr;gap:20px;padding:0 7% 70px}.editorial-gallery img{height:300px}.gallery-center{grid-column:1/-1;grid-row:2;padding-top:35px}.gallery-detail{margin-top:55px}.gallery-detail img{height:250px}.editorial-gallery figcaption{font-size:10px;letter-spacing:.8px}.gallery-quote{font-size:32px}.gallery-center>span{margin-top:25px}.date-section,.place,.dress{gap:45px}.photo-band{height:340px}.arrival{padding:30px 0}.arrival-time{font-size:86px}.dress-images{height:460px}.dress-copy{order:0}.dress-images{order:1}.swatches span{width:55px;height:55px}.counter{gap:30px}.counter strong{font-size:50px}.counter span{font-size:10px}footer{padding:70px 18px 40px}}@media(max-width:370px){.hero h1{font-size:70px}nav{gap:12px}.swatches span{width:47px;height:47px}.counter{gap:20px}}@media(prefers-reduced-motion:no-preference){.hero-image img{animation:hero-in 1.8s ease-out both}.hero-copy{animation:copy-in 1.3s ease-out both}@keyframes hero-in{from{transform:scale(1.09)}to{transform:scale(1.025)}}@keyframes copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}
.hero-image img{object-position:50% 50%}.dress-images{padding-right:0}.dress-images>img{height:100%;object-fit:cover}.swatches{max-width:280px;gap:35px}.swatches span{width:76px;height:76px}.swatches small{font-size:14px}.editorial-gallery .gallery-detail img{object-position:65% 50%}.photo-band img{object-position:50% 65%}.hero-image img{filter:brightness(.52) saturate(.88)}
.hero-image img{filter:brightness(.78) saturate(.95)}.hero-image:after{background:linear-gradient(180deg,#1023387a 0%,#172b451a 35%,#102338b0 100%)}@media(max-width:760px){.hero-image img{object-position:50% 50%;filter:brightness(.6) saturate(.9)}}
/* Satin buttons with tactile depth */
.button{position:relative;isolation:isolate;overflow:hidden;min-height:52px;padding:15px 30px;border-radius:9px;font-size:14px;letter-spacing:.6px;font-weight:500;line-height:1.5;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;border:1px solid #bea57d80}.button:before{content:'';position:absolute;inset:1px;border-radius:7px;border-top:1px solid #ffffff30;pointer-events:none}.button.light,.hero .button.light{color:#fff7ed;background:linear-gradient(145deg,#8b3a49 0%,#60222b 52%,#471822 100%);border-color:#d1ae888a;box-shadow:inset 0 1px 0 #ffffff26,inset 0 -2px 0 #260b1470,0 6px 0 #351019,0 12px 28px #0004;padding:16px 34px}.button.dark{color:#f5efe6;background:linear-gradient(145deg,#354d69 0%,#172b45 55%,#101f34 100%);border-color:#76899e70;box-shadow:inset 0 1px 0 #ffffff28,inset 0 -2px 0 #08142270,0 5px 0 #0a192b,0 11px 23px #172b452b}.button.light:hover,.hero .button.light:hover{color:#fff7ed;background:linear-gradient(145deg,#974353,#702936 55%,#531b28);transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff30,0 8px 0 #351019,0 17px 32px #0005}.button.dark:hover{color:#fff7ed;background:linear-gradient(145deg,#405a78,#203650 55%,#14263c);transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff30,0 7px 0 #0a192b,0 15px 26px #172b4533}.button.light:active,.hero .button.light:active,.button.dark:active{transform:translateY(4px);box-shadow:inset 0 2px 4px #0003,0 1px 0 #0a192b,0 4px 9px #0002}.button:focus-visible{outline:2px solid #bea57d;outline-offset:7px}.button{margin-bottom:7px}@media(prefers-reduced-motion:reduce){.button{transition:none}}
.venue-photo{grid-column:1/-1;margin:0 0 -45px}.venue-photo img{display:block;width:100%;height:510px;object-fit:cover;object-position:center 44%;border:1px solid #bea57d50;box-shadow:0 12px 35px #172b4515}.venue-photo figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:15px;font-size:12px;letter-spacing:1.6px;color:#696a70}.venue-photo figcaption a{text-underline-offset:4px;letter-spacing:.5px}@media(max-width:760px){.venue-photo{margin:0 0 0}.venue-photo img{height:300px}.venue-photo figcaption{font-size:10px;letter-spacing:.7px}}
body{font-family:'Manrope',Arial,sans-serif;line-height:1.8}h1,h2,h3,.hero h1,.signature,.monogram,.invitation-seal,.big-date,.calendar-title,.day,.photo-quote,.arrival-time,.gallery-quote,.gallery-center>span,.counter strong,.footer-names{font-family:'Cormorant Garamond',Georgia,serif}.hero h1{font-weight:400;font-size:clamp(92px,11vw,158px);letter-spacing:-2.2px;line-height:1.05}.hero .amp{font-style:italic;font-weight:400}.hero-note{font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;line-height:1.35}.hero-date{font-size:15px}.hero-copy .eyebrow{font-weight:500}h2{font-weight:400;font-size:clamp(48px,5.4vw,78px);line-height:1.1;letter-spacing:-.8px}.invite h2{font-size:clamp(50px,5.8vw,84px)}h3{font-size:34px}.signature{font-size:30px}.big-date{font-size:42px;letter-spacing:2px}.calendar-title{font-size:42px}.calendar-title span{font-size:30px}.day{font-size:26px;font-weight:500}.photo-quote{font-size:clamp(35px,4.6vw,66px)}.gallery-quote{font-size:clamp(31px,3.1vw,46px)}.counter strong{font-weight:400;font-size:90px}.footer-names{font-size:clamp(48px,6.5vw,96px)}.venue-photo img{object-position:center center;height:auto;aspect-ratio:1.75;object-fit:cover}.button{font-family:'Manrope',Arial,sans-serif;font-weight:500}.eyebrow{font-size:12px;line-height:1.7}@media(max-width:760px){.hero h1{font-size:96px;letter-spacing:-1px}.hero .amp{font-size:46px}.hero-note{font-size:28px}.hero-date{font-size:13px}h2,.invite h2{font-size:52px;line-height:1.08}.gallery-quote{font-size:37px}.photo-quote{font-size:38px}.calendar-title{font-size:38px}.counter strong{font-size:60px}.venue-photo img{height:auto;aspect-ratio:1.35;object-position:50% 50%}.button{font-size:13px}}@media(max-width:370px){.hero h1{font-size:82px}h2,.invite h2{font-size:46px}.counter strong{font-size:50px}}
.rsvp{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;background:#e9e8e3;border-bottom:1px solid #172b4520}.rsvp-heading{align-self:start;padding-top:12px}.rsvp-heading>p:last-child{max-width:360px}.guest-form>label,legend{font-size:15px;font-weight:500}.guest-form>input,.guest-form>textarea{display:block;width:100%;padding:15px 17px;border:1px solid #172b4530;border-radius:7px;background:#f8f5ef;font:inherit;font-size:16px;color:var(--navy);margin:9px 0 26px;outline-offset:4px}.guest-form textarea{resize:vertical;min-height:110px}.guest-form input:focus-visible,.guest-form textarea:focus-visible{outline:2px solid #60222b80}fieldset{border:0;padding:0;margin:0 0 27px;min-width:0}legend{padding:0;margin-bottom:12px}.attendance-options,.drink-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;display:flex;align-items:center;gap:11px;cursor:pointer;background:#f4f1eb;border:1px solid #172b4522;border-radius:7px;padding:13px 14px;font-size:14px;line-height:1.5;min-height:54px;transition:background .2s,border-color .2s,box-shadow .2s}.choice input{width:18px;height:18px;margin:0;accent-color:var(--wine);flex-shrink:0}.choice:has(input:checked){border-color:var(--wine);background:#60222b09;box-shadow:inset 0 0 0 1px #60222b25}.choice:focus-within{outline:2px solid #bea57d;outline-offset:3px}.field-hint{font-size:13px;font-weight:400;color:#606976;margin:0 0 14px}.form-privacy{font-size:12px;color:#606976;line-height:1.6;max-width:420px;margin-top:22px}.form-status{font-size:15px;line-height:1.7;margin:18px 0 0;color:var(--wine)}.form-status.success{color:var(--navy);border-left:2px solid var(--gold);padding-left:15px}.guest-form button:disabled{opacity:.65;cursor:wait;transform:none}button.button{cursor:pointer}[hidden]{display:none!important}@media(max-width:760px){.rsvp{grid-template-columns:1fr;gap:25px}.rsvp-heading>p:last-child{max-width:none}.guest-form{width:100%}header nav{gap:12px}header nav a{font-size:11px}.monogram{font-size:23px;letter-spacing:1px}.attendance-options{grid-template-columns:1fr}.choice{font-size:13px;padding:12px}.drink-grid{gap:8px}}@media(max-width:370px){header nav{gap:8px}header nav a{font-size:10px}.monogram{font-size:20px}.drink-grid{grid-template-columns:1fr}}
.venue-gallery{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:270px 270px auto;gap:18px;margin-top:-20px}.venue-shot{min-width:0;overflow:hidden}.venue-main{grid-row:1/3}.venue-terrace{grid-column:2;grid-row:1}.venue-detail{grid-column:2;grid-row:2}.photo-open{display:block;width:100%;height:100%;padding:0;border:0;background:var(--navy);position:relative;overflow:hidden;cursor:zoom-in;text-align:left;color:var(--cream)}.photo-open img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.venue-main img{object-position:44% 50%}.venue-terrace img{object-position:50% 55%}.photo-open:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#102338c2 100%);pointer-events:none}.photo-label{position:absolute;bottom:27px;left:28px;right:20px;z-index:1;display:block}.photo-label small{display:block;font-family:'Manrope',Arial,sans-serif;font-size:10px;letter-spacing:2px;margin-bottom:7px}.photo-label strong{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;font-weight:400;line-height:1.1}.venue-main .photo-label strong{font-size:48px}.photo-enlarge{position:absolute;top:17px;right:17px;z-index:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #fff7;border-radius:50%;background:#172b4560;font:normal 24px Arial,sans-serif}.photo-open:hover img{transform:scale(1.025)}.photo-open:focus-visible{outline:3px solid var(--gold);outline-offset:-5px}.venue-gallery-note{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#696a70;padding-top:2px}.venue-gallery-note a{text-underline-offset:4px}#venue-lightbox{max-width:min(1100px,94vw);width:fit-content;padding:40px 18px 14px;border:1px solid #bea57d70;border-radius:7px;background:var(--navy);color:var(--cream);box-shadow:0 20px 80px #0005}#venue-lightbox::backdrop{background:#081422d9;backdrop-filter:blur(5px)}#venue-full-photo{display:block;max-width:100%;width:auto;max-height:76svh;object-fit:contain}#venue-photo-title{text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;margin:12px 0 0}.lightbox-close{position:absolute;right:6px;top:0;background:transparent;border:0;color:var(--cream);font-size:31px;line-height:1;width:40px;height:40px;cursor:pointer}.lightbox-close:focus-visible{outline:2px solid var(--gold)}@media(max-width:760px){.venue-gallery{grid-template-columns:1fr 1fr;grid-template-rows:340px 220px auto;gap:10px;margin-top:0}.venue-main{grid-column:1/-1;grid-row:1}.venue-terrace{grid-column:1;grid-row:2}.venue-detail{grid-column:2;grid-row:2}.photo-label{left:14px;bottom:17px;right:10px}.photo-label small{font-size:8px;letter-spacing:1px;line-height:1.6}.photo-label strong{font-size:27px}.venue-main .photo-label strong{font-size:39px}.photo-enlarge{width:26px;height:26px;top:10px;right:10px;font-size:19px}.venue-gallery-note{flex-direction:column;gap:4px;font-size:11px;padding-top:7px}#venue-lightbox{padding:40px 9px 12px}#venue-photo-title{font-size:22px}}@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
/* Couture invitation: generous type, paper and satin */
:root{--cream:#f7f4ee;--navy:#13263e;--wine:#641f30;--gold:#bda078}body{background:var(--cream)}header{height:100px;border-bottom-color:#ffffff20}nav a{position:relative;font-size:14px;letter-spacing:.04em}nav a:after{content:'';position:absolute;bottom:-9px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .25s}nav a:hover:after{transform:scaleX(1)}.monogram{font-size:33px}.hero{min-height:850px}.hero-copy{max-width:1250px}.hero h1{font-size:clamp(105px,13vw,188px);line-height:1.12;letter-spacing:-.035em;gap:28px}.hero-copy:before,.hero-copy:after{display:none}.hero-image:after{background:linear-gradient(180deg,#09182a85,transparent 35%,#09182ac9),linear-gradient(90deg,#10213865,transparent 65%)}.hero-copy .eyebrow{font-size:12px;letter-spacing:.32em;margin-bottom:38px}.hero-rule{width:140px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.hero-note{font-size:33px;margin-top:22px}.hero-bottom,.hero-side{bottom:38px}.button,.button.light,.hero .button.light,.button.dark{border-radius:999px;padding:17px 32px;letter-spacing:.04em;min-height:58px;border-color:#bda07880;box-shadow:inset 0 1px 0 #ffffff40,inset 0 -2px 3px #0002,0 3px 0 #0c1828,0 12px 25px #13263e20}.button:before{border-radius:999px}.button.light,.hero .button.light{background:linear-gradient(160deg,#924359,#641f30 55%,#421324);box-shadow:inset 0 1px 0 #ffffff40,0 3px 0 #35101c,0 15px 35px #0004}.button.dark{background:linear-gradient(155deg,#3b526c,#13263e 60%,#09182a)}.button.dark:hover,.button.light:hover,.hero .button.light:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff40,0 5px 0 #0c1828,0 18px 30px #13263e30}.button.dark:active,.button.light:active{transform:translateY(2px)}.section{padding-top:145px;padding-bottom:145px}h2{font-size:clamp(55px,6vw,88px);line-height:1.08}.section-index{top:42px;color:#756959;letter-spacing:.16em}.invite{padding-top:110px;padding-bottom:120px}.invite h2{font-size:clamp(58px,6.6vw,96px)}.invitation-seal{width:105px;height:105px;font-size:34px;border:1px solid #bda07890;outline:1px solid #bda07845;outline-offset:7px;margin-bottom:50px}.invite .body-copy{max-width:610px;line-height:2}.signature{font-size:34px}.editorial-gallery{gap:55px;padding-bottom:135px}.gallery-flower img{height:530px}.gallery-detail{margin-top:150px}.gallery-detail img{height:370px}.editorial-gallery figcaption{font-size:12px;letter-spacing:.1em;text-align:left;padding-top:10px;border-top:1px solid #bda07860}.gallery-quote{font-size:clamp(35px,3.5vw,52px);line-height:1.25}.date-section{background:#eeeae2}.calendar{padding:40px 24px;border-color:#bda07880}.calendar-title{font-size:47px}.calendar-title span{font-size:32px}.selected{background:var(--wine);color:var(--cream);box-shadow:0 5px 15px #641f3020}.selected:after{display:none}.big-date{font-size:48px}.photo-band{height:540px}.photo-quote{font-size:clamp(40px,5vw,74px);line-height:1.2}.arrival{padding:45px 35px;border-color:#bda07875}.arrival-time{font-size:112px;line-height:1.1}.venue-gallery{gap:22px;grid-template-rows:300px 300px auto}.photo-label{bottom:33px;left:33px}.photo-label small{font-size:12px}.photo-label strong{font-size:42px}.venue-main .photo-label strong{font-size:57px}.venue-gallery-note{font-size:13px}.dress{background:linear-gradient(125deg,#172f4b,#0d1d32)}.dress-images{height:650px}.dress-images>img{border-radius:220px 220px 0 0;border:1px solid #bda07855;padding:10px;object-fit:cover}.swatches{max-width:300px;gap:45px}.swatches span{width:88px;height:88px;box-shadow:inset 0 2px 6px #ffffff15,0 6px 20px #0002;outline:1px solid #bda07860;outline-offset:6px}.rsvp{background:var(--cream);gap:100px}.guest-form{padding:40px;background:#fffdfa;border:1px solid #bda07855;box-shadow:0 20px 60px #13263e08}.guest-form>input,.guest-form>textarea{background:transparent;border-radius:0;border:0;border-bottom:1px solid #13263e50;padding:13px 0}.choice{background:#f6f2ec;border-radius:3px;border-color:#bda07845;min-height:60px}.choice:has(input:checked){background:#641f3009;border-color:var(--wine)}.guest-form button{width:100%;margin-top:12px}.form-privacy{font-size:13px}.countdown{border-top:1px solid #bda07845}.counter{gap:0;max-width:850px;margin:45px auto}.counter>div{flex:1;padding:0 24px;border-right:1px solid #bda07855}.counter>div:last-child{border:0}.counter strong{font-size:100px;line-height:1.2}.counter span{font-size:12px}footer{background:linear-gradient(135deg,#6b2638,#35101e);padding:105px 20px 60px}.footer-names{font-size:clamp(58px,8vw,114px)}
@media(max-width:760px){header{height:80px;padding:0 5%}header nav{gap:11px}header nav a{font-size:12px}.monogram{font-size:24px}.hero{min-height:850px;padding:130px 6% 85px}.hero h1{font-size:clamp(80px,23vw,118px);line-height:1.02;gap:10px;letter-spacing:-.02em}.hero .amp{font-size:48px}.hero-copy .eyebrow{font-size:12px;letter-spacing:.17em}.hero-note{font-size:29px}.hero-date{font-size:14px}.hero-side,.hero-bottom{font-size:11px;bottom:26px}.section{padding:95px 7% 85px}.section-index{font-size:12px;top:30px;letter-spacing:.08em}h2,.invite h2{font-size:56px}.invite{padding-top:78px}.invitation-seal{width:85px;height:85px;font-size:29px}.signature{font-size:29px}.editorial-gallery{gap:18px;padding:0 7% 85px}.gallery-flower img{height:320px}.gallery-detail{margin-top:60px}.gallery-detail img{height:260px}.editorial-gallery figcaption{font-size:12px;letter-spacing:0}.gallery-quote{font-size:42px}.date-section,.place,.dress{gap:45px}.big-date{font-size:38px}.calendar{padding:30px 12px}.photo-band{height:380px}.photo-quote{font-size:42px}.arrival{padding:30px 0}.arrival-time{font-size:95px}.venue-gallery{gap:12px;grid-template-rows:350px 225px auto}.photo-label{left:15px;bottom:20px}.photo-label small{font-size:12px;letter-spacing:0}.photo-label strong{font-size:29px}.venue-main .photo-label strong{font-size:44px}.venue-gallery-note{font-size:13px}.dress-images{height:490px}.swatches span{width:76px;height:76px}.rsvp{gap:30px}.guest-form{padding:25px 18px}.choice{font-size:14px}.button{font-size:14px}.counter>div{padding:0 10px}.counter strong{font-size:58px}.counter span{font-size:12px;letter-spacing:0}.countdown{padding-left:4%;padding-right:4%}footer{padding:80px 20px 45px}}@media(max-width:370px){header nav a{font-size:11px}header nav{gap:8px}h2,.invite h2{font-size:49px}.counter strong{font-size:48px}.hero-side{max-width:145px;text-align:right}.drink-grid{grid-template-columns:1fr}}
#invitation-envelope{position:fixed;inset:0;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:30px;border:0;background:radial-gradient(ellipse at 50% 30%,#253c57,#0b1a2d 80%);color:var(--cream);overflow:auto}#invitation-envelope::backdrop{background:#0b1a2d}.envelope-intro{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.envelope-intro>.eyebrow{color:#d8bd91;margin-bottom:18px}.envelope-intro h2{font-size:clamp(42px,6vw,72px);margin-bottom:60px}.envelope{width:min(540px,85vw);height:310px;position:relative;border:1px solid #ab69787a;border-radius:5px;background:linear-gradient(145deg,#7c3348,#501a2c);box-shadow:0 35px 80px #0006,inset 0 1px 0 #ffffff20;cursor:pointer;perspective:1000px;padding:0;color:var(--cream)}.envelope-card{position:absolute;inset:22px 25px;background:#f7f2e8;color:var(--wine);padding-top:48px;font:36px/1.35 'Cormorant Garamond',Georgia,serif;box-shadow:0 0 15px #0002;transition:transform .7s .5s}.envelope-card small{font:14px 'Manrope',sans-serif;letter-spacing:.15em}.envelope-pocket{position:absolute;inset:0;background:linear-gradient(150deg,#773046,#5d2033);clip-path:polygon(0 0,50% 55%,100% 0,100% 100%,0 100%);z-index:3}.envelope-flap{position:absolute;inset:0;background:linear-gradient(155deg,#94475b,#6b273c);clip-path:polygon(0 0,100% 0,50% 57%);transform-origin:top;transition:transform .7s ease;z-index:4;filter:drop-shadow(0 3px 2px #0004)}.envelope-seal{position:absolute;left:50%;top:44%;transform:translate(-50%,-10%);width:88px;height:88px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:3px;background:radial-gradient(circle at 35% 25%,#eedbb4,#bea073 55%,#8f6a41);color:#624529;border:1px solid #e6cfaa;outline:1px solid #8c673a;outline-offset:-7px;box-shadow:0 8px 15px #1c071b50,inset 0 2px 3px #fff8;font:30px 'Cormorant Garamond',serif;z-index:5;transition:opacity .25s,transform .4s}.envelope-seal i{font-size:22px}.envelope:hover .envelope-seal{transform:translate(-50%,-10%) scale(1.05)}.envelope:focus-visible{outline:3px solid #dfc49a;outline-offset:10px}.envelope-hint{font-size:14px;letter-spacing:.05em;color:#d6cbbc;margin:38px 0 15px}#skip-envelope{background:none;border:0;border-bottom:1px solid #ffffff35;color:#c1c6ce;font:13px 'Manrope',sans-serif;padding:7px;cursor:pointer}.opening .envelope-seal{opacity:0;transform:translate(-50%,-10%) scale(.8)}.opening .envelope-flap{transform:rotateX(180deg);z-index:2}.opening .envelope-card{transform:translateY(-95px)}#invitation-envelope.opening{animation:envelope-away .5s .9s forwards}@keyframes envelope-away{to{opacity:0}}#music-toggle{position:fixed;right:22px;bottom:22px;z-index:7;display:flex;align-items:center;gap:10px;padding:11px 16px;border:1px solid #bda07899;border-radius:999px;background:#13263eef;color:#f7f4ee;font:13px 'Manrope',sans-serif;box-shadow:0 6px 20px #0002;cursor:pointer;backdrop-filter:blur(12px)}#music-toggle>span:first-child{font-size:22px;color:#ddc49c}#music-toggle[aria-pressed=true]{background:#641f30}#music-toggle:focus-visible,#skip-envelope:focus-visible{outline:2px solid var(--gold);outline-offset:5px}@media(max-width:760px){#invitation-envelope{padding:25px 18px}.envelope-intro h2{margin-bottom:48px}.envelope{height:235px;width:min(430px,87vw)}.envelope-card{inset:15px 18px;font-size:29px;padding-top:32px}.envelope-card small{font-size:12px}.envelope-seal{width:72px;height:72px;font-size:26px}.envelope-hint{font-size:13px;max-width:260px;line-height:1.7}#music-toggle{bottom:14px;right:14px;padding:9px 13px}.opening .envelope-card{transform:translateY(-65px)}}@media(prefers-reduced-motion:reduce){.envelope-card,.envelope-flap,.envelope-seal{transition:none}#invitation-envelope.opening{animation:none}}
/* Give the names room above the open pocket. */
.envelope-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:26px 12px 0;gap:13px;overflow:visible;transition:transform .8s .4s}.envelope-names{display:block;white-space:nowrap;font-size:clamp(28px,4.5vw,42px);line-height:1.2}.envelope-names i{font-weight:400;color:#b28a57}.envelope-card small{display:block;line-height:1.5}.opening .envelope-card{transform:translateY(-155px)}#invitation-envelope.opening{animation:envelope-away .5s 2.2s forwards}.envelope-intro h2{transition:opacity .3s}.opening .envelope-intro h2,.opening .envelope-intro>.eyebrow{opacity:0}.opening .envelope-hint,.opening #skip-envelope{opacity:0;pointer-events:none}@media(max-width:760px){.envelope-card{padding:19px 8px 0;gap:12px}.envelope-names{font-size:clamp(25px,7.7vw,34px)}.envelope-card small{font-size:12px;letter-spacing:.1em}.opening .envelope-card{transform:translateY(-125px)}}@media(prefers-reduced-motion:reduce){#invitation-envelope.opening{animation:none}.envelope-card{transition:none}}
/* A restrained opening: fold, lift, then display the full card. */
.envelope{border-radius:3px;background:linear-gradient(140deg,#792d42,#491526);box-shadow:0 30px 65px #0005,inset 0 1px 0 #cf8c9b40;perspective:1400px}.envelope-pocket{background:linear-gradient(130deg,#80364a,#602034 65%,#541a2d)}.envelope-flap{backface-visibility:hidden;background:linear-gradient(150deg,#8e4054,#70263d);transition:transform .7s cubic-bezier(.4,0,.2,1),opacity .4s .25s}.envelope-card{inset:20px;background:linear-gradient(140deg,#fffdf6,#f1e8d8);border:1px solid #d1bd9970;outline:1px solid #bda07860;outline-offset:-12px;padding:35px 18px;justify-content:center;gap:18px;box-shadow:0 12px 30px #0002;z-index:1}.envelope-names{white-space:normal;max-width:100%;font-size:39px;line-height:1.3}.envelope-card small{font-size:13px;letter-spacing:.15em}.envelope-seal{width:76px;height:76px;top:43%;font-size:27px;box-shadow:0 5px 12px #280b1850,inset 0 2px 3px #fff6}.opening .envelope-flap{transform:rotateX(165deg);opacity:0}.opening .envelope-card{transform:none;animation:card-unfold 1.3s .35s cubic-bezier(.3,0,.15,1) forwards}.opening .envelope-pocket{transition:opacity .4s 1.05s;opacity:.35}@keyframes card-unfold{0%{transform:translateY(0);z-index:1}45%{transform:translateY(-100px);z-index:1}46%{z-index:6}100%{transform:translateY(-55px);z-index:6}}@media(max-width:760px){.envelope{height:235px}.envelope-card{inset:15px;padding:25px 16px;gap:13px;outline-offset:-9px}.envelope-names{font-size:clamp(27px,8vw,34px);line-height:1.25}.envelope-seal{width:67px;height:67px;font-size:24px}.opening .envelope-card{transform:none;animation-name:card-unfold-mobile}@keyframes card-unfold-mobile{0%{transform:translateY(0);z-index:1}45%{transform:translateY(-80px);z-index:1}46%{z-index:6}100%{transform:translateY(-35px);z-index:6}}}@media(prefers-reduced-motion:reduce){.opening .envelope-card{animation:none}.envelope-flap{transition:none}}

 .demo-ribbon{position:fixed;top:0;left:0;right:0;z-index:20;background:#f7f2e8;color:#13263e;display:flex;justify-content:space-between;align-items:center;padding:10px 5%;font:12px/1.5 'Manrope',sans-serif;border-bottom:1px solid #bda07880}.demo-ribbon a{font-size:14px;font-weight:500;text-underline-offset:4px}.demo-page header{top:42px}.demo-page .hero{padding-top:160px}.demo-offer{padding:100px max(7%,calc((100vw - 1100px)/2));background:#f7f2e8;color:#13263e;text-align:left;scroll-margin-top:65px}.demo-price{font:64px/1.2 'Cormorant Garamond',serif;color:#641f30;margin:20px 0}.demo-price small{display:block;font:14px/1.7 'Manrope',sans-serif;margin-top:12px;color:#13263e}.offer-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:40px}.offer-columns ul{padding-left:20px}.offer-columns li{margin-bottom:13px}.offer-columns h3{font-size:31px}.offer-columns p{font-size:15px;line-height:1.9}.demo-disclaimer{border-top:1px solid #bda07880;padding-top:25px;margin-top:35px;font-size:14px}.demo-other{display:inline-block;margin-top:20px;text-underline-offset:5px}.demo-page #invitation-envelope{padding-top:85px}.demo-page .envelope-intro>.eyebrow:before{content:'ДЕМОНСТРАЦИЯ · ';}.demo-page .form-status{font-size:14px}@media(max-width:760px){.demo-ribbon{padding:10px 4%;gap:10px}.demo-ribbon span{font-size:11px}.demo-ribbon a{font-size:12px}.demo-offer{padding:75px 7%}.offer-columns{grid-template-columns:1fr;gap:15px}.demo-price{font-size:54px}.demo-page .hero{padding-top:165px}.demo-page #invitation-envelope{padding-top:75px}}
.demo-page main{position:relative}.demo-page main:after{content:'ДЕМО · ALENA LAB';position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-24deg);font:500 clamp(28px,6vw,70px) 'Manrope',sans-serif;color:#bea57d45;letter-spacing:.08em;z-index:6;pointer-events:none;white-space:nowrap}.demo-page .envelope-card:after{content:'ДЕМО ALENA LAB';font:11px 'Manrope',sans-serif;letter-spacing:.14em;color:#926f48;margin-top:12px}

.demo-promo{display:inline-block;padding:10px 16px;background:#641f30;color:#fff8ee;border:1px solid #bda078;font-size:14px;line-height:1.6}.demo-price del{display:block;font:22px/1.5 Manrope,sans-serif;color:#77716a;text-decoration-thickness:1px;margin-bottom:8px}

.demo-page button:disabled{opacity:1;cursor:default;pointer-events:none}.demo-page a[aria-disabled=true]{cursor:default;pointer-events:none;text-decoration:none}.demo-page input:disabled,.demo-page textarea:disabled{opacity:1;color:#13263e;-webkit-text-fill-color:#13263e;cursor:default}.demo-page .choice{cursor:default}.demo-page #invitation-envelope[open]{position:relative;inset:auto;width:100%;height:650px;max-height:none;padding:95px 20px 45px;display:block;overflow:hidden}.demo-page:has(#invitation-envelope[open]) header{position:relative;top:auto;background:#13263e}.demo-page #skip-envelope{display:none}.demo-page #invitation-envelope .envelope-hint{max-width:360px}.demo-page .demo-ribbon a{pointer-events:none}.demo-page .demo-other{display:none}@media(max-width:760px){.demo-page #invitation-envelope[open]{height:590px;padding-top:100px}}

.demo-page .hero h1{font-size:clamp(85px,10vw,145px)}.demo-page .envelope-names{font-size:clamp(25px,4vw,34px)}@media(max-width:760px){.demo-page .hero h1{font-size:clamp(54px,16.5vw,88px)}.demo-page .footer-names{font-size:clamp(36px,9vw,54px)}.demo-page .envelope-names{font-size:clamp(25px,7vw,30px)}}
