@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(./cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(./cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff")}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(./geist-latin-400-normal-B40WzpMT.woff2) format("woff2"),url(./geist-latin-400-normal-akEymXtG.woff) format("woff")}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(./geist-latin-500-normal-CTWBw9NS.woff2) format("woff2"),url(./geist-latin-500-normal-BDXIbFrL.woff) format("woff")}:root{color-scheme:dark;--ink: #080808;--paper: #ecebe8;--muted: #8d8c88;--line: #ffffff1f;--amber: #e8b828;--gutter: clamp(20px, 5vw, 80px);--serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans: "Geist", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}h1,h2,p{margin:0}:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.bar{position:fixed;z-index:20;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:calc(env(safe-area-inset-top,0px) + 22px) var(--gutter) 22px;pointer-events:none}.bar a{pointer-events:auto;text-decoration:none}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:500;font-size:17px;letter-spacing:-.02em}.brand i{width:7px;height:7px;border-radius:50%;background:var(--amber);display:block}.bar-cta{font-size:14px;letter-spacing:.01em;padding:9px 16px;border:1px solid #ffffff38;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0808084d;transition:border-color .2s,background .2s}.bar-cta:hover{border-color:var(--amber);background:#08080880}.journey{position:relative;height:460svh}.stage,.chapters{position:sticky;top:0;height:100svh;overflow:hidden}.chapters{margin-top:-100svh;pointer-events:none}.scene{position:absolute;inset:0;margin:0;opacity:0;will-change:opacity,transform}.scene img{width:100%;height:100%;object-fit:cover;object-position:var(--fx) var(--fy);display:block;transform:scale(var(--push, 1));transform-origin:var(--fx) var(--fy)}.scene.is-active{opacity:1}.shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#080808b3,#08080800 22% 55%,#080808d9)}.stage:after{content:"";position:absolute;inset:-50%;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain 1s steps(6) infinite}@keyframes grain{0%{transform:translate(0)}33%{transform:translate(-4%,3%)}66%{transform:translate(3%,-5%)}to{transform:translate(-2%,2%)}}.chapter{position:absolute;inset:auto var(--gutter) calc(env(safe-area-inset-bottom,0px) + clamp(40px,9vh,96px));max-width:640px;display:grid;gap:14px;opacity:0;transform:translateY(var(--rise, 0px))}.chapter.is-shown{opacity:1}.chapter--hero{max-width:min(46vw,760px);gap:16px}.wordmark{font-family:var(--sans);font-weight:400;font-size:clamp(56px,9.5vw,168px);letter-spacing:-.055em;line-height:.9;margin-left:-.04em}@media(max-width:700px){.chapter--hero{max-width:none}}.lede{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.6vw,34px);color:#e2e1dc}.cue{margin-top:18px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#b4b3ae}.chapter h2,.rsvp h2{font-family:var(--serif);font-weight:400;font-size:clamp(36px,5vw,68px);line-height:1;letter-spacing:-.01em;text-wrap:balance}.said{font-size:clamp(15px,1.3vw,18px);color:#f4f3ef;max-width:46ch;min-height:3.2em;padding-left:20px;position:relative}.said:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--amber)}html:not(.js) .journey{height:auto}html:not(.js) .stage{height:100svh}html:not(.js) .chapters{position:static;height:auto;margin:0;display:grid;gap:64px;padding:96px var(--gutter)}html:not(.js) .chapter{position:static;opacity:1}html:not(.js) .chapter--hero{display:none}.statement{padding:clamp(120px,18vh,220px) var(--gutter);display:grid;gap:28px;justify-items:center;text-align:center}.statement-line{font-family:var(--serif);font-size:clamp(30px,4.2vw,58px);line-height:1.12;max-width:22ch;text-wrap:balance}.statement-coda{font-size:15px;letter-spacing:.02em;color:var(--muted)}.rsvp{padding:clamp(80px,12vh,140px) var(--gutter);border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:clamp(40px,7vw,120px);align-items:end;max-width:1280px;margin:0 auto}.rsvp-copy,.rsvp-action{display:grid;gap:22px}.rsvp-copy p:not(.eyebrow){color:#bdbcb7;max-width:46ch;font-size:17px}.rsvp-action{gap:16px}.cities{list-style:none;margin:0 0 14px;padding:0;display:grid;border-top:1px solid var(--line)}.cities li{font-family:var(--serif);font-size:clamp(22px,2vw,28px);padding:10px 0;border-bottom:1px solid var(--line)}.cta{display:inline-block;justify-self:start;text-decoration:none;font-weight:500;font-size:15px;color:#0b0905;background:var(--amber);border-radius:999px;padding:15px 28px;transition:filter .2s}.cta:hover{filter:brightness(1.08)}.cta[aria-disabled=true]{opacity:.6;cursor:default}.rsvp-status{font-size:14px;color:#c9c8c3;min-height:1.4em}@media(max-width:820px){.rsvp{grid-template-columns:1fr;align-items:start}}.footer{border-top:1px solid var(--line);padding:0 var(--gutter) calc(env(safe-area-inset-bottom,0px) + 32px)}.footer-wave{position:relative;height:clamp(180px,26vw,340px);touch-action:pan-y}.footer-wave canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.footer-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}.brand--small{font-size:14px;color:var(--paper)}@media(prefers-reduced-motion:reduce){.stage:after{animation:none}}
