@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a30d4590597624b2-s.0h2wsznbgbbvc.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b4ab044919f0eb36-s.0384~l5onze9v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:400;font-display:swap;src:url(../media/bc4fab6e9f4f3910-s.p.0i4ae3_msjhzv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:500;font-display:swap;src:url(../media/792fa24fab1d716f-s.0x2g7yofl2rp~.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:500;font-display:swap;src:url(../media/4a88908243cf63de-s.0d~4pjj448-j2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:500;font-display:swap;src:url(../media/58707d05272fe245-s.p.15g60l9pnfpa9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5fd58a4ddd7a76dc-s.0h9o51b76t2x~.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:600;font-display:swap;src:url(../media/3695ab2af0d2c7bb-s.0x2d3c163v.6p.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:600;font-display:swap;src:url(../media/4e169a524d095b18-s.p.0yygorudlffo3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:700;font-display:swap;src:url(../media/dba53d64d49ca0eb-s.12i3.8ydf09k..woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2b4f485833c4c0ef-s.0cl464ry9yvoi.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inknut Antiqua;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a70c7e56877227c3-s.p.05m-u4jhwojjr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inknut Antiqua Fallback;src:local(Times New Roman);ascent-override:123.99%;descent-override:63.78%;line-gap-override:0.0%;size-adjust:137.35%}.inknut_antiqua_850ccee7-module__Um97hq__className{font-family:Inknut Antiqua,Inknut Antiqua Fallback;font-style:normal}
:root{--wedding-paper:#f3edda;--wedding-paper-image:url(/paper-background.jpg);--wedding-ink:#050505;--edge-space:clamp(1.25rem, 4vw, 5.25rem);--transition-ms:.56s;--art-aspect:1.3114;--nav-clearance:calc(3.4rem + env(safe-area-inset-bottom,0px));--text-caption:clamp(.75rem, .71rem + .18vw, .84rem);--text-body:clamp(.9rem, .86rem + .2vw, 1rem);--text-title:clamp(1.02rem, .96rem + .28vw, 1.16rem);--text-name:clamp(1.12rem, 1.04rem + .36vw, 1.32rem);--text-amp:var(--text-caption)}*{box-sizing:border-box}html{scrollbar-width:none;overflow-x:hidden}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}body{background:var(--wedding-paper-image) center / cover no-repeat, var(--wedding-paper);min-height:100vh;color:var(--wedding-ink);margin:0;overflow-x:hidden}button,a,input{font:inherit}a{color:inherit;text-decoration:none}.wedding-shell{overscroll-behavior:none;touch-action:none;height:100svh;position:relative;overflow:hidden}.monogram-screen,.section-stack,.wedding-section{position:absolute;inset:0}.monogram-screen{z-index:3;opacity:0;pointer-events:none;transition:opacity var(--transition-ms) ease, transform var(--transition-ms) ease;place-items:center;display:grid;transform:scale(.985)}.monogram-screen.is-current{opacity:1;pointer-events:auto;transform:scale(1)}.monogram-screen.is-previous{opacity:0;transform:scale(1.01)}.monogram-box{width:clamp(4.2rem,9vw,6.75rem)}.monogram-logo{width:100%;height:auto;display:block}.section-stack{z-index:2;pointer-events:none;transition:opacity var(--transition-ms) ease}.wedding-section{opacity:0;pointer-events:none;transition:opacity var(--transition-ms) ease, transform var(--transition-ms) ease;transform:translateY(18px)}.wedding-section.is-current{z-index:2;opacity:1;pointer-events:auto;transform:translateY(0)}.wedding-section.is-previous{z-index:1;opacity:0;transform:translateY(-10px)}.wedding-section--with-art{--copy-top:10.5svh;--copy-width:min(620px, calc(100vw - 2 * var(--edge-space)));--art-zone-top:26svh;--art-bottom:calc(var(--nav-clearance) + 3svh);--art-vw:62vw;--art-max-w:1200px;--art-width:min(var(--art-vw), var(--art-max-w), calc((100svh - var(--art-zone-top) - var(--art-bottom)) * var(--art-aspect)))}.section-inner{z-index:1;color:var(--wedding-ink);text-align:center;position:relative}.wedding-section--with-art .section-inner{top:var(--copy-top);width:var(--copy-width);position:absolute;left:50%;transform:translate(-50%)}.section-art{--event-art-rotation:0deg;--event-art-scale:1;--event-art-offset-y:0px;z-index:0;bottom:var(--art-bottom);width:var(--art-width);object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;height:auto;position:absolute;left:50%;transform:translate(-50%)}.wedding-section--event.wedding-section--with-art:not(.wedding-section--art-breakfast){--copy-top:clamp(4.75rem, 10.5svh, 7rem);--copy-art-gap:clamp(1.5rem, 3.5svh, 2rem);--event-art-vw:62vw;--event-art-max-w:780px;grid-template-rows:auto var(--copy-art-gap) minmax(0, 1fr) var(--nav-clearance);padding-top:var(--copy-top);justify-items:center;display:grid}.wedding-section--event.wedding-section--with-art:not(.wedding-section--art-breakfast) .section-inner{width:min(620px, calc(100vw - 2 * var(--edge-space)));grid-row:1;position:relative;top:auto;left:auto;transform:none}.wedding-section--event.wedding-section--with-art:not(.wedding-section--art-breakfast) .section-art{width:min(var(--event-art-vw), var(--event-art-max-w));max-width:100vw;max-height:100%;transform:translateY(var(--event-art-offset-y)) rotate(var(--event-art-rotation)) scale(var(--event-art-scale));grid-row:3;align-self:start;position:relative;top:auto;bottom:auto;left:auto}.wedding-section--art-dinner .section-art{--event-art-rotation:.5deg;--event-art-scale:1.07}.wedding-section--art-ceremony .section-art,.wedding-section--art-beach .section-art{--event-art-rotation:.5deg}.wedding-section--art-beach .section-art{--event-art-scale:1.07}.wedding-section--art-houses .section-art{--event-art-rotation:.5deg;--event-art-scale:.94}.wedding-section--art-breakfast{--copy-top:12svh;--art-zone-top:18svh;--art-bottom:calc(var(--nav-clearance) + 1svh);--art-vw:80vw;--art-max-w:1500px;--band-top:53svh}.wedding-section--art-breakfast .section-art{top:calc(var(--band-top) - var(--art-width) * .4575);bottom:auto}.wedding-section--invitation{--copy-top:8svh;--copy-width:min(640px, calc(100vw - 2 * var(--edge-space)));--art-vw:66vw;--art-max-w:1100px;--art-width:min(var(--art-vw), var(--art-max-w));--band-top:60svh;--text-caption:clamp(.72rem, .69rem + .15vw, .8rem);--text-body:clamp(.86rem, .82rem + .18vw, .95rem);--text-name:clamp(1.07rem, .99rem + .32vw, 1.25rem);--text-amp:var(--text-caption)}.wedding-section--invitation .section-art{top:calc(var(--band-top) - var(--art-width) * .412);bottom:auto}.wedding-section--event:not(.wedding-section--with-art) .section-inner{width:min(44ch, calc(100vw - 2 * var(--edge-space)));position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.wedding-section--event:not(.wedding-section--with-art) .text-line--lead{margin-bottom:clamp(1.1rem,2.8svh,2.2rem)}.wedding-section--event:not(.wedding-section--with-art) .section-actions{margin-top:clamp(1.6rem,3.6svh,2.5rem)}.text-line,.section-actions{margin:0}.text-list{gap:clamp(.18rem,.35svh,.32rem);margin-inline:auto;display:grid}.text-line{font-size:var(--text-body);font-weight:var(--body-weight,400);line-height:1.45}.wedding-section--invitation{--body-weight:500}.text-line--lead{font-size:var(--text-title);margin-bottom:clamp(.7rem,1.8svh,1.5rem);font-weight:600;line-height:1.2}.text-line--small,.text-line--meta{font-size:var(--text-caption);font-weight:400;line-height:1.5}.text-line--group-start{margin-top:clamp(.65rem,1.6svh,1.15rem)}.text-line--sub{font-size:var(--text-caption);margin-top:clamp(.7rem,1.8svh,1.5rem);font-weight:400;line-height:1.5}.text-line--sub+.text-line--sub{margin-top:0}.text-line--name{font-size:var(--text-name);font-weight:600;line-height:1.2}.text-line--ampersand{font-size:var(--text-amp);margin-top:clamp(.18rem,.65svh,.55rem);font-weight:400;line-height:1.2}.text-line--spaced{margin-top:clamp(.7rem,1.8svh,1.5rem)}.text-line a:focus-visible{outline:2px solid var(--wedding-ink);outline-offset:4px}.section-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:clamp(1.1rem,2.6svh,1.8rem);display:flex}.section-actions a{font-size:var(--text-body);border-bottom:2px solid;align-items:center;font-weight:600;line-height:1.3;display:inline-flex}.section-actions--floating{z-index:1;bottom:calc(20svh + 17px - var(--art-width) * .08375);margin-top:0;position:absolute;left:50%;transform:translate(-50%)}.section-actions--floating a{border-bottom-width:2px;font-size:clamp(.85rem,1.05vw,1.15rem)}.section-actions a:focus-visible,.nav-rail:focus-visible,.password-gate-input:focus-visible{outline:2px solid var(--wedding-ink);outline-offset:8px}.section-nav{z-index:5;bottom:calc(.9rem + env(safe-area-inset-bottom,0px));pointer-events:none;transition:opacity var(--transition-ms) ease;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem 1.5rem 0;display:flex;position:fixed;left:50%;transform:translate(-50%)}.section-nav[aria-hidden=true]{opacity:0;pointer-events:none}.wedding-shell:has(.section-nav.is-open) .section-stack{opacity:.15}.nav-rail{color:var(--wedding-ink);cursor:pointer;pointer-events:auto;background:0 0;border:0;flex-direction:column;align-items:center;gap:.55rem;padding:.35rem .9rem;display:flex}.nav-rail-labels{justify-items:center;display:grid}.nav-rail-label{white-space:nowrap;letter-spacing:.08em;animation:nav-label-in var(--transition-ms) ease backwards;transition:opacity var(--transition-ms) ease;grid-area:1/1;font-size:.72rem;font-weight:600;line-height:1.4}.nav-rail-label--leaving{animation:nav-label-out var(--transition-ms) ease forwards}.section-nav.is-open .nav-rail-label{opacity:0}@keyframes nav-label-in{0%{opacity:0}}@keyframes nav-label-out{to{opacity:0}}.nav-rail-track{background:#05050529;width:min(42vw,280px);height:3px;display:block;position:relative}.nav-rail-indicator{width:var(--indicator-width,calc(100% / var(--section-count)));background:var(--wedding-ink);height:100%;transform:translateX(var(--indicator-x,calc(var(--active-index) * 100%)));transition:transform var(--transition-ms) ease;will-change:transform;position:absolute;top:0;left:0}.nav-items{opacity:0;pointer-events:none;transition:opacity var(--transition-ms) ease, transform var(--transition-ms) ease;justify-content:center;align-items:center;gap:clamp(.9rem,2vw,1.5rem);display:flex;transform:translateY(6px)}.section-nav.is-open .nav-items{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-items button{color:var(--wedding-ink);cursor:pointer;opacity:.45;letter-spacing:.06em;background:0 0;border:0;padding:.3rem .1rem;font-size:.72rem;font-weight:600;line-height:1.4;transition:opacity .18s}.nav-items button:hover{opacity:.85}.nav-items button.active{opacity:1}.nav-items button:focus-visible{outline:0}.nav-items button:focus-visible span{outline:2px solid var(--wedding-ink);outline-offset:.28rem}.password-gate{z-index:10;background:var(--wedding-paper-image) center / cover no-repeat, var(--wedding-paper);place-items:center;transition:opacity .64s cubic-bezier(.33,0,.2,1);display:grid;position:fixed;inset:0}.password-gate.is-leaving{opacity:0;pointer-events:none}html[data-gate-unlocked=true] .password-gate{display:none}.password-gate-inner{justify-items:center;gap:clamp(1.3rem,3svh,2rem);transition:transform .64s cubic-bezier(.33,0,.2,1);display:grid}.password-gate.is-leaving .password-gate-inner{transform:translateY(-8px)scale(1.012)}.password-gate-logo{width:clamp(4.2rem,9vw,6.75rem);height:auto}.password-gate-label{letter-spacing:.09em;opacity:.62;margin-top:-.4rem;font-size:clamp(.7rem,.9vw,.8rem);font-weight:600}.password-gate-input{border:0;border-bottom:2px solid var(--wedding-ink);width:9ch;color:var(--wedding-ink);letter-spacing:.45em;text-align:center;background:0 0;padding:.25rem 0;font-size:clamp(1.25rem,1.8vw,1.5rem)}.password-gate-input:focus{outline:none}.password-gate-input.is-wrong{animation:.32s gate-shake}@keyframes gate-shake{20%{transform:translate(-6px)}45%{transform:translate(5px)}70%{transform:translate(-3px)}90%{transform:translate(2px)}}@media (max-width:900px){.wedding-section--with-art{--copy-inline:clamp(1.5rem, 8vw, 4rem);--copy-width:min(560px, calc(100vw - 2 * var(--copy-inline)));--art-bottom:max(calc(var(--nav-clearance) + 2svh), calc(54svh - 270px));--art-vw:93vw;--art-max-w:560px}.wedding-section--event.wedding-section--with-art:not(.wedding-section--art-breakfast){--copy-top:clamp(6.75rem, 17svh, 9.5rem);--event-art-vw:100vw;--event-art-max-w:640px}.wedding-section--event.wedding-section--with-art:not(.wedding-section--art-breakfast) .section-inner{width:min(560px, calc(100vw - 2 * var(--copy-inline)))}.wedding-section--art-breakfast{--copy-top:22svh;--art-zone-top:18svh;--art-bottom:calc(var(--nav-clearance) + 1svh);--art-vw:132vw;--art-max-w:700px;--band-top:66svh}.wedding-section--invitation{--copy-top:14svh;--copy-width:min(510px, calc(100vw - 2 * var(--copy-inline)));--art-vw:108vw;--art-max-w:660px;--band-top:64svh}.section-actions--floating{bottom:calc(var(--nav-clearance) + 8svh)}.wedding-section--event:not(.wedding-section--with-art) .section-inner{width:min(560px,100vw - 2*clamp(1.5rem,8vw,4rem))}.text-line--spaced{margin-top:clamp(.55rem,1.4svh,1.1rem)}}@media (max-width:680px){:root{--edge-space:clamp(1.35rem, 7vw, 2.2rem)}.wedding-section--art-dinner .section-art{--event-art-scale:1.03;--event-art-offset-y:-2.5svh}.wedding-section--art-ceremony .section-art{--event-art-scale:1.08;--event-art-offset-y:3.4svh}.wedding-section--art-beach .section-art{--event-art-scale:1.1;--event-art-offset-y:-.4svh}.wedding-section--art-houses .section-art{--event-art-scale:1.08;--event-art-offset-y:4svh}.nav-rail{padding:1rem 1.4rem .35rem}.nav-items{flex-direction:column;gap:.35rem}.nav-items button{padding:.28rem .6rem;font-size:.7rem}}@media (max-width:680px) and (max-height:650px){.wedding-section--art-dinner .section-art{--event-art-scale:1.03;--event-art-offset-y:-1svh}.wedding-section--art-ceremony .section-art{--event-art-scale:1.05;--event-art-offset-y:1.5svh}.wedding-section--art-beach .section-art{--event-art-scale:1.08;--event-art-offset-y:0px}.wedding-section--art-houses .section-art{--event-art-scale:1.02;--event-art-offset-y:1.5svh}}@media (min-height:800px) and (min-width:901px){.wedding-section--invitation{--copy-top:calc(8svh + .75rem)}}@media (min-height:800px) and (max-width:900px){.wedding-section--invitation{--copy-top:calc(14svh + .65rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
