/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.resize{resize:both}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}@font-face{font-family:Parisienne Local;src:url(/fonts/Parisienne-Regular.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Alex Brush Local;src:url(/fonts/AlexBrush-Regular.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:400}:root{--ivory:#fcf7f6;--paper:var(--ivory);--wine:#190019;--ink:var(--wine)}@supports (color:color-mix(in lab, red, red)){:root{--ink:color-mix(in srgb, var(--wine) 68%, black)}}:root{--slate:var(--wine)}@supports (color:color-mix(in lab, red, red)){:root{--slate:color-mix(in srgb, var(--wine) 82%, black)}}:root{--accent:#a45e74;--on-dark:var(--ivory);--accent-on-dark:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root{--accent-on-dark:color-mix(in srgb, var(--accent) 62%, var(--on-dark))}}:root{--text-muted:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--text-muted:color-mix(in srgb, var(--ink) 68%, transparent)}}:root{--text-soft:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--text-soft:color-mix(in srgb, var(--ink) 58%, transparent)}}:root{--surface:var(--ivory)}@supports (color:color-mix(in lab, red, red)){:root{--surface:color-mix(in srgb, var(--ivory) 72%, transparent)}}:root{--surface-strong:var(--ivory)}@supports (color:color-mix(in lab, red, red)){:root{--surface-strong:color-mix(in srgb, var(--ivory) 90%, transparent)}}:root{--line:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--line:color-mix(in srgb, var(--ink) 16%, transparent)}}:root{--on-dark-muted:var(--on-dark)}@supports (color:color-mix(in lab, red, red)){:root{--on-dark-muted:color-mix(in srgb, var(--on-dark) 72%, transparent)}}:root{--line-on-dark:var(--on-dark)}@supports (color:color-mix(in lab, red, red)){:root{--line-on-dark:color-mix(in srgb, var(--on-dark) 18%, transparent)}}:root{--shadow:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--shadow:color-mix(in srgb, var(--ink) 10%, transparent)}}:root{--font-script:"Parisienne Local", "Segoe Script", cursive;--font-monogram:"Alex Brush Local", "Segoe Script", cursive;--parallax-y:0px;--parallax-photo-y:0px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{background:var(--ivory);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif}body.invitation-open{overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}::selection{background:#b77d8447}.opening-scene{z-index:100;background:linear-gradient(var(--ivory), var(--ivory)), url(/assets/waterly-watercolor-hero-v3.webp) center / cover;place-items:center;min-height:100svh;display:grid;position:fixed;inset:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.opening-scene{background:linear-gradient(color-mix(in srgb, var(--ivory) 28%, transparent), color-mix(in srgb, var(--ivory) 18%, transparent)), url(/assets/waterly-watercolor-hero-v3.webp) center / cover}}.opening-scene{transition:opacity .65s .65s,visibility 0s linear 1.25s}.opening-scene:after{content:"";background:var(--ivory);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.opening-scene:after{background:color-mix(in srgb, var(--ivory) 42%, transparent)}}.opening-scene:after{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.opening-scene--active{opacity:0;visibility:hidden}.opening-scene__wash{z-index:1;aspect-ratio:1.5;background:var(--on-dark);border-radius:50%;width:min(820px,90vw);position:absolute}@supports (color:color-mix(in lab, red, red)){.opening-scene__wash{background:color-mix(in srgb, var(--on-dark) 60%, transparent)}}.opening-scene__wash{filter:blur(50px)}.opening-scene__eyebrow,.opening-scene__hint{z-index:6;color:var(--ink);letter-spacing:.32em;text-transform:uppercase;margin:0;font-size:.69rem;font-weight:600;position:absolute}.opening-scene__eyebrow{top:7%}.opening-scene__hint{flex-direction:column;align-items:center;gap:.65rem;display:flex;bottom:7%}.opening-scene__pointer{font-size:1.45rem;line-height:1;animation:1.8s ease-in-out infinite point-to-seal}.envelope{z-index:5;aspect-ratio:1.55;cursor:pointer;perspective:1000px;isolation:isolate;background:#e9e1da;border:0;border-radius:6px;width:min(860px,86vw);padding:0;transition:transform .35s;position:relative;box-shadow:0 32px 90px #433b362e,0 3px 8px #433b3624,inset 0 0 0 1px #6c5e542e}.envelope:hover{transform:translateY(-6px)rotate(-.25deg)}.envelope:focus-visible{outline:3px solid var(--wine);outline-offset:8px}.envelope>span:not(.wax-seal){pointer-events:none;position:absolute;inset:0}.envelope__paper{z-index:0;background:radial-gradient(circle at 25% 15%,#ffffffb3,#0000 30%),repeating-linear-gradient(103deg,#755f4306 0 1px,#0000 1px 5px),#f4efeb;border-radius:6px}.envelope__left{z-index:2;clip-path:polygon(0 0,52% 51%,0 100%);filter:drop-shadow(4px 0 5px #48403a24);background:linear-gradient(105deg,#f5f0ec,#e3d9d1)}.envelope__right{z-index:2;clip-path:polygon(100% 0,48% 51%,100% 100%);filter:drop-shadow(-4px 0 5px #48403a24);background:linear-gradient(255deg,#f3eeea,#ded3ca)}.envelope__bottom{z-index:3;clip-path:polygon(0 100%,50% 34%,100% 100%);filter:drop-shadow(0 -4px 5px #48403a21);background:linear-gradient(#ddd2c9,#e9e0d9)}.envelope__flap{z-index:4;clip-path:polygon(0 0,50% 70%,100% 0);filter:drop-shadow(0 5px 4px #48403a2b);transform-origin:top;transform-style:preserve-3d;-webkit-backface-visibility:visible;backface-visibility:visible;background:linear-gradient(#faf7f4 0%,#e6ddd6 95%)}.opening-scene--active .envelope__flap{animation:.85s cubic-bezier(.65,0,.35,1) forwards open-flap}.wax-seal{z-index:7;aspect-ratio:1;width:clamp(120px,17vw,185px);color:var(--accent-on-dark);background:radial-gradient(circle at 37% 32%, #ffffff38, transparent 14%), radial-gradient(circle, var(--wine) 0 54%, var(--wine) 56% 71%, var(--wine) 73% 100%);border-radius:46% 54% 51% 49%/51% 44% 56% 49%;place-items:center;display:grid;position:absolute;top:53%;left:50%}@supports (color:color-mix(in lab, red, red)){.wax-seal{background:radial-gradient(circle at 37% 32%, #ffffff38, transparent 14%), radial-gradient(circle, color-mix(in srgb, var(--wine) 82%, white) 0 54%, var(--wine) 56% 71%, color-mix(in srgb, var(--wine) 76%, white) 73% 100%)}}.wax-seal{transition:transform .3s;transform:translate(-50%,-50%)rotate(-4deg);box-shadow:0 12px 18px #3f131f57,inset 5px 6px 11px #ffffff29,inset -7px -7px 12px #400f1b54}.envelope:hover .wax-seal{transform:translate(-50%,-50%)rotate(1deg)scale(1.04)}.opening-scene--active .wax-seal{animation:.65s cubic-bezier(.7,-.2,.3,1.3) forwards break-seal}.wax-seal__rim{border:1px solid #f4c58473;border-radius:50%;position:absolute;inset:15%;box-shadow:inset 0 0 0 3px #450d1b40}.wax-seal__monogram{aspect-ratio:1;place-items:center;width:76%;display:grid;position:relative}.wedding-mark{width:100%;height:auto;color:var(--wine);display:block;overflow:visible}.wedding-mark__letter{fill:currentColor;font-family:var(--font-script);font-size:152px;font-weight:400}.wedding-mark__ampersand{fill:currentColor;font-family:var(--font-monogram);font-size:78px;font-weight:400}.wedding-mark--seal{opacity:1;color:var(--on-dark);filter:drop-shadow(0 1px 2px #190019c7)drop-shadow(0 5px 10px #1900196b);transform:scale(1.12)}.opening-scene__bird,.hero__birds span{border-top:2px solid #3d413dbf;border-radius:50% 50% 0 0;width:25px;height:10px;position:absolute}.opening-scene__bird:after,.hero__birds span:after{content:"";border-top:2px solid #3d413dbf;border-radius:50% 50% 0 0;width:25px;height:10px;position:absolute;top:-2px;left:19px;transform:rotate(-8deg)}.opening-scene__bird{z-index:3;animation:4s ease-in-out infinite bird-float}.opening-scene__bird--one{top:20%;right:18%;transform:rotate(8deg)scale(.85)}.opening-scene__bird--two{animation-delay:-1.4s;top:25%;right:12%;transform:rotate(-4deg)scale(.55)}@keyframes open-flap{to{z-index:1;transform:rotateX(178deg)}}@keyframes break-seal{45%{transform:translate(-50%,-50%)scale(1.08)rotate(5deg)}to{opacity:0;transform:translate(-50%,140%)scale(.7)rotate(24deg)}}@keyframes nudge{50%{transform:translateY(6px)}}@keyframes point-to-seal{50%{transform:translateY(-6px)scale(1.05)}}@keyframes bird-float{50%{translate:8px -6px}}.site-shell{animation:.8s both invitation-enter;position:relative;overflow:clip}@keyframes invitation-enter{0%{opacity:0}to{opacity:1}}.topbar{z-index:50;width:100%;height:78px;color:var(--on-dark);background:linear-gradient(var(--ink), transparent);justify-content:space-between;align-items:center;padding:0 4.5vw;display:flex;position:fixed;top:0;left:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:linear-gradient(color-mix(in srgb, var(--ink) 38%, transparent), transparent)}}.topbar__monogram{width:82px;height:50px;display:block}.wedding-mark--header{opacity:1;color:var(--on-dark);filter:drop-shadow(0 1px 2px #190019d1)drop-shadow(0 5px 12px #19001975);transform:scale(1.12)}.topbar__nav{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:clamp(1.2rem,2.8vw,2.8rem);font-size:.71rem;font-weight:600;display:flex}.topbar__nav a{position:relative}.topbar__nav a:not(.topbar__rsvp):after{content:"";background:currentColor;height:1px;transition:right .25s;position:absolute;bottom:-7px;left:0;right:100%}.topbar__nav a:hover:after{right:0}.topbar__rsvp{border:1px solid var(--on-dark);padding:.75rem 1.15rem}@supports (color:color-mix(in lab, red, red)){.topbar__rsvp{border:1px solid color-mix(in srgb, var(--on-dark) 65%, transparent)}}.topbar__rsvp{border-radius:999px}.topbar__actions{align-items:center;gap:.55rem;margin-left:clamp(.8rem,2vw,1.8rem);display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.language-picker{border:1px solid var(--on-dark);width:78px;height:34px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.language-picker{border:1px solid color-mix(in srgb, var(--on-dark) 42%, transparent)}}.language-picker{background:var(--ink);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.language-picker{background:color-mix(in srgb, var(--ink) 62%, transparent)}}.language-picker{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 18px #1900192e}.language-picker select{width:100%;height:100%;color:var(--on-dark);-webkit-appearance:none;appearance:none;cursor:pointer;letter-spacing:.06em;background:0 0;border:0;border-radius:999px;padding:0 1.35rem 0 .55rem;font-size:.65rem;font-weight:700}.language-picker select:focus-visible{outline:2px solid var(--on-dark);outline-offset:3px}.language-picker option{color:var(--ink);background:var(--ivory)}.language-picker__chevron{color:var(--on-dark);pointer-events:none;font-size:.75rem;position:absolute;top:50%;right:.52rem;transform:translateY(-58%)}.topbar__menu-button{display:none}.hero{min-height:100svh;color:var(--on-dark);text-align:center;isolation:isolate;place-items:center;display:grid;position:relative}.hero__image,.hero__veil{position:absolute;inset:0}.hero__image{z-index:-3;background:url(/assets/waterly-watercolor-hero-v3.webp) center calc(50% + var(--parallax-y)) / cover;animation:18s ease-in-out infinite alternate hero-breathe}.hero__veil{z-index:-2;background:linear-gradient(#1212146b,#1212142b 42%,#12121485),linear-gradient(#fcf7f60a,#fcf7f60a),radial-gradient(circle,#0000 30%,#12121457)}@keyframes hero-breathe{to{transform:scale(1.035)}}.hero__content{text-shadow:0 2px 20px #22242038;width:min(850px,88vw);padding-top:2rem}.hero__pretitle,.section-kicker{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;margin:0 0 1.35rem;font-size:.71rem;font-weight:650}.hero__pretitle{color:var(--on-dark)}@supports (color:color-mix(in lab, red, red)){.hero__pretitle{color:color-mix(in srgb, var(--on-dark) 88%, transparent)}}.hero__pretitle{margin-bottom:.45rem;font-size:14px}.hero__announcement{color:var(--on-dark);letter-spacing:.24em;text-transform:uppercase;margin:0 0 1.35rem;font-size:20px;font-weight:650}.hero h1{letter-spacing:-.055em;justify-content:center;align-items:center;gap:.65em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.5rem,9.2vw,8.6rem);font-weight:400;line-height:.95;display:flex}.hero h1 i{color:var(--on-dark);font-size:.42em;font-weight:400}.hero__date{letter-spacing:.43em;margin:2rem 0 0;font-size:clamp(.8rem,1.2vw,1rem);font-weight:600}.hero__note{margin:1.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.8vw,1.28rem);font-style:italic}.hero__note--empty{visibility:hidden;-webkit-user-select:none;user-select:none}.hero__scroll{letter-spacing:.24em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.55rem;font-size:.61rem;font-weight:650;display:flex;position:absolute;bottom:3.5vh;left:50%;transform:translate(-50%)}.hero__scroll span:last-child{font-size:1rem;animation:1.8s infinite nudge}.hero__birds span{animation:3.5s ease-in-out infinite bird-float;top:26%;right:17%}.hero__birds span:nth-child(2){animation-delay:-1s;top:31%;right:12%;transform:scale(.65)}.section-pad{padding:clamp(6rem,11vw,10rem) clamp(1.4rem,8vw,8rem)}[data-reveal]{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.75,.25,1);transform:translateY(28px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.intro{background:radial-gradient(circle at 85% 18%, #b77d8417, transparent 25%), var(--paper);grid-template-columns:.55fr 1.45fr;min-height:720px;display:grid;position:relative}.intro__mark{opacity:.2;width:clamp(8rem,16vw,14rem);color:var(--wine);filter:drop-shadow(0 2px 3px #19001961)drop-shadow(0 8px 18px #19001938);align-self:start;transform:scale(1.12)}.intro__copy{width:min(730px,100%)}.intro__copy>.section-kicker{text-align:left}.intro h2,.story h2,.date-section h2,.venue h2,.rsvp h2{letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,6.7vw,6.4rem);font-weight:400;line-height:.98}.intro__lede{max-width:650px;color:var(--text-muted);margin:3rem 0 0;font-size:clamp(1.1rem,1.8vw,1.42rem);line-height:1.8}.intro h2.intro__title{letter-spacing:-.04em;width:min(100%,760px);font-size:clamp(24px,6.4vw,56px);line-height:1}.intro__title-line{white-space:nowrap;display:block}.intro__title-line--one,.intro__title-line--two{letter-spacing:inherit;word-spacing:0;font-size:1em}.intro__title-line--three{letter-spacing:inherit;font-size:1.08em}@media (max-width:319px){.intro h2.intro__title{font-size:22px}}.couple-photo{background:radial-gradient(circle at 8% 18%, #b77d841f, transparent 24%), radial-gradient(circle at 91% 78%, #708d9421, transparent 23%), var(--ivory);padding:clamp(2rem,5vw,5rem);position:relative;overflow:hidden}.couple-photo__frame{aspect-ratio:1.56;width:min(1280px,100%);box-shadow:0 28px 80px var(--ink);margin:0 auto;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.couple-photo__frame{box-shadow:0 28px 80px color-mix(in srgb, var(--ink) 18%, transparent)}}.couple-photo__frame:before,.couple-photo__frame:after{content:"";z-index:2;pointer-events:none;position:absolute;inset:0}.couple-photo__frame:before{box-shadow:inset 0 0 0 12px var(--on-dark), inset 0 0 70px var(--on-dark)}@supports (color:color-mix(in lab, red, red)){.couple-photo__frame:before{box-shadow:inset 0 0 0 12px color-mix(in srgb, var(--on-dark) 72%, transparent), inset 0 0 70px color-mix(in srgb, var(--on-dark) 46%, transparent)}}.couple-photo__frame:after{background:linear-gradient(180deg, transparent 55%, var(--ink))}@supports (color:color-mix(in lab, red, red)){.couple-photo__frame:after{background:linear-gradient(180deg, transparent 55%, color-mix(in srgb, var(--ink) 56%, transparent))}}.couple-photo img{object-fit:cover;object-position:center 54%;width:100%;height:calc(100% + 18px);transform:translateY(var(--parallax-photo-y)) scale(1.025);transition:transform 80ms linear;display:block}.couple-photo__wash{z-index:1;background:var(--ivory);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.couple-photo__wash{background:color-mix(in srgb, var(--ivory) 7%, transparent)}}.couple-photo__wash{mix-blend-mode:soft-light}.couple-photo__caption{z-index:4;color:var(--on-dark);flex-direction:column;gap:.35rem;display:flex;position:absolute;bottom:clamp(1.5rem,3vw,3rem);left:clamp(1.5rem,4vw,4rem)}.couple-photo__caption span{font-family:var(--font-script);font-size:clamp(2rem,4vw,4rem);line-height:1}.couple-photo__caption small{letter-spacing:.18em;text-transform:uppercase;font-size:.64rem;font-weight:650}.story{color:var(--on-dark);background:var(--ink);position:relative;overflow:hidden}.section-kicker--light{color:var(--accent-on-dark)}.story__header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(4rem,8vw,7rem);display:flex}.story__header .section-kicker{width:13rem;margin-bottom:.75rem}.story__header h2{text-align:right;margin-left:auto}.story__header h2 em{color:var(--accent-on-dark);font-weight:400}.story__compact{max-width:900px;padding:0;display:block}.story__compact p{color:var(--on-dark-muted);margin:0;font-size:clamp(1rem,1.55vw,1.25rem);line-height:1.75}.date-section{text-align:center;background:radial-gradient(circle at 10% 70%, #6f8d9421, transparent 25%), radial-gradient(circle at 90% 16%, #b77d841f, transparent 25%), var(--paper);position:relative;overflow:hidden}.date-section h2 em{color:var(--wine);font-weight:400}.date-section__heading>p:last-child{letter-spacing:.3em;text-transform:uppercase;margin:1.6rem 0 0;font-size:.77rem;font-weight:650}.countdown{background:var(--surface);width:min(800px,100%);box-shadow:0 18px 55px var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:24px;grid-template-columns:repeat(4,1fr);gap:clamp(.25rem,1.2vw,.85rem);margin:clamp(3.5rem,7vw,6rem) auto;padding:clamp(.55rem,1.4vw,.9rem);display:grid}.countdown__item{background:var(--ivory);border-radius:17px;padding:1.2rem .5rem 1.05rem}@supports (color:color-mix(in lab, red, red)){.countdown__item{background:color-mix(in srgb, var(--ivory) 58%, transparent)}}.countdown strong{color:var(--wine);font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.7rem);font-weight:400;line-height:1;display:block}.countdown span{color:var(--text-muted);letter-spacing:.16em;text-transform:uppercase;margin-top:.6rem;font-size:.62rem;font-weight:650;display:block}.schedule{text-align:left;width:min(900px,100%);margin:0 auto clamp(3rem,5vw,4.5rem)}.schedule__item{border-bottom:1px solid var(--line);grid-template-columns:145px 1px 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3rem) 0;display:grid}.schedule__item:last-child{border-bottom:0}.schedule time{font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,3.3rem)}.schedule__line{background:var(--line)}.schedule .section-kicker{margin:0 0 .7rem}.schedule h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400}.schedule__item div>p:last-child{max-width:520px;color:var(--text-muted);margin:.7rem 0 0;line-height:1.65}.button{min-height:54px;color:inherit;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid;border-radius:999px;justify-content:center;align-items:center;gap:1.8rem;padding:.95rem 1.5rem;font-size:.68rem;font-weight:700;transition:color .25s,background .25s,transform .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--ghost:hover{color:var(--on-dark);background:var(--ink)}.venue{color:var(--on-dark);background:var(--slate);flex-direction:column;display:flex;position:relative}.venue__art{background:var(--slate);min-height:clamp(520px,72vh,820px);position:relative;overflow:hidden}.venue__art:before{content:"";transform:translateY(calc(-1 * var(--parallax-y)));will-change:transform;background:url(/assets/waterly-watercolor-evening.jpg) 50%/cover no-repeat;position:absolute;inset:-56px 0}.venue__card{background:var(--slate);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:365px;padding:clamp(2.2rem,4vw,3.2rem);display:flex}.venue__brand{color:var(--on-dark-muted);letter-spacing:.2em;text-transform:uppercase;margin:.55rem 0 1.15rem;font-size:.72rem;font-weight:650}.venue address{border-block:1px solid var(--line-on-dark);width:min(620px,100%);padding:.75rem 0;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-style:normal;line-height:1.7}.button--light{align-self:center}.venue .button--light{margin-top:1.35rem}.button--light:hover{color:var(--slate);background:var(--on-dark)}.directions{color:var(--ink);background:var(--ivory);padding:clamp(2.7rem,5vw,4.5rem) clamp(1.3rem,8vw,8rem)}.directions__faq{background:var(--surface);border:1px solid #ad805061;max-width:940px;margin:0 auto}.directions__faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.2rem 1.35rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.15rem,2vw,1.55rem);list-style:none;display:flex}.directions__faq summary::-webkit-details-marker{display:none}.directions__faq summary i{color:var(--accent);font-family:Arial,sans-serif;font-size:1.25rem;font-style:normal;font-weight:300;transition:transform .25s}.directions__faq[open] summary{border-bottom:1px solid #ad805038}.directions__faq[open] summary i{transform:rotate(45deg)}.directions__answer{padding:1.2rem 1.35rem 1.35rem}.directions__answer p{max-width:780px;color:var(--text-muted);margin:0;font-size:.94rem;line-height:1.7}.directions__answer p+p{margin-top:1rem}.directions__answer strong{color:var(--ink);font-weight:650}.directions__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.2rem;display:flex}.directions__actions .button{min-width:160px;min-height:46px;padding-block:.72rem}.directions__actions .button--wine{border-radius:999px;width:auto}.rsvp{background:linear-gradient(var(--ivory), var(--ivory)), url(/assets/waterly-watercolor-evening.jpg) center / cover fixed;grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(4rem,9vw,9rem);display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.rsvp{background:linear-gradient(color-mix(in srgb, var(--ivory) 88%, transparent), color-mix(in srgb, var(--ivory) 94%, transparent)), url(/assets/waterly-watercolor-evening.jpg) center / cover fixed}}.rsvp{padding-bottom:clamp(2.5rem,4vw,4rem)}.rsvp__heading{position:sticky;top:8rem}.rsvp__heading>p:last-child{max-width:480px;color:var(--text-muted);margin:2rem 0 0;font-size:1.08rem;line-height:1.75}.rsvp__contacts{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-card{border:1px solid var(--line);background:var(--surface-strong);box-shadow:0 24px 60px var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:.75rem;padding:clamp(1.6rem,3vw,2.4rem);display:flex}.contact-card .section-kicker{margin-bottom:0}.contact-card h3{margin:.15rem 0 .8rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:400}.contact-action{border:1px solid var(--line);background:var(--ivory);border-radius:4px;align-items:center;gap:.85rem;min-height:66px;padding:.7rem;display:flex}@supports (color:color-mix(in lab, red, red)){.contact-action{background:color-mix(in srgb, var(--ivory) 58%, transparent)}}.contact-action{transition:transform .2s,border-color .2s,background .2s}.contact-action:hover{border-color:var(--wine)}@supports (color:color-mix(in lab, red, red)){.contact-action:hover{border-color:color-mix(in srgb, var(--wine) 42%, transparent)}}.contact-action:hover{background:var(--on-dark)}@supports (color:color-mix(in lab, red, red)){.contact-action:hover{background:color-mix(in srgb, var(--on-dark) 90%, transparent)}}.contact-action:hover{transform:translateY(-2px)}.contact-action__icon{aspect-ratio:1;width:42px;color:var(--on-dark);background:var(--wine);border-radius:50%;flex:0 0 42px;place-items:center;font-size:1.05rem;display:grid}.contact-action__icon--whatsapp{background:0 0;position:relative;overflow:hidden}.contact-action__icon--whatsapp img{width:90px;max-width:none;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.contact-action>span:last-child{flex-direction:column;gap:.16rem;min-width:0;display:flex}.contact-action small{color:var(--text-soft);letter-spacing:.15em;text-transform:uppercase;font-size:.55rem;font-weight:700}.contact-action strong{overflow-wrap:anywhere;font-size:.86rem;font-weight:600}.contact-action--whatsapp strong{color:#167c3b}.button--wine{width:100%;color:var(--on-dark);border-color:var(--wine);background:var(--wine);border-radius:2px}.button--wine:hover{background:var(--wine)}@supports (color:color-mix(in lab, red, red)){.button--wine:hover{background:color-mix(in srgb, var(--wine) 78%, var(--ink))}}.footer{color:var(--on-dark);background:var(--ink);text-align:center;padding:clamp(4rem,8vw,7rem) 1.5rem 2.5rem}.footer__monogram{opacity:1;width:clamp(6.5rem,10vw,9rem);color:var(--on-dark);filter:drop-shadow(0 1px 2px #190019bf)drop-shadow(0 5px 12px #19001966);margin:0 auto;transform:scale(1.12)}.footer p{color:var(--on-dark-muted);letter-spacing:.2em;text-transform:uppercase;margin:1.4rem 0 0;font-size:.68rem;font-weight:600}.footer p.footer__last{font-size:.9rem}.petals{z-index:45;pointer-events:none;position:fixed;inset:0;overflow:hidden}.petals .petal{animation:linear infinite petal-fall;position:absolute;top:-30px}.petals .petal--rose{background:#cf969e9e;border-radius:70% 10% 70% 20%;width:10px;height:16px;box-shadow:inset -2px -2px 3px #6f26381f}.petals .petal--lily{clip-path:polygon(50% 0,94% 28%,79% 100%,49% 82%,16% 100%,3% 30%);background:linear-gradient(150deg,#dccbe7b8,#b59aca94);border-radius:54% 12% 60% 16%;width:12px;height:21px;box-shadow:inset -2px -3px 4px #5b397229}.petals .petal--lily:after{content:"";background:#5f3e7338;width:1px;height:64%;position:absolute;top:18%;left:49%;transform:rotate(5deg)}.scroll-florals{z-index:16;pointer-events:none;position:fixed;inset:0;overflow:hidden}.scroll-floral{--floral-y:0px;--floral-scale:.96;--floral-scroll-rotate:0deg;--floral-base-rotate:0deg;opacity:0;transform:translate3d(0, var(--floral-y), 0) rotate(calc(var(--floral-base-rotate) + var(--floral-scroll-rotate))) scale(var(--floral-scale));transform-origin:50%;will-change:transform, opacity;position:absolute}.scroll-floral img{--floral-mirror:1;width:100%;height:auto;filter:saturate(.86) drop-shadow(0 15px 22px var(--ink));display:block}@supports (color:color-mix(in lab, red, red)){.scroll-floral img{filter:saturate(.86) drop-shadow(0 15px 22px color-mix(in srgb, var(--ink) 12%, transparent))}}.scroll-floral img{transform-origin:bottom;animation:7.5s ease-in-out infinite alternate edge-floral-sway}.scroll-floral--one{--floral-base-rotate:-8deg;width:clamp(245px,29vw,430px);top:17%;left:clamp(-190px,-11vw,-92px)}.scroll-floral--two{--floral-base-rotate:-11deg;width:clamp(230px,24vw,365px);bottom:5%;right:clamp(-150px,-8vw,-72px)}.scroll-floral--four img{--floral-mirror:-1}.scroll-floral--four{--floral-base-rotate:12deg;width:clamp(230px,24vw,365px);bottom:4%;left:clamp(-150px,-8vw,-72px)}@keyframes petal-fall{0%{opacity:0;translate:0 -30px;rotate:none}10%{opacity:.75}55%{translate:50px 52vh;rotate:210deg}to{opacity:0;translate:-20px 105vh;rotate:440deg}}@keyframes edge-floral-sway{0%{transform:scaleX(var(--floral-mirror)) rotate(-.7deg) translateY(0)}to{transform:scaleX(var(--floral-mirror)) rotate(.9deg) translateY(-7px)}}.music-toggle{z-index:60;border:1px solid var(--on-dark);justify-content:center;align-items:center;width:52px;height:52px;padding:0;display:flex;position:fixed;bottom:clamp(1rem,2.5vw,2rem);right:clamp(1rem,2.5vw,2rem)}@supports (color:color-mix(in lab, red, red)){.music-toggle{border:1px solid color-mix(in srgb, var(--on-dark) 46%, transparent)}}.music-toggle{color:var(--on-dark);background:var(--ink);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.music-toggle{background:color-mix(in srgb, var(--ink) 82%, transparent)}}.music-toggle{box-shadow:0 10px 30px var(--shadow);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);cursor:pointer;transition:transform .2s,opacity .2s}.music-toggle:hover{transform:translateY(-2px)}.music-toggle>span:first-child{font-size:1.05rem}.music-toggle>span:last-child{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.music-toggle.is-muted{opacity:.72}@media (max-width:900px){.topbar{padding-inline:2vw}.topbar__nav{letter-spacing:.11em;gap:.85rem;font-size:.64rem}.topbar__rsvp{padding:.65rem .85rem}.hero h1{flex-direction:column;gap:.05em}.hero h1 i{margin:.1em 0}.intro{grid-template-columns:1fr;min-height:auto}.intro__mark{opacity:.16;width:8rem;position:absolute;top:2.5rem;right:.8rem}.story__header{display:block}.story__header h2{text-align:left;margin-top:2rem}.story__compact{grid-template-columns:1fr;gap:1.5rem}.story__compact>span{order:-1}.venue__art{min-height:58vw}.rsvp{grid-template-columns:1fr}.rsvp__heading{position:static}}@media (max-width:680px){.opening-scene__eyebrow{top:12%}.opening-scene__hint{bottom:12%}.envelope{width:94vw}.wax-seal{width:clamp(112px,31vw,145px)}.opening-scene__bird--one{right:24%}.opening-scene__bird--two{right:12%}.topbar{height:66px;padding:0 1rem}.topbar__monogram{width:76px;height:45px}.topbar__actions{gap:.3rem;margin-left:.4rem}.language-picker{width:72px;height:31px}.language-picker select{padding-left:.45rem;font-size:.6rem}.topbar__menu-button{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-end;gap:6px;width:42px;height:42px;display:flex}.topbar__menu-button span{background:var(--on-dark);width:23px;height:1px;display:block}.topbar__menu-button span:last-child{width:16px}.topbar__nav{min-width:190px;color:var(--ink);background:var(--ivory);flex-direction:column;align-items:stretch;gap:0;padding:.7rem;display:flex;position:absolute;top:58px;right:1rem}@supports (color:color-mix(in lab, red, red)){.topbar__nav{background:color-mix(in srgb, var(--ivory) 96%, transparent)}}.topbar__nav{box-shadow:0 20px 50px var(--shadow);opacity:0;pointer-events:none;transition:all .25s;transform:translateY(-10px)}.topbar__nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.topbar__nav a{padding:.9rem 1rem}.topbar__rsvp{border-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.topbar__rsvp{border-color:color-mix(in srgb, var(--ink) 35%, transparent)}}.topbar__rsvp{border-radius:2px}.hero__content{padding-bottom:2rem}.hero__announcement{letter-spacing:.15em}.hero h1{font-size:clamp(3.6rem,18vw,6rem)}.hero__note{max-width:300px;margin-inline:auto;line-height:1.5}.hero__birds span{top:19%;right:26%}.hero__birds span:nth-child(2){top:24%;right:13%}.hero__scroll{bottom:2.5vh}.section-pad{padding:6rem 1.35rem}.intro h2,.story h2,.date-section h2,.venue h2,.directions h2,.rsvp h2{font-size:clamp(2.8rem,13vw,4.4rem)}.intro__lede{margin-top:2rem;font-size:1.03rem}.couple-photo{padding:1rem}.couple-photo__frame{aspect-ratio:.9}.couple-photo img{object-position:53% center}.couple-photo__frame:before{box-shadow:inset 0 0 0 7px var(--on-dark), inset 0 0 45px var(--on-dark)}@supports (color:color-mix(in lab, red, red)){.couple-photo__frame:before{box-shadow:inset 0 0 0 7px color-mix(in srgb, var(--on-dark) 72%, transparent), inset 0 0 45px color-mix(in srgb, var(--on-dark) 42%, transparent)}}.couple-photo__caption{bottom:1.4rem;left:1.35rem}.couple-photo__caption small{max-width:220px;line-height:1.5}.countdown{border-radius:18px;gap:.25rem;margin-block:3rem;padding:.45rem}.countdown__item{border-radius:14px;padding:1.05rem .15rem .95rem}.countdown strong{font-size:1.8rem}.countdown span{letter-spacing:.08em;font-size:.5rem}.schedule__item{grid-template-columns:1fr;gap:.7rem}.schedule__line{display:none}.schedule time{color:var(--wine)}.venue__art{min-height:92vw}.venue__card{min-height:0;padding:2.35rem 1.35rem 2.65rem}.venue__card h2{font-size:3.7rem}.venue__brand{margin-bottom:1rem}.venue address{font-size:1.15rem;line-height:1.55}.directions__answer{padding:1.35rem}.directions{padding:2.25rem 1rem}.directions__faq summary{padding:1.05rem 1rem;font-size:1.1rem}.directions__actions{flex-direction:column}.directions__actions .button{width:100%}.rsvp{gap:3.2rem;padding-bottom:2rem}.rsvp__contacts{grid-template-columns:1fr}.scroll-floral--one{width:285px}.scroll-floral--two,.scroll-floral--four{width:255px}.scroll-floral--one{left:-145px}.scroll-floral--two{right:-120px}.scroll-floral--four{left:-118px}.music-toggle{bottom:.8rem;right:.8rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
