.section{padding:100px 9%;max-width:1700px;margin:0 auto}.section h2{font-size:clamp(40px,4.5vw,64px);color:var(--wine);letter-spacing:-1.5px}.section h2 em{color:#cdb2a2}.center{justify-content:center}.countdown-band{background:var(--wine);color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:35px;padding:30px 9%}.countdown-band>p{font:italic 28px var(--serif);max-width:180px}.countdown{display:flex;align-items:center;gap:23px}.countdown div{display:flex;flex-direction:column;text-align:center;min-width:55px}.countdown strong{font:43px var(--serif);font-variant-numeric:tabular-nums;line-height:1.2}.countdown span{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#decccd;margin-top:3px}.countdown b{font-weight:400;font:25px var(--serif);color:#c3999e;align-self:flex-start;margin-top:9px}.countdown-note{font-size:12px;color:#decccd}.invitation{text-align:center;padding-top:107px;padding-bottom:100px}.invitation h2{margin:24px 0}.invitation-text{max-width:630px;margin:auto;color:var(--muted);font-size:15px;line-height:1.95}.signature{font:italic 49px var(--serif);color:var(--wine);margin:27px 0 0}.signature span{color:#a97667;padding:0 8px}.signature-note{font-size:12px;letter-spacing:1.5px;color:var(--muted)}.day-section{background:var(--paper-deep)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:44px}.section-heading h2{margin-top:14px}.text-button,.text-link{font-size:12px;padding:7px 0;border:0;border-bottom:1px solid #a8887e;background:none;color:var(--wine);letter-spacing:.2px;white-space:nowrap;align-self:flex-end}.text-button:hover,.text-link:hover{border-color:var(--wine)}.event-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cbbab0;border-bottom:1px solid #cbbab0}.event{position:relative;padding:41px 45px 39px 0}.event+ .event{border-left:1px solid #cbbab0;padding-left:55px}.event-number{position:absolute;right:35px;top:29px;font:60px var(--serif);color:#c7b1a8;opacity:.7}.event-kicker{font-size:12px;letter-spacing:2px;color:var(--muted);margin-bottom:19px}.event h3{font-size:37px;color:var(--wine);position:relative}.event-time{font-size:14px;margin:14px 0 24px}.event-address{font-size:14px;color:var(--muted);margin-bottom:22px;line-height:1.85}.event-address strong{font-weight:600;color:var(--ink)}.timezone-note{font-size:12px;color:var(--muted);margin-top:15px}.section-aside{font-size:14px;color:var(--muted);line-height:1.8}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;align-items:start}.gallery-item{position:relative;border:0;background:var(--paper-deep);padding:0;overflow:hidden}.gallery-item img{height:380px;transition:transform .5s;filter:saturate(.9)}.gallery-item:hover img{transform:scale(1.035)}.gallery-offset{margin-top:52px}.gallery-wide{grid-column:1 / -1;margin-top:4px}.gallery-wide img{height:430px;object-position:center 39%}.photo-expand{position:absolute;right:12px;bottom:12px;width:32px;height:32px;border-radius:50%;background:var(--paper);color:var(--wine);font:25px var(--serif);display:grid;place-items:center}.gallery-footnote{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;margin-top:20px;color:var(--muted)}.rsvp-section{background:var(--wine);display:grid;grid-template-columns:1fr 1fr;gap:12%;color:var(--paper)}.rsvp-copy{padding-top:20px}.rsvp-copy .eyebrow{color:#d8b8b4}.rsvp-copy h2{color:var(--paper);font-size:clamp(50px,5vw,72px);margin-top:26px;line-height:1.05}.rsvp-copy>p:not(.eyebrow){font-size:14px;color:#e3d4d1;max-width:310px;margin-top:25px;line-height:1.9}.rsvp-date{font:38px var(--serif);margin-top:58px}.rsvp-date span{display:block;font:12px var(--sans);letter-spacing:3px;margin-top:8px;color:#d8b8b4}.rsvp-form{background:var(--paper);color:var(--ink);padding:38px}.rsvp-form h3,.guest-form h3{color:var(--wine);font-size:35px;margin-bottom:10px}.form-intro{font-size:12px;color:var(--muted);margin-bottom:23px;line-height:1.7}form>label{display:block;font-size:12px;margin:18px 0 7px}input:not([type=radio]):not([type=checkbox]),textarea,select{width:100%;border:1px solid var(--line);border-radius:0;background:#fcfaf6;padding:12px 13px;font-size:14px;color:var(--ink);min-height:47px}textarea{resize:vertical;min-height:95px}input::placeholder,textarea::placeholder{color:#877978;font-size:12px}fieldset{padding:0;border:0;margin:24px 0}legend{font-size:12px;margin-bottom:10px}.radio-option{display:flex;align-items:center;gap:11px;font-size:12px;padding:10px 12px;border:1px solid var(--line);margin:8px 0;cursor:pointer}.radio-option:has(input:checked){border-color:var(--wine);background:#ede1df}.radio-option input{accent-color:var(--wine);width:16px;height:16px;flex-shrink:0}.form-privacy{font-size:12px;line-height:1.7;color:var(--muted);margin:13px 0 22px}.rsvp-form .button{width:100%}.form-status{font-size:14px;line-height:1.7;margin-top:14px;color:var(--wine)}.form-status:empty{margin:0}.button:disabled{cursor:wait;opacity:.6;transform:none}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.guestbook-entries{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.guestbook-empty{grid-column:1/-1;text-align:center;padding:30px;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:24px;line-height:1.5}.wish{border-top:1px solid var(--line);padding:25px 0}.wish .quote{font:48px var(--serif);line-height:1;color:var(--wine)}.wish p{font:25px/1.4 var(--serif);overflow-wrap:anywhere;white-space:pre-line}.wish footer{font-size:12px;margin-top:22px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.guest-form{max-width:600px;margin:40px auto 0;padding:30px;border:1px solid var(--line)}[hidden]{display:none!important}.consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.7;margin-bottom:20px}.consent input{margin-top:4px;accent-color:var(--wine);width:16px;height:16px;flex-shrink:0}.footer{text-align:center;padding:65px 9% 22px;background:var(--paper-deep);border-top:1px solid var(--line);color:var(--wine)}.footer-title{font:88px var(--serif);margin:15px 0;letter-spacing:-3px}.footer-title em{color:#a97667}.footer>p:not(.footer-title):not(.eyebrow){font-size:12px;letter-spacing:3px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:55px;font-size:12px;color:var(--muted)}.lightbox{border:0;background:#21151aeF;color:white;padding:45px;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;overflow:hidden}.lightbox::backdrop{background:#21151a}.lightbox[open]{display:flex;align-items:center;justify-content:center;gap:20px}.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;max-height:100%;min-width:0}.lightbox img{max-height:calc(100dvh - 125px);width:auto;max-width:100%;object-fit:contain}.lightbox figcaption{font-size:12px;margin-top:15px;letter-spacing:2px}.lightbox button{background:none;color:#fff;border:1px solid #ffffff55;width:44px;height:44px;flex-shrink:0;font-size:28px;line-height:1}.lightbox-close{position:absolute;right:24px;top:19px}.lightbox button:focus-visible{outline-color:white}
@media(max-width:1000px){.section{padding:75px 7%}.countdown-band{padding:25px 7%;gap:25px}.countdown{gap:14px}.countdown-note{display:none}.rsvp-section{gap:7%}.rsvp-form{padding:28px}.gallery-item img{height:300px}.gallery-wide img{height:380px}.event+.event{padding-left:35px}}
@media(max-width:700px){.section{padding:64px 7%}.section h2{font-size:43px;letter-spacing:-1px}.countdown-band{flex-direction:column;gap:14px;padding:25px 6% 29px}.countdown-band>p{max-width:none;font-size:25px}.countdown{gap:12px}.countdown strong{font-size:39px}.countdown span{font-size:12px}.countdown div{min-width:47px}.countdown-note{display:none}.invitation h2{font-size:40px}.invitation-text{font-size:14px}.section-heading{align-items:flex-start;gap:25px;flex-direction:column;margin-bottom:30px}.text-button{align-self:flex-start}.section-aside{display:none}.event-grid{grid-template-columns:1fr}.event{padding:33px 0}.event+.event{border-left:0;border-top:1px solid #cbbab0;padding:33px 0}.event-number{right:5px;top:23px}.event h3{font-size:36px}.gallery{grid-template-columns:1fr 1fr;gap:14px}.gallery-item img{height:260px}.gallery-offset{margin-top:28px}.gallery-item:nth-child(3){margin-top:-28px}.gallery-wide{grid-column:auto;margin-top:0}.gallery-wide img{height:260px;object-position:60% center}.rsvp-section{grid-template-columns:1fr;gap:35px}.rsvp-copy{padding-top:0}.rsvp-copy h2{font-size:52px}.rsvp-copy h2 br{display:none}.rsvp-copy h2 em{display:block;margin-top:5px}.rsvp-date{display:none}.rsvp-copy>p:not(.eyebrow){max-width:none}.rsvp-form{padding:26px 23px}.guestbook-entries{grid-template-columns:1fr}.guest-form{padding:22px}.guestbook-empty{font-size:23px;padding:28px 10px}.footer{padding:48px 7% 22px}.footer .eyebrow{font-size:12px}.footer-title{font-size:73px}.footer-bottom{margin-top:35px;font-size:12px}.lightbox{padding:62px 12px}.lightbox[open]{gap:8px}.lightbox button{width:34px;height:40px}.lightbox img{max-height:75dvh}.lightbox-close{top:15px;right:14px}}
.hero-description,.invitation-text,.rsvp-copy>p:not(.eyebrow),.event-address{font-size:16px}.date-seal span{letter-spacing:.3px;font-size:11px}form>label,legend,.radio-option{font-size:14px}.rsvp-copy h2 br:after{content:" "}
