@font-face{font-family:shelley;src:url(../media/shelley_script.p.32iouidyudvmx.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}.shelley_54b5833f-module__p1C6NG__className{font-family:shelley,Snell Roundhand,Apple Chancery,cursive;font-style:normal;font-weight:400}.shelley_54b5833f-module__p1C6NG__variable{--font-shelley:"shelley", Snell Roundhand, Apple Chancery, cursive}
@font-face{font-family:montserrat;src:url(../media/montserrat-s.p.3cumeu41nj36g.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:montserrat Fallback;src:local(Arial);ascent-override:87.85%;descent-override:22.78%;line-gap-override:0.0%;size-adjust:110.19%}.montserrat_11388173-module__06BUEq__className{font-family:montserrat,montserrat Fallback,Helvetica Neue,Arial,sans-serif;font-style:normal}.montserrat_11388173-module__06BUEq__variable{--font-montserrat:"montserrat", "montserrat Fallback", Helvetica Neue, Arial, sans-serif}
:root{--paper:#f5ecdd;--ink:#3d2314;--ink-soft:#3d23149e;--accent:#e4ceb6;--accent-soft:#f0e3d6;--accent-line:#a4723d;--accent-ink:#865e32;--accent-veil:#e4ceb661;--envelope:#d0ba98;--rule:#322d29;--white:#fff;--col:min(392px, 100vw);--col-max:100%;--wide-max:760px;--gutter:clamp(16px, 4.5vw, 22px);--script:var(--font-shelley), "Snell Roundhand", "Apple Chancery", cursive;--body:var(--font-montserrat), "Montserrat", "Helvetica Neue", Arial, sans-serif;--section-gap:clamp(2.25rem, 9vw, 3.25rem);--ease:cubic-bezier(.22, .61, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-synthesis-weight:none;-webkit-font-smoothing:antialiased;margin:0;font-weight:300;line-height:1.5;overflow-x:hidden}img,video,svg{max-width:100%;display:block}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px;border-radius:2px}.col{width:min(var(--col-max), 100%);margin-inline:auto}.col--text{padding-inline:var(--gutter)}.script{font-family:var(--script);letter-spacing:.01em;padding-inline:.12em;font-weight:400;line-height:1}.section{padding-block:var(--section-gap)}.section--tight{padding-top:0}.section--schedule{padding-bottom:0}.section--venue{padding-top:clamp(.5rem,3vw,1.25rem)}.section__title{font-family:var(--script);font-weight:400;font-size:calc(var(--col) * .125);text-align:center;text-wrap:balance;color:var(--ink);margin:0;line-height:1.06}.prose{font-size:max(15px, calc(var(--col) * .051));text-align:center;white-space:pre-line;margin:0;line-height:1.56}.eyebrow{font-size:max(11px, calc(var(--col) * .034));letter-spacing:.18em;text-transform:uppercase;text-align:center;color:var(--ink-soft);margin:0}.plate{width:100%;height:auto;display:block}.reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(26px)}.reveal[data-visible=true]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal,.reveal[data-visible=true]{opacity:1;transition:none;transform:none}}.intro{z-index:60;background:var(--envelope);width:100%;color:var(--ink);cursor:pointer;transition:opacity .7s var(--ease);border:0;padding:0;display:block;position:fixed;inset:0;overflow:hidden}.intro[data-leaving=true]{opacity:0;pointer-events:none}.intro__frame{place-items:center;display:grid;position:absolute;inset:0}.intro__envelope,.intro__film{width:min(var(--col-max), 100%);object-fit:cover;height:100%}.intro__film{opacity:0;margin:auto;transition:opacity .25s linear;position:absolute;inset:0}.intro[data-rolling=true] .intro__film{opacity:1}.intro__hint{left:0;right:0;bottom:max(1.75rem, env(safe-area-inset-bottom));font-size:max(13px, calc(var(--col) * .04));text-align:center;white-space:pre-line;margin:0;line-height:1.5;animation:2.6s ease-in-out infinite breathe;position:absolute}.intro[data-opening=true] .intro__hint{opacity:0;transition:opacity .2s linear}@keyframes breathe{0%,to{opacity:.72}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.intro,.intro__hint,.intro__film{transition:none;animation:none}}.controls{top:max(.75rem, env(safe-area-inset-top));right:max(.75rem, env(safe-area-inset-right));z-index:70;gap:.5rem;display:flex;position:fixed}.chip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:2.5rem;height:2.5rem;color:var(--ink);letter-spacing:.08em;cursor:pointer;transition:background .25s var(--ease), border-color .25s var(--ease);background:#f5ecdddb;border:1px solid #3d231447;border-radius:999px;place-items:center;padding:0;font-size:.7rem;font-weight:500;display:grid}.chip:hover:not(:disabled){background:var(--accent);border-color:var(--accent-line);color:var(--ink)}.chip:disabled{opacity:.5;cursor:default}.chip__icon{width:.95rem;height:.95rem}.lang-switch{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f5ecdddb;border:1px solid #3d231447;border-radius:999px;align-items:center;padding:.2rem;display:flex;position:relative}.lang-switch__knob{background:var(--accent);width:2.1rem;transition:transform .28s var(--ease);border-radius:999px;position:absolute;top:.2rem;bottom:.2rem;left:.2rem}.lang-switch[data-active=ky] .lang-switch__knob{transform:translate(2.1rem)}@media (prefers-reduced-motion:reduce){.lang-switch__knob{transition:none}}.lang-switch__option{cursor:pointer;letter-spacing:.08em;width:2.1rem;height:2.1rem;color:var(--ink-soft);transition:color .28s var(--ease);border-radius:999px;place-items:center;font-size:.68rem;font-weight:500;display:grid;position:relative}.lang-switch__option:has(input:checked){color:var(--ink)}.lang-switch__option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.lang-switch__option:has(input:focus-visible){outline:2px solid var(--accent-ink);outline-offset:3px}.hero{position:relative}.hero__frame{width:min(100%,45rem);height:100dvh;min-height:30rem;margin-inline:auto;position:relative;overflow:hidden}@supports not (height:100dvh){.hero__frame{height:100vh}}.hero__film,.hero__poster{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__names{padding-inline:var(--gutter);color:var(--white);text-align:center;text-shadow:0 2px 16px #261c1280;margin:0;position:absolute;bottom:9%;left:0;right:0}.hero__couple{font-family:var(--script);letter-spacing:.01em;justify-items:center;font-weight:400;line-height:1;display:grid}.hero__name{font-size:calc(var(--col) * .185)}.hero__amp{font-size:calc(var(--col) * .105);opacity:.85;line-height:1.15}.hero__date{font-size:max(12px, calc(var(--col) * .036));letter-spacing:.2em;text-transform:uppercase;margin-top:.5em;font-weight:300;line-height:1.3;display:block}.hero__scrim{pointer-events:none;background:linear-gradient(#2e221600,#2e221638 52%,#2e22168a);height:42%;position:absolute;bottom:0;left:0;right:0}.hero__edge{pointer-events:none;width:106%;max-width:none;height:auto;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.hero__music{cursor:pointer;background:0 0;border:0;place-items:center;width:8rem;height:8rem;margin:clamp(.5rem,3vw,1.25rem) auto 0;padding:0;display:grid}.hero__music:disabled{opacity:.55;cursor:default}.ring{width:100%;height:100%;overflow:visible}.ring__text{font-family:var(--body);letter-spacing:1.3px;text-transform:uppercase;fill:var(--ink);font-size:9.4px;font-weight:400}.ring__spin{transform-origin:50%;animation:26s linear infinite spin}.hero__music:disabled .ring__spin,.hero__music[data-playing=false] .ring__spin{animation-play-state:paused}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ring__spin{animation:none}}.ring__badge{fill:var(--white);stroke:#100e0f;stroke-width:1.1px}.ring__glyph{fill:#171717}.message__body{margin-top:clamp(.9rem,4vw,1.5rem)}.message__couple{font-family:var(--script);letter-spacing:.01em;color:var(--ink);justify-items:center;margin:clamp(1.1rem,4.5vw,1.7rem) 0;font-weight:400;line-height:1;display:grid}.message__name{font-size:calc(var(--col) * .16)}.message__amp{font-size:calc(var(--col) * .092);opacity:.85;line-height:1.15}.message__hosts{font-size:max(14px, calc(var(--col) * .045));text-align:center;margin:clamp(1.5rem,6vw,2.25rem) 0 0;line-height:1.5}.message__hosts-label{font-size:max(10px, calc(var(--col) * .032));letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.2em;display:block}.calendar{border:1px solid var(--rule);margin-top:clamp(1.1rem,5vw,1.9rem)}.calendar__caption{padding:calc(var(--col) * .028) 0;border-bottom:1px solid var(--rule);font-size:max(11px, calc(var(--col) * .036));letter-spacing:.18em;text-transform:uppercase;text-align:center;margin:0;font-weight:400}.calendar__grid{padding:calc(var(--col) * .022) calc(var(--col) * .018) calc(var(--col) * .03);grid-template-columns:repeat(7,1fr);display:grid}.calendar__weekday{padding-bottom:calc(var(--col) * .022);font-size:max(9px, calc(var(--col) * .029));letter-spacing:.04em;text-align:center;color:var(--ink-soft);line-height:1.2}.calendar__day{aspect-ratio:1;font-size:max(12px, calc(var(--col) * .042));font-variant-numeric:lining-nums tabular-nums;place-items:center;line-height:1;display:grid;position:relative}.calendar__number{position:relative}.calendar__day[data-wedding]:before{content:"";aspect-ratio:1280/1037;background:url(/assets/icons/heart.svg) 50%/contain no-repeat;width:132%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.calendar__day[data-wedding] .calendar__number{color:var(--paper);font-weight:500}.schedule__track{width:min(var(--col-max), 100%);margin-inline:auto;position:relative}.schedule__curve{width:100%;height:auto;margin-inline:auto}.schedule__line{fill:none;stroke:var(--accent-line);stroke-width:2px;stroke-linecap:round;stroke-dasharray:var(--len,4000);stroke-dashoffset:calc(var(--len,4000) * (1 - var(--progress,0)))}.schedule__runner{transform:var(--runner-rest)}@supports (offset-path:path("M0 0")){.schedule__runner{offset-rotate:0deg;offset-distance:calc(var(--progress,0) * 100%);transform:none}}.schedule__stop{text-align:center;width:66%;position:absolute;transform:translateY(-50%)}.schedule__stop[data-side=left]{left:0}.schedule__stop[data-side=right]{right:0}.schedule__moment{will-change:opacity, transform}.schedule__title{font-family:var(--script);font-weight:400;font-size:calc(var(--col) * .13);text-wrap:balance;margin:0;line-height:1.06}.schedule__time{font-size:calc(var(--col) * .095);font-variant-numeric:lining-nums tabular-nums;margin:.06em 0 0;font-weight:300;line-height:1}.venue{text-align:center;position:relative}.venue__address{font-size:max(15px, calc(var(--col) * .051));white-space:pre-line;margin:clamp(1rem,4vw,1.5rem) 0 0;line-height:1.56}.map-button{border:1px solid var(--accent-line);background:var(--accent);min-height:2.75rem;color:var(--ink);font-size:max(11px, calc(var(--col) * .031));letter-spacing:.14em;text-transform:uppercase;transition:background .3s var(--ease), color .3s var(--ease);border-radius:999px;align-items:center;gap:.6em;margin-top:clamp(1.25rem,5vw,1.9rem);padding:0 1.45rem;font-weight:400;line-height:1;text-decoration:none;display:inline-flex}.map-button:hover{color:var(--accent-ink);background:0 0}.map-button__pin{flex:none;width:.95em;height:.95em}.venue__photo{width:min(var(--wide-max), 100%);margin:clamp(2rem,8vw,3.5rem) auto 0}.countdown__card{width:min(var(--col-max), 100%);margin-inline:auto;position:relative}.countdown__head{inset-inline:0;color:var(--white);text-align:center;text-shadow:0 2px 14px #14100c8c;background:radial-gradient(74% 58%,#261c12a8,#261c1270 58%,#261c1200 82%);padding:1.15em 8% 1.35em;position:absolute;top:50%;transform:translateY(-50%)}.countdown__title{font-family:var(--script);font-weight:400;font-size:calc(var(--col) * .125);margin:0;line-height:1}.countdown__units{grid-template-columns:repeat(4,1fr);column-gap:.45em;margin:.5em 0 0;padding:0;list-style:none;display:grid}.countdown__value{font-size:calc(var(--col) * .1);font-variant-numeric:lining-nums tabular-nums;font-weight:300;line-height:1.15;display:block}.countdown__label{font-size:max(9px, calc(var(--col) * .029));letter-spacing:.04em;margin-top:.15em;line-height:1.2;display:block}.countdown__finished{font-size:max(12px, calc(var(--col) * .042));margin:.35em 0 0;line-height:1.3}.rsvp__form{gap:clamp(1.1rem,4vw,1.5rem);margin-top:clamp(1.75rem,7vw,2.75rem);display:grid}.field{border:0;gap:.35rem;margin:0;padding:0;display:grid}.field__label{font-size:max(14px, calc(var(--col) * .045));padding:0;font-weight:300;line-height:1.4}.field__input{border:0;border-bottom:1px solid var(--ink);width:100%;height:3rem;color:var(--ink);font-family:var(--body);font-size:max(14px, calc(var(--col) * .045));background:0 0;border-radius:0;padding:0;font-weight:300}.field__input::placeholder{color:#3d23146b}.field__input:disabled{opacity:.6}.field__error{font-size:max(12px, calc(var(--col) * .038));color:#8a3324;margin:0;line-height:1.4}.choice{cursor:pointer;min-height:2.75rem;font-size:max(14px, calc(var(--col) * .045));align-items:center;gap:.65rem;display:flex}.choice input{opacity:0;width:1px;height:1px;position:absolute}.choice__dot{border:1px solid var(--ink);border-radius:999px;flex:none;place-items:center;width:1.35rem;height:1.35rem;display:grid}.choice__dot:after{content:"";background:var(--accent-line);width:.7rem;height:.7rem;transition:transform .2s var(--ease);border-radius:999px;transform:scale(0)}.choice input:checked+.choice__dot:after{transform:scale(1)}.choice input:focus-visible+.choice__dot{outline:2px solid var(--accent-ink);outline-offset:3px}.pill-button{min-width:calc(var(--col) * .46);border:1px solid var(--ink);min-height:3rem;color:var(--ink);font-size:max(12px, calc(var(--col) * .04));letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease), color .3s var(--ease);background:0 0;border-radius:999px;justify-self:center;margin-top:clamp(.5rem,3vw,1rem);padding:0 1.75rem;font-weight:400}.pill-button:hover:not(:disabled){background:var(--accent);border-color:var(--accent-line);color:var(--ink)}.pill-button:disabled{opacity:.55;cursor:default}.rsvp__status{min-height:1.4em;font-size:max(13px, calc(var(--col) * .042));text-align:center;margin:0;line-height:1.45}.rsvp__status[data-tone=ok]{color:var(--accent-ink)}.rsvp__status[data-tone=bad]{color:#8a3324}.dresscode__text{margin-top:clamp(1rem,4vw,1.5rem)}.footer{padding-block:var(--section-gap) clamp(2rem, 8vw, 3rem);text-align:center}.footer__heart{width:calc(var(--col) * .13);aspect-ratio:1280/1037;background:url(/assets/icons/heart.svg) 50%/contain no-repeat;margin:0 auto clamp(.9rem,4vw,1.4rem);display:block}.footer__couple{font-family:var(--script);letter-spacing:.01em;justify-items:center;margin:0;font-weight:400;line-height:1;display:grid}.footer__name{font-size:calc(var(--col) * .135)}.footer__amp{font-size:calc(var(--col) * .08);opacity:.85;line-height:1.2}.footer__date{font-size:max(11px, calc(var(--col) * .036));letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin:.4rem 0 0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}@media (min-width:768px){:root{--section-gap:clamp(2.75rem, 4vw, 4rem);--col-max:392px}}
