/*! 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)))){:root,:host{--shimmer-angle:20deg}*,:before,:after{--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill: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;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--radius-md:.375rem;--radius-lg:.5rem;--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{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{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.shrink-0{flex-shrink:0}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-transparent{border-color:#0000}.bg-clip-padding{background-clip:padding-box}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}:root{--paper-0:#f7f2e8;--paper-1:#ede3d2;--paper-panel:#faf7ef;--ink:#262822;--ink-muted:#50524b;--hairline:#b8ae9d;--wax:#a95c52;--spring-deep:#3c603e;--spring-mid:#bddf96;--spring-pale:#e2f0c7;--summer-bg:#e8f2d8;--summer-light:#e8dc73;--summer-mid:#4c9d6d;--summer-shadow:#176b63;--summer-ink:#163f38;--summer-accent:#d7a83e;--autumn-bg:#f3dfbd;--autumn-light:#dea646;--autumn-mid:#bd603a;--autumn-shadow:#74362f;--autumn-ink:#3e2924;--autumn-accent:#a94332;--winter-bg:#e8eff2;--winter-light:#f7f4eb;--winter-mid:#adc5cb;--winter-shadow:#526b79;--winter-ink:#26363d;--winter-accent:#9b675f;--font-display:ui-serif, "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", serif;--font-body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;--reading-max:36rem;--paper-shadow:0 28px 90px #26282224;--ease-letter:cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box}html{background:var(--paper-0);color:var(--ink)}body{background:var(--paper-0);color:var(--ink);font-family:var(--font-body);margin:0}button,input{font:inherit}a{color:inherit}::selection{background:#a95c5238}.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}.skip-link{z-index:100;background:var(--ink);color:var(--paper-0);border-radius:4px;padding:12px 16px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.click-keepsakes{z-index:26;pointer-events:none;position:fixed;inset:0;overflow:hidden}.click-keepsake{--keepsake-drift:1;width:27px;height:27px;color:var(--spring-deep);opacity:0;animation:keepsake-rise 1.3s var(--ease-letter) forwards;position:absolute;transform:translate(-50%,-50%)scale(.45)rotate(-8deg)}.click-keepsake svg{fill:none;stroke:currentColor;stroke-width:1.55px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 5px #2628221f);width:100%;height:100%;display:block;overflow:visible}.click-keepsake circle{fill:currentColor;stroke:none;filter:drop-shadow(0 0 4px)}.keepsake-summer{color:#176b63}.keepsake-autumn{color:#8f3e37}.keepsake-winter{color:#526b79}.site-header{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f2e8e6;border-bottom:1px solid #2628221a;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;height:72px;padding:0 clamp(20px,4vw,64px);display:grid;position:fixed;inset:0 0 auto}.site-header .wordmark{justify-self:start}.site-header .music-controls{justify-self:end}.reading-bookmark{min-width:0;position:relative}.reading-bookmark summary{min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 16px;font-size:13px;list-style:none;display:flex}.reading-bookmark summary::-webkit-details-marker{display:none}.reading-bookmark summary:hover,.reading-bookmark[open] summary{background:#6f8e701f}:is(.reading-bookmark summary:focus-visible,.reading-bookmark a:focus-visible){outline:2px solid var(--spring-deep);outline-offset:2px}.bookmark-chevron{font-size:18px;line-height:1}.reading-bookmark[open] .bookmark-chevron{transform:rotate(180deg)}.reading-bookmark nav{border:1px solid var(--hairline);background:#faf7ef;border-radius:12px;width:min(280px,100vw - 32px);max-height:calc(100svh - 100px);padding:14px;position:absolute;top:calc(100% + 14px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 18px 44px #26282224}.reading-bookmark nav p{color:var(--ink-muted);letter-spacing:.12em;margin:2px 12px 8px;font-size:11px}.reading-bookmark ol{margin:0;padding:0;list-style:none}.reading-bookmark a{border-radius:6px;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:8px 12px;font-size:14px;text-decoration:none;display:flex}.reading-bookmark a>span:not(.bookmark-destination):last-child{color:var(--ink-muted);font-size:11px}.bookmark-destination{align-items:center;gap:10px;display:flex}.bookmark-symbol{width:22px;height:22px;color:var(--spring-deep);flex:0 0 22px;display:inline-flex}.bookmark-symbol svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.bookmark-symbol.keepsake-summer{color:var(--summer-shadow)}.bookmark-symbol.keepsake-autumn{color:var(--autumn-shadow)}.bookmark-symbol.keepsake-winter{color:var(--winter-shadow)}.reading-bookmark a:hover,.reading-bookmark a[aria-current]{background:#e7eddd}.reading-bookmark a[aria-current]{font-weight:650}.wordmark{letter-spacing:.16em;align-items:center;gap:12px;min-height:44px;font-size:14px;text-decoration:none;display:inline-flex}.season-dots{gap:3px;display:inline-flex}.season-dots i{border-radius:50%;width:6px;height:6px;display:block}.season-dots i:first-child{background:#4cab73}.season-dots i:nth-child(2){background:#187b71}.season-dots i:nth-child(3){background:#a94332}.season-dots i:nth-child(4){background:#526b79}.sound-button{min-height:44px;color:var(--ink);background:#f7f2e8c2;border-color:#26282242;padding-inline:16px}.sound-pulse{background:var(--wax);border-radius:999px;width:7px;height:7px;box-shadow:0 0 0 4px #a95c521f}[aria-pressed=true] .sound-pulse{animation:1.8s ease-in-out infinite sound-pulse}.music-controls{align-items:center;gap:5px;display:flex}.music-short-label{display:none}.volume-control{color:var(--ink);position:relative}.volume-control summary{cursor:pointer;background:#f7f2e8f0;border:1px solid #26282242;border-radius:50%;place-items:center;width:44px;height:44px;list-style:none;display:grid}.volume-control summary::-webkit-details-marker{display:none}.volume-control summary:hover,.volume-control[open] summary{background:#e7eddd}.volume-control svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.volume-panel{z-index:4;border:1px solid var(--hairline);background:#faf7ef;border-radius:16px;width:min(252px,100vw - 28px);max-height:calc(100svh - 110px);padding:18px 18px 12px;position:absolute;top:calc(100% + 12px);right:0;overflow:auto;box-shadow:0 16px 44px #26282226}.volume-heading{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.volume-heading output{color:var(--ink-muted);font-variant-numeric:tabular-nums}.volume-panel input{width:100%;height:44px;accent-color:var(--spring-deep);cursor:pointer;margin:8px 0 0;display:block}.mute-button{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:8px 12px;font-size:13px;display:flex}.mute-button:hover{background:#e7eddd}.volume-note{margin:8px 0 0;font-size:13px;line-height:1.6}.volume-control summary:focus-visible{outline:2px solid var(--spring-deep);outline-offset:3px}.volume-panel input:focus-visible{outline:2px solid var(--spring-deep);outline-offset:3px}.mute-button:focus-visible{outline:2px solid var(--spring-deep);outline-offset:3px}.opening{background:var(--paper-0) url(/assets/visual/fsl-a00-bg-opening-paper-web-v1.webp) center / cover no-repeat;place-items:center;min-height:100svh;padding:120px 24px 64px;display:grid;position:relative;overflow:hidden}.opening:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 46%,#f7f2e894,#0000 43%),radial-gradient(circle at 76% 26%,#a7be9b2e,#0000 31%),linear-gradient(135deg,#ffffff57,#0000 48%);position:absolute;inset:0}.opening:after{content:"";opacity:.18;pointer-events:none;background-image:repeating-linear-gradient(90deg,#2628220e 0 1px,#0000 1px 7px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}.opening-light{aspect-ratio:1;filter:blur(24px);background:#ffffff61;border-radius:50%;width:min(68vw,860px);position:absolute;transform:translate(24%,-10%)}.opening-copy{z-index:2;text-align:center;width:min(760px,100%);transition:opacity .7s ease .52s, transform .9s var(--ease-letter) .42s, filter .7s ease .42s;position:relative}.envelope-gate{z-index:12;width:100%;color:var(--ink);cursor:pointer;background:#f7f2e814;border:0;align-content:center;place-items:center;transition:opacity .6s .9s,visibility 0s linear 1.5s;display:none;position:absolute;inset:72px 0 0;overflow:hidden}.motion-ready .envelope-gate{display:grid}.envelope-stage{aspect-ratio:1;perspective:900px;width:min(68vw,570px);margin-bottom:clamp(-44px,-5vw,-24px);display:block;position:relative}.envelope-stage img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.opening-letter{z-index:1;filter:drop-shadow(0 16px 22px #2628221c);transition:transform 1.25s cubic-bezier(.18,.82,.22,1),filter .9s;transform:translateY(15%)scale(.7)rotate(-1deg)}.opening-envelope{z-index:2;filter:drop-shadow(0 30px 34px #2628222b);transition:transform 1.1s var(--ease-letter), opacity .7s ease .65s;transform:translateY(7%)scale(.92)}.envelope-glow{z-index:0;filter:blur(36px);opacity:.55;background:#f5e09f6b;border-radius:50%;transition:opacity .9s,transform 1.1s;position:absolute;inset:25% 18%;transform:scale(.72)}.envelope-instruction{z-index:4;letter-spacing:.12em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f2e8c7;border:1px solid #262822b3;border-radius:999px;align-items:center;gap:12px;min-height:48px;padding:0 24px;font-size:14px;transition:transform .24s,background .24s,color .24s,opacity .4s;display:inline-flex;position:relative}.envelope-instruction i{background:var(--ink);width:24px;height:24px;color:var(--paper-0);font-family:var(--font-display);border-radius:50%;place-items:center;font-style:normal;display:grid}.envelope-note{z-index:4;color:var(--ink-muted);font-family:var(--font-display);letter-spacing:.06em;margin-top:14px;font-size:13px;transition:opacity .35s;position:relative}.envelope-gate:hover .envelope-instruction{background:var(--ink);color:var(--paper-0);transform:translateY(-2px)}.envelope-gate:hover .envelope-instruction i{background:var(--paper-0);color:var(--ink)}.envelope-gate:focus-visible{outline-offset:-8px;outline:4px solid #6f8e70b8}.motion-ready .opening:not([data-letter-opened=true]) .opening-copy{opacity:.08;filter:blur(8px);transform:translateY(24px)scale(.985)}.opening[data-letter-opened=true] .envelope-gate{opacity:0;visibility:hidden;pointer-events:none}.opening[data-letter-opened=true] .opening-letter{filter:drop-shadow(0 34px 38px #2628222e);transform:translateY(-46%)scale(.88)rotate(1.5deg)}.opening[data-letter-opened=true] .opening-envelope{opacity:.18;transform:translateY(31%)scale(.83)rotate(-1deg)}.opening[data-letter-opened=true] .envelope-glow{opacity:1;transform:scale(1.35)}.opening[data-letter-opened=true] .envelope-instruction,.opening[data-letter-opened=true] .envelope-note{opacity:0}.kicker{color:var(--spring-deep);letter-spacing:.2em;text-transform:uppercase;margin:0 0 22px;font-size:12px;font-weight:650}.opening h1{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(42px,6.4vw,88px);font-weight:520;line-height:1.18}.opening-subtitle{color:var(--ink-muted);font-family:var(--font-display);margin:32px 0 0;font-size:clamp(18px,2vw,25px);line-height:1.8}.primary-link{border:1px solid var(--ink);letter-spacing:.08em;border-radius:999px;align-items:center;gap:20px;min-height:48px;margin-top:38px;padding:0 24px;font-size:14px;text-decoration:none;transition:background .18s,color .18s,transform .18s;display:inline-flex}.primary-link:hover{background:var(--ink);color:var(--paper-0);transform:translateY(-2px)}:is(.primary-link:focus-visible,.wordmark:focus-visible,.choice-card:focus-within,.season-vignette:focus-visible){outline-offset:4px;outline:3px solid #6f8e7099}.primary-sound{background:var(--ink);width:23px;height:23px;color:var(--paper-0);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:12px;transition:transform .18s;display:grid}.primary-link:hover .primary-sound{background:var(--paper-0);color:var(--ink);transform:rotate(8deg)scale(1.06)}.not-found-shell{background:radial-gradient(circle at 22% 24%, #a7be9b85, transparent 28%), radial-gradient(circle at 78% 72%, #c47a4533, transparent 24%), var(--paper-0);place-items:center;min-height:100svh;padding:96px 24px;display:grid}.not-found-card{border:1px solid var(--hairline);width:min(680px,100%);box-shadow:var(--paper-shadow);text-align:center;background:#faf7eff0;padding:clamp(36px,7vw,72px)}.not-found-code{color:var(--hairline);font-family:var(--font-display);letter-spacing:-.08em;margin-bottom:24px;font-size:clamp(64px,15vw,152px);line-height:.8;display:block}.not-found-card h1{font-family:var(--font-display);margin:0;font-size:clamp(30px,5vw,52px);font-weight:520;line-height:1.25}.not-found-card>p:not(.kicker){max-width:34rem;color:var(--ink-muted);margin:24px auto 0;line-height:1.9}.opening-mark{color:#2628227a;font-family:var(--font-display);gap:12px;font-size:12px;display:flex;position:absolute;bottom:36px;right:clamp(22px,4vw,70px)}.story-shell{background:var(--paper-1)}.story-content{min-width:0}.season-block{--season-deep:var(--spring-deep);--season-intro-a:#f4f6df;--season-intro-b:#e2f0c7;--season-intro-c:#cfe8ad;--season-frames-a:#cfe8ad;--season-frames-b:#bddf96;--season-frames-c:#9bcc78;--season-frames-d:#69b36f}.season-summer{--season-deep:#155f59;--season-intro-a:#69b36f;--season-intro-b:#319d81;--season-intro-c:#187b71;--season-frames-a:#187b71;--season-frames-b:#2d8f75;--season-frames-c:#559f69;--season-frames-d:#7cac5c}.season-autumn{--season-deep:#70372e;--season-intro-a:#7cac5c;--season-intro-b:#dea646;--season-intro-c:#bd603a;--season-frames-a:#bd603a;--season-frames-b:#c85232;--season-frames-c:#8f3e37;--season-frames-d:#77818c}.season-winter{--season-deep:var(--winter-shadow);--season-intro-a:#77818c;--season-intro-b:#adc5cb;--season-intro-c:#d8e6e6;--season-frames-a:#d8e6e6;--season-frames-b:#e2eaea;--season-frames-c:#f0f2ed;--season-frames-d:#f7f2e8}.season-block{--season-texture:url(/assets/visual/fsl-a10-bg-spring-garden-web-v1.png)}.season-summer{--season-texture:url(/assets/visual/fsl-a20-bg-summer-rainlight-web-v1.png)}.season-autumn{--season-texture:url(/assets/visual/fsl-a30-bg-autumn-low-sun-web-v1.png)}.season-winter{--season-texture:url(/assets/visual/fsl-a40-bg-winter-frostlight-web-v1.png)}.season-block:not(.season-summer,.season-autumn,.season-winter) .chapter-intro{background-blend-mode:color, normal;background-image:linear-gradient(90deg,#f4eddd94,#dce9d142 50%,#b8d9ae6b),url(/assets/visual/fsl-a10-bg-spring-garden-web-v1.png);background-position:50%;background-size:cover}.season-summer .chapter-intro{background-blend-mode:color, normal;background-image:linear-gradient(90deg,#69b36fdb,#e8dc734d 58%,#187b71c7),url(/assets/visual/fsl-a20-bg-summer-rainlight-web-v1.png);background-position:50%;background-size:cover}.season-autumn .chapter-intro{background-blend-mode:color, normal;background-image:linear-gradient(90deg,#dea646a8,#fff0cc4d 48%,#a94332b8),url(/assets/visual/fsl-a30-bg-autumn-low-sun-web-v1.png);background-position:50%;background-size:cover}.season-winter .chapter-intro{background-blend-mode:color, normal;background-image:linear-gradient(90deg,#77818c6b,#f7f3e852 50%,#adc5cb9e),url(/assets/visual/fsl-a40-bg-winter-frostlight-web-v1.png);background-position:50%;background-size:cover}.season-block .kicker,.season-block .frame-eyebrow{color:var(--season-deep)}.chapter-intro{background:radial-gradient(circle at 78% 30%, #f7f2e880, transparent 30%), radial-gradient(circle at 14% 78%, var(--season-intro-b), transparent 36%), linear-gradient(to bottom, var(--season-intro-a), var(--season-intro-b) 58%, var(--season-intro-c));grid-template-columns:auto minmax(0,1fr);align-content:center;gap:24px 44px;min-height:100svh;padding:clamp(110px,16vh,170px) clamp(28px,8vw,120px) 80px;scroll-margin-top:90px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.chapter-intro{background:radial-gradient(circle at 78% 30%, #f7f2e880, transparent 30%), radial-gradient(circle at 14% 78%, color-mix(in srgb, var(--season-intro-b) 58%, transparent), transparent 36%), linear-gradient(to bottom, var(--season-intro-a), var(--season-intro-b) 58%, var(--season-intro-c))}}.chapter-intro>:not(.season-vignette){z-index:2;position:relative}.season-vignette{z-index:3;width:min(41vw,470px);color:var(--season-deep);cursor:pointer;text-align:center;background:0 0;border:0;padding:0;position:absolute;top:50%;right:clamp(-40px,2vw,38px);transform:translateY(-50%)}.season-vignette svg{opacity:.52;filter:drop-shadow(0 12px 24px #26282214);width:100%;display:block;overflow:visible}.season-vignette span{color:#12130f;letter-spacing:.08em;opacity:.72;background:#f7f2e88f;border-radius:999px;min-height:44px;padding:12px 15px;font-size:11px;transition:opacity .18s,background .18s;display:inline-block}:is(.season-vignette:hover span,.season-vignette:focus-visible span){opacity:1;background:#f7f2e8e0}.season-vignette .v-line{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:620;transition:stroke-dashoffset .9s var(--ease-letter), transform .9s var(--ease-letter)}.season-vignette .v-secondary{stroke-width:2px;opacity:.6}.season-vignette .v-petals circle,.season-vignette .v-sparks circle,.season-vignette .v-snow circle{fill:currentColor;transform-box:fill-box;transform-origin:50%;transition:transform .7s var(--ease-letter), opacity .5s ease}.season-vignette .v-leaves path,.season-vignette .v-falling{fill:currentColor;opacity:.72;transform-box:fill-box;transform-origin:50%;transition:transform .9s var(--ease-letter)}.season-vignette .v-orbit{fill:none;stroke:currentColor;stroke-width:2px;opacity:.62;transition:fill .6s ease, transform .9s var(--ease-letter);transform-origin:50%}.season-vignette .v-window{fill:#f7f2e833;stroke:currentColor;stroke-width:2px;transition:fill .5s,filter .5s}.v-spring-branches .branch-side{stroke-dashoffset:620px}.v-spring-leaves .v-bloom-leaf,.v-spring-buds circle{fill:currentColor;opacity:.12;transform-box:fill-box;transform-origin:50% 100%;transform:scale(.12)rotate(-18deg)}.v-spring-leaves .v-bloom-leaf{transition:transform .62s var(--ease-letter), opacity .42s ease}.v-spring-buds circle{transition:transform .52s var(--ease-letter), opacity .36s ease}.season-vignette.is-awake .branch-side{stroke-dashoffset:0}.season-vignette.is-awake .branch-side-1{transition-delay:80ms}.season-vignette.is-awake .branch-side-2{transition-delay:.18s}.season-vignette.is-awake .branch-side-3{transition-delay:.3s}.season-vignette.is-awake .branch-side-4{transition-delay:.42s}.season-vignette.is-awake .v-bloom-leaf,.season-vignette.is-awake .v-spring-buds circle{opacity:.76;transform:scale(1)rotate(0)}.v-bloom-leaf:first-child{transition-delay:.18s}.v-bloom-leaf:nth-child(2){transition-delay:.3s}.v-bloom-leaf:nth-child(3){transition-delay:.42s}.v-bloom-leaf:nth-child(4){transition-delay:.54s}.v-bloom-leaf:nth-child(5){transition-delay:.66s}.v-bloom-leaf:nth-child(6){transition-delay:.78s}.v-bloom-leaf:nth-child(7){transition-delay:.9s}.v-spring-buds circle:first-child{transition-delay:.46s}.v-spring-buds circle:nth-child(2){transition-delay:.62s}.v-spring-buds circle:nth-child(3){transition-delay:.78s}.v-spring-buds circle:nth-child(4){transition-delay:.94s}.v-spring-buds circle:nth-child(5){transition-delay:1.08s}.v-autumn-leaves .v-fall-leaf{fill:currentColor;opacity:.78;transform-box:fill-box;transform-origin:50%}.season-vignette.is-awake .v-fall-leaf{animation:leaf-release 1.75s var(--ease-letter) forwards}.season-vignette.is-awake .fall-1{--fall-x:-18px;--fall-y:124px;--fall-r:-115deg;animation-delay:60ms}.season-vignette.is-awake .fall-2{--fall-x:22px;--fall-y:112px;--fall-r:95deg;animation-delay:.21s}.season-vignette.is-awake .fall-3{--fall-x:-30px;--fall-y:157px;--fall-r:-145deg;animation-delay:.39s}.season-vignette.is-awake .fall-4{--fall-x:36px;--fall-y:142px;--fall-r:135deg;animation-delay:.54s}.season-vignette.is-awake .fall-5{--fall-x:-12px;--fall-y:151px;--fall-r:-105deg;animation-delay:.71s}.season-vignette.is-awake .fall-6{--fall-x:27px;--fall-y:128px;--fall-r:120deg;animation-delay:.86s}.season-vignette.is-awake .fall-7{--fall-x:-22px;--fall-y:164px;--fall-r:-150deg;animation-delay:1.02s}.season-vignette.is-awake .fall-8{--fall-x:18px;--fall-y:92px;--fall-r:88deg;animation-delay:1.18s}.season-vignette.is-awake .v-sparks circle{animation:1.7s ease-in-out infinite alternate firefly}.season-vignette.is-awake .v-orbit{fill:#f7d99447;transform:scale(1.08)}.season-vignette.is-awake .v-snow circle{animation:2.4s ease-in-out infinite snowfall}.season-vignette.is-awake .v-window{fill:#f4d994;filter:drop-shadow(0 0 13px #f4d994c7)}.chapter-intro .kicker,.chapter-intro .address-line,.chapter-intro .address-line span,.chapter-intro .chapter-lede{color:#12130f}.chapter-index{color:#26282226;font-family:var(--font-display);font-size:clamp(88px,16vw,220px);line-height:.8}.chapter-intro h2{font-family:var(--font-display);margin:0;font-size:clamp(84px,13vw,190px);font-weight:460;line-height:.8}.address-line{color:var(--ink-muted);letter-spacing:.12em;margin:34px 0 0;font-size:13px}.address-line span{min-width:100px;color:var(--wax);border-bottom:1px solid;padding-bottom:4px;display:inline-block}.chapter-lede{max-width:30rem;font-family:var(--font-display);grid-column:2;margin:28px 0 0;font-size:clamp(20px,2.4vw,31px);line-height:1.65}.frames{isolation:isolate;background:linear-gradient(to bottom, var(--season-frames-a) 0%, var(--season-frames-a) 16%, var(--season-frames-b) 34%, var(--season-frames-b) 51%, var(--season-frames-c) 69%, var(--season-frames-c) 85%, var(--season-frames-d) 100%);position:relative}@supports (color:color-mix(in lab, red, red)){.frames{background:linear-gradient(to bottom, var(--season-frames-a) 0%, color-mix(in srgb, var(--season-frames-a) 56%, var(--season-frames-b)) 16%, var(--season-frames-b) 34%, color-mix(in srgb, var(--season-frames-b) 48%, var(--season-frames-c)) 51%, var(--season-frames-c) 69%, color-mix(in srgb, var(--season-frames-c) 45%, var(--season-frames-d)) 85%, var(--season-frames-d) 100%)}}.story-frame{background:radial-gradient(circle at 84% 24%,#ffffff2e,#0000 25%),radial-gradient(circle at 12% 78%,#2628220b,#0000 29%);align-items:center;min-height:76svh;padding:clamp(60px,10svh,112px) clamp(26px,6vw,104px);scroll-margin-top:80px;display:grid;position:relative;overflow:clip}.illustrated-frame{min-height:100svh}.story-frame:before{content:"";z-index:0;pointer-events:none;background:var(--season-texture) center / cover no-repeat;opacity:.11;filter:saturate(.72)contrast(.9);mix-blend-mode:multiply;position:absolute;inset:4% -7%;-webkit-mask-image:linear-gradient(112deg,#0000 3%,#000000d1 34%,#00000040 72%,#0000 97%);mask-image:linear-gradient(112deg,#0000 3%,#000000d1 34%,#00000040 72%,#0000 97%)}.story-frame:nth-of-type(2n):before{opacity:.085;transform:scaleX(-1)}.story-frame:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(ellipse at 18% 22%, transparent 0 21%, var(--season-deep) 21.2% 21.5%, transparent 21.8%), radial-gradient(ellipse at 82% 72%, transparent 0 28%, #ffffff2e 28.2% 28.5%, transparent 28.8%);position:absolute;inset:8% 3%}@supports (color:color-mix(in lab, red, red)){.story-frame:after{background:radial-gradient(ellipse at 18% 22%, transparent 0 21%, color-mix(in srgb, var(--season-deep) 12%, transparent) 21.2% 21.5%, transparent 21.8%), radial-gradient(ellipse at 82% 72%, transparent 0 28%, #ffffff2e 28.2% 28.5%, transparent 28.8%)}}.story-frame:after{opacity:.5}.letter-card{z-index:2;background:radial-gradient(circle at 12% 8%, #ffffffc7, transparent 31%), radial-gradient(circle at 92% 92%, var(--season-deep), transparent 38%), #faf7efe8;border:1px solid #76674f29;border-radius:4px;flex-direction:column;justify-content:center;width:min(100%,790px);margin:0 auto;padding:clamp(34px,4.4vw,64px);display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.letter-card{background:radial-gradient(circle at 12% 8%, #ffffffc7, transparent 31%), radial-gradient(circle at 92% 92%, color-mix(in srgb, var(--season-deep) 7%, transparent), transparent 38%), #faf7efe8}}.letter-card{transition:opacity .65s var(--ease-letter), transform .65s var(--ease-letter);box-shadow:0 18px 48px #26282217,inset 0 1px #ffffffad}.letter-card:before{content:"";pointer-events:none;opacity:.72;background-image:repeating-linear-gradient(7deg,#52442f06 0 1px,#0000 1px 7px),linear-gradient(108deg,#0000 0 66%,#ffffff57);position:absolute;inset:0}.letter-card:after{content:"";pointer-events:none;border:1px solid var(--season-deep);width:78px;height:78px;position:absolute;bottom:-28px;right:-28px}@supports (color:color-mix(in lab, red, red)){.letter-card:after{border:1px solid color-mix(in srgb, var(--season-deep) 18%, transparent)}}.letter-card:after{box-shadow:0 0 0 8px #ffffff29, 0 0 0 9px var(--season-deep);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.letter-card:after{box-shadow:0 0 0 8px #ffffff29, 0 0 0 9px color-mix(in srgb, var(--season-deep) 7%, transparent)}}.letter-card>*{z-index:1;position:relative}.frame-number{color:#26282233;font-family:var(--font-display);font-size:32px;position:absolute;top:22px;right:26px}.frame-eyebrow{color:var(--season-deep);letter-spacing:.14em;margin:0 0 28px;font-size:12px;font-weight:650}.letter-lines{max-width:var(--reading-max);font-family:var(--font-display);letter-spacing:.01em;font-size:clamp(19px,2.15vw,28px);line-height:1.9}.letter-lines p{margin:0 0 .85em}.letter-lines p:last-child{margin-bottom:0}.signoff{color:var(--ink-muted);font-family:var(--font-display);margin:36px 0 0;font-size:17px}.motion-ready .story-frame:not(.is-visible) .letter-card{opacity:.34;transform:translateY(28px)scale(.985)}.story-plate{min-height:90svh;color:var(--season-deep);background:radial-gradient(circle at 12% 18%, #ffffff75, transparent 25%), linear-gradient(150deg, var(--season-frames-b), var(--season-frames-c));align-content:center;place-items:center;gap:28px;margin:0;padding:clamp(64px,8vh,100px) clamp(24px,6vw,90px);display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.story-plate{background:radial-gradient(circle at 12% 18%, #ffffff75, transparent 25%), linear-gradient(150deg, color-mix(in srgb, var(--season-frames-b) 82%, white), var(--season-frames-c))}}.story-plate{overflow:hidden}.story-plate:before{content:"";pointer-events:none;background:var(--season-texture) center / cover no-repeat;opacity:.09;mix-blend-mode:multiply;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 76%,#0000);mask-image:linear-gradient(#0000,#000 18% 76%,#0000)}.story-plate>*{z-index:1;position:relative}.plate-art{border:1px solid var(--season-deep);width:min(100%,1080px)}@supports (color:color-mix(in lab, red, red)){.plate-art{border:1px solid color-mix(in srgb, var(--season-deep) 24%, transparent)}}.plate-art{background:var(--season-frames-d)}@supports (color:color-mix(in lab, red, red)){.plate-art{background:color-mix(in srgb, var(--season-frames-d) 72%, white)}}.plate-art{box-shadow:0 34px 90px var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-art{box-shadow:0 34px 90px color-mix(in srgb, var(--season-deep) 17%, transparent)}}.plate-art svg{aspect-ratio:48/31;width:100%;display:block}.plate-line,.plate-mail,.plate-snail,.plate-bottle,.plate-lighthouse,.plate-whale,.plate-acorn{fill:none;stroke:currentColor;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.plate-ground,.plate-ice{fill:var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-ground,.plate-ice{fill:color-mix(in srgb, var(--season-deep) 18%, transparent)}}.plate-sun,.plate-moon{fill:var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-sun,.plate-moon{fill:color-mix(in srgb, var(--season-deep) 13%, white)}}.plate-sun,.plate-moon{stroke:currentColor;stroke-width:4px}.plate-blooms circle,.plate-fireflies circle,.plate-snow circle{fill:currentColor}.plate-mail{fill:var(--season-frames-d)}@supports (color:color-mix(in lab, red, red)){.plate-mail{fill:color-mix(in srgb, var(--season-frames-d) 76%, white)}}.plate-bottle{fill:#ffffff61}.plate-night{fill:#26363d;opacity:.86}.plate-fireflies circle{filter:drop-shadow(0 0 9px)}.plate-leaves path{fill:currentColor;opacity:.58}.plate-fox{fill:var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-fox{fill:color-mix(in srgb, var(--season-deep) 24%, transparent)}}.plate-fox{stroke:currentColor;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.plate-beam{fill:#f7f3e86b;stroke:#f7f3e8b8;stroke-width:3px}.plate-whale{fill:var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-whale{fill:color-mix(in srgb, var(--season-deep) 30%, transparent)}}.plate-art-generated{box-shadow:none;background:0 0;border:0;place-items:center;display:grid}.plate-art-generated img{object-fit:contain;width:min(100%,780px);height:auto;filter:drop-shadow(0 28px 42px var(--season-deep));display:block}@supports (color:color-mix(in lab, red, red)){.plate-art-generated img{filter:drop-shadow(0 28px 42px color-mix(in srgb, var(--season-deep) 18%, transparent))}}.story-plate figcaption{grid-template-columns:auto 1fr;align-items:center;gap:22px;width:min(100%,1080px);display:grid}.plate-number{color:var(--season-deep)}@supports (color:color-mix(in lab, red, red)){.plate-number{color:color-mix(in srgb, var(--season-deep) 34%, transparent)}}.plate-number{font-family:var(--font-display);font-size:48px;line-height:1}.story-plate figcaption p{color:var(--ink);font-family:var(--font-display);margin:0;font-size:clamp(22px,3vw,38px);line-height:1.35}.story-plate figcaption div>span{color:var(--ink-muted);letter-spacing:.08em;margin-top:8px;font-size:12px;display:block}.choice-section{background:linear-gradient(to bottom, #f7f2e8, var(--paper-0) 34%);min-height:112svh;padding:clamp(110px,16vh,180px) clamp(24px,8vw,120px);scroll-margin-top:128px}.choice-section>h2{max-width:760px;font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(40px,6vw,74px);font-weight:500;line-height:1.24}.choice-copy{color:var(--ink-muted);font-family:var(--font-display);margin:28px 0 48px;font-size:clamp(18px,2vw,24px)}.choice-options{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0;max-width:1040px;margin:0;padding:0;display:grid}.choice-card{border:1px solid var(--hairline);min-height:350px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffff5c;border-radius:5px;grid-template-rows:auto auto 1fr auto;align-content:start;gap:12px;padding:0 28px 28px;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden}.choice-card:hover{border-color:var(--ink);background:#fff9;transform:translateY(-2px)}.choice-card:focus-visible{outline:3px solid var(--spring-deep);outline-offset:4px}.choice-preview{aspect-ratio:16/9;background:var(--paper-1);width:calc(100% + 56px);margin:0 -28px 10px;display:block;position:relative;overflow:hidden}.choice-preview:after{content:"";pointer-events:none;background:linear-gradient(#0000 58%,#2628222e);position:absolute;inset:0}.choice-preview img{object-fit:cover;transition:transform .7s var(--ease-letter), filter .3s ease}.choice-card:hover .choice-preview img{transform:scale(1.025)}.choice-title{font-family:var(--font-display);font-size:30px}.choice-description{max-width:24rem;color:var(--ink-muted);font-size:14px;line-height:1.7}.choice-action{border-top:1px solid var(--hairline);min-height:44px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding-top:12px;font-size:14px;display:flex}.ending-page{z-index:80;isolation:isolate;width:100%;max-width:none;height:100svh;min-height:100svh;color:var(--ink);animation:ending-arrive .9s var(--ease-letter) both;background:#d8d7cc;border:0;align-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden}.ending-panorama{z-index:-2;object-fit:cover;animation:ending-image-arrive 1.6s var(--ease-letter) both}.ending-send .ending-panorama{object-position:center center}.ending-keep .ending-panorama{object-position:58% center}.ending-shade{z-index:-1;pointer-events:none;background:linear-gradient(90deg,#13181814,#0000 42%,#1318182e),linear-gradient(#0000 56%,#1014143d);position:absolute;inset:0}.ending-toolbar{z-index:3;position:absolute;top:24px;right:clamp(20px,4vw,64px)}.ending-sound{min-height:44px;color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f2e8db;border-color:#f7f2e89e;padding-inline:16px}.ending-copy{z-index:2;width:min(560px,100% - 48px);color:var(--ink);-webkit-backdrop-filter:blur(18px)saturate(.88);backdrop-filter:blur(18px)saturate(.88);background:#f8f4ebdb;border:1px solid #ffffff94;border-radius:6px;margin:40px clamp(24px,7vw,120px) 40px auto;padding:clamp(30px,4vw,58px);position:relative;box-shadow:0 34px 100px #181d1b40}.ending-keep .ending-copy{color:#f7f2e8;background:#0f1e2ec7;border-color:#f7f2e833;margin-left:clamp(24px,7vw,120px);margin-right:auto;box-shadow:0 34px 100px #040b146b}.ending-eyebrow{color:var(--wax);letter-spacing:.2em;margin:0 0 18px;font-size:11px;font-weight:750}.ending-keep .ending-eyebrow{color:#f0c977}.ending-copy h1{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0 0 24px;font-size:clamp(36px,4vw,56px);font-weight:500;line-height:1.3}.ending-copy h1:focus{outline:none}.ending-copy>p:not(.ending-eyebrow){max-width:32rem;font-family:var(--font-display);margin:0;font-size:clamp(17px,1.55vw,21px);line-height:1.85}.ending-copy>.ending-coda:not(.ending-eyebrow){color:var(--ink-muted);border-top:1px solid #26282229;margin-top:22px;padding-top:22px;font-size:15px}.ending-keep .ending-copy .ending-coda{color:#f7f2e8b8;border-color:#f7f2e82e}.ending-back{min-height:48px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:999px;margin-top:30px;padding:0 22px;transition:transform .18s,background .18s,color .18s}.ending-back:hover{background:var(--ink);color:var(--paper-0);transform:translateY(-2px)}.ending-keep .ending-back:hover{background:var(--paper-0);color:var(--ink)}:is(.ending-back:focus-visible,.ending-sound:focus-visible){outline-offset:4px;outline:4px solid #f4d994}.ending-escape{color:var(--ink-muted);margin-left:14px;font-size:11px}.ending-keep .ending-escape{color:#f7f2e894}.site-footer{background:var(--ink);color:#f7f2e8b8;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:24px;padding:28px clamp(24px,5vw,72px);font-size:12px;display:flex}.site-footer p{margin:0}.site-footer>div{gap:8px;display:grid}.matrix-link{min-width:44px;min-height:44px;color:var(--paper-0);text-underline-offset:5px;align-items:center;gap:10px;padding:0 4px;display:inline-flex}.matrix-link:focus-visible{outline-offset:4px;outline:4px solid #f4d994}.matrix-link span{font-size:16px}.matrix-attribution{color:#f7f2e8ad;align-items:center;min-height:44px;display:inline-flex}@keyframes sound-pulse{50%{box-shadow:0 0 0 8px #a95c5205}}@keyframes firefly{50%{opacity:.25;transform:translateY(-7px)scale(.72)}to{opacity:1;transform:translateY(3px)scale(1.35)}}@keyframes snowfall{50%{opacity:.45;transform:translate(8px,18px)}to{opacity:.9;transform:translate(-4px,36px)}}@keyframes leaf-release{0%{opacity:.8;transform:translate(0)rotate(0)}32%{transform:translate(calc(var(--fall-x) * -.2), 14px) rotate(calc(var(--fall-r) * .18))}to{opacity:.12;transform:translate(var(--fall-x), var(--fall-y)) rotate(var(--fall-r))}}@keyframes keepsake-rise{0%{opacity:0;transform:translate(-50%,-44%)scale(.45)rotate(-8deg)}22%{opacity:.72}68%{opacity:.52;transform:translate(calc(-50% + 5px * var(--keepsake-drift)), calc(-50% - 17px)) scale(.96) rotate(calc(7deg * var(--keepsake-drift)))}to{opacity:0;transform:translate(calc(-50% + 9px * var(--keepsake-drift)), calc(-50% - 29px)) scale(.82) rotate(calc(13deg * var(--keepsake-drift)))}}@keyframes ending-arrive{0%{opacity:0}to{opacity:1}}@keyframes ending-image-arrive{0%{opacity:.55;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@media (min-width:1000px){.story-frame:nth-of-type(odd) .letter-card{margin-left:clamp(44px,7vw,118px);margin-right:auto}.story-frame:nth-of-type(2n) .letter-card{margin-left:auto;margin-right:clamp(44px,7vw,118px)}}@media (max-width:760px){.site-header{gap:4px;height:64px;padding-inline:14px}.wordmark{letter-spacing:.02em;font-size:12px}.sound-button{min-width:44px;padding-inline:10px;font-size:12px}.reading-bookmark summary{gap:6px;padding-inline:8px;font-size:12px}.opening{min-height:100svh;padding:100px 24px 54px}.opening h1{font-size:clamp(40px,12vw,58px);line-height:1.24}.opening-subtitle{margin-top:26px;font-size:18px}.opening-mark{bottom:20px;right:24px}.envelope-gate{inset-block-start:64px}.envelope-stage{width:min(118vw,490px);margin-bottom:-36px}.envelope-note{font-size:12px}.envelope-instruction{min-height:48px;padding-inline:20px}.chapter-intro{gap:18px 22px;min-height:calc(100svh - 64px);padding:92px 24px 190px}.chapter-index{font-size:92px}.chapter-intro h2{font-size:88px}.chapter-lede{grid-column:1/-1;margin-top:24px;font-size:23px}.season-vignette{width:180px;top:auto;bottom:20px;right:18px;transform:none}.season-vignette svg{height:130px}.season-vignette span{color:#12130f;opacity:1;background:#f7f2e8e6;max-width:100%;min-height:44px;padding:10px 12px;font-size:11px;position:relative}.story-frame{min-height:auto;padding:56px 20px}.story-frame:before{opacity:.085;inset-inline:-24%}.letter-card{width:100%;padding:38px 28px}.frame-number{font-size:24px;top:18px;right:20px}.frame-eyebrow{margin-bottom:24px}.letter-lines{font-size:clamp(18px,5.1vw,21px);line-height:1.86}.story-plate{gap:22px;min-height:92svh;padding:82px 18px 64px}.plate-art{border-left:0;border-right:0;width:calc(100% + 36px)}.story-plate figcaption{align-items:start;gap:13px}.plate-number{font-size:34px}.story-plate figcaption p{font-size:23px}.story-plate figcaption div>span{line-height:1.6}.choice-section{min-height:auto;padding:76px 24px 80px;scroll-margin-top:64px}.choice-section>h2{font-size:40px}.choice-options{grid-template-columns:1fr}.choice-card{min-height:308px;padding:0 24px 24px}.choice-preview{width:calc(100% + 48px);margin-inline:-24px}.site-footer{flex-direction:column;padding:32px 24px}.ending-page{align-items:end}.ending-panorama{object-position:48% center}.ending-keep .ending-panorama{object-position:66% center}.ending-shade{background:linear-gradient(#0c12180d 26%,#0c1218b8)}.ending-toolbar{top:14px;right:16px}.ending-sound{min-width:44px;padding-inline:12px;font-size:12px}.ending-copy,.ending-keep .ending-copy{width:calc(100% - 28px);max-height:72svh;color:var(--paper-0);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#141c1fc7;border-color:#f7f2e847;margin:0 14px 14px;padding:26px 24px;overflow-y:auto}.ending-copy h1{font-size:clamp(32px,8.6vw,42px)}.ending-copy>p:not(.ending-eyebrow){font-size:16px;line-height:1.75}.ending-copy>.ending-coda:not(.ending-eyebrow){color:#f7f2e8d1;border-color:#f7f2e833}.ending-back{width:100%}.ending-escape{text-align:center;color:#f7f2e89e;margin:10px 0 0;display:block}}@media (max-width:360px){.season-dots{display:none}.opening{padding-inline:20px}.opening h1{font-size:38px}.chapter-intro,.choice-section{padding-left:20px;padding-right:20px}.story-frame{padding-left:14px;padding-right:14px}.letter-card{padding-left:24px;padding-right:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.motion-ready .story-frame:not(.is-visible) .letter-card{opacity:1;transform:none}}html[data-motion=reduce] *,html[data-motion=reduce] :before,html[data-motion=reduce] :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}html[data-motion=reduce].motion-ready .story-frame:not(.is-visible) .letter-card{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.click-keepsake{opacity:.58;transform:translate(-50%,-50%)scale(.86);animation:none!important}}html[data-motion=reduce] .click-keepsake{opacity:.58;transform:translate(-50%,-50%)scale(.86);animation:none!important}@media (prefers-reduced-motion:reduce){.ending-page,.ending-panorama{animation:none!important}}html[data-motion=reduce] .ending-page,html[data-motion=reduce] .ending-panorama{animation:none!important}.scene-composition{width:100%;max-width:1240px;margin-inline:auto;position:relative}.scene-composition .letter-card{position:relative;top:auto}.illustrated-frame .scene-composition{grid-template-columns:minmax(0,1.1fr) minmax(240px,1fr);align-items:center;gap:clamp(24px,4vw,64px);display:grid}.illustrated-frame .scene-composition .letter-card{width:100%;margin:0;padding:clamp(32px,4vw,62px)}.illustrated-frame .letter-lines{font-size:clamp(20px,1.9vw,27px)}.scene-illustration{z-index:3;align-self:center;min-width:0;margin:0;position:relative}.scene-illustration:before{content:"";pointer-events:none;background:radial-gradient(#faf7ef7a,#0000 70%);border-radius:50%;position:absolute;inset:18% 3% 12%}.scene-illustration img{filter:drop-shadow(0 24px 22px #26282229);width:118%;max-width:none;height:auto;transition:transform .9s var(--ease-letter), opacity .7s ease;margin-left:-9%;display:block;position:relative}.scene-art-0 img{transform:rotate(-4deg)}.scene-art-4 img{transform:rotate(3deg)}.scene-art-1{justify-self:center;width:min(88%,400px)}.scene-art-1 img{filter:drop-shadow(0 14px 18px #2628221a);width:100%;margin:0}.scene-illustration figcaption{color:#343a32;width:fit-content;max-width:28em;font-family:var(--font-body);letter-spacing:.07em;text-align:center;text-wrap:pretty;margin:12px auto 0;padding:0 8px;font-size:13px;line-height:1.9;position:relative}.scene-illustration figcaption:before{content:"";opacity:.42;background:currentColor;width:24px;height:1px;margin:0 auto 12px;display:block}.motion-ready .illustrated-frame:not(.is-visible) .scene-illustration img{opacity:.25;transform:translateY(24px)rotate(-5deg)scale(.94)}@media (min-width:1000px){.scene-turn .scene-illustration{grid-area:1/1}.scene-turn .letter-card{grid-area:1/2}}@media (max-width:999px){.illustrated-frame .scene-composition{grid-template-columns:minmax(0,1fr);gap:20px}.illustrated-frame .scene-composition .letter-card{min-height:auto;padding:38px 28px}.scene-illustration{justify-self:center;width:min(100%,340px)}.scene-illustration img{width:100%;margin:-16px 0 -12px}}@media (max-width:760px){.illustrated-frame{min-height:auto;padding-top:64px;padding-bottom:64px}.illustrated-frame .scene-composition{position:relative;top:auto}.scene-illustration{width:min(100%,290px)}.illustrated-frame .letter-lines{font-size:clamp(18px,5.1vw,21px)}}@media (prefers-reduced-motion:reduce){.motion-ready .illustrated-frame .scene-illustration img{opacity:1;transform:none}}html[data-motion=reduce] .illustrated-frame .scene-illustration img{opacity:1;transform:none}@media (max-width:480px){.site-header{grid-template-columns:auto minmax(0,1fr) auto;padding-inline:12px}.season-dots{display:none}.reading-bookmark summary{gap:4px;padding-inline:4px;font-size:12px}.reading-bookmark>summary .bookmark-symbol{flex-basis:19px;width:19px;height:19px}.reading-bookmark nav{position:fixed;top:70px;left:50vw}.music-controls-reading .sound-pulse,.music-controls-reading .music-label{display:none}.music-controls-reading .music-short-label{display:inline}.music-controls-reading .sound-button{width:46px;padding:0}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-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-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
