:root{color:#392c2b;font-synthesis:none;text-rendering:optimizelegibility;--wine:#681d2d;--wine-dark:#42121e;--gold:#c6a36b;--cream:#fbf7f1;--ink:#392c2b;--muted:#847772;background:#fbf7f1;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.cover-screen{color:#f9f0e6;background:radial-gradient(at 50% 45%,#8b3947 0%,#681d2d 45%,#3f101c 100%);justify-content:center;align-items:center;min-height:100svh;padding:28px;display:flex;position:relative;overflow:hidden}.cover-screen:before,.cover-screen:after{content:"❧";color:#c9a875;opacity:.18;pointer-events:none;font-family:Georgia;font-size:clamp(150px,28vw,390px);position:absolute}.cover-screen:before{top:-80px;left:-70px;transform:rotate(-35deg)}.cover-screen:after{bottom:-120px;right:-75px;transform:rotate(145deg)}.cover-card{outline-offset:8px;text-align:center;z-index:1;background:linear-gradient(145deg,#ffffff09,#0000 45%);border:1px solid #d9b881cc;outline:1px solid #d9b88152;flex-direction:column;justify-content:center;align-items:center;width:min(570px,100%);min-height:680px;padding:60px 35px 45px;display:flex;position:relative}.cover-card:before,.cover-card:after{content:"✧";color:var(--gold);font-size:25px;position:absolute}.cover-card:before{top:15px;left:18px}.cover-card:after{bottom:15px;right:18px}.cover-ornament{color:var(--gold);margin-bottom:18px;font-size:28px}.eyebrow{letter-spacing:3px;color:var(--wine);margin:0 0 16px;font-size:10px;font-weight:600}.eyebrow.light{color:#e4cda8}.wax-seal{color:#f0d7a8;background:radial-gradient(circle at 35% 30%,#a34d5a,#641b2b 70%);border:1px solid #d7b77e;border-radius:50%;place-items:center;width:76px;height:76px;margin:8px 0 20px;font-family:Cormorant Garamond,serif;font-size:21px;display:grid;box-shadow:0 5px 18px #260b12aa,inset 0 0 0 5px #7e3040}.cover-names{color:#fff6eb;margin:0;font:400 clamp(48px,9vw,76px)/.9 Great Vibes,cursive}.cover-names span{color:var(--gold);margin:12px;font:italic 25px Cormorant Garamond,serif;display:block}.gold-rule{background:var(--gold);width:90px;height:1px;margin:26px auto 18px}.cover-date{letter-spacing:2px;color:#f0d9b6;font:500 12px DM Sans}.cover-copy{color:#f5e9dc;max-width:370px;margin:24px auto 30px;font:italic 19px/1.6 Cormorant Garamond,serif}.open-button,.gold-button,.submit-button{border:1px solid var(--gold);background:var(--gold);color:#35151b;letter-spacing:1.8px;cursor:pointer;padding:16px 24px;font-size:10px;font-weight:700;transition:all .25s}.open-button:hover,.gold-button:hover,.submit-button:hover{color:var(--gold);background:0 0}.open-button span{margin-left:12px}.cover-small{letter-spacing:2px;color:#d9bd98;margin-top:32px;font-size:8px}.cover-bottom{letter-spacing:2px;color:#d4b78e;z-index:1;font-size:8px;position:absolute;bottom:20px}.site-hidden{display:none}.site-visible{animation:.9s both fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.topbar{z-index:10;background:#fbf7f1;border-bottom:1px solid #e9dfd3;justify-content:space-between;align-items:center;height:76px;padding:0 6vw;display:flex;position:sticky;top:0}.brand{letter-spacing:2px;color:var(--wine);font:600 25px Cormorant Garamond}.brand span{color:var(--gold);padding:0 3px;font-size:13px}.nav{gap:25px;display:flex}.nav a{color:#675a55;font-size:10px;transition:color .2s}.nav a:hover{color:var(--wine)}.nav-rsvp{letter-spacing:1.5px;background:var(--wine);color:#fff;padding:13px 20px;font-size:9px}.menu-toggle{color:var(--wine);background:0 0;border:0;font-size:24px;display:none}.hero{text-align:center;color:#fff;background:#34131b;place-items:center;height:min(790px,100svh - 76px);min-height:690px;display:grid;position:relative;overflow:hidden}.hero-photo{filter:brightness(.54);background-image:url(https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=2200&q=90);background-position:50% 43%;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg,#2d0d168c,#320d1659),linear-gradient(#0000 50%,#23081080);position:absolute;inset:0}.hero-content{max-width:760px;padding:35px 20px;position:relative}.hero-invite{letter-spacing:3px;color:#ead8c3;margin:25px 0 20px;font-size:9px}.hero h1{color:#fff8ed;text-shadow:0 3px 20px #0004;margin:0;font:400 clamp(70px,12vw,126px)/.85 Great Vibes,cursive}.hero h1 span{color:var(--gold);margin:14px;font:italic 30px Cormorant Garamond;display:block}.hero-date{letter-spacing:2px;margin:28px 0 16px;font:12px Cormorant Garamond}.hero-date i{color:var(--gold);padding:0 8px}.hero-divider{color:var(--gold);font-size:20px}.hero-tagline{margin:15px 0 30px;font:italic 23px Cormorant Garamond}.gold-button{display:inline-block}.hero-side-note{writing-mode:vertical-rl;letter-spacing:2px;color:#e4cda8;font-size:8px;position:absolute;bottom:28px;right:25px}.section-pad{padding:105px max(7vw,24px)}.welcome{text-align:center;background:var(--cream)}h2{color:var(--wine);margin:0 0 20px;font:500 clamp(42px,6vw,64px)/1.05 Cormorant Garamond,serif}.welcome h2{font-size:clamp(48px,7vw,74px)}.body-copy{color:#81736d;max-width:570px;margin:0 auto;font:17px/1.75 Cormorant Garamond,serif}.flourish{color:var(--gold);margin:25px 0 5px;font:48px Cormorant Garamond}.script-line{color:var(--wine);margin:0 0 25px;font:36px Great Vibes}.date-small{margin-bottom:22px}.countdown{justify-content:center;gap:12px;max-width:520px;margin:0 auto;display:flex}.count-unit{background:#fffaf4;border:1px solid #dfcdb5;width:105px;padding:17px 8px}.count-unit strong{color:var(--wine);font:38px Cormorant Garamond;display:block}.count-unit span{letter-spacing:2px;color:#89796f;text-transform:uppercase;font-size:9px}.countdown-ended{color:var(--wine);font:italic 24px Cormorant Garamond}.story{background:#f0e8dd}.section-heading{text-align:center;margin-bottom:55px}.section-heading .body-copy{max-width:530px}.timeline{max-width:780px;margin:auto;position:relative}.timeline:before{content:"";background:#d6c3a8;width:1px;position:absolute;top:0;bottom:0;left:50%}.timeline-item{grid-template-columns:1fr 30px 1fr;align-items:start;gap:15px;min-height:125px;display:grid}.timeline-year{text-align:right;color:var(--gold);padding-top:2px;font:italic 27px Cormorant Garamond}.timeline-dot{border:2px solid var(--gold);z-index:1;background:#f0e8dd;border-radius:50%;justify-self:center;width:12px;height:12px;margin-top:8px}.timeline-text{padding-bottom:30px}.timeline-text h3{color:var(--wine);margin:0 0 7px;font:600 25px Cormorant Garamond}.timeline-text p{color:#81736d;max-width:310px;margin:0;font:15px/1.6 Cormorant Garamond}.gallery-section{background:var(--cream)}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:245px;gap:14px;max-width:1050px;margin:auto;display:grid}.gallery-photo{cursor:pointer;background:#e7d9c9;border:0;padding:0;position:relative;overflow:hidden}.gallery-photo img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-photo:hover img{transform:scale(1.06)}.gallery-photo span{color:#fff;text-align:left;letter-spacing:2px;opacity:0;background:linear-gradient(#0000,#28101899);padding:14px;font-size:9px;transition:all .3s;position:absolute;bottom:0;left:0;right:0}.gallery-photo:hover span{opacity:1}.photo-2,.photo-5{transform:translateY(25px)}.celebration{background:var(--wine-dark);color:#fff;text-align:center}.celebration h2,.location h2,.footer h2{color:#fff5e9}.light-copy{color:#d7c4b9}.event-grid{grid-template-columns:1fr 1fr;gap:20px;max-width:900px;margin:55px auto 0;display:grid}.event-card{color:#e7d9ce;background:linear-gradient(145deg,#ffffff08,#ffffff02);border:1px solid #b28b61;padding:42px 35px}.event-icon{color:var(--gold);font:35px Cormorant Garamond}.event-card .eyebrow{margin:18px 0 10px}.event-card h3{color:#fff1e4;margin:0 0 15px;font:500 34px Cormorant Garamond}.event-time{color:#d9c7b8;font:14px/1.8 Cormorant Garamond}.event-line{background:var(--gold);width:45px;height:1px;margin:22px auto}.event-card strong{color:#fff;font:600 15px Cormorant Garamond}.event-card p:not(.eyebrow):not(.event-time){color:#d9c7b8;font:14px Cormorant Garamond}.event-card small{color:#c9b5a4;margin:18px 0;font-size:10px;display:block}.event-card a{border-bottom:1px solid var(--gold);color:#e6c994;letter-spacing:1.5px;margin-top:8px;padding-bottom:5px;font-size:9px;display:inline-block}.programme{background:#f0e8dd}.schedule{max-width:610px;margin:auto}.schedule-row{border-bottom:1px solid #dfd2c2;grid-template-columns:120px 30px 1fr;align-items:center;gap:15px;min-height:65px;display:grid}.schedule-time{text-align:right;color:#987c5b;font:italic 18px Cormorant Garamond}.schedule-dot{color:var(--gold);text-align:center}.schedule-event{color:var(--wine);font:500 20px Cormorant Garamond}.location{text-align:center;color:#fff;background:linear-gradient(#3f111eeb,#3f111eeb),url(https://images.unsplash.com/photo-1519167758481-83f550bb49b3?auto=format&fit=crop&w=1800&q=80) 50%/cover}.location-box{text-align:left;background:#ffffff08;border:1px solid #b28b61;justify-content:space-between;align-items:center;gap:25px;max-width:720px;margin:45px auto 0;padding:35px;display:flex}.location-box h3{margin:8px 0;font:32px Cormorant Garamond}.location-box p{color:#d8c4b5;font:15px Cormorant Garamond}.location-box .gold-button{white-space:nowrap}.rsvp-section{background:var(--cream)}.rsvp-form{max-width:650px;margin:auto}.rsvp-form label{letter-spacing:.6px;color:#685953;margin-bottom:18px;font-size:11px;display:block}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{color:#493b36;background:#fffdf9;border:1px solid #dfd2c4;border-radius:0;outline:none;width:100%;margin-top:8px;padding:14px;display:block}.rsvp-form input:focus,.rsvp-form select:focus,.rsvp-form textarea:focus{border-color:var(--gold)}.form-two{grid-template-columns:1fr 1fr;gap:18px;display:grid}.submit-button{width:100%;margin-top:8px}.form-note{text-align:center;color:#9a8c83;font-size:10px}.rsvp-success{text-align:center;background:#fffaf4;border:1px solid #ddc9ad;max-width:560px;margin:auto;padding:40px 25px}.rsvp-success div{color:var(--gold);font-size:35px}.rsvp-success h3{color:var(--wine);font:36px Cormorant Garamond}.rsvp-success p{color:#81736d;font:16px/1.7 Cormorant Garamond}.outline-button{border:1px solid var(--wine);color:var(--wine);letter-spacing:1px;cursor:pointer;background:0 0;padding:12px 20px;font-size:10px}.gifts{text-align:center;background:#f0e8dd}.gift-details{color:#76665c;background:#fbf7f1;border:1px solid #d7c2a4;gap:10px;max-width:440px;margin:30px auto 0;padding:25px;font-size:12px;display:grid}.gift-details strong{color:var(--wine);font:22px Cormorant Garamond}.account-row{background:#f0e8dd;justify-content:space-between;align-items:center;padding:12px;display:flex}.account-row button{background:var(--wine);color:#fff;letter-spacing:1px;cursor:pointer;border:0;padding:9px 12px;font-size:9px}.gift-details small{color:#a28e7d;font-size:9px}.footer{text-align:center;color:#e8d8ca;background:#38101b;padding:75px 20px 35px}.footer-flower{color:var(--gold);margin-bottom:20px;font-size:35px}.footer h2{margin:12px 0 15px;font:400 clamp(48px,8vw,76px) Great Vibes}.footer h2 span{color:var(--gold);font:italic 24px Cormorant Garamond}.footer p:not(.eyebrow){color:#d9c7b8;font:italic 20px Cormorant Garamond}.footer-rule{background:var(--gold);width:80px;height:1px;margin:28px auto}.footer small{letter-spacing:2px;color:#c6a98a;font-size:8px}.lightbox{z-index:30;background:#140b0def;justify-content:center;align-items:center;padding:55px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:min(900px,80vw);max-height:80vh}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:45px;position:absolute}.lightbox-close{top:15px;right:25px}.lightbox-prev{left:20px}.lightbox-next{right:20px}@media (width<=800px){.topbar{height:65px;padding:0 22px}.menu-toggle{margin-left:auto;margin-right:18px;display:block}.nav{background:#fbf7f1;border-bottom:1px solid #e9dfd3;flex-direction:column;gap:18px;padding:18px 25px 24px;display:none;position:absolute;top:65px;left:0;right:0}.nav-open{display:flex}.nav-rsvp{padding:11px 15px}.hero{height:720px;min-height:620px}.section-pad{padding:78px 24px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px;gap:9px}.photo-2,.photo-5{transform:none}.event-grid{gap:12px}.event-card{padding:30px 20px}.location-box{text-align:center;flex-direction:column}.timeline:before{left:19px}.timeline-item{grid-template-columns:40px 1fr;gap:12px;min-height:125px}.timeline-year{text-align:left;grid-column:2;font-size:21px}.timeline-dot{grid-area:1/1/3;margin-top:8px}.timeline-text{grid-area:2/2;padding-bottom:25px}.timeline-year{padding-top:0}.hero-side-note{display:none}}@media (width<=520px){.cover-card{min-height:620px;padding:45px 22px}.cover-copy{font-size:17px}.hero{height:690px}.hero h1{font-size:76px}.hero-tagline{font-size:20px}.countdown{gap:6px}.count-unit{width:25%;padding:13px 4px}.count-unit strong{font-size:30px}.count-unit span{letter-spacing:1px;font-size:7px}.script-line{font-size:30px}.gallery-grid{grid-auto-rows:150px}.event-grid{grid-template-columns:1fr}.event-card{padding:32px 25px}.form-two{grid-template-columns:1fr;gap:0}.schedule-row{grid-template-columns:88px 22px 1fr;gap:9px}.schedule-time{font-size:16px}.schedule-event{font-size:18px}.location-box{padding:27px 18px}.lightbox{padding:35px 12px}.lightbox img{max-width:86vw}.lightbox-prev{left:0}.lightbox-next{right:0}}
