@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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@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;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--radius-sm:.25rem;--radius-md:.375rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.\!sticky{position:sticky!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.isolate{isolation:isolate}.z-2{z-index:2}.z-5\!{z-index:5!important}.order-0,.order-none{order:0}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.list-item{display:list-item}.table{display:table}.h-\[450vh\]{height:450vh}.h-screen{height:100vh}.w-1{width:calc(var(--spacing) * 1)}.flex-shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.pr-1232{padding-right:calc(var(--spacing) * 1232)}.pr-1247{padding-right:calc(var(--spacing) * 1247)}.text-wrap{text-wrap:wrap}.break-words,.wrap-break-word{overflow-wrap:break-word}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--color-gallery-paper:#f9f1e5;--color-gallery-paper-deep:#f1e3d1;--color-gallery-paper-light:#fdf9f0;--color-gallery-ink:#3a2920;--color-gallery-ink-muted:#6c554b;--color-gallery-terra:#714330;--color-gallery-terra-light:#9d6448;--color-gallery-wood:#3f2114;--color-gallery-wood-light:#764a34;--color-gallery-red:#96342e;--color-gallery-blue:#194a6b;--color-gallery-gold:#b19866;--color-gallery-on-dark:#f7efe2;--color-gallery-on-dark-muted:#e9e0d2b8;--color-gallery-rule:#e4d9c957;--color-gallery-shadow:#24120b6b;--color-gallery-fiber:#43342c12;--color-gallery-light-wash:#fefaf114;--color-gallery-focus:#f6dca9;--color-story-video-wash:#fefaf11f;--color-story-progress-track:#3a292033;--font-display:"Gowun Batang", "AppleMyungjo", "Batang", serif;--font-body:"Noto Sans KR Variable", "Apple SD Gothic Neo", sans-serif;--font-outlier:var(--font-geist-mono), ui-monospace, monospace;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4.5rem;--space-3xl:7rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.953rem;--text-2xl:2.441rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-short:.12s;--dur-medium:.36s;--dur-long:.8s;--rule-hairline:1px;--rule-frame:2px;--radius-media:.5rem;--radius-mark:.125rem;--color-primary:#a26249;--color-primary-dark:#744534;--color-primary-soft:#a262491f;--color-paper:#f8f4ed;--color-surface:#fffaf4;--color-ink:#332722;--color-muted:#806f67;--color-traditional-red:#9e2f2f;--color-traditional-green:#486451;--color-muted-gold:#b49a62;--ivory:var(--color-paper);--paper:var(--color-surface);--ink:var(--color-ink);--sage:var(--color-muted);--story-terra:var(--color-primary-dark);--wine:var(--color-traditional-red)}@supports (color:lab(0% 0 0)){:root{--color-gallery-paper:lab(95.6391% 1.26511 7.18149);--color-gallery-paper-deep:lab(90.9909% 2.59271 10.4816);--color-gallery-paper-light:lab(97.9515% .562668 4.55537);--color-gallery-ink:lab(18.3944% 7.60603 9.18316);--color-gallery-ink-muted:lab(38.3251% 8.43868 9.5452);--color-gallery-terra:lab(33.7533% 18.6931 20.1204);--color-gallery-terra-light:lab(48.4504% 21.4415 26.1278);--color-gallery-wood:lab(16.6997% 14.0101 15.2305);--color-gallery-wood-light:lab(36.3664% 17.4041 21.2071);--color-gallery-red:lab(36.6457% 41.5532 26.986);--color-gallery-blue:lab(29.354% -7.45802 -24.2404);--color-gallery-gold:lab(64.1889% 4.88395 29.6778);--color-gallery-on-dark:lab(94.8271% 1.26585 7.18206);--color-gallery-on-dark-muted:lab(89.6062% 1.53995 7.92483/.72);--color-gallery-rule:lab(87.293% 1.86911 9.46082/.34);--color-gallery-shadow:lab(7.55365% 8.97899 6.93642/.42);--color-gallery-fiber:lab(23.3323% 5.49816 7.83759/.07);--color-gallery-light-wash:lab(98.2995% .562519 4.55527/.08);--color-gallery-focus:lab(89.1718% 3.89138 28.6549);--color-story-video-wash:lab(98.2995% .562519 4.55527/.12);--color-story-progress-track:lab(18.3944% 7.60603 9.18316/.2)}}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{color:var(--ink);font-family:var(--font-body);background:#171814;margin:0;overflow-x:clip}button{color:inherit;font:inherit}button,input,select{min-height:48px}.invite-builder{min-height:100svh;padding:max(28px, env(safe-area-inset-top)) 20px max(28px, env(safe-area-inset-bottom));color:var(--color-gallery-ink);background:repeating-linear-gradient(7deg, transparent 0, transparent 5px, var(--color-gallery-fiber) 6px), var(--color-gallery-paper)}.invite-builder__card{border:1px solid var(--color-gallery-wood);width:min(100%,680px);margin:0 auto;padding:clamp(28px,7vw,58px)}@supports (color:color-mix(in lab, red, red)){.invite-builder__card{border:1px solid color-mix(in srgb, var(--color-gallery-wood) 30%, transparent)}}.invite-builder__card{border-radius:var(--radius-card,16px);background:var(--color-gallery-paper-light);box-shadow:0 18px 60px var(--color-gallery-shadow)}.invite-builder__eyebrow{color:var(--color-gallery-terra);font-family:var(--font-outlier);letter-spacing:.2em;margin:0 0 14px;font-size:10px}.invite-builder h1{font-family:var(--font-display);margin:0;font-size:clamp(30px,8vw,46px);font-weight:400;line-height:1.35}.invite-builder__description{color:var(--color-gallery-ink-muted);margin:20px 0 0;line-height:1.75}.invite-builder__form{gap:22px;margin-top:36px;display:grid}.invite-builder__form label,.invite-builder__result{gap:9px;display:grid}.invite-builder__form label>span,.invite-builder__result label{font-size:13px;font-weight:700}.invite-builder input,.invite-builder textarea{border:1px solid var(--color-gallery-wood);width:100%}@supports (color:color-mix(in lab, red, red)){.invite-builder input,.invite-builder textarea{border:1px solid color-mix(in srgb, var(--color-gallery-wood) 28%, transparent)}}.invite-builder input,.invite-builder textarea{color:var(--color-gallery-ink);font:inherit;background:#fff;border-radius:10px;outline:none}.invite-builder input{min-height:50px;padding:0 14px}.invite-builder textarea{resize:vertical;min-height:150px;padding:14px;line-height:1.65}.invite-builder input:focus,.invite-builder textarea:focus{border-color:var(--color-gallery-terra);box-shadow:0 0 0 3px var(--color-gallery-terra)}@supports (color:color-mix(in lab, red, red)){.invite-builder input:focus,.invite-builder textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-gallery-terra) 16%, transparent)}}.invite-builder__form label small{color:var(--color-gallery-ink-muted);font-family:var(--font-outlier);justify-self:end;font-size:10px}.invite-builder__privacy{border-left:3px solid var(--color-gallery-gold);color:var(--color-gallery-ink-muted);background:var(--color-gallery-gold);margin:0;padding:13px 15px}@supports (color:color-mix(in lab, red, red)){.invite-builder__privacy{background:color-mix(in srgb, var(--color-gallery-gold) 10%, transparent)}}.invite-builder__privacy{font-size:12px;line-height:1.65}.invite-builder button{min-height:50px;color:var(--color-gallery-on-dark);background:var(--color-gallery-terra);cursor:pointer;border:0;border-radius:999px;padding:0 20px;font-weight:700}.invite-builder button:disabled{cursor:wait;opacity:.58}.invite-builder__error{color:var(--color-gallery-red);margin:18px 0 0;font-size:13px}.invite-builder__result{border-top:1px solid var(--color-gallery-wood);margin-top:28px;padding-top:28px}@supports (color:color-mix(in lab, red, red)){.invite-builder__result{border-top:1px solid color-mix(in srgb, var(--color-gallery-wood) 18%, transparent)}}.invite-builder__result input{font-family:var(--font-outlier);font-size:11px}.invitation-loading{overscroll-behavior:none;overflow:hidden}.mobile-invitation{background:var(--ivory);width:100%;max-width:480px;margin:0 auto;position:relative;overflow:clip;box-shadow:0 0 90px #0000006b}.door-scroll{z-index:10;height:calc(var(--stable-scroll-vh,1svh) * 900);background:#17140f;position:relative}.door-sticky{isolation:isolate;perspective:1100px;background:#151611;height:100svh;min-height:580px;position:sticky;top:0;overflow:hidden}.door-reveal,.door-reveal__shade,.door-ambient{position:absolute;inset:0}.door-reveal{z-index:0;will-change:transform;background:#fff;overflow:hidden;transform:scale(1.13)}.door-reveal__image,.door-reveal__media{width:100%;height:100%}.door-reveal__media{will-change:filter;background:#fff}.door-reveal__media[data-scrub-ready=true]{filter:saturate(var(--door-media-saturation,1)) brightness(var(--door-media-brightness,1))}.door-reveal__video{object-fit:cover;object-position:53% center;object-fit:contain;object-position:center;background:#fff;width:100%;height:100%;display:block}.door-reveal__shade{z-index:1;background:linear-gradient(#0000 64%,#06090747)}.door-reveal__media:not([data-scrub-ready=true])~.door-reveal__shade{opacity:0}.door-ambient{z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 42%,#fff4d717,#0000 36%),linear-gradient(90deg,#00000024,#0000 9% 91%,#00000024)}.door-scroll.is-past-opening .door-panel,.door-scroll.is-past-opening .traditional-knot,.door-scroll.is-past-opening .door-invitation,.door-scroll.is-past-opening .door-status,.door-scroll.is-past-opening .door-scroll-prompt,.door-scroll.is-past-opening .tree-shadow{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.door-panel{z-index:4;backface-visibility:hidden;width:50.3%;transform-style:preserve-3d;will-change:transform, filter;position:absolute;top:0;bottom:0}.door-panel--left{transform-origin:0;left:0}.door-panel--right{transform-origin:100%;right:0}.door-panel__surface{background:linear-gradient(90deg,#ffe1ab14,#0000 22% 76%,#00000029),linear-gradient(#5d3a22,#382114 51%,#4b2e1a);border:3px solid #2b180e;padding:13px 11px;position:absolute;inset:0;box-shadow:inset 0 0 0 4px #6a452a,inset 0 0 0 6px #25150d,0 0 18px #0000006b}.door-panel--left .door-panel__surface{border-right-width:2px}.door-panel--right .door-panel__surface{border-left-width:2px}.door-panel__paper{background:linear-gradient(90deg,#ffffff2e,#0000 32% 72%,#5a3e231a),repeating-radial-gradient(circle at 35% 25%,#0000 0,#4a38220f .7px,#0000 1.4px) 0 0/6px 6px,#e7dcc2;border:7px solid #372014;height:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 22px #533a1d38,0 0 0 2px #775033}.door-panel__paper:after{z-index:2;pointer-events:none;content:"";background:linear-gradient(90deg,#41271640,#0000 8% 92%,#41271640),linear-gradient(#ffffff1a,#0000 28%,#3823151f);position:absolute;inset:0}.wanjassal{z-index:1;shape-rendering:geometricprecision;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.wanjassal-outer-rail,.wanjassal-line{stroke-linejoin:miter;vector-effect:non-scaling-stroke}.wanjassal-paper-wash{fill:#eee3cb;fill-opacity:.72}.wanjassal-line{fill:none;stroke-linecap:butt}.wanjassal-outer-rail{fill:none;stroke:#2e190f;stroke-width:6px;stroke-linecap:square;filter:none}.wanjassal-face-layer .wanjassal-line{stroke:#482817;stroke-width:4px}.door-sticky.is-loading .wanjassal,.door-sticky.is-ready .wanjassal{opacity:1}.door-panel--right .wanjassal{transform-origin:50%;transform:scaleX(-1)}.tree-shadow{z-index:6;pointer-events:none;mix-blend-mode:multiply;will-change:opacity;height:min(74svh,580px);transition:opacity .5s;position:absolute;top:0;left:-22px;right:-22px;overflow:hidden;-webkit-mask-image:radial-gradient(90% 126% at 0 0,#000 0% 60%,#000000f0 72%,#00000085 84%,#0000 96%);mask-image:radial-gradient(90% 126% at 0 0,#000 0% 60%,#000000f0 72%,#00000085 84%,#0000 96%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tree-shadow__motion{opacity:calc(var(--tree-reveal) * .44);transform-origin:4% 2%;will-change:opacity, transform;transition:opacity 1.4s cubic-bezier(.22,.7,.2,1);animation:1.35s cubic-bezier(.45,0,.55,1) infinite alternate tree-shadow-breeze;position:absolute;inset:-20px -20px -28px -18px}.tree-shadow__image{object-fit:cover;object-position:19% top;filter:contrast(1.08)blur(.65px)}@keyframes tree-shadow-breeze{0%{transform:translate(0)rotate(-.4deg)scale(1.045)}to{transform:translate(9px,7px)rotate(.7deg)scale(1.058)}}.door-handle{z-index:5;background:linear-gradient(90deg,#241b15,#a2804b 46%,#2c2017);border:1px solid #19120d;border-radius:50%;width:11px;height:48px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 8px #00000070,inset 0 0 0 2px #ffe8ab26}.door-handle--left{right:16px}.door-handle--right{left:16px}.door-invitation{z-index:7;color:#24160f;text-align:center;text-shadow:0 1px #fffceeeb,0 0 4px #fffae5bd;-webkit-backdrop-filter:blur(2.5px);backdrop-filter:blur(2.5px);will-change:opacity, transform;background:linear-gradient(135deg,#ffffff52,#0000 46%),#f0e5cced;border:1px solid #673f266b;width:min(84%,360px);padding:24px 18px 21px;transition:opacity .7s .2s;position:absolute;top:9%;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #2f1b0e3d,inset 0 0 24px #7c542f1a}.door-invitation:before,.door-invitation:after{content:"";background:linear-gradient(#0000,#9b7651 25% 75%,#0000);width:1px;position:absolute;top:9px;bottom:9px}.door-invitation:before{left:9px}.door-invitation:after{right:9px}.door-sticky.is-loading .door-invitation,.door-sticky.is-loading .traditional-knot{opacity:0}.invitation-seal{aspect-ratio:624/669;filter:drop-shadow(0 4px 8px #7445342e);display:block;position:relative;overflow:hidden}.invitation-seal__image{width:246.15%;max-width:none;height:auto;position:absolute;top:-21.67%;left:-73.72%}.door-seal{width:52px;position:absolute;top:12px;right:12px}.door-invitation p{max-width:calc(100% - 58px);font-family:var(--font-display);letter-spacing:.34em;text-align:left;margin:0 0 13px;padding-left:4px;font-size:15px;font-weight:600}.door-invitation h1{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(22px,6.2vw,27px);font-weight:600;line-height:1.48}.door-invitation h1 span{white-space:nowrap;display:block}.door-invitation.is-personalized h1{font-size:clamp(20px,5.6vw,24px);line-height:1.5}.door-invitation small{color:#4d3323;letter-spacing:.18em;margin-top:14px;font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:600;display:block}.traditional-knot{z-index:8;pointer-events:none;filter:drop-shadow(0 5px 5px #1c0f0852);will-change:opacity, transform;width:82px;height:104px;transition:opacity .65s .28s;position:absolute;top:50.5%;left:50%;transform:translate(-50%,-50%)}.knot-loop,.knot-center,.knot-tail{display:block;position:absolute}.knot-loop{border:6px solid;border-radius:50% 50% 42% 42%;width:38px;height:50px;top:3px}.knot-loop--red{border-color:#a84234;left:9px;transform:rotate(-22deg)}.knot-loop--blue{border-color:#274f70;right:9px;transform:rotate(22deg)}.knot-center{z-index:2;background:#7f302d;border:4px double #d0aa65;border-radius:50%;width:28px;height:28px;top:34px;left:50%;transform:translate(-50%)}.knot-tail{border-radius:8px 8px 2px 2px;width:9px;height:47px;top:57px}.knot-tail--red{background:linear-gradient(90deg,#7d2725,#c95843,#7d2725);left:28px;transform:rotate(7deg)}.knot-tail--blue{background:linear-gradient(90deg,#203e5a,#47789b,#203e5a);right:28px;transform:rotate(-7deg)}.door-status{z-index:9;right:24px;bottom:max(24px, env(safe-area-inset-bottom));color:#27170f;text-align:center;text-shadow:0 1px #fffbece6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);will-change:opacity;background:#f0e5cce6;border:1px solid #5a351f59;padding:13px 16px 12px;position:absolute;left:24px;box-shadow:0 7px 24px #2c190d30}.door-status p{font-family:var(--font-display);letter-spacing:.12em;margin:0 0 14px;font-size:11px;font-weight:600}.door-status p>span:not(.loading-dots){letter-spacing:.22em;margin-top:6px;font-family:Georgia,serif;font-size:8px;display:block}.door-progress{background:#452c1b3d;width:100%;height:1px;overflow:hidden}.door-progress span{width:100%;height:100%;transform:scaleX(var(--load-progress));transform-origin:0;background:#6e3e29;transition:transform .26s;display:block}.door-sticky.is-ready .door-progress span{animation:1.8s ease-in-out infinite ready-pulse}.loading-dots{vertical-align:2px;gap:4px;margin-left:5px;display:inline-flex}.loading-dots i{background:#6e3e29;border-radius:50%;width:3px;height:3px;animation:1.1s ease-in-out infinite loading-dot}.loading-dots i:nth-child(2){animation-delay:.12s}.loading-dots i:nth-child(3){animation-delay:.24s}.door-scroll-prompt{z-index:10;bottom:max(116px, calc(env(safe-area-inset-bottom) + 92px));opacity:0;border:1px solid #3a231673;border-radius:12px;width:20px;height:36px;transition:opacity .5s .5s;position:absolute;left:50%;transform:translate(-50%)}.door-sticky.is-ready .door-scroll-prompt{opacity:1}.door-scroll-prompt i{background:#5c3523;border-radius:4px;width:3px;height:6px;animation:1.7s ease-in-out infinite scroll-down;position:absolute;top:7px;left:50%;transform:translate(-50%)}.door-behind-copy{z-index:2;color:#2d2724;opacity:0;pointer-events:none;text-align:center;text-shadow:0 1px 14px #ffffffc2;will-change:opacity, transform;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.door-behind-copy span{color:#4c423d;letter-spacing:.28em;font-family:Georgia,serif;font-size:10px}.door-behind-copy p{font-family:var(--font-display);margin:9px 0 0;font-size:20px;font-weight:600}.door-video-guide{z-index:3;color:#f8f2e9;opacity:0;pointer-events:none;text-align:center;text-shadow:0 2px 4px #000,0 5px 18px #000000f5,0 0 28px #000000e0;will-change:opacity, transform;justify-items:center;gap:13px;width:min(84%,340px);display:grid;position:absolute;bottom:22%;left:50%;transform:translate(-50%,12px)}.door-video-guide p{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:15px;font-weight:700}.door-video-guide>span{border:1px solid #ffffffb3;border-radius:12px;width:20px;height:36px;display:block;position:relative;box-shadow:0 2px 9px #00000047}.door-video-guide i{background:#fff;border-radius:4px;width:3px;height:6px;animation:1.7s ease-in-out infinite scroll-down;position:absolute;top:7px;left:50%}.door-story-copy,.door-video-progress{opacity:0}@keyframes loading-dot{0%,to{opacity:.24;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes ready-pulse{0%,to{opacity:.52}50%{opacity:1}}@keyframes scroll-down{0%{opacity:0;transform:translate(-50%)}35%{opacity:1}to{opacity:0;transform:translate(-50%,15px)}}.scrub-video-scroll{height:calc(var(--stable-scroll-vh,1svh) * 320);background:#11130f;position:relative}.scrub-video-scroll--first-date{z-index:11;height:calc(var(--stable-scroll-vh,1svh) * 760);margin-top:calc(var(--stable-scroll-vh,1svh) * -100);background:#f1f0ed}.scrub-video-scroll--home-and-cookie,.scrub-video-scroll--ring-exchange,.scrub-video-scroll--canada-wedding{z-index:11;height:calc(var(--stable-scroll-vh,1svh) * 760);margin-top:calc(var(--stable-scroll-vh,1svh) * -100);background:var(--color-gallery-paper-light)}.scrub-video-scroll--youngjoon-birth{z-index:11;height:calc(var(--stable-scroll-vh,1svh) * 760);margin-top:calc(var(--stable-scroll-vh,1svh) * -100);background:0 0}.scrub-video-sticky{isolation:isolate;backface-visibility:hidden;will-change:opacity;background:#11130f;height:100svh;min-height:580px;position:sticky;top:0;overflow:hidden}.scrub-video-sticky--deferred{visibility:hidden;opacity:0}.scrub-video-frame,.scrub-video-shade{width:100%;height:100%;position:absolute;inset:0}.scrub-video-frame{z-index:0;background:#fff;overflow:hidden}.scrub-video-media,.scrub-video-canvas,.scrub-video-poster{width:100%;height:100%;position:absolute;inset:0}.scrub-video-frame>video,.scrub-video-canvas{opacity:0;pointer-events:none}.scrub-video-poster{z-index:2;object-fit:cover;object-position:center;opacity:1;pointer-events:none}.scrub-video-frame[data-scrub-ready=true] .scrub-video-poster{opacity:0}.scrub-video-frame[data-scrub-ready=true][data-scrub-renderer=video]>video,.scrub-video-frame[data-scrub-ready=true][data-scrub-renderer=canvas] .scrub-video-canvas{opacity:1}.scrub-video-media::-webkit-media-controls{-webkit-appearance:none;display:none!important}.scrub-video-media::-webkit-media-controls-overlay-play-button{-webkit-appearance:none;display:none!important}.scrub-video-media::-webkit-media-controls-start-playback-button{-webkit-appearance:none;display:none!important}.door-reveal__video::-webkit-media-controls{-webkit-appearance:none;display:none!important}.door-reveal__video::-webkit-media-controls-overlay-play-button{-webkit-appearance:none;display:none!important}.door-reveal__video::-webkit-media-controls-start-playback-button{-webkit-appearance:none;display:none!important}.scrub-video-shade.scrub-video-shade--first-date{background:linear-gradient(#ffffff1a,#0000 44%,#ffffff14)}.scrub-video-scroll--home-and-cookie .scrub-video-sticky,.scrub-video-scroll--ring-exchange .scrub-video-sticky,.scrub-video-scroll--canada-wedding .scrub-video-sticky,.scrub-video-scroll--youngjoon-birth .scrub-video-sticky{background:var(--color-gallery-paper-light)}.scrub-video-shade.scrub-video-shade--home-and-cookie,.scrub-video-shade.scrub-video-shade--ring-exchange,.scrub-video-shade.scrub-video-shade--canada-wedding,.scrub-video-shade.scrub-video-shade--youngjoon-birth{background:linear-gradient(180deg, var(--color-story-video-wash), transparent 46%, var(--color-story-video-wash))}.scrub-video-media{object-fit:cover;object-position:center;background:#fff}.scrub-video-shade{z-index:1;pointer-events:none;background:linear-gradient(#07090761,#0000 36%),linear-gradient(#0000 42%,#070907b8),linear-gradient(90deg,#07090740,#0000 66%)}.scrub-video-copy{z-index:4;color:#f7f1e8;text-shadow:0 2px 18px #00000085;will-change:opacity, transform;position:absolute;bottom:13vh;left:24px;right:24px}.scrub-video-copy>p{color:#f7f1e8d1;letter-spacing:.23em;text-transform:uppercase;margin:0 0 20px;font-size:10px;font-weight:600}.scrub-video-copy h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(31px,9vw,43px);font-weight:400;line-height:1.42}.scrub-video-copy h2 span{display:block}.scrub-video-copy small{letter-spacing:.28em;margin-top:26px;font-family:Georgia,Times New Roman,serif;font-size:12px;display:block}.scrub-video-copy--first-date{color:#2d2724;text-align:right;text-shadow:0 1px 14px #ffffffc7;flex-direction:column;justify-content:center;align-items:flex-end;padding:0 32px;display:flex;inset:0}.scrub-video-copy--first-date h2{letter-spacing:-.035em;font-size:clamp(32px,9vw,43px);font-weight:600;line-height:1.2}.scrub-video-copy--first-date small{color:#4c423d;letter-spacing:.24em;margin-top:16px;font-size:11px}.scrub-video-labels{z-index:4;pointer-events:none;position:absolute;inset:0}.scrub-video-label{padding:max(72px, calc(env(safe-area-inset-top) + 32px)) 28px 0;color:#2d2724;font-family:var(--font-display);letter-spacing:-.035em;opacity:0;text-align:left;text-shadow:0 1px 14px #ffffffc7;will-change:opacity, transform;flex-direction:column;justify-content:flex-start;align-items:flex-start;margin:0;font-size:clamp(28px,7.8vw,38px);font-weight:600;line-height:1.2;display:flex;position:absolute;inset:0}.scrub-video-label span{max-width:min(13ch,100%);display:block}.scrub-video-label small{color:#4c423d;letter-spacing:.24em;margin-top:12px;font-family:Georgia,Times New Roman,serif;font-size:11px;font-weight:400;line-height:1;display:block}.scrub-video-label[data-placement=bottom-left]{padding-top:0;padding-bottom:max(72px, calc(env(safe-area-inset-bottom) + 40px));justify-content:flex-end}.scrub-video-label[data-placement=bottom-right]{padding-top:0;padding-bottom:max(72px, calc(env(safe-area-inset-bottom) + 40px));text-align:right;justify-content:flex-end;align-items:flex-end}.scrub-video-scroll--first-date .scrub-video-progress{background:#2d272433}.scrub-video-scroll--first-date .scrub-video-progress span{background:#2d2724}.scrub-video-scroll--home-and-cookie .scrub-video-progress,.scrub-video-scroll--ring-exchange .scrub-video-progress,.scrub-video-scroll--canada-wedding .scrub-video-progress,.scrub-video-scroll--youngjoon-birth .scrub-video-progress{background:var(--color-story-progress-track)}.scrub-video-scroll--home-and-cookie .scrub-video-progress span,.scrub-video-scroll--ring-exchange .scrub-video-progress span,.scrub-video-scroll--canada-wedding .scrub-video-progress span,.scrub-video-scroll--youngjoon-birth .scrub-video-progress span{background:var(--color-gallery-ink)}.scrub-video-copy--vancouver h2{letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-size:clamp(58px,19vw,91px);line-height:.86}.scrub-video-copy--vancouver h2 span:nth-child(2){color:var(--color-muted-gold);margin:13px 0 9px;font-size:.3em;font-style:italic}.scrub-video-progress{z-index:5;right:24px;bottom:max(24px, env(safe-area-inset-bottom));background:#ffffff47;height:1px;position:absolute;left:24px;overflow:hidden}.scrub-video-progress span{transform-origin:0;will-change:transform;background:#fff;width:100%;height:100%;display:block;transform:scaleX(0)}.hero-scroll{background:#171a17;height:300vh}.hero-sticky{isolation:isolate;height:100svh;position:sticky;top:0;overflow:hidden}.hero-layer,.hero-shade,.grain{position:absolute;inset:0}.hero-layer{opacity:0;will-change:transform, opacity}.hero-layer:first-child{opacity:1}.hero-image{object-fit:cover;filter:saturate(.74)contrast(1.04)}.hero-shade{z-index:2;background:linear-gradient(#090c0a7a,#0000 35%),linear-gradient(#0000 50%,#080a08a3),linear-gradient(90deg,#080a082e,#0000 60%)}.grain{z-index:3;opacity:.16;pointer-events:none;mix-blend-mode:soft-light;background-image:repeating-radial-gradient(circle at 20% 30%,#0000 0,#ffffff1f .8px,#0000 1.6px);background-size:5px 5px}.hero-copy{z-index:4;color:#f7f1e8;will-change:opacity, transform;position:absolute;left:clamp(24px,7vw,112px);right:clamp(24px,7vw,112px)}.hero-copy--intro{top:50%;transform:translateY(-50%)}.hero-copy--family{opacity:0;bottom:12vh}.eyebrow,.section-number{letter-spacing:.25em;text-transform:uppercase;margin:0 0 22px;font-size:11px;font-weight:600}.hero-copy h1{letter-spacing:-.06em;align-items:baseline;gap:clamp(12px,2.5vw,38px);max-width:880px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(58px,10vw,152px);font-weight:400;line-height:.82;display:flex}.hero-copy h1 span{color:var(--color-muted-gold);font-size:.42em;font-style:italic}.hero-date{letter-spacing:.32em;margin-top:34px;font-family:Georgia,Times New Roman,serif;font-size:15px}.hero-copy h2{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(34px,5vw,68px);font-weight:400;line-height:1.42}.scroll-mark{z-index:5;color:#f7f1e8;letter-spacing:.28em;align-items:center;gap:15px;font-size:9px;display:flex;position:absolute;bottom:42px;right:clamp(24px,5vw,80px)}.scroll-mark i{background:#ffffff59;width:48px;height:1px;display:block;position:relative;overflow:hidden}.scroll-mark i:after{content:"";background:#fff;animation:1.8s ease-in-out infinite scroll-line;position:absolute;inset:0}@keyframes scroll-line{0%{transform:translate(-105%)}to{transform:translate(105%)}}.story-bridge{text-align:center;background:radial-gradient(circle at 20% 10%, var(--color-primary-soft), transparent 32%), repeating-radial-gradient(circle at 70% 40%, transparent 0, #3130280a .8px, transparent 1.5px), var(--ivory);background-size:auto,7px 7px,auto;place-content:center;min-height:105vh;padding:18vh clamp(24px,8vw,124px);display:grid;position:relative}.story-bridge .section-number,.gallery-invitation-handoff .section-number{color:var(--sage)}.story-bridge h2,.gallery-invitation-handoff h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(29px,4.4vw,58px);font-weight:400;line-height:1.65}.story-bridge__hint{color:var(--color-muted);letter-spacing:.08em;margin:52px 0 0;font-size:12px}.gallery-prelude{z-index:12;height:calc(var(--stable-scroll-vh,1svh) * 240);color:var(--color-gallery-ink);background:var(--color-gallery-paper-light);position:relative}.gallery-prelude__sticky{isolation:isolate;background:radial-gradient(circle at 50% 42%, #ffffffb8, transparent 46%), repeating-linear-gradient(7deg, transparent 0, transparent 5px, var(--color-gallery-fiber) 6px), var(--color-gallery-paper-light);place-items:center;height:100svh;min-height:580px;display:grid;position:sticky;top:0;overflow:hidden}.gallery-prelude__content{z-index:2;opacity:0;text-align:center;will-change:opacity, transform;width:min(82%,390px);padding:32px 18px;position:relative}.gallery-prelude__content>p:first-child{color:var(--color-gallery-terra);font-family:var(--font-outlier);letter-spacing:.28em;margin:0 0 18px;font-size:10px}.gallery-prelude__content h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(30px,8.4vw,46px);font-weight:400;line-height:1.52}.gallery-prelude__content h2 span{display:block}.gallery-prelude__content i{background:var(--color-gallery-gold);width:34px;height:1px;margin:27px auto 24px;display:block}.gallery-prelude__content>p:last-child{max-width:320px;color:var(--color-gallery-ink-muted);word-break:keep-all;margin:0 auto;font-size:14px;line-height:1.85}.timeline-scroll{--gallery-scroll-step:calc(var(--stable-scroll-vh,1svh) * 65);z-index:11;height:calc((var(--gallery-items,5) * var(--gallery-scroll-step)) + (var(--stable-scroll-vh,1svh) * 340));background:0 0;margin-top:0;position:relative}.timeline-sticky{opacity:0;isolation:isolate;height:100svh;color:var(--ivory);background:var(--color-gallery-terra);will-change:opacity;position:sticky;top:0;overflow:hidden}.timeline-heading{z-index:4;top:var(--space-lg);right:clamp(var(--space-md), 4vw, var(--space-2xl));left:clamp(var(--space-md), 4vw, var(--space-2xl));padding:0 0 var(--space-xs);border-bottom:var(--rule-hairline) solid var(--color-gallery-rule);color:var(--color-gallery-on-dark-muted);font-family:var(--font-outlier);letter-spacing:.22em;text-transform:uppercase;will-change:opacity;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:absolute}.timeline-heading span:first-child{color:var(--color-gallery-on-dark)}.timeline-track{will-change:transform, opacity;align-items:stretch;width:max-content;height:100%;display:flex;position:absolute;top:0;left:0}.timeline-spacer{flex:none;width:18vw}.timeline-spacer--end{width:50vw}.memory-card{flex:none;width:min(76vw,960px);height:100%;padding:clamp(88px,12vh,132px) clamp(28px,4vw,70px) 120px;position:relative}.memory-visual{border-radius:var(--radius-media);background:var(--color-gallery-terra);width:min(50vw,680px);height:min(49vh,510px);box-shadow:0 16px 36px var(--color-gallery-shadow);transform-origin:50%;transition:opacity var(--dur-short) linear, border-color var(--dur-short) var(--ease-out);cursor:zoom-in;will-change:transform, opacity;border:0;padding:0;display:block;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.memory-visual:hover{box-shadow:0 20px 42px var(--color-gallery-shadow)}}.memory-visual:focus-visible{outline:2px solid var(--color-gallery-focus);outline-offset:var(--space-3xs)}.memory-visual:active{opacity:.92}.memory-visual:disabled{opacity:.55;cursor:not-allowed}.memory-visual--empty{cursor:default}.memory-photo{border-radius:var(--radius-media);background:var(--color-gallery-terra);width:100%;height:100%;display:block;position:relative;overflow:hidden}.memory-photo--empty{background:repeating-linear-gradient(7deg, transparent 0, transparent 6px, var(--color-gallery-light-wash) 7px), var(--color-gallery-terra);place-items:center;display:grid}.memory-placeholder-mark{border:var(--rule-hairline) solid var(--color-gallery-rule);border-radius:var(--radius-mark);width:42px;height:42px;transform:rotate(45deg)}.memory--portrait .memory-visual{width:min(38vw,450px);margin-left:12vw}.memory--final .memory-visual{width:min(56vw,780px)}.memory-image{object-fit:cover;transition:transform var(--dur-long) var(--ease-out)}.memory--soft .memory-image{filter:saturate(.65)brightness(.86);transform:scale(1.08)}.memory--portrait .memory-image{object-position:46% center}.memory--final .memory-image{object-position:center 40%}.memory-index{z-index:2;right:var(--space-xs);bottom:var(--space-2xs);color:var(--color-gallery-on-dark);font-family:var(--font-body);letter-spacing:.14em;text-shadow:0 1px 8px var(--color-gallery-shadow);font-size:10px;position:absolute}.memory-copy{z-index:2;width:min(390px,36vw);padding:var(--space-md) 0 0 var(--space-lg);border-inline-start:var(--rule-frame) solid var(--color-gallery-gold);will-change:transform, opacity;position:absolute;bottom:16vh;right:clamp(32px,5vw,80px)}.memory-copy>p:first-child{margin:0 0 var(--space-xs);color:var(--color-gallery-on-dark-muted);font-family:var(--font-body);letter-spacing:.23em;text-transform:uppercase;font-size:10px}.memory-copy h3{min-width:0;color:var(--color-gallery-on-dark);font-family:var(--font-display);letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(24px,2.7vw,39px);font-style:normal;font-weight:400;line-height:1.5}.memory-copy h3 span{display:block}.memory-body{max-width:330px;margin:var(--space-sm) 0 0;color:var(--color-gallery-on-dark-muted);font-family:var(--font-body);font-size:14px;line-height:1.8}.timeline-point{white-space:nowrap;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:55px;left:50%;transform:translate(-50%)}.timeline-point i{border:var(--rule-frame) solid var(--color-gallery-red);border-radius:var(--radius-mark);outline:var(--rule-hairline) solid var(--color-gallery-rule);background:var(--color-gallery-paper);width:10px;height:10px;display:block;transform:rotate(45deg)}.timeline-point strong{color:var(--color-gallery-on-dark-muted);font-family:var(--font-body);font-variant-numeric:tabular-nums;letter-spacing:.18em;font-size:10px;font-weight:400}.timeline-rule{z-index:0;background:linear-gradient(to bottom, var(--color-gallery-gold) 0 1px, transparent 1px 3px, var(--color-gallery-rule) 3px 4px);height:4px;position:absolute;bottom:70px;left:0;right:0}.timeline-rule span{transform-origin:0;background:linear-gradient(to bottom, var(--color-gallery-red) 0 1px, transparent 1px 3px, var(--color-gallery-on-dark) 3px 4px);will-change:transform;width:100%;height:4px;display:block;transform:scaleX(0)}.timeline-end{width:78vw;height:100%;color:var(--ivory);flex-direction:column;flex:none;justify-content:center;padding-left:10vw;display:flex}.timeline-end span{font-family:var(--font-display);font-size:22px}.timeline-end strong{letter-spacing:-.07em;margin:10px 0 12px;font-family:Georgia,serif;font-size:clamp(82px,15vw,220px);font-weight:400;line-height:.85}.timeline-end small{letter-spacing:.32em;font-size:10px}.gallery-lightbox{z-index:1000;padding:max(72px, calc(env(safe-area-inset-top) + 58px)) 20px max(32px, calc(env(safe-area-inset-bottom) + 20px));color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#120e0cf0;grid-template-rows:minmax(0,1fr) auto;gap:18px;display:grid;position:fixed;inset:0}.gallery-lightbox__close{z-index:2;top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));color:#fff;cursor:pointer;background:#140f0c85;border:1px solid #ffffff47;border-radius:999px;place-items:center;width:48px;height:48px;padding:0;display:grid;position:fixed}.gallery-lightbox__close span{font-family:Arial,sans-serif;font-size:30px;font-weight:200;line-height:1}.gallery-lightbox__image-wrap{width:100%;height:100%;min-height:0;position:relative}.gallery-lightbox__image{object-fit:contain}.gallery-lightbox__caption{letter-spacing:.18em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;font-family:Georgia,Times New Roman,serif;font-size:10px;font-weight:400;display:flex}.gallery-lightbox__caption span{color:#fff9}.gallery-lightbox__caption strong{font-weight:400}.video-sequence-scroll{z-index:12;height:calc(var(--stable-scroll-vh,1svh) * 720);background:0 0;margin-top:0;position:relative}.video-sequence-sticky{opacity:0;isolation:isolate;will-change:opacity;background:#11130f;height:100svh;min-height:580px;position:sticky;top:0;overflow:hidden}.video-sequence-layer,.video-sequence-media,.video-sequence-shade{width:100%;height:100%;position:absolute;inset:0}.video-sequence-layer{z-index:0;opacity:0;will-change:opacity}.video-sequence-layer:first-child{opacity:1}.video-sequence-media{object-fit:cover;background:#11130f}.video-sequence-shade{z-index:2;pointer-events:none;background:linear-gradient(#07090761,#0000 36%),linear-gradient(#0000 42%,#070907b8)}.video-sequence-copy{opacity:0}.gallery-invitation-handoff{--handoff-surface-opacity:0;--handoff-copy-opacity:0;--handoff-copy-offset:24px;z-index:5;color:var(--color-gallery-ink);text-align:center;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.gallery-invitation-handoff__surface{opacity:var(--handoff-surface-opacity);background:repeating-linear-gradient(7deg, transparent 0, transparent 5px, var(--color-gallery-fiber) 6px), linear-gradient(90deg, var(--color-gallery-paper-deep), var(--color-gallery-paper-light) 42%, var(--color-gallery-paper) 70%, var(--color-gallery-paper-deep));will-change:opacity;position:absolute;inset:0}.gallery-invitation-handoff__surface:before,.gallery-invitation-handoff__surface:after{content:"";position:absolute}.gallery-invitation-handoff__surface:before{inset:clamp(var(--space-xs), 4vw, var(--space-lg));border:clamp(5px, 1.5vw, 9px) solid var(--color-gallery-wood);box-shadow:inset 0 0 0 var(--rule-hairline) var(--color-gallery-wood-light), 0 8px 22px var(--color-gallery-shadow)}.gallery-invitation-handoff__surface:after{inset:clamp(var(--space-lg), 7vw, var(--space-xl));border:var(--rule-hairline) solid var(--color-gallery-gold);opacity:.58}.gallery-invitation-handoff__frame{z-index:1;opacity:var(--handoff-copy-opacity);pointer-events:none;will-change:opacity;position:absolute;inset:clamp(40px,10vw,72px)}.gallery-invitation-handoff__frame span{border-color:var(--color-gallery-wood-light);opacity:.62;width:clamp(30px,9vw,56px);height:clamp(30px,9vw,56px);position:absolute}.gallery-invitation-handoff__frame span:first-child{border-top:var(--rule-frame) solid var(--color-gallery-wood-light);border-left:var(--rule-frame) solid var(--color-gallery-wood-light);top:0;left:0}.gallery-invitation-handoff__frame span:last-child{border-right:var(--rule-frame) solid var(--color-gallery-wood-light);border-bottom:var(--rule-frame) solid var(--color-gallery-wood-light);bottom:0;right:0}.gallery-invitation-handoff__content{z-index:2;width:min(100%,440px);min-width:0;padding:18vh clamp(var(--space-lg), 10vw, var(--space-2xl));opacity:var(--handoff-copy-opacity);transform:translate3d(0, var(--handoff-copy-offset), 0);will-change:opacity, transform;position:relative}.gallery-invitation-handoff__seal{width:clamp(88px,26vw,112px);margin:0 auto var(--space-md)}.gallery-invitation-handoff .section-number{margin:0 0 var(--space-md);color:var(--color-gallery-ink-muted);font-family:var(--font-outlier);font-variant-numeric:tabular-nums;letter-spacing:.2em;font-size:10px}.gallery-invitation-handoff__recipient{margin:0 0 var(--space-sm);color:var(--color-gallery-red);font-family:var(--font-display);letter-spacing:.04em;font-size:clamp(15px,4.5vw,19px);font-weight:700}.gallery-invitation-handoff h2{min-width:0;color:var(--color-gallery-ink);font-family:var(--font-display);overflow-wrap:anywhere;font-style:normal}.gallery-invitation-handoff__body{max-width:28ch;margin:var(--space-xl) auto 0;color:var(--color-gallery-ink-muted);font-family:var(--font-display);white-space:pre-line;font-size:clamp(14px,4vw,16px);line-height:2}.hanji-mark{border:var(--rule-frame) solid var(--color-gallery-red);border-radius:var(--radius-mark);width:62px;height:62px;color:var(--color-gallery-red);font-family:var(--font-display);grid-template-columns:1fr 1fr;place-items:center;font-size:15px;display:grid;position:absolute;top:11vh;right:clamp(28px,9vw,150px);transform:rotate(4deg)}.hanji-mark:after{inset:var(--space-3xs);border:var(--rule-hairline) solid var(--color-gallery-red);content:"";opacity:.58;position:absolute}.ceremony{min-height:115vh;color:var(--ivory);text-align:center;background:radial-gradient(circle at 50% 0%, #ffffff14, transparent 36%), var(--ink);flex-direction:column;justify-content:center;align-items:center;padding:13vh 24px;display:flex}.ceremony__label{color:var(--color-muted-gold);letter-spacing:.27em;margin:0 0 52px;font-size:9px}.ceremony__month{letter-spacing:.32em;margin:0 0 2px;font-family:Georgia,serif;font-size:14px}.ceremony__date{align-items:center;gap:clamp(24px,5vw,70px);display:flex}.ceremony__date strong{letter-spacing:-.07em;font-family:Georgia,serif;font-size:clamp(112px,19vw,250px);font-weight:400;line-height:.9}.ceremony__date span{letter-spacing:.2em;width:48px;font-size:9px}.ceremony__rule{background:#f3efe647;width:min(540px,78vw);height:1px;margin:42px 0}.ceremony h2{font-family:var(--font-display);margin:0;font-size:clamp(28px,4vw,46px);font-weight:400}.ceremony>p:not(.ceremony__label,.ceremony__month){color:#fffaf4c2;margin:17px 0 0;font-size:13px}.ceremony .ceremony__address{color:#b49a62c7;margin-top:8px}.ceremony__actions{gap:10px;margin-top:42px;display:flex}.ceremony button,.details button{cursor:pointer;background:0 0;border:1px solid #f3efe647;border-radius:999px;min-width:142px;min-height:48px;padding:14px 20px;font-size:11px;transition:color .18s,background .18s,border-color .18s}.ceremony button:hover,.ceremony button:focus-visible{border-color:var(--ivory);color:var(--ink);background:var(--ivory)}.map-chooser-backdrop{z-index:1000;padding:max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b0c0ab8;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.map-chooser-modal{width:min(100%,440px);max-height:calc(100svh - 40px);color:var(--ink);text-align:center;background:radial-gradient(circle at 50% 0%, #b49a621f, transparent 34%), var(--ivory);border:1px solid #a262493d;border-radius:22px;padding:38px clamp(22px,7vw,38px) 32px;animation:.22s ease-out both map-chooser-enter;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000052}.ceremony .map-chooser-modal__close{min-width:38px;min-height:38px;color:var(--ink);background:#ffffff8a;border-color:#2d272429;place-items:center;padding:0;font-size:24px;line-height:1;display:grid;position:absolute;top:13px;right:13px}.ceremony .map-chooser-modal__close:hover,.ceremony .map-chooser-modal__close:focus-visible{border-color:var(--ink);color:var(--ivory);background:var(--ink)}.map-chooser-modal__pin{background:var(--color-gallery-terra);border-radius:50% 50% 50% 0;width:11px;height:11px;margin:0 auto 20px;transform:rotate(-45deg);box-shadow:0 0 0 7px #a262491c}.map-chooser-modal h2{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(27px,7vw,34px);font-weight:500}.map-chooser-modal__description{color:var(--color-muted);margin:11px 0 0;font-size:13px}.map-chooser-modal__venue{border-block:1px solid #a2624929;gap:7px;margin-top:25px;padding:17px 15px;display:grid}.map-chooser-modal__venue strong{font-family:var(--font-display);font-size:16px}.map-chooser-modal__venue span{color:var(--color-muted);font-size:12px;line-height:1.6}.map-chooser-modal__options{gap:10px;margin-top:24px;display:grid}.map-chooser-modal__options a{min-height:72px;color:var(--ink);text-align:left;background:#ffffffad;border:1px solid #2d272421;border-radius:15px;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:11px 16px 11px 11px;text-decoration:none;transition:border-color .16s,transform .16s;display:grid}.map-chooser-modal__options a:hover,.map-chooser-modal__options a:focus-visible{border-color:var(--color-gallery-terra);outline:none;transform:translateY(-1px)}.map-chooser-modal__options img{border-radius:12px;width:48px;height:48px}.map-chooser-modal__options span{font-size:14px;font-weight:700}.map-chooser-modal__options i{color:var(--color-muted);font-size:13px;font-style:normal}@keyframes map-chooser-enter{0%{opacity:0;transform:translateY(14px)scale(.98)}}.details{background:var(--color-surface);grid-template-columns:1fr;gap:16px;max-width:920px;margin:0 auto;padding:15vh clamp(24px,7vw,100px);display:grid}.details article{background:var(--ivory);border:1px solid #a2624929;border-radius:16px;min-height:0;padding:clamp(38px,6vw,78px)}.details article>span{color:var(--sage);letter-spacing:.24em;font-size:9px}.details h3{font-family:var(--font-display);margin:28px 0 10px;font-size:32px;font-weight:400}.details p{color:var(--color-muted);margin:0;font-size:13px;line-height:2}.details .details__venue{color:var(--ink);font-family:var(--font-display);font-size:16px;font-weight:600}.details__contact{border-block:1px solid #a2624929;gap:9px;margin:25px 0 0;padding:18px 0;display:grid}.details__contact>div{grid-template-columns:54px 1fr;gap:12px;display:grid}.details__contact dt{color:var(--sage);font-size:11px;font-weight:700}.details__contact dd{color:var(--color-muted);margin:0;font-size:12px;line-height:1.65}.details__contact a{color:inherit;text-underline-offset:3px}.details__routes{gap:12px;margin-top:24px;display:grid}.details__routes section{background:#2d272409;border-radius:12px;padding:18px 19px}.details__routes h4{color:var(--color-gallery-terra);margin:0 0 7px;font-size:12px}.details__routes p{line-height:1.75}.details__routes .details__parking{background:#b49a6214;border:1px solid #b49a623d}.details__parking small{color:var(--color-gallery-terra);margin-top:9px;font-size:11px;font-weight:700;line-height:1.6;display:block}.ending{height:100svh;min-height:680px;color:var(--ivory);background:radial-gradient(circle at 50% 34%,#a262493d,#0000 42%),linear-gradient(#25241f,#11130f);position:relative;overflow:hidden}.ending-photo,.ending-shade{position:absolute;inset:0}.ending-image{object-fit:cover;object-position:center}.ending-shade{background:linear-gradient(#0000 42%,#080a08ad),linear-gradient(90deg,#080a0840,#0000 58%)}.ending-copy{position:absolute;bottom:9vh;left:clamp(24px,8vw,120px);right:clamp(24px,8vw,120px)}.ending-copy>p{letter-spacing:.25em;margin:0 0 20px;font-size:9px}.ending-copy h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0 0 26px;font-size:clamp(34px,5vw,66px);font-weight:400;line-height:1.45}.ending-copy span{color:#f3efe6ad;letter-spacing:.2em;font-family:Georgia,serif;font-size:11px}.mobile-invitation .hero-scroll{height:calc(var(--stable-scroll-vh,1svh) * 260)}.mobile-invitation .hero-copy{left:24px;right:24px}.mobile-invitation .hero-copy--intro{top:auto;bottom:15vh;transform:none}.mobile-invitation .hero-copy h1{font-size:clamp(58px,19vw,91px);line-height:.86;display:block}.mobile-invitation .hero-copy h1 span{margin:13px 0 9px;font-size:.3em;display:block}.mobile-invitation .hero-copy h2{font-size:31px}.mobile-invitation .story-bridge{min-height:100svh;padding-left:28px;padding-right:28px}.mobile-invitation .story-bridge h2,.mobile-invitation .gallery-invitation-handoff h2{font-size:27px;line-height:1.72}.mobile-invitation .gallery-invitation-handoff h2{font-size:clamp(22px,6.2vw,25px);line-height:1.82}.mobile-invitation .story-bridge h2 br,.mobile-invitation .gallery-invitation-handoff h2 br{display:none}.mobile-invitation .timeline-scroll{height:calc((var(--gallery-items,5) * var(--gallery-scroll-step)) + (var(--stable-scroll-vh,1svh) * 340))}.mobile-invitation .timeline-heading span:last-child{display:none}.mobile-invitation .timeline-spacer{width:52px}.mobile-invitation .memory-card{width:min(88vw,422px);padding:82px min(7vw,34px) 115px}.mobile-invitation .memory-visual,.mobile-invitation .memory--portrait .memory-visual,.mobile-invitation .memory--final .memory-visual{width:min(74vw,355px);height:46vh;max-height:430px;margin-left:0}.mobile-invitation .memory-copy{width:min(71vw,340px);padding:19px 0 0 18px;bottom:15vh;right:min(7vw,34px)}.mobile-invitation .memory-copy h3{font-size:25px}.mobile-invitation .memory-body{display:none}.mobile-invitation .timeline-point{bottom:44px}.mobile-invitation .timeline-rule{bottom:59px}.mobile-invitation .timeline-end{width:min(86vw,413px);padding-left:20px}.mobile-invitation .timeline-end strong{font-size:min(24vw,115px)}.mobile-invitation .details{grid-template-columns:1fr;padding:24px}.mobile-invitation .details article{min-height:390px}@media (max-width:760px){.hero-scroll{height:260vh}.hero-image{object-position:center}.hero-copy{left:24px;right:24px}.hero-copy--intro{top:auto;bottom:15vh;transform:none}.hero-copy h1{font-size:clamp(58px,20vw,92px);line-height:.86;display:block}.hero-copy h1 span{margin:13px 0 9px;font-size:.3em;display:block}.hero-copy h2{font-size:31px}.scroll-mark{bottom:24px;right:20px}.story-bridge{min-height:100svh}.story-bridge h2,.gallery-invitation-handoff h2{font-size:27px;line-height:1.72}.gallery-invitation-handoff h2{font-size:clamp(22px,6.2vw,25px);line-height:1.82}.story-bridge h2 br,.gallery-invitation-handoff h2 br{display:none}.timeline-scroll{height:calc((var(--gallery-items,5) * var(--gallery-scroll-step)) + (var(--stable-scroll-vh,1svh) * 340))}.timeline-heading{top:18px}.timeline-heading span:last-child{display:none}.timeline-spacer{width:11vw}.memory-card{width:88vw;padding:82px 7vw 115px}.memory-visual,.memory--portrait .memory-visual,.memory--final .memory-visual{width:74vw;height:46vh;max-height:430px;margin-left:0}.memory-copy{width:71vw;padding:19px 0 0 18px;bottom:15vh;right:7vw}.memory-copy h3{font-size:25px}.memory-body{display:none}.timeline-point{bottom:44px}.timeline-rule{bottom:59px}.timeline-end{width:86vw;padding-left:4vw}.timeline-end strong{font-size:24vw}.hanji-mark{top:7vh;right:24px}.ceremony__actions{width:100%;max-width:360px}.ceremony button{flex:1;min-width:0}.details{grid-template-columns:1fr;padding:24px}.details article{min-height:390px}.ending{min-height:640px}.ending-image{object-position:56% center}.ending-copy h2{font-size:34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.door-scroll{height:100svh}.door-panel--left{transform:translate(-38%)rotateY(64deg)!important}.door-panel--right{transform:translate(38%)rotateY(-64deg)!important}.traditional-knot,.door-invitation,.door-status,.door-scroll-prompt{display:none}.door-reveal{transform:scale(1.03)!important}.door-reveal__media[data-scrub-ready=true]{filter:saturate()brightness()!important}.door-behind-copy{opacity:1!important;transform:none!important}.door-video-guide{display:none}.loading-dots i,.door-scroll-prompt i,.door-video-guide i,.door-sticky.is-ready .door-progress span,.tree-shadow__motion{animation:none}.tree-shadow,.tree-shadow__motion{transition:none}.hero-scroll,.scrub-video-scroll{height:100svh}.scrub-video-sticky{position:relative}.scrub-video-progress{display:none}.scrub-video-copy{opacity:1!important;transform:none!important}.hero-layer{display:none}.hero-layer:last-of-type{display:block;opacity:1!important;transform:none!important}.hero-copy--intro{display:none}.hero-copy--family{opacity:1!important;transform:none!important}.timeline-scroll,.mobile-invitation .timeline-scroll{height:auto;margin-top:0}.gallery-prelude{height:100svh}.gallery-prelude__sticky{position:relative}.gallery-prelude__content{opacity:1!important;transform:none!important}.timeline-sticky{height:auto;min-height:100vh;position:relative;overflow:visible;opacity:1!important}.video-sequence-scroll{height:100svh;margin-top:0}.video-sequence-sticky{position:relative;opacity:1!important}.video-sequence-layer:first-child{display:none}.video-sequence-layer:nth-child(2){opacity:1!important}.video-sequence-copy{display:none}.video-sequence-copy:last-of-type{display:block;opacity:1!important;transform:none!important}.timeline-track{width:auto;height:auto;display:grid;position:relative;transform:none!important}.timeline-spacer,.timeline-rule,.timeline-point{display:none}.memory-card{width:100%;min-height:720px}.gallery-invitation-handoff{--handoff-surface-opacity:1;--handoff-copy-opacity:1;--handoff-copy-offset:0px;min-height:115svh;position:relative;inset:auto}.gallery-invitation-handoff__content{transform:none}.memory-visual,.memory-image{transition-duration:var(--dur-short)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
