*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DM Sans,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Courier Prime,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.absolute{position:absolute}.block{display:block}.inline{display:inline}.flex{display:flex}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-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)}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:dark;--void: #0b0a08;--void-raised: #141210;--paper: #f2ede6;--gold: #c8a96e;--gold-lift: #e2c99a;--wax: #8a3020;--success: #7fae86;--error: #c9705c;--text: rgba(242, 237, 230, .72);--text-dim: rgba(242, 237, 230, .55);--text-mute: rgba(242, 237, 230, .38);--hairline: rgba(242, 237, 230, .09);--hairline-strong: rgba(242, 237, 230, .16);--scrim: rgba(11, 10, 8, .72);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s6: 24px;--s8: 32px;--s12: 48px;--s16: 64px;--s24: 96px;--s33: 132px;--gutter: clamp(1.75rem, 7vw, 7.5rem);--section: clamp(4.5rem, 9vw, 8.25rem);--r-control: 2px;--r-envelope: 3px;--r-sheet: 4px;--z-ambient: 0;--z-motif: 1;--z-paper: 10;--z-pocket: 20;--z-flap: 30;--z-seal: 40;--z-fore: 50;--z-ui: 100;--z-sticky: 200;--z-scrim: 300;--z-modal: 310;--z-toast: 400;--ease-enter: cubic-bezier(.22, 1, .36, 1);--ease-object: cubic-bezier(.4, 0, .2, 1);--d-micro: .18s;--d-ui: .42s;--d-object: .9s;--elev-lift: 0 40px 80px rgba(0, 0, 0, .7), inset 0 1px 0 rgba(200, 169, 110, .07);--elev-sheet: 0 30px 60px rgba(0, 0, 0, .5);--room-bg: #0b0a08;--room-surface: #141210;--room-accent: #c8a96e;--room-text: #f2ede6;--room-muted: rgba(242, 237, 230, .55);--room-border: rgba(242, 237, 230, .09);--room-glow: rgba(200, 169, 110, .11);--room-display: "Cormorant Garamond", Georgia, serif;--room-body: "DM Sans", system-ui, sans-serif;--room-display-style: normal;--room-display-weight: 300;--room-display-lh: 1.15;--room-display-track: -.01em;--room-letter-lh: 1.8;--env-paper-1: #322818;--env-paper-2: #241d14;--env-paper-3: #17130d;--env-flap-1: #2b2317;--env-flap-2: #1b1610;--env-hairline: rgba(226, 201, 154, .2);--env-wax-1: #b2472f;--env-wax-2: #8d3020;--env-wax-3: #611f13;--env-wax-ink: rgba(255, 236, 214, .85)}[data-mood=soft-bloom]{--room-bg: #fdf0f5;--room-surface: #fff7fa;--room-accent: #f0a0ba;--room-text: #4a2030;--room-muted: #7d5464;--room-border: #f3d3de;--room-glow: rgba(240, 160, 186, .16);--room-success: #3f7357;--room-error: #a3304a;--room-display: "Playfair Display", Georgia, serif;--room-body: "Lato", system-ui, sans-serif;--room-display-style: italic;--room-display-weight: 400;--room-display-lh: 1.14;--room-display-track: -.01em;--room-letter-lh: 1.9;--env-paper-1: #fbe4ec;--env-paper-2: #f6cbd9;--env-paper-3: #e7a9c1;--env-flap-1: #fdeef3;--env-flap-2: #f2c2d3;--env-hairline: rgba(140, 70, 96, .28);--env-wax-1: #d4718f;--env-wax-2: #b5486b;--env-wax-3: #8f2f50;--env-wax-ink: rgba(255, 238, 244, .94)}[data-mood=old-letter]{--room-bg: #fdf6ec;--room-surface: #fbf0df;--room-accent: #c4976a;--room-text: #3a2410;--room-muted: #6d5439;--room-border: #e3cdb0;--room-glow: rgba(196, 151, 106, .16);--room-success: #4d6a3e;--room-error: #973f20;--room-display: "Cormorant Garamond", Georgia, serif;--room-body: Georgia, "Times New Roman", serif;--room-display-style: normal;--room-display-weight: 400;--room-display-lh: 1.12;--room-display-track: 0;--room-letter-lh: 1.95;--env-paper-1: #efe2c4;--env-paper-2: #e3d2ac;--env-paper-3: #cdb888;--env-flap-1: #f4e9d0;--env-flap-2: #dfcda4;--env-hairline: rgba(122, 94, 52, .34);--env-wax-1: #a8412c;--env-wax-2: #8a3020;--env-wax-3: #6d2416;--env-wax-ink: rgba(255, 240, 220, .92)}[data-mood=night-thought]{--room-bg: #1a1b2e;--room-surface: #212344;--room-accent: #8b90d0;--room-text: #c8caf0;--room-muted: #9297c2;--room-border: #33375e;--room-glow: rgba(139, 144, 208, .18);--room-success: #7fd0a8;--room-error: #e0798f;--room-display: "Cormorant Garamond", Georgia, serif;--room-body: "DM Sans", system-ui, sans-serif;--room-display-style: italic;--room-display-weight: 300;--room-display-lh: 1.14;--room-display-track: -.01em;--room-letter-lh: 1.85;--env-paper-1: #2b2e52;--env-paper-2: #21243f;--env-paper-3: #171930;--env-flap-1: #2e3157;--env-flap-2: #1c1f38;--env-hairline: rgba(139, 144, 208, .32);--env-wax-1: #5a5fa8;--env-wax-2: #3f4488;--env-wax-3: #282c60;--env-wax-ink: rgba(226, 228, 255, .92)}[data-mood=quiet-garden]{--room-bg: #eaf7f0;--room-surface: #f4fbf7;--room-accent: #3b6d11;--room-text: #1a3208;--room-muted: #4c6640;--room-border: #c9e3d5;--room-glow: rgba(59, 109, 17, .14);--room-success: #3b6d11;--room-error: #98341f;--room-display: "Playfair Display", Georgia, serif;--room-body: "Inter", system-ui, sans-serif;--room-display-style: italic;--room-display-weight: 400;--room-display-lh: 1.14;--room-display-track: -.01em;--room-letter-lh: 1.9;--env-paper-1: #e7efdd;--env-paper-2: #d6e3c6;--env-paper-3: #b9caa4;--env-flap-1: #eff5e8;--env-flap-2: #cfdebd;--env-hairline: rgba(59, 109, 17, .32);--env-wax-1: #4c7d1c;--env-wax-2: #3b6d11;--env-wax-3: #27500a;--env-wax-ink: rgba(240, 250, 230, .92)}[data-mood=confetti-love]{--room-bg: #fff8e7;--room-surface: #fffdf6;--room-accent: #e8c99a;--room-text: #4a3010;--room-muted: #7a5c33;--room-border: #ecdcbb;--room-glow: rgba(232, 201, 154, .2);--room-success: #44764f;--room-error: #ad4a2c;--room-display: "Bricolage Grotesque", "Archivo", system-ui, sans-serif;--room-body: "Archivo", system-ui, sans-serif;--room-display-style: normal;--room-display-weight: 800;--room-display-lh: .9;--room-display-track: -.025em;--room-letter-lh: 1.75;--env-paper-1: #f7e7cb;--env-paper-2: #efd7ab;--env-paper-3: #dcbe86;--env-flap-1: #fbeed7;--env-flap-2: #e9cfa0;--env-hairline: rgba(138, 107, 62, .36);--env-wax-1: #cf6440;--env-wax-2: #c25a3a;--env-wax-3: #933d22;--env-wax-ink: rgba(255, 240, 224, .94)}*{box-sizing:border-box}html{background:var(--void);-webkit-text-size-adjust:100%}body{margin:0;background:var(--void);color:var(--text);font-family:DM Sans,system-ui,sans-serif;font-weight:300;font-size:.9375rem;line-height:1.85;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-weight:300;margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:var(--gold);text-decoration:none;transition:color var(--d-micro) var(--ease-enter)}a:hover{color:var(--gold-lift)}::-moz-selection{background:#c8a96e47;color:var(--paper)}::selection{background:#c8a96e47;color:var(--paper)}button{font:inherit;color:inherit}img{max-width:100%}:where(a,button,input,textarea,[tabindex]):focus{outline:none}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--gold-lift);outline-offset:3px;border-radius:2px}.room:not([data-mood=night-thought]) :focus-visible{outline-color:var(--room-text)}.room[data-mood=night-thought] :focus-visible{outline-color:var(--room-accent)}.skip-link{position:fixed;top:var(--s3);left:var(--s3);z-index:var(--z-toast);padding:var(--s3) var(--s6);background:var(--gold);color:var(--void);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--r-control);transform:translateY(-200%);transition:transform var(--d-micro) var(--ease-enter)}.skip-link:focus-visible{transform:translateY(0);color:var(--void)}.tex-light:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 120% 90% at 22% -10%,#ffffff8c,#fff0 62%),linear-gradient(158deg,#ffffff2e,#0000000e);border-radius:inherit}.tex-paper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;opacity:var(--tex-strength, 1);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.86' numOctaves='4' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='0.42' intercept='-0.16'/></feComponentTransfer></filter><rect width='220' height='220' filter='url(%23g)'/></svg>"),repeating-linear-gradient(90deg,#5a442804 0,#5a442804 1px,#0000 1px,#0000 3px),repeating-linear-gradient(0deg,#5a442804 0,#5a442804 1px,#0000 1px,#0000 4px);background-size:220px 220px,auto,auto;mix-blend-mode:multiply;opacity:.5}.tex-paper.is-dark:after{mix-blend-mode:screen;opacity:.28}.tex-light.is-dark:before{background:radial-gradient(ellipse 120% 90% at 22% -10%,#ffffff1a,#fff0 62%),linear-gradient(158deg,#ffffff0d,#00000038)}.tex-edge{box-shadow:inset 0 1px #fff9,inset 0 -1px #5a44281a,inset 0 0 0 1px #5a44280f,inset 0 -26px 40px -28px #5a442847}.tex-edge.is-dark{box-shadow:inset 0 1px #ffffff17,inset 0 0 0 1px #ffffff0d,inset 0 -26px 40px -28px #00000080}.tex-deckle{-webkit-mask-image:var(--deckle);mask-image:var(--deckle);--deckle: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='560' preserveAspectRatio='none'><filter id='d'><feTurbulence type='fractalNoise' baseFrequency='0.022 0.05' numOctaves='3' seed='7'/><feDisplacementMap in='SourceGraphic' scale='7'/></filter><rect x='4' y='4' width='392' height='552' rx='3' fill='white' filter='url(%23d)'/></svg>");-webkit-mask-size:100% 100%;mask-size:100% 100%}[data-mood=old-letter] .tex-paper:after{opacity:.86}[data-mood=old-letter] .tex-vignette:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 120px 34px #78562c33}[data-mood=soft-bloom] .tex-paper:after{background-image:radial-gradient(circle at 4px 4px,rgba(200,110,150,.13) 1.1px,transparent 1.6px),repeating-linear-gradient(90deg,rgba(160,90,120,.012) 0 1px,transparent 1px 3px);background-size:11px 11px,auto;opacity:.75}.t-display{font-family:Cormorant Garamond,Georgia,serif;font-weight:300;font-size:clamp(2.75rem,7vw,5.75rem);line-height:.96;letter-spacing:-.02em}.t-h1{font-family:Cormorant Garamond,Georgia,serif;font-weight:300;font-size:clamp(1.875rem,4.4vw,3.25rem);line-height:1.06;letter-spacing:-.01em}.t-h2{font-family:Cormorant Garamond,Georgia,serif;font-weight:300;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}.t-h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:1.5rem;line-height:1.3}.t-label{font-size:.625rem;letter-spacing:.34em;text-transform:uppercase;line-height:1.4}.t-caption{font-size:.78rem;line-height:1.6}.t-mono{font-family:Courier Prime,Courier New,monospace;font-size:.72rem;letter-spacing:.08em}.t-em{font-style:italic;color:var(--gold)}.t-room-display{font-family:var(--room-display);font-style:var(--room-display-style);font-weight:var(--room-display-weight);line-height:var(--room-display-lh);letter-spacing:var(--room-display-track);color:var(--room-text)}.t-room-body{font-family:var(--room-body);color:var(--room-text)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:14px 34px;border:1px solid transparent;border-radius:var(--r-control);font-family:DM Sans,system-ui,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;overflow:hidden;transition:transform var(--d-micro) var(--ease-enter),background-color var(--d-micro) var(--ease-enter),border-color var(--d-micro) var(--ease-enter),color var(--d-micro) var(--ease-enter),box-shadow var(--d-micro) var(--ease-enter)}.btn:disabled{cursor:not-allowed;transform:none!important;box-shadow:none}.btn-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.42) 50%,transparent 80%);transform:translate(-130%);transition:transform .52s var(--ease-object);pointer-events:none}.btn-primary{background:var(--gold);color:var(--void);font-weight:500}@media (hover: hover){.btn-primary:hover:not(:disabled){background:var(--gold-lift);transform:translateY(-1px);box-shadow:0 6px 18px #c8a96e38}.btn-primary:hover:not(:disabled):after{transform:translate(130%)}.btn-secondary:hover:not(:disabled){color:var(--gold-lift);border-color:#c8a96e73;transform:translateY(-1px)}.btn-quiet:hover:not(:disabled){color:var(--paper)}}.btn-primary:active:not(:disabled){background:#b9975c;transform:scale(.985);transition-duration:90ms}.btn-primary:disabled{background:#c8a96e38;color:#f2ede657}.btn-secondary{background:transparent;color:var(--text-dim);border-color:var(--hairline-strong)}.btn-secondary:active:not(:disabled){background:#c8a96e14;color:var(--gold)}.btn-secondary:disabled{color:#f2ede633;border-color:#f2ede60f}.btn-quiet{background:transparent;color:var(--text-mute);padding:12px 16px;letter-spacing:.16em}.btn-room{background:var(--room-accent);color:var(--room-bg);font-family:var(--room-body);border:none}[data-mood=soft-bloom] .btn-room,[data-mood=confetti-love] .btn-room{color:var(--room-text)}.btn-room-quiet{background:transparent;color:var(--room-muted);border:1px solid var(--room-border);font-family:var(--room-body)}.btn-loading:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff3d;transform-origin:left;animation:fill 2.4s var(--ease-object) forwards}@keyframes fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.field{display:flex;flex-direction:column;gap:var(--s2)}.field-label{font-size:.625rem;letter-spacing:.3em;text-transform:uppercase;color:var(--text-mute)}.field-input{width:100%;padding:12px 2px;background:transparent;border:none;border-bottom:1px solid var(--hairline-strong);color:var(--paper);font-family:inherit;font-size:1rem;transition:border-color var(--d-micro) var(--ease-enter)}.field-input::-moz-placeholder{color:#f2ede68c}.field-input::placeholder{color:#f2ede68c}.field-input:focus{border-bottom-color:var(--gold)}.field-input:focus-visible{outline-offset:4px}.field-input[aria-invalid=true]{border-bottom-color:var(--error)}.field-input:disabled{color:#f2ede633;border-bottom-color:#f2ede60f}.field-error{font-size:.78rem;color:var(--error)}.field-hint{font-size:.78rem;color:var(--text-mute)}.sheet{position:relative;background:#f7f3ea;border-radius:var(--r-envelope);box-shadow:var(--elev-sheet);overflow:hidden;transition:transform var(--d-ui) var(--ease-enter),box-shadow var(--d-ui) var(--ease-enter)}.sheet:focus-within{transform:translateY(-2px);box-shadow:0 36px 70px #0000008c,0 0 40px -18px #c8a96e66}.sheet:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold);transform:scaleY(.2);transform-origin:top;transition:transform .32s var(--ease-object);z-index:2}.sheet:focus-within:before{transform:scaleY(1)}.sheet-textarea{position:relative;z-index:1;display:block;width:100%;min-height:168px;padding:30px 30px 12px;background:transparent;border:none;resize:vertical;font-family:Cormorant Garamond,Georgia,serif;font-size:1.1875rem;line-height:1.75;color:#2a2218}.sheet-textarea::-moz-placeholder{color:#2a2218a8}.sheet-textarea::placeholder{color:#2a2218a8}.sheet-textarea:focus-visible{outline:none}.sheet-meta{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:var(--s4);margin:0 30px;padding:14px 0 18px;border-top:1px solid rgba(42,34,24,.12);font-family:Courier Prime,monospace;font-size:.6875rem;color:#2a2218b8}.counter-warn{color:#a3552f}.counter-over{color:#97301c;font-weight:700}.rail{position:relative;flex:1;height:1px;background:var(--hairline-strong)}.rail-fill{position:absolute;inset:0 auto 0 0;height:1px;background:var(--gold);transform-origin:left;transition:width var(--d-ui) var(--ease-object)}.rail-node{position:absolute;top:-2px;width:5px;height:5px;border-radius:50%;background:#f2ede62e;transform:translate(-50%);transition:background-color var(--d-ui) var(--ease-enter)}.rail-node.is-done{background:var(--gold)}.rail-node.is-current{top:-3px;width:7px;height:7px;background:var(--gold-lift);box-shadow:0 0 0 4px #c8a96e24}.skeleton-line{height:8px;border-radius:1px;background:linear-gradient(90deg,#f2ede60f,#f2ede626,#f2ede60f);background-size:200% 100%;animation:shimmer 1.6s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.toast{position:fixed;left:50%;bottom:var(--s6);z-index:var(--z-toast);transform:translate(-50%);display:flex;gap:14px;align-items:flex-start;max-width:min(400px,calc(100vw - 2 * var(--s6)));padding:16px 20px;background:var(--void-raised);border:1px solid var(--hairline-strong);border-radius:var(--r-control);box-shadow:0 20px 50px #0009}.toast-error{border-color:#c9705c66}.toast-success{border-color:#7fae8659}.caret{display:inline-block;width:1px;height:1em;margin-left:1px;vertical-align:-.14em;background:currentColor;animation:caret 1.05s step-end infinite}@keyframes caret{0%,to{opacity:1}50%{opacity:0}}.env{position:relative;width:100%;aspect-ratio:3 / 2;filter:drop-shadow(0 26px 44px rgba(0,0,0,.55))}.env-back{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;border-radius:var(--r-envelope);overflow:hidden;background:linear-gradient(172deg,var(--env-flap-2) 0%,var(--env-paper-2) 46%,var(--env-paper-3) 100%);box-shadow:inset 0 0 0 1px var(--env-hairline)}.env-pocket{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-pocket);border-radius:var(--r-envelope);overflow:hidden;background:linear-gradient(158deg,var(--env-paper-1) 0%,var(--env-paper-2) 54%,var(--env-paper-3) 100%);box-shadow:inset 0 0 0 1px var(--env-hairline);clip-path:polygon(0 40%,50% 40%,100% 40%,100% 101%,0 101%)}.env-sheen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:35;pointer-events:none;border-radius:var(--r-envelope);background:linear-gradient(148deg,#ffffff29,#ffffff08 34%,#00000024)}.env-fold-l,.env-fold-r,.env-crease,.env-bottom{position:absolute;top:0;right:0;bottom:0;left:0}.env-fold-l{background:linear-gradient(96deg,#ffffff38,#fff0 46%);clip-path:polygon(0 0,49% 50%,0 100%)}.env-fold-r{background:linear-gradient(264deg,#00000029,#0000 46%);clip-path:polygon(100% 0,51% 50%,100% 100%)}.env-crease{background:var(--env-hairline);clip-path:polygon(0 100%,50% 43%,100% 100%)}.env-bottom{background:linear-gradient(2deg,var(--env-paper-2),var(--env-flap-1));clip-path:polygon(0 101%,50% 44.8%,100% 101%)}.env-flap{position:absolute;left:0;right:0;top:0;height:58%;z-index:var(--z-flap);transform-origin:50% 0;transform:rotateX(0);transition:transform 1.2s var(--ease-object)}.env-flap-edge,.env-flap-face{position:absolute;top:0;right:0;bottom:0;left:0}.env-flap-edge{background:var(--env-hairline);clip-path:polygon(0 0,100% 0,50% 100%)}.env-flap-face{background:linear-gradient(178deg,var(--env-flap-1),var(--env-flap-2));clip-path:polygon(0 -2%,100% -2%,50% 98.4%)}.env[data-state=opening] .env-flap,.env[data-state=open] .env-flap{transform:rotateX(-168deg)}.env[data-state=open] .env-flap{z-index:6}.env[data-state=opening] .env-flap-face,.env[data-state=open] .env-flap-face{background:linear-gradient(178deg,var(--env-flap-2),var(--env-flap-1))}.env-seal{position:absolute;left:50%;top:58%;z-index:var(--z-seal);width:19%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:48% 52% 51% 49%/52% 48%;background:radial-gradient(circle at 36% 30%,var(--env-wax-1) 0%,var(--env-wax-2) 52%,var(--env-wax-3) 100%);box-shadow:0 7px 16px #0000006b,inset 0 1px 1px #ffffff42,inset 0 -3px 7px #00000061;display:grid;place-items:center;transition:transform .52s var(--ease-object),opacity .52s var(--ease-object)}.env-seal:before{content:"";position:absolute;top:11%;right:11%;bottom:11%;left:11%;border-radius:inherit;border:1px solid rgba(255,255,255,.15)}.env-seal span{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:clamp(.9rem,2.1vw,1.6rem);color:var(--env-wax-ink);text-shadow:0 1px 1px rgba(0,0,0,.4)}.env[data-state=opening] .env-seal,.env[data-state=open] .env-seal{transform:translate(-50%,-50%) scale(1.35);opacity:0}.env-sheet{position:absolute;left:12%;width:76%;height:78%;z-index:var(--z-paper);top:22%;opacity:0;border-radius:1px;background:linear-gradient(174deg,#fbf7ee,#f4eee1 62%,#e8dfcd);box-shadow:0 -6px 18px #00000052,inset 0 0 0 1px #7860381f;transition:top .8s var(--ease-enter),opacity .32s var(--ease-enter)}.env-sheet:before{content:"";position:absolute;inset:16% 14% auto 14%;height:34%;background:repeating-linear-gradient(180deg,rgba(70,56,34,.22) 0 1px,transparent 1px 11px);-webkit-mask-image:linear-gradient(90deg,#000 0 62%,transparent 92%);mask-image:linear-gradient(90deg,#000 0 62%,transparent 92%)}.env[data-state=open] .env-sheet{top:-34%;opacity:1}.env-bob{animation:bob 3.5s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.ambient-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-ambient);width:100%;height:100%;pointer-events:none}.glow{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-ambient);pointer-events:none;background:radial-gradient(ellipse 58% 52% at 50% 38%,var(--room-glow) 0%,transparent 70%);transition:background 1.2s var(--ease-enter)}.vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-motif);pointer-events:none;box-shadow:inset 0 0 140px 46px #0000009e}.petal{position:absolute;top:-6%;z-index:var(--z-fore);background-image:url(/assets/petal-sprite-sheet.webp);background-size:400% 400%;pointer-events:none;animation:petalfall linear infinite}@keyframes petalfall{0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:0}12%{opacity:.85}88%{opacity:.7}to{transform:translate3d(28px,108vh,0) rotate(240deg);opacity:0}}.sprig{position:absolute;z-index:var(--z-motif);background-image:url(/assets/botanical-sprite-sheet.webp);background-size:500% 400%;pointer-events:none}.confetti-piece{position:absolute;z-index:var(--z-fore);background-image:url(/assets/confetti-sprite-sheet.webp);background-size:600% 600%;pointer-events:none;will-change:transform}.shell{position:relative;min-height:100svh}.page{width:100%;max-width:80rem;margin-inline:auto;padding-inline:var(--gutter)}.section{position:relative;padding-block:var(--section)}.rule{height:1px;background:var(--hairline);border:none;margin:0}.measure-letter{max-width:46ch}.measure-prose{max-width:62ch}.measure-caption{max-width:48ch}.room{position:relative;min-height:100svh;background:var(--room-bg);color:var(--room-text);font-family:var(--room-body);overflow:hidden}.room-rail{position:relative;z-index:var(--z-ui);display:flex;justify-content:space-between;align-items:center;gap:var(--s4);margin-top:var(--s12);padding-top:var(--s4);border-top:1px solid var(--room-border);font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--room-muted)}.room-rail:before{content:"";position:absolute;top:-8px;right:-12px;bottom:-12px;left:-12px;z-index:-1;background:var(--room-bg);-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%);mask-image:linear-gradient(180deg,transparent,#000 22%)}.room-rail-actions{display:flex;align-items:center;gap:var(--s2)}.rail-link{min-height:44px;display:inline-flex;align-items:center;padding:12px;color:var(--room-muted);font:inherit;letter-spacing:.16em;text-decoration:none;border-bottom:1px solid transparent}.rail-link:hover{color:var(--room-text);border-bottom-color:var(--room-accent)}.report-btn{display:inline-flex;align-items:center;gap:var(--s2);min-width:44px;min-height:44px;padding:12px;background:transparent;border:none;cursor:pointer;color:color-mix(in srgb,var(--room-muted) 72%,transparent);font-family:inherit;font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;transition:color var(--d-micro) var(--ease-enter)}.report-btn:hover{color:var(--room-muted)}.report-btn:disabled{cursor:default;opacity:.5}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.env-bob{animation:none}.petal{animation:none;opacity:.7}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.btn-label{position:relative;z-index:1}.picker{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--s3)}@media (max-width: 1024px){.picker{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.room:not(.room-compact) .room-inner{padding-top:130px}.room:not(.room-compact) .room-decoration{width:130px;height:125px;right:12px}.room:not(.room-compact) .room-art-stem{width:80px;top:10px;right:5px}.room:not(.room-compact) .room-art-petals{top:20px}.room:not(.room-compact) .room-art-seal{width:48px;top:38px;right:20px}.room[data-mood=night-thought] .room-inner,.room[data-mood=confetti-love] .room-inner{padding-top:48px}.preview-toolbar nav{width:100%}.preview-toolbar .btn{flex:1;padding-inline:12px}.link-row input{width:100%}.picker{grid-template-columns:1fr;gap:var(--s2)}}.card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:3 / 4;padding:var(--s4);border:none;border-radius:var(--r-control);overflow:hidden;cursor:pointer;text-align:left;transition:transform var(--d-ui) var(--ease-enter),box-shadow var(--d-ui) var(--ease-enter)}@media (max-width: 640px){.card{aspect-ratio:16 / 7}}.card-art{position:absolute;top:-8%;left:-6%;width:112%;height:76%;-o-object-fit:contain;object-fit:contain;opacity:.92;pointer-events:none}.card-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(circle at 22% 24%,rgba(226,228,255,.9) .9px,transparent 1.4px),radial-gradient(circle at 68% 16%,rgba(226,228,255,.7) .7px,transparent 1.2px),radial-gradient(circle at 42% 46%,rgba(226,228,255,.85) 1px,transparent 1.6px),radial-gradient(circle at 82% 58%,rgba(226,228,255,.6) .7px,transparent 1.2px),radial-gradient(circle at 14% 66%,rgba(226,228,255,.75) .8px,transparent 1.3px)}.card-scrim{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:linear-gradient(to top,rgba(12,10,16,.74) 0%,transparent 58%);transition:opacity var(--d-ui) var(--ease-enter)}.card-meta{position:relative;display:block}.card-name{display:block;font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:1rem;color:#4a2030;transition:color var(--d-ui) var(--ease-enter)}.card-name-old-letter{font-family:Cormorant Garamond,Georgia,serif;font-style:normal;font-size:1.08rem;color:#3a2410}.card-name-night-thought{font-family:Cormorant Garamond,Georgia,serif;color:#e6e7ff}.card-name-quiet-garden{color:#12240a}.card-name-confetti-love{font-family:Bricolage Grotesque,Archivo,system-ui,sans-serif;font-style:normal;font-weight:800;font-size:1.3rem;line-height:.92;letter-spacing:-.025em;color:#4a3010}.card-use{display:block;margin-top:3px;font-family:DM Sans,system-ui,sans-serif;font-size:.5625rem;letter-spacing:.18em;text-transform:uppercase;opacity:0;color:#ffffffd1;transform:translateY(4px);transition:opacity var(--d-ui) var(--ease-enter),transform var(--d-ui) var(--ease-enter)}@media (hover: hover){.card:hover{transform:translateY(-4px);box-shadow:0 22px 44px #00000080}.card:hover .card-scrim,.card:hover .card-use{opacity:1}.card:hover .card-use{transform:translateY(0)}.card:hover .card-name{color:#fff}}.card:focus-visible{outline:2px solid var(--gold-lift);outline-offset:3px}.card:focus-visible .card-scrim,.card:focus-visible .card-use{opacity:1}.card:focus-visible .card-use{transform:translateY(0)}.card:focus-visible .card-name{color:#fff}.card.is-selected{box-shadow:0 0 0 1px var(--void),0 0 0 2px var(--gold),0 22px 44px #00000080}.card-check{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--gold)}.room-inner{position:relative;z-index:var(--z-ui);display:flex;flex-direction:column;min-height:100svh;width:100%;max-width:60rem;margin-inline:auto;padding:clamp(3rem,8vh,6rem) var(--gutter) clamp(2rem,5vh,3rem)}.room-eyebrow{font-family:var(--room-body);font-size:.5938rem;letter-spacing:.34em;text-transform:uppercase;color:var(--room-muted);margin-bottom:var(--s8)}.room{isolation:isolate}.room-ambience,.room-decoration{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-motif)}.room-ambience{-webkit-mask-image:linear-gradient(90deg,#000,transparent 20%,transparent 78%,#000);mask-image:linear-gradient(90deg,#000,transparent 20%,transparent 78%,#000)}.room-decoration{left:auto;width:min(22vw,20rem);overflow:hidden}.room-art{position:absolute;-o-object-fit:contain;object-fit:contain}.room-art-stem{width:100%;right:-8%;top:22%;opacity:.8}.room-art-petals{width:100%;right:2%;top:20%}.room-art-seal{width:64px;right:30%;top:15%;transform:rotate(-12deg)}.room[data-mood=old-letter]{background-image:radial-gradient(ellipse at 15% 0%,#fffaf2,transparent 65%),linear-gradient(90deg,transparent 49.8%,rgba(120,86,44,.035) 50%,transparent 50.3%)}.room[data-mood=soft-bloom]{background-image:radial-gradient(ellipse at 100% 0%,#f8dbe6,transparent 65%)}.room[data-mood=quiet-garden]{background-image:radial-gradient(ellipse at 100% 100%,#d8eadd,transparent 70%)}.room .confetti-piece{background-image:none;background-color:#bb704f;clip-path:inset(28% 0)}.room .confetti-piece:nth-child(3n){background-color:#c49b43}.room .confetti-piece:nth-child(3n+1){background-color:#c98691;border-radius:50%}.room-rail[hidden]{display:none}.room-rail:before{content:none}.letter-sign{overflow-wrap:anywhere}.letter-stack{flex:1;display:flex;flex-direction:column;justify-content:center}.letter-lead{font-size:clamp(1.9rem,5.2vw,3.1rem);margin:0 0 var(--s6);text-wrap:balance}[data-mood=confetti-love] .letter-lead{font-size:clamp(2.4rem,6.6vw,4rem);text-transform:uppercase}.letter-salutation{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:.9375rem;color:var(--room-muted);margin:0 0 var(--s6)}.letter-greeting{font-family:var(--room-display);font-style:italic;font-size:.9375rem;color:color-mix(in srgb,var(--room-accent) 68%,var(--room-text));margin:0 0 var(--s6)}.letter-body{overflow-wrap:anywhere;font-family:var(--room-body);font-weight:400;font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:var(--room-letter-lh);color:var(--room-text);max-width:46ch;white-space:pre-wrap;margin:0}[data-mood=old-letter] .letter-body{font-family:Courier Prime,Courier New,monospace;font-weight:400;font-size:clamp(.95rem,1.3vw,1.03rem);line-height:1.95}[data-mood=night-thought] .letter-body{font-weight:300}.letter-rule{width:48px;height:2px;margin:var(--s8) 0 0;border:none;background:color-mix(in srgb,var(--room-accent) 55%,var(--room-text));transition:opacity .9s var(--ease-enter)}.letter-sign{margin:var(--s6) 0 0;font-family:var(--room-display);font-style:italic;font-size:1.15rem;color:var(--room-muted);transition:opacity 1.5s var(--ease-enter)}[data-mood=night-thought] .letter-sign,[data-mood=confetti-love] .letter-sign{font-family:var(--room-body);font-style:normal;font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase}[data-mood=confetti-love] .letter-sign{font-weight:600}.topbar{position:relative;z-index:var(--z-sticky);display:flex;justify-content:space-between;align-items:baseline;gap:var(--s6);padding:var(--s6) var(--gutter);font-size:.5938rem;letter-spacing:.3em;text-transform:uppercase;color:var(--text-mute)}.wordmark{color:var(--gold);background:none;border:none;padding:0;cursor:pointer;font:inherit;letter-spacing:.3em}.hero{position:relative;z-index:var(--z-ui);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:82svh;padding:var(--s8) var(--gutter) var(--s24);text-align:center}.hero>*{max-width:100%;min-width:0}.hero-word{display:inline-block;overflow:hidden;vertical-align:bottom}.hero-word-inner{display:inline-block}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:center;margin-top:var(--s12)}.scroll-hint{display:flex;flex-direction:column;align-items:center;gap:var(--s2);margin-top:var(--s16);font-size:.5625rem;letter-spacing:.28em;text-transform:uppercase;color:#f2ede647}.scroll-rule{width:1px;height:38px;background:linear-gradient(to bottom,rgba(200,169,110,.45),transparent)}.step-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;background:var(--hairline);border-block:1px solid var(--hairline)}.step-cell{background:var(--void);padding:var(--s8) var(--s6)}.step-index{font-family:Courier Prime,monospace;font-size:.6875rem;color:var(--gold)}.compose-shell{position:relative;z-index:var(--z-ui);min-height:100svh;display:flex;flex-direction:column}.compose-body{flex:1;width:100%;max-width:80rem;margin-inline:auto;padding:var(--s6) var(--gutter) var(--s16)}.compose-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.86fr);gap:clamp(2rem,5vw,3.5rem);align-items:start}@media (max-width: 900px){.compose-split{grid-template-columns:1fr}}.compose-actions{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3);margin-top:var(--s16);padding-top:var(--s6);border-top:1px solid var(--hairline)}.swatches{display:flex;gap:var(--s3);align-items:center;flex-wrap:wrap}.swatch{width:34px;height:34px;padding:0;border:none;border-radius:50%;cursor:pointer;transition:transform var(--d-micro) var(--ease-enter),box-shadow var(--d-micro) var(--ease-enter)}.swatch:hover{transform:scale(1.08)}.swatch[aria-checked=true]{box-shadow:0 0 0 1px var(--void),0 0 0 2px var(--paper)}.preview-card{position:relative;border-radius:var(--r-sheet);padding:0;overflow:hidden;background:var(--room-bg);color:var(--room-text);border:1px solid var(--room-border);min-height:300px;transition:background-color .6s var(--ease-enter),border-color .6s var(--ease-enter)}.room-compact .room-inner{min-height:340px;padding:76px 32px 36px}.room-compact .room-decoration{width:100px;height:90px;right:12px}.room-compact .room-art-stem{width:60px;top:8px;right:10px}.room-compact .room-art-petals{top:12px}.room-compact .room-art-seal{width:38px;top:22px;right:18px}.room-compact .letter-lead{font-size:1.8rem}.room-compact[data-mood=confetti-love] .letter-lead{font-size:2.2rem}.room-compact .letter-stack{justify-content:flex-start}.preview-link{display:flex;align-items:center;justify-content:space-between;min-height:48px;color:var(--gold-lift);font-size:.85rem;text-underline-offset:5px}.preview-link:hover{color:var(--paper)}.delivery-options{border:0;padding:0;margin:0;min-width:0}.delivery-options legend{margin-bottom:16px;color:var(--paper);font-size:.875rem}.delivery-option{display:flex;align-items:flex-start;gap:14px;padding:20px 0;border-top:1px solid var(--hairline-strong);cursor:pointer}.delivery-option input{width:18px;height:18px;margin-top:4px;accent-color:var(--gold);flex-shrink:0}.delivery-option strong{display:block;color:var(--paper);font-weight:500}.delivery-option strong small{display:inline-block;margin-left:8px;color:var(--gold-lift);font-size:.65rem}.delivery-option span span{display:block;margin-top:4px;color:var(--text-dim);font-size:.8rem;line-height:1.65}.delivery-option:has(input:checked) strong{color:var(--gold-lift)}.delivery-option:focus-within{outline:2px solid var(--gold);outline-offset:4px}.preview-toolbar{position:relative;z-index:var(--z-ui);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:20px clamp(24px,4vw,64px);background:var(--void)}.preview-toolbar strong{color:var(--paper);font-size:.875rem;font-weight:500}.preview-toolbar p{margin:4px 0 0;color:var(--text-dim);font-size:.78rem}.preview-toolbar nav{display:flex;flex-wrap:wrap;gap:12px}.share-status{color:var(--text-dim);min-height:1.6em;margin:12px 0 24px;max-width:48ch}.preview-card .letter-body{font-size:1.0625rem}.review-row{display:grid;grid-template-columns:minmax(120px,.45fr) 1fr;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--hairline)}.review-row dt{font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;color:var(--text-mute)}.review-row dd{margin:0;color:var(--paper);overflow-wrap:anywhere}.link-row{display:flex;align-items:stretch;max-width:100%;border:1px solid var(--hairline-strong);border-radius:var(--r-control);overflow:hidden}.link-row input{flex:1;min-width:0;padding:14px 18px;font-family:Courier Prime,monospace;font-size:.78rem;color:var(--text-dim);overflow-x:auto;white-space:nowrap;border:0;border-radius:0;background:var(--void-raised);width:min(480px,70vw)}.link-row .btn{border-radius:0;padding-inline:22px}.state-page{position:relative;z-index:var(--z-ui);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s6);min-height:100svh;padding:var(--gutter);text-align:center}.success-page{position:relative;z-index:var(--z-ui);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100svh;padding:var(--s16) var(--gutter);text-align:center}.progress-rail{display:flex;align-items:center;gap:var(--s3)}@media (max-width: 640px){.topbar{flex-direction:column;align-items:flex-start;gap:var(--s2);padding-block:var(--s4)}.topbar span:last-child,.topbar span[style]{max-width:none!important;text-align:left!important;line-height:1.7!important}.hero{min-height:auto;padding-bottom:var(--s16)}.hero-actions .btn,.hero-actions a{width:100%}.hero-actions{width:100%;flex-direction:column}.room-inner{padding-top:var(--s12)}.room-rail{flex-direction:column;align-items:flex-start;gap:var(--s2)}.room-rail-actions{margin-left:-12px}.compose-actions .btn{flex:1}.link-row{flex-direction:column}.link-row input,.link-row .btn{width:100%}.review-row{grid-template-columns:1fr;gap:var(--s1)}.t-label,.room-eyebrow{letter-spacing:.22em}.hero .t-label{letter-spacing:.16em}}.letter-lead,.letter-body,.t-display,.t-h1{overflow-wrap:break-word}@font-face{font-family:Chubbo;src:url(/fonts/chubbo-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light;--paper: #f7f2ea;--paper-warm: #efe4da;--paper-white: #fffdfc;--ink: #171514;--ink-soft: #403b37;--muted: #756d67;--rose: #b94a5d;--rose-deep: #963746;--blush: #e9b9be;--line: rgba(23, 21, 20, .12);--control-line: #8f7d75;--void: var(--paper);--void-raised: var(--paper-warm);--gold: var(--rose);--gold-lift: var(--rose-deep);--wax: var(--rose-deep);--text: var(--ink);--text-dim: var(--ink-soft);--text-mute: var(--muted);--hairline: var(--line);--hairline-strong: rgba(23, 21, 20, .2);--scrim: rgba(247, 242, 234, .9);--success: #3f7357;--error: #a3304a;--font-display: Chubbo, Georgia, serif;--font-body: Supreme, sans-serif;--r-control: 6px;--r-sheet: 6px;--elev-lift: 0 16px 36px rgba(64, 59, 55, .12);--elev-sheet: 0 12px 30px rgba(64, 59, 55, .08);--ease-enter: cubic-bezier(.23, 1, .32, 1);--d-micro: .16s;--d-ui: .3s;--d-object: .7s}html{background:var(--paper);scroll-behavior:smooth;scroll-padding-top:36px;scrollbar-color:#bd9c96 var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-weight:400;line-height:1.65}h1,h2,h3,h4,.t-display,.t-h1,.t-h2,.t-h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;color:var(--ink)}h1,h2{text-wrap:balance}a{color:var(--rose-deep)}a:hover{color:var(--rose)}button,input,textarea{font-family:var(--font-body)}input,textarea{caret-color:var(--rose-deep)}::-moz-selection{background:var(--blush);color:var(--ink)}::selection{background:var(--blush);color:var(--ink)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:#bd9c96;border:3px solid var(--paper);border-radius:8px}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--rose-deep);outline-offset:5px;border-radius:4px}.skip-link{background:var(--rose-deep);color:var(--paper-white);font-size:.9rem;letter-spacing:0;text-transform:none}svg{flex-shrink:0}.letter-cta svg,.nav-write svg,.text-link svg,.desk-scroll svg,.scene-invitation svg,.ceremony-open svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.arrow-down{transform:rotate(90deg)}.unsaid-site{overflow:clip}.unsaid-nav{width:min(1280px,calc(100% - 112px));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:106px}.unsaid-wordmark{color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1.65rem;letter-spacing:-.035em;line-height:1}.unsaid-wordmark:hover{color:var(--ink)}.wordmark-period{color:var(--rose)}.unsaid-nav nav{display:flex;align-items:center;gap:36px;margin-left:auto;margin-right:40px}.unsaid-nav nav a{display:grid;place-items:center;min-height:44px;color:var(--ink-soft);font-size:.9375rem}.unsaid-nav nav a:hover{color:var(--rose-deep)}.nav-write{display:inline-flex;gap:20px;align-items:center;min-height:44px;padding:9px 17px;border:1px solid #ab817f;border-radius:5px;color:var(--ink);font-size:.9rem;font-weight:500}.nav-write:hover{border-color:var(--rose);color:var(--rose-deep)}.unsaid-hero{position:relative;width:min(1280px,calc(100% - 112px));min-height:700px;margin-inline:auto;display:grid;grid-template-columns:55% 45%;align-items:center;padding:46px 0 108px}.hero-copy{position:relative;z-index:2;align-self:center;min-width:0}.hero-copy h1{font-size:clamp(3.5rem,6.15vw,5.65rem);line-height:1.06;letter-spacing:-.032em;margin:0}.hero-copy p{margin:28px 0 36px;color:var(--ink-soft);font-size:1.125rem;line-height:1.7}.letter-cta{display:inline-flex;justify-content:center;align-items:center;gap:38px;padding:14px 25px;min-height:54px;border-radius:5px;background:var(--rose);color:var(--paper-white);font-weight:500;font-size:1rem;transition:background .16s,transform .16s}.letter-cta:hover{background:var(--rose-deep);color:var(--paper-white);transform:translateY(-2px)}.letter-cta:active{transform:translateY(0)}.hero-reassurance{display:block;margin-top:20px;color:var(--muted);font-size:.8125rem}.hero-reassurance span{margin-inline:6px}.hero-letter-scene{position:relative;min-width:0;height:500px;isolation:isolate}.scene-botanical{position:absolute;width:200px;max-width:none;top:-12px;right:-18px;transform:rotate(18deg);z-index:-1}.scene-envelope{position:absolute;z-index:2;width:620px;max-width:none;top:72px;left:-32px;padding:0;border:0;background:transparent;cursor:pointer;transform:rotate(-9deg);transition:transform 1s var(--ease-enter),opacity .7s}.scene-envelope img{display:block;width:100%}@media (hover: hover) and (pointer: fine){.scene-envelope:hover{transform:rotate(-7deg) translateY(-5px)}}.scene-envelope:focus-visible{outline-offset:-35px}.scene-letter{position:absolute;top:13px;left:76px;width:340px;transform:translateY(85px) rotate(-7deg);opacity:0;transition:opacity .7s,transform 1s var(--ease-enter)}.scene-letter>img{display:block;width:100%}.scene-letter-words{position:absolute;top:15%;right:14%;bottom:14%;left:14%;color:var(--ink-soft)}.scene-letter-words>span{font-family:var(--font-display);font-size:1.8rem}.scene-letter-words p{margin:20px 0 24px;font-size:1.15rem;line-height:1.65}.scene-letter-words small{font-size:.8rem;color:var(--muted)}.hero-letter-scene[data-open=true] .scene-letter{transform:translateY(-28px) rotate(-4deg);opacity:1;z-index:3}.scene-invitation{position:absolute;z-index:4;bottom:-18px;left:92px;display:flex;align-items:center;gap:16px;min-height:44px;border:0;background:transparent;font-size:.875rem;color:var(--ink-soft);cursor:pointer}.scene-invitation:hover{color:var(--rose-deep)}.scene-invitation:disabled{cursor:default}.desk-scroll{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--muted);font-size:.8rem;white-space:nowrap;padding:10px}.desk-scroll svg{width:18px}@keyframes envelope-settle{0%{transform:translateY(-18px) rotate(-11deg)}to{transform:translateY(0) rotate(-9deg)}}.desk-section{width:min(1160px,calc(100% - 112px));margin-inline:auto;padding-block:100px;scroll-margin-top:24px}.desk-section h2{font-size:clamp(2.5rem,4.4vw,4.25rem);line-height:1.1}.desk-heading{text-align:center;margin-bottom:54px}.desk-heading p{margin-top:18px;font-size:1.0625rem;color:var(--muted)}.mood-section{padding-top:92px}.stationery-picker{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.stationery-picker .card{position:relative;display:flex;flex-direction:column;justify-content:flex-start;aspect-ratio:auto;min-width:0;padding:0 7px 16px;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;transform:none;text-align:center}.stationery-sample{position:relative;width:116%;max-width:none;margin-left:-8%;aspect-ratio:3 / 2;-o-object-fit:contain;object-fit:contain;transition:transform .3s var(--ease-enter),opacity .3s}.stationery-picker .card:nth-child(1) .stationery-sample{transform:rotate(-9deg)}.stationery-picker .card:nth-child(2) .stationery-sample{transform:translateY(10px) rotate(5deg)}.stationery-picker .card:nth-child(3) .stationery-sample{transform:rotate(-4deg)}.stationery-picker .card:nth-child(4) .stationery-sample{transform:translateY(8px) rotate(8deg)}.stationery-picker .card:nth-child(5) .stationery-sample{transform:rotate(-5deg)}.stationery-picker .card:hover,.stationery-picker .card.is-selected{box-shadow:none;transform:none}.stationery-picker .card.is-selected .stationery-sample,.stationery-picker .card:focus-visible .stationery-sample{transform:translateY(-10px) rotate(0)}@media (hover: hover) and (pointer: fine){.stationery-picker .card:hover .stationery-sample{transform:translateY(-10px) rotate(0)}}.stationery-picker .card-meta{margin-top:22px}.stationery-picker .card-name{font-family:var(--font-body);font-style:normal;font-weight:500;font-size:1rem;line-height:1.5;color:var(--ink)}.stationery-picker .card-name-old-letter{font-family:Georgia,serif}.stationery-picker .card-name-night-thought{font-family:Cormorant Garamond,Georgia,serif;font-size:1.2rem;font-style:italic}.stationery-picker .card-name-quiet-garden{font-family:Playfair Display,Georgia,serif;font-size:.95rem}.stationery-picker .card-name-confetti-love{font-family:"Bricolage Grotesque",var(--font-body);font-weight:800}.stationery-picker .card:hover .card-name,.stationery-picker .card:focus-visible .card-name{color:var(--rose-deep)}.stationery-picker .card-use{margin-top:5px;opacity:1;transform:none;color:var(--muted);font-family:var(--font-body);font-size:.75rem;letter-spacing:0;text-transform:none}.stationery-picker .card-check{top:auto;right:calc(50% - 9px);bottom:-8px;color:#fff;background:var(--rose-deep)}.stationery-picker .card.is-selected .card-name{text-decoration:underline;text-decoration-color:var(--rose);text-underline-offset:5px;text-decoration-thickness:1px}.mood-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:600px;margin:44px auto 0;font-size:.875rem}.mood-caption p{display:flex;flex-direction:column}.mood-caption strong{color:var(--ink-soft);font-weight:500}.mood-caption p span{color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;font-weight:500;font-size:.9375rem}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.how-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:110px}.how-intro h2{font-size:clamp(3.2rem,5.5vw,5rem)}.how-intro p{margin-top:24px;color:var(--muted);font-size:1.0625rem}.letter-steps{position:relative;list-style:none;padding:0 0 0 32px;margin:0}.letter-steps:before{content:"";position:absolute;left:3px;top:10px;bottom:45px;width:1px;background:#d8c4bc}.letter-steps li{position:relative;padding:0 0 32px 20px}.letter-steps li:last-child{padding-bottom:0}.letter-steps li:before{content:"";position:absolute;left:-32px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--rose);outline:6px solid var(--paper)}.letter-steps h3{font-family:var(--font-body);letter-spacing:0;font-weight:500;font-size:1.25rem;margin:0 0 7px}.letter-steps p{color:var(--muted);font-size:.975rem;max-width:35ch}.privacy-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.privacy-note{position:relative;max-width:420px;width:100%;margin-inline:auto;transform:rotate(-6deg)}.privacy-note>img{width:100%;display:block}.privacy-note>div{position:absolute;top:20%;right:17%;bottom:15%;left:17%;display:flex;flex-direction:column;color:var(--ink-soft)}.privacy-note p{font-size:.95rem}.unsigned-line{width:-moz-fit-content;width:fit-content;margin:18px 0 30px;font-size:1.4rem;text-decoration:line-through;text-decoration-color:var(--rose);text-decoration-thickness:1px}.privacy-note strong{font-family:var(--font-display);font-size:clamp(1.6rem,2.2vw,2rem);line-height:1.25;font-weight:700}.privacy-note-footer{margin-top:auto;font-size:.8rem;color:var(--muted)}.privacy-copy p{margin:24px 0;color:var(--ink-soft);font-size:1.0625rem;line-height:1.8;max-width:44ch}.privacy-copy ul{padding:0;margin:26px 0 0;list-style:none;color:var(--muted);font-size:.925rem}.privacy-copy li{display:flex;align-items:center;gap:12px;padding:5px 0}.privacy-copy li:before{content:"";width:8px;height:5px;border-bottom:1.5px solid var(--rose-deep);border-left:1.5px solid var(--rose-deep);transform:rotate(-45deg)}.recipient-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:center;padding-block:100px}.recipient-copy p{margin:24px 0;color:var(--muted);font-size:1.0625rem;line-height:1.8}.recipient-letter{position:relative;width:min(440px,100%);margin-inline:auto;transform:rotate(4deg)}.recipient-letter>img{display:block;width:100%}.recipient-letter>div{position:absolute;top:15%;right:15%;bottom:13%;left:15%;display:flex;flex-direction:column;color:var(--ink-soft)}.recipient-letter>div>span{font-family:var(--font-display);color:var(--rose-deep);font-size:1.7rem;line-height:1.2}.recipient-letter p{font-size:1rem;line-height:1.8;margin-top:24px}.recipient-letter small{font-size:.8rem;color:var(--muted);margin-top:auto}.use-section{padding-top:90px}.use-fragments{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;-moz-column-gap:54px;column-gap:54px;row-gap:34px;max-width:900px;margin:54px auto 0}.use-fragment{display:inline-block;padding:18px 30px;color:var(--ink-soft);font-size:1.125rem;background:url(/assets/letter-world/letter-paper.webp) center / 100% 100% no-repeat}.fragment-1{transform:rotate(-6deg)}.fragment-2{transform:translateY(10px) rotate(4deg)}.fragment-3{transform:rotate(-3deg)}.fragment-4{transform:rotate(5deg)}.fragment-5{transform:translateY(7px) rotate(-3deg)}.fragment-6{transform:rotate(3deg)}.final-letter-cta{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center;text-align:center;padding-block:120px 160px}.final-letter-cta>div{position:relative;z-index:2}.final-letter-cta p{margin:24px 0 30px;color:var(--muted);font-size:1.0625rem}.final-letter-cta>img{position:absolute;width:310px;bottom:15px;right:-105px;transform:rotate(12deg)}.unsaid-footer{width:min(1280px,calc(100% - 112px));margin-inline:auto;padding:36px 0 44px;display:flex;align-items:center;gap:35px;color:var(--muted);font-size:.8rem}.unsaid-footer>span{margin-right:auto}.unsaid-footer nav{display:flex;align-items:center;gap:24px}.unsaid-footer nav a{min-height:44px;display:flex;align-items:center}.shell,.state-page,.success-page{background:var(--paper);color:var(--ink)}.shell .glow{display:none}.btn{min-height:48px;padding:12px 24px;border-radius:5px;font-family:var(--font-body);font-weight:500;font-size:.9375rem;line-height:1.2;letter-spacing:0;text-transform:none}.btn-primary{background:var(--rose);color:var(--paper-white);border:0;box-shadow:none}.btn-primary:hover:not(:disabled){background:var(--rose-deep);color:#fff;box-shadow:none}.btn-secondary{background:transparent;border-color:var(--control-line);color:var(--ink-soft)}.btn-secondary:hover:not(:disabled),.btn-quiet:hover:not(:disabled){background:var(--paper-warm);color:var(--ink)}.btn-quiet{color:var(--muted)}.btn:disabled{opacity:.45}.topbar{color:var(--muted);font-size:.85rem;letter-spacing:0;text-transform:none;align-items:center;padding-block:26px}.topbar .wordmark{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.025em;min-height:44px}.compose-shell{width:min(1280px,100%);margin-inline:auto}.compose-body{padding-top:40px}.compose-body .t-h1,.state-page .t-h1,.success-page .t-h1{font-size:clamp(2.4rem,4.3vw,4rem);line-height:1.08;letter-spacing:-.028em}.t-em{color:var(--rose-deep);font-style:normal}.progress-rail{color:var(--muted)}.progress-step.is-active,.progress-step[aria-current=step]{color:var(--rose-deep)}.progress-rail .t-label{letter-spacing:.03em;text-transform:none;font-size:.825rem}.sheet{background:var(--paper-white);border:0;border-radius:6px;box-shadow:var(--elev-sheet)}.sheet:focus-within{transform:none;box-shadow:var(--elev-sheet);outline:2px solid var(--rose-deep);outline-offset:4px}.sheet:before{content:none}.sheet-textarea{font-family:var(--font-body);color:var(--ink-soft);font-size:1.15rem;line-height:1.8}.sheet-textarea::-moz-placeholder{color:var(--muted)}.sheet-textarea::placeholder{color:var(--muted)}.sheet-meta,.field-hint{color:var(--muted);font-size:.8rem;font-family:var(--font-body)}.field label,.delivery-options legend{color:var(--ink-soft);font-family:var(--font-body);font-size:.9375rem;font-weight:500;line-height:1.4;letter-spacing:0;text-transform:none}.field .field-input{min-height:52px;padding:14px 16px;border:1px solid var(--control-line);border-radius:6px;background:var(--paper-white);color:var(--ink);font-size:1rem;line-height:1.4;transition:border-color var(--d-micro) var(--ease-enter),box-shadow var(--d-micro) var(--ease-enter)}.field .field-input:hover:not(:focus){border-color:var(--ink-soft)}.field .field-input:focus{border-color:var(--rose-deep);box-shadow:0 0 0 1px var(--rose-deep),0 0 0 5px #9637461f}.field .field-input:focus-visible{outline:none}.field .field-input[aria-invalid=true]{border-color:var(--error);box-shadow:0 0 0 1px var(--error)}.delivery-option{border-color:var(--line)}.delivery-option strong,.review-row dd{color:var(--ink-soft)}.delivery-option span span,.review-row dt{color:var(--muted)}.preview-toolbar{background:var(--room-bg);color:var(--room-text)}.preview-toolbar strong{color:var(--room-text);font-family:var(--font-body);font-size:1rem}.preview-toolbar p{color:var(--room-muted)}.preview-link:hover{color:var(--rose)}.preview-card{border:0;border-radius:6px}.swatch{width:44px;height:44px}.swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--rose-deep)}.t-label{font-family:var(--font-body);font-size:.8rem;letter-spacing:0;text-transform:none}.review-row dt{letter-spacing:0;text-transform:none;font-size:.875rem}.review-row dd{font-size:.9375rem}.link-row{border-color:#b6a39a;border-radius:5px;background:var(--paper-white)}.link-row input{color:var(--ink-soft);background:var(--paper-white);font-family:var(--font-body)}.success-envelope{width:min(330px,76vw);margin-bottom:24px;transform:rotate(-4deg)}.success-envelope img{display:block}.success-page .t-label{color:var(--rose-deep)!important;font-size:.875rem;letter-spacing:0;text-transform:none}.share-status{color:var(--muted)}.room-tactile .room-inner{width:min(920px,calc(100% - 48px));padding:36px 0 48px}.room-tactile .room-decoration,.room-tactile .room-ambience{display:none}.room-tactile .room-eyebrow{font-family:var(--font-body);font-size:.825rem;letter-spacing:0;text-transform:none;margin-bottom:22px}.ceremony{width:100%}.ceremony-sealed{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70svh}.ceremony-sealed>p{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,3rem);color:var(--room-text);text-align:center}.ceremony-envelope{width:min(700px,100%);padding:0;margin-top:30px;border:0;background:transparent;cursor:pointer;transition:transform .3s var(--ease-enter)}.ceremony-envelope:hover{transform:translateY(-5px) rotate(-2deg)}.ceremony-envelope img{display:block;width:100%}.ceremony-open{display:flex;align-items:center;gap:22px;min-height:48px;padding:10px 20px;background:transparent;border:1px solid var(--room-muted);border-radius:5px;color:var(--room-text);cursor:pointer}.ceremony-skip{min-height:44px;margin-top:12px;padding:10px;border:0;background:transparent;color:var(--room-muted);font-size:.8rem;text-decoration:underline;text-underline-offset:5px;cursor:pointer}.ceremony-letter{position:relative;width:min(700px,100%);min-height:740px;padding:76px 85px 90px;margin-inline:auto;background:transparent}.ceremony-paper-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.ceremony-letter-content{position:relative;z-index:1}.room-tactile .room-rail{width:min(700px,100%);margin:24px auto 0}.ceremony-letter .letter-body,.ceremony-letter .letter-lead{color:var(--letter-ink)}.ceremony-letter .letter-rule{background:var(--letter-secondary)}.room-tactile .report-btn,.room-tactile .rail-link{min-height:44px;display:inline-flex;align-items:center}.ceremony-letter .letter-stack{justify-content:flex-start}.letter-reading-skip{align-self:flex-start;min-height:44px;margin-top:16px;padding:8px 0;background:transparent;border:0;color:var(--letter-secondary);font-size:.85rem;cursor:pointer;text-decoration:underline;text-underline-offset:5px}.room-tactile .room-rail,.room-tactile .rail-link,.room-tactile .report-btn{font-family:var(--font-body);font-size:.8rem;letter-spacing:0;text-transform:none}.room[data-mood=night-thought] .ceremony-letter{--room-text: var(--letter-ink);--room-muted: var(--letter-secondary)}.room[data-mood=night-thought] .ceremony-letter .letter-body{font-weight:400}@media (max-width: 1100px){.unsaid-nav,.unsaid-hero,.desk-section,.unsaid-footer{width:calc(100% - 72px)}.unsaid-nav nav{margin-right:12px;gap:24px}.unsaid-hero{min-height:660px;grid-template-columns:57% 43%}.hero-copy h1{font-size:clamp(3.4rem,6.1vw,4.6rem)}.scene-envelope{width:500px;left:-30px;top:100px}.scene-botanical{width:170px;top:35px;right:-50px}.scene-letter{width:310px;left:25px;top:35px}.scene-invitation{left:40px;bottom:0}.privacy-section,.recipient-section,.how-section{gap:60px}}@media (max-width: 760px){.unsaid-nav,.unsaid-hero,.desk-section,.unsaid-footer{width:calc(100% - 40px)}.unsaid-nav{min-height:84px;gap:16px}.unsaid-nav nav{display:none}.unsaid-wordmark{font-size:1.4rem}.nav-write{font-size:.8rem;gap:12px;padding-inline:12px}.nav-write svg{width:18px}.unsaid-hero{display:flex;flex-direction:column;align-items:stretch;min-height:auto;padding:48px 0 85px}.hero-copy h1{font-size:clamp(2.8rem,9.8vw,4.8rem);line-height:1.09;letter-spacing:-.03em}.hero-copy p{font-size:1.0625rem;margin:24px 0}.hero-reassurance{margin-top:18px}.hero-letter-scene{height:370px;margin-top:20px}.scene-envelope{width:460px;top:34px;left:calc(50% - 218px);transform:rotate(-9deg)}.scene-botanical{width:145px;right:-22px;top:0}.scene-letter{width:270px;left:calc(50% - 135px);top:28px}.scene-letter-words{top:14%;right:15%;bottom:14%;left:15%}.scene-letter-words>span{font-size:1.5rem}.scene-letter-words p{font-size:.95rem;margin:15px 0 20px}.scene-letter-words small{font-size:.72rem}.hero-letter-scene[data-open=true] .scene-envelope{transform:translateY(165px) rotate(-13deg)}.scene-invitation{left:50%;transform:translate(-50%);bottom:-2px;width:-moz-max-content;width:max-content;max-width:100%}.desk-scroll{bottom:0}.desk-section{padding-block:72px}.desk-section h2{font-size:clamp(2.4rem,8.6vw,3.8rem)}.desk-heading{margin-bottom:38px}.desk-heading p{max-width:30ch;margin:16px auto 0;font-size:.95rem}.stationery-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 4px}.stationery-picker .card{padding-inline:4px;aspect-ratio:auto}.stationery-picker .card:last-child{grid-column:1 / -1;width:50%;justify-self:center}.stationery-picker .card-meta{margin-top:10px}.mood-caption{margin-top:38px}.how-section,.privacy-section,.recipient-section{grid-template-columns:1fr;gap:46px}.how-intro h2{max-width:10ch}.how-intro p{margin-top:18px;font-size:.975rem}.letter-steps{margin-top:4px;padding-left:16px}.letter-steps:before{left:3px}.letter-steps li:before{left:-16px}.letter-steps li{padding-left:14px}.letter-steps h3{font-size:1.125rem}.privacy-copy{grid-row:1}.privacy-copy p{font-size:.975rem}.privacy-note{max-width:330px}.privacy-note strong{font-size:1.7rem}.unsigned-line{font-size:1.25rem}.recipient-copy p{font-size:.975rem}.recipient-letter{width:min(360px,95%)}.recipient-letter>div>span{font-size:1.5rem}.recipient-letter p{font-size:.9rem;line-height:1.7;margin-top:20px}.recipient-letter small{font-size:.72rem}.use-fragments{gap:22px 12px;margin-top:32px}.use-fragment{padding:14px 20px;font-size:.95rem}.final-letter-cta{min-height:570px;padding-top:65px;padding-bottom:170px}.final-letter-cta>img{width:225px;right:-85px;bottom:0}.final-letter-cta p{max-width:27ch;margin:20px auto 26px;font-size:.975rem}.unsaid-footer{flex-wrap:wrap;gap:20px;padding-top:25px}.unsaid-footer>span{margin-right:0}.unsaid-footer nav{width:100%;justify-content:space-between;gap:16px}.topbar{padding-inline:20px;gap:16px}.topbar>span{font-size:.72rem;text-align:right;max-width:18ch}.compose-body{padding:26px 20px 54px}.compose-body .stationery-picker{gap:30px 0}.compose-body .t-h1{font-size:2.5rem}.compose-actions{margin-top:40px}.room-tactile .room-inner{width:calc(100% - 24px);padding:24px 0 36px!important}.ceremony-sealed{min-height:70svh}.ceremony-sealed>p{max-width:13ch;font-size:2rem}.ceremony-envelope{margin-block:25px}.ceremony-letter{min-height:660px;padding:58px 40px 70px}.ceremony-letter .letter-lead{font-size:2rem}.ceremony-letter .letter-body{font-size:1rem}.room-tactile .room-rail{font-size:.75rem;gap:12px}.swatches{gap:14px}}@media (max-width: 360px){.hero-copy h1{font-size:9.5vw}.scene-envelope{width:410px;left:calc(50% - 200px)}.ceremony-letter{padding-inline:32px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.scene-envelope,.scene-envelope:hover{animation:none}}.scene-envelope img{transition:opacity .7s var(--ease-enter)}.scene-envelope .envelope-photo-open{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.hero-letter-scene[data-open=true] .envelope-photo-closed{opacity:0}.hero-letter-scene[data-open=true] .envelope-photo-open{opacity:1}.hero-letter-scene[data-open=true] .scene-envelope{transform:translateY(180px) rotate(-9deg);opacity:1}.scene-letter-words small,.privacy-note-footer,.recipient-letter small{color:var(--ink-soft)}.ceremony-letter .letter-greeting,.ceremony-letter .letter-salutation,.ceremony-letter .letter-sign{color:var(--letter-secondary)}.ceremony-letter .letter-sign{font-family:var(--font-body);font-size:.875rem;font-style:normal;letter-spacing:0;text-transform:none}@media (max-width: 760px){.hero-letter-scene[data-open=true] .scene-envelope{transform:translateY(130px) rotate(-9deg)}}.ceremony-staged{position:relative;isolation:isolate;min-height:710px}.ceremony-intro{position:relative;z-index:3;text-align:center;padding-top:24px;transition:opacity .25s}.ceremony-intro p{margin:0;font-family:var(--font-display);font-size:clamp(1.9rem,4vw,3rem);line-height:1.12;color:var(--room-text)}.ceremony-intro>span{display:block;margin-top:14px;font-size:.875rem;color:var(--room-muted)}.ceremony-envelope-stage{position:relative;width:min(700px,100%);margin:54px auto 0;aspect-ratio:3 / 2;perspective:1400px;pointer-events:none}.ceremony-photo{position:absolute;top:0;right:0;bottom:0;left:0;perspective:1400px;transform-style:flat;transition:transform .8s cubic-bezier(.22,1,.36,1),opacity .65s}.ceremony-photo-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill;pointer-events:none;opacity:0}.ceremony-photo-layer[hidden],.ceremony-folded-letter img[hidden],.ceremony-paper-panel img[hidden]{display:none}.ceremony-staged[data-ready=true] .ceremony-photo-layer{opacity:1}.photo-back{z-index:10}.photo-pocket{z-index:30}.photo-flap-front{z-index:40;transform-origin:50% var(--flap-hinge);transition:transform .85s cubic-bezier(.22,1,.36,1),filter .85s;backface-visibility:hidden;filter:drop-shadow(0 2px 2px rgba(25,18,15,.18))}.photo-closure-left,.photo-closure-right{z-index:50;transform-origin:var(--closure-x) var(--closure-y)}.ceremony-staged[data-ready=true][data-stage="0"][data-gesture=band] .photo-closure-left,.ceremony-staged[data-ready=true][data-stage="0"][data-gesture=band] .photo-closure-right{opacity:.72}.ceremony-staged:not([data-stage="0"]) .photo-closure-left,.ceremony-staged:not([data-stage="0"]) .photo-closure-right{opacity:0;transition:transform .7s cubic-bezier(.22,1,.36,1),opacity .55s .12s}.ceremony-staged[data-gesture=wax]:not([data-stage="0"]) .photo-closure-left{transform:translate(-5%,7%) rotate(-14deg)}.ceremony-staged[data-gesture=wax]:not([data-stage="0"]) .photo-closure-right{transform:translate(5%,9%) rotate(18deg)}.ceremony-staged[data-gesture=ribbon]:not([data-stage="0"]) .photo-closure-left{transform:translate(-18%,8%) rotate(-12deg)}.ceremony-staged[data-gesture=ribbon]:not([data-stage="0"]) .photo-closure-right{transform:translate(22%,6%) rotate(16deg)}.ceremony-staged[data-gesture=thread]:not([data-stage="0"]) .photo-closure-left{transform:translate(-8%,10%) rotate(-32deg)}.ceremony-staged[data-gesture=thread]:not([data-stage="0"]) .photo-closure-right{transform:translate(12%,12%) rotate(38deg)}.ceremony-staged[data-gesture=band]:not([data-stage="0"]) .photo-closure-left,.ceremony-staged[data-gesture=band]:not([data-stage="0"]) .photo-closure-right{transform:translate(37%,4%) rotate(8deg)}.ceremony-staged[data-gesture=tape]:not([data-stage="0"]) .photo-closure-left,.ceremony-staged[data-gesture=tape]:not([data-stage="0"]) .photo-closure-right{transform:translate(-8%,-15%) rotate(-22deg) rotateY(42deg)}.ceremony-staged[data-stage="2"] .photo-flap-front,.ceremony-staged[data-stage="3"] .photo-flap-front{z-index:12;transform:rotateX(162deg);filter:brightness(.92)}.ceremony-hotspot{position:absolute;z-index:60;padding:0;min-width:44px;min-height:44px;border:0;border-radius:50%;background:transparent;cursor:pointer;pointer-events:auto;touch-action:manipulation}.ceremony-hotspot:focus-visible{outline:2px solid var(--room-text);outline-offset:6px}.flap-hotspot{left:8%;top:12%;width:84%;height:43%;border-radius:4px}.ceremony-folded-letter{position:absolute;z-index:20;left:11%;top:14%;width:78%;height:72%;padding:0;background:transparent;border:0;opacity:0;transform:translateY(18%);transition:transform .65s .15s cubic-bezier(.22,1,.36,1),opacity .3s;pointer-events:none;cursor:pointer;color:var(--letter-ink)}.ceremony-folded-letter img{display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill}.ceremony-folded-letter span{position:absolute;top:15%;left:0;right:0;font-family:var(--font-display);font-size:clamp(1.25rem,3vw,2rem)}.ceremony-staged[data-stage="2"] .ceremony-folded-letter{opacity:1;transform:translateY(0);pointer-events:none}.ceremony-controls{position:relative;z-index:3;display:flex;align-items:center;flex-direction:column;gap:14px;margin:-8px auto 0;text-align:center}.ceremony-cue{font-size:.875rem;color:var(--room-muted)}.ceremony-controls .ceremony-open{margin:0;min-height:48px}.ceremony-controls .ceremony-skip{margin:0}.ceremony-staged[data-stage="3"]{min-height:0}.ceremony-staged[data-stage="3"] .ceremony-intro{position:absolute;inset:0 0 auto;opacity:0;pointer-events:none}.ceremony-staged[data-stage="3"] .ceremony-envelope-stage{position:absolute;top:169px;left:50%;margin:0;transform:translate(-50%)}.ceremony-staged[data-stage="3"] .ceremony-photo{transform:translate(36%,14%) rotate(12deg) scale(.8);opacity:0;pointer-events:none}.ceremony-staged .ceremony-letter{position:relative;z-index:2;transform-origin:50% 25%}.ceremony-staged .ceremony-letter:focus{outline:none}.ceremony-paper-folds{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;perspective:1400px}.ceremony-paper-panel{position:absolute;left:0;right:0;height:33.3334%;background:transparent;overflow:hidden;transform-origin:center top;backface-visibility:hidden}.ceremony-paper-panel img{position:absolute;left:0;width:100%;height:300%;-o-object-fit:fill;object-fit:fill}.paper-panel-0,.paper-panel-0 img{top:0}.paper-panel-1{top:33.3333%;animation:letter-unfold .75s .12s cubic-bezier(.22,1,.36,1) both}.paper-panel-1 img{top:-100%}.paper-panel-2{top:66.6666%;animation:letter-unfold .7s .35s cubic-bezier(.22,1,.36,1) both}.paper-panel-2 img{top:-200%}.ceremony-paper-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;animation:fold-light .7s .15s both;background:linear-gradient(180deg,rgba(75,59,43,.18),transparent 28%)}.ceremony-staged .ceremony-letter-content{opacity:0;transition:opacity .3s}.ceremony-staged[data-settled=true] .ceremony-letter-content{opacity:1}.ceremony-staged[data-instant=true] .ceremony-envelope-stage{display:none}.ceremony-staged[data-instant=true] .ceremony-paper-panel,.ceremony-staged[data-instant=true] .ceremony-paper-panel:after{animation:none}.ceremony-staged[data-instant=true] .ceremony-letter-content{transition:none}@keyframes letter-unfold{0%{transform:rotateX(-178deg)}to{transform:rotateX(0)}}@keyframes fold-light{0%{opacity:1}to{opacity:0}}@media (max-width: 760px){.ceremony-staged{min-height:580px}.ceremony-intro{padding-top:30px}.ceremony-intro p{max-width:13ch;margin-inline:auto}.ceremony-intro>span{max-width:28ch;margin-inline:auto;line-height:1.5}.ceremony-envelope-stage{margin-top:76px;margin-bottom:34px}.ceremony-controls{margin-top:0;gap:12px}.ceremony-cue{max-width:31ch;line-height:1.5}.ceremony-staged[data-stage="3"] .ceremony-envelope-stage{top:140px}}@media (prefers-reduced-motion: reduce){.ceremony-staged *,.ceremony-staged *:after{animation:none!important;transition:none!important}}.ceremony-staged[data-stage="2"] .ceremony-intro{opacity:0}.ceremony-staged[data-ready=true] .photo-flap-back{z-index:12;opacity:0;transform:rotateX(0);transform-origin:50% var(--flap-hinge);backface-visibility:visible;transition:transform .85s cubic-bezier(.22,1,.36,1),opacity .1s}.ceremony-staged[data-ready=true][data-stage="2"] .photo-flap-back,.ceremony-staged[data-ready=true][data-stage="3"] .photo-flap-back{opacity:1;transform:rotateX(162deg)}.ceremony-staged[data-stage="2"] .ceremony-photo{transform:translateY(80px)}.ceremony-controls{transition:transform .85s cubic-bezier(.22,1,.36,1)}.ceremony-staged[data-stage="2"] .ceremony-controls{transform:translateY(80px)}.ceremony-staged[data-stage="2"]{min-height:790px}@media (max-width: 760px){.ceremony-staged[data-stage="2"] .ceremony-photo,.ceremony-staged[data-stage="2"] .ceremony-controls{transform:translateY(24px)}.ceremony-staged[data-stage="2"]{min-height:604px}}.ceremony-unfolding-skip{position:absolute;top:0;right:0;z-index:5;min-height:44px;padding:10px;border:0;background:var(--room-bg);color:var(--room-text);cursor:pointer;font-size:.8rem;text-decoration:underline;text-underline-offset:4px}.letter-hotspot{left:30%;top:18%;width:40%;height:18%;border-radius:3px}.ceremony-photo:has(.letter-hotspot:hover) .ceremony-folded-letter{transform:translateY(-3%)}.ceremony-staged[data-instant=true] .ceremony-letter-content *{animation:none;transition:none!important}.ceremony-folded-letter span{text-align:center}.ceremony-staged[data-asset-failed=true] .ceremony-photo{opacity:0}.ceremony-staged[data-paper-failed=true] .ceremony-folded-letter,.ceremony-staged[data-paper-failed=true] .ceremony-paper-panel{background:var(--letter-paper)}.ceremony-stock-filter{position:absolute;pointer-events:none}.ceremony-folded-letter img,.ceremony-paper-panel img{filter:var(--letter-stock-filter, none)}.preview-card.room-compact{background:var(--letter-paper)}.receiver-preview{background:var(--room-bg)}.receiver-preview .preview-toolbar{border-color:var(--room-border)}.receiver-preview .preview-toolbar .btn-secondary{color:var(--room-text);border-color:var(--room-muted)}.receiver-preview .preview-toolbar .btn-secondary:hover{background:var(--room-border)}.ceremony-letter-content ::-moz-selection{color:var(--letter-paper);background:var(--letter-ink)}.ceremony-letter-content ::selection{color:var(--letter-paper);background:var(--letter-ink)}.ceremony-letter .caret{background:var(--letter-ink)}:root{--ease-in-out: cubic-bezier(.65, 0, .35, 1);--d-scene: 1s;--action-border: color-mix(in srgb, var(--ink-soft) 38%, transparent);--rose-wash: color-mix(in srgb, var(--rose) 7%, transparent)}html{-webkit-tap-highlight-color:transparent}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:11px 20px;border:1px solid var(--action-border);border-radius:5px;background:transparent;color:var(--ink);font-size:1rem;font-weight:500;line-height:1.25;text-decoration:none;cursor:pointer;transition:border-color var(--d-micro) var(--ease-enter),background-color var(--d-micro) var(--ease-enter),color var(--d-micro) var(--ease-enter),scale var(--d-micro) var(--ease-enter)}.btn-outline svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.btn-outline:hover,.btn-outline:focus-visible{border-color:var(--rose);background:var(--rose-wash);color:var(--rose-deep)}.text-link{font-size:.9375rem;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-thickness:1px;text-underline-offset:6px;transition:text-decoration-color var(--d-ui) var(--ease-enter)}.text-link:hover{text-decoration-color:currentColor}.letter-cta{transition:background-color var(--d-micro) var(--ease-enter),transform var(--d-micro) var(--ease-enter)}.letter-cta:hover{transform:none}.nav-write{transition:border-color var(--d-micro) var(--ease-enter),background-color var(--d-micro) var(--ease-enter),color var(--d-micro) var(--ease-enter),scale var(--d-micro) var(--ease-enter)}.nav-write:hover{background:var(--rose-wash)}.letter-cta svg,.nav-write svg,.btn-outline svg,.text-link svg,.scene-invitation svg,.desk-scroll svg{transition:translate var(--d-ui) var(--ease-enter)}.unsaid-nav nav a{position:relative;transition:color var(--d-micro) var(--ease-enter)}.unsaid-nav nav a:after{content:"";position:absolute;left:0;right:0;bottom:9px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--d-ui) var(--ease-enter)}.unsaid-nav nav a:hover:after,.unsaid-nav nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.scene-invitation,.desk-scroll{font-size:.9375rem;transition:color var(--d-micro) var(--ease-enter)}.desk-scroll:hover{color:var(--rose-deep)}@media (prefers-reduced-motion: no-preference){@media (hover: hover) and (pointer: fine){.letter-cta:hover{transform:translateY(-2px)}.letter-cta:hover svg,.nav-write:hover svg,.btn-outline:hover svg,.text-link:hover svg,.scene-invitation:hover svg{translate:3px 0}.desk-scroll:hover svg{translate:0 3px}}.letter-cta:active{transform:scale(.98);transition-duration:90ms}.nav-write:active,.btn-outline:active{scale:.98;transition-duration:90ms}}@keyframes settle-in{0%{opacity:0;transform:translateY(10px)}}@keyframes fade-in{0%{opacity:0}}@keyframes envelope-arrive{0%{opacity:0;transform:translateY(-22px) rotate(-12deg)}}@media (prefers-reduced-motion: no-preference){.hero-copy>p{animation:settle-in var(--d-object) var(--ease-enter) .62s backwards}.hero-copy>.letter-cta{animation:settle-in var(--d-object) var(--ease-enter) .74s backwards}.hero-reassurance{animation:fade-in var(--d-object) var(--ease-enter) .88s backwards}.hero-letter-scene[data-settled=false] .scene-envelope{animation:envelope-arrive var(--d-scene) var(--ease-enter) .15s backwards}.scene-botanical{animation:fade-in var(--d-scene) var(--ease-enter) .38s backwards}.desk-scroll{animation:fade-in var(--d-object) var(--ease-enter) .9s backwards}}.scene-botanical{translate:calc(var(--px, 0) * -6px) calc(var(--py, 0) * -6px);transition:translate .6s var(--ease-enter)}.scene-letter{translate:calc(var(--px, 0) * 10px) calc(var(--py, 0) * 8px);clip-path:inset(0 0 72% 0);transition:opacity .7s,transform var(--d-scene) var(--ease-enter),translate .6s var(--ease-enter),clip-path var(--d-object) var(--ease-enter)}.hero-letter-scene[data-open=true] .scene-letter{clip-path:inset(0)}.hero-letter-scene[data-open=true] .scene-invitation{padding:6px 14px;border:1px solid var(--line);border-radius:5px;background:var(--paper)}.scene-envelope{translate:calc(var(--px, 0) * 16px) calc(var(--py, 0) * 12px);transition:transform var(--d-scene) var(--ease-enter),opacity .7s,translate .6s var(--ease-enter)}.scene-envelope:focus-visible{transform:rotate(-7deg) translateY(-5px)}@media (prefers-reduced-motion: no-preference){@media (hover: hover) and (pointer: fine){.hero-letter-scene[data-open=false]:has(.scene-envelope:hover,.scene-invitation:hover) .scene-letter{opacity:1;transform:translateY(66px) rotate(-6deg)}}.hero-letter-scene[data-open=false]:has(.scene-envelope:focus-visible) .scene-letter{opacity:1;transform:translateY(66px) rotate(-6deg)}}@keyframes hero-recede{to{opacity:.3;filter:blur(2px);transform:translateY(-28px)}}@keyframes scene-drift{to{transform:translateY(56px)}}@supports (animation-timeline: scroll()){@media (min-width: 761px) and (prefers-reduced-motion: no-preference){.hero-copy{animation:hero-recede linear both;animation-timeline:scroll(root);animation-range:0 75vh}.hero-letter-scene{animation:scene-drift linear both;animation-timeline:scroll(root);animation-range:0 90vh}}}[data-reveal=true],[data-reveal=paper]{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-object) var(--ease-enter),rotate var(--d-scene) var(--ease-enter)}@media (prefers-reduced-motion: no-preference){.js [data-reveal=true]:not(.is-visible),.js [data-reveal=paper]:not(.is-visible){opacity:0;translate:0 24px}.js [data-reveal=paper]:not(.is-visible){rotate:-3deg}}.mood-desk .card{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-object) var(--ease-enter),rotate var(--d-scene) var(--ease-enter)}.mood-desk .card:nth-child(2){transition-delay:70ms}.mood-desk .card:nth-child(3){transition-delay:.14s}.mood-desk .card:nth-child(4){transition-delay:.21s}.mood-desk .card:nth-child(5){transition-delay:.28s}.stationery-sample{transition:transform var(--d-ui) var(--ease-enter),opacity var(--d-ui) var(--ease-enter),scale var(--d-micro) var(--ease-enter)}.stationery-picker .card-use{font-size:.8125rem}.stationery-picker .card-check{opacity:0;scale:.6;transition:opacity var(--d-micro) var(--ease-enter),scale var(--d-ui) var(--ease-enter)}.stationery-picker .card.is-selected .card-check{opacity:1;scale:1}.stationery-picker .card-check path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset var(--d-ui) var(--ease-enter) .12s}.stationery-picker .card.is-selected .card-check path{stroke-dashoffset:0}.stationery-picker .card-name{transition:color var(--d-micro) var(--ease-enter)}@media (prefers-reduced-motion: no-preference){.js .mood-desk:not(.is-visible) .card{opacity:0;translate:0 28px;rotate:3deg}.stationery-picker .card:active .stationery-sample{scale:.97}}@media (hover: hover) and (pointer: fine){.stationery-picker:has(.card:hover) .card:not(:hover) .stationery-sample{opacity:.45}}.stationery-picker:has(.card:focus-visible) .card:not(:focus-visible) .stationery-sample{opacity:.45}.mood-caption-text{display:flex;flex-direction:column}.mood-caption p{min-height:3.2em;justify-content:center}.letter-steps:before{transform-origin:top;transition:transform 1.2s var(--ease-in-out) .1s}.letter-steps li{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-object) var(--ease-enter)}.letter-steps li:before{transition:transform var(--d-ui) var(--ease-enter)}.letter-steps li:nth-child(1),.letter-steps li:nth-child(1):before{transition-delay:.15s}.letter-steps li:nth-child(2),.letter-steps li:nth-child(2):before{transition-delay:.42s}.letter-steps li:nth-child(3),.letter-steps li:nth-child(3):before{transition-delay:.69s}.letter-steps li:nth-child(4),.letter-steps li:nth-child(4):before{transition-delay:.96s}@media (prefers-reduced-motion: no-preference){.js .letter-steps:not(.is-visible):before{transform:scaleY(0)}.js .letter-steps:not(.is-visible) li{opacity:0;translate:0 16px}.js .letter-steps:not(.is-visible) li:before{transform:scale(0)}}.unsigned-line{position:relative;text-decoration:none}.unsigned-line:after{content:"";position:absolute;left:-4px;right:-4px;top:56%;height:1.5px;background:var(--rose);transform-origin:left;transition:transform .65s var(--ease-in-out) .55s}.privacy-note{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-object) var(--ease-enter),rotate var(--d-scene) var(--ease-enter)}@media (prefers-reduced-motion: no-preference){.js .privacy-note:not(.is-visible) .unsigned-line:after{transform:scaleX(0)}@media (hover: hover) and (pointer: fine){.privacy-note.is-visible:hover{rotate:2deg}}}.recipient-desk{position:relative;display:grid;min-width:0}.paper-filter{position:absolute;pointer-events:none}.recipient-letter>img{filter:var(--letter-stock-filter, none)}.recipient-letter>div{color:var(--letter-ink, var(--ink-soft))}.recipient-letter>div>span{color:var(--letter-ink, var(--rose-deep));font-family:var(--room-display, var(--font-display));font-style:var(--room-display-style, normal);font-weight:var(--room-display-weight, 700)}.recipient-letter small{color:var(--letter-secondary, var(--ink-soft))}.use-fragments{list-style:none;padding:0}.use-fragments li{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-object) var(--ease-enter),rotate var(--d-scene) var(--ease-enter)}.use-fragments li:nth-child(2){transition-delay:60ms}.use-fragments li:nth-child(3){transition-delay:.12s}.use-fragments li:nth-child(4){transition-delay:.18s}.use-fragments li:nth-child(5){transition-delay:.24s}.use-fragments li:nth-child(6){transition-delay:.3s}.use-fragment{color:var(--ink-soft);min-height:44px;transition:transform var(--d-ui) var(--ease-enter),color var(--d-micro) var(--ease-enter)}.use-fragment:hover,.use-fragment:focus-visible{color:var(--rose-deep)}@media (prefers-reduced-motion: no-preference){.js .use-fragments:not(.is-visible) li{opacity:0;translate:0 20px;rotate:5deg}.js .use-fragments:not(.is-visible) li:nth-child(2n){rotate:-5deg}@media (hover: hover) and (pointer: fine){.use-fragment:hover{transform:rotate(0) translateY(-3px)}}.use-fragment:focus-visible{transform:rotate(0) translateY(-3px)}.use-fragment:active{transform:rotate(0) scale(.98);transition-duration:90ms}}.final-letter-cta>img{transition:opacity var(--d-object) var(--ease-enter),translate var(--d-scene) var(--ease-enter),rotate var(--d-scene) var(--ease-enter)}.final-letter-cta>div{transition:opacity var(--d-object) var(--ease-enter) .12s,translate var(--d-object) var(--ease-enter) .12s}@media (prefers-reduced-motion: no-preference){.js .final-letter-cta:not(.is-visible)>img{opacity:0;translate:70px 30px;rotate:8deg}.js .final-letter-cta:not(.is-visible)>div{opacity:0;translate:0 24px}@media (hover: hover) and (pointer: fine){.final-letter-cta.is-visible:has(.letter-cta:hover)>img{translate:-10px -8px;rotate:-2deg}}}.pocket-write{display:none}.state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}@media (max-width: 760px){.mood-caption{flex-direction:column;align-items:center;text-align:center;gap:18px}.mood-caption .btn-outline{width:min(100%,340px)}.mood-caption p{position:absolute;width:1px;height:1px;min-height:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.recipient-copy .btn-outline{width:100%}.mood-desk{margin-inline:-20px}.mood-section .stationery-picker{display:flex;gap:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:22px 21vw 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.mood-section .stationery-picker::-webkit-scrollbar{display:none}.mood-section .stationery-picker .card,.mood-section .stationery-picker .card:last-child{flex:0 0 58vw;width:auto;grid-column:auto;padding-inline:8px;scroll-snap-align:center}.use-fragment{font-size:1rem}.pocket-write{position:fixed;inset:auto 0 0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);color:var(--muted);font-size:.875rem;translate:0 110%;transition:translate var(--d-ui) var(--ease-enter)}.pocket-write[data-show=true]{translate:0 0}.pocket-write .letter-cta{min-height:48px;padding:10px 18px;gap:16px;animation:none}}@media (max-width: 360px){.pocket-write>span{display:none}.pocket-write .letter-cta{flex:1}}.stationery-picker{position:relative}.sheet-counter{transition:color var(--d-ui) var(--ease-enter)}.sheet[data-level="1"] .sheet-counter{color:var(--ink)}.sheet[data-level="2"] .sheet-counter{color:var(--rose-deep);font-weight:500}.field-control{position:relative}.field .field-control .field-input{padding-right:46px}.field-check{position:absolute;right:16px;top:50%;width:18px;height:18px;margin-top:-9px;fill:none;stroke:var(--success);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0;pointer-events:none;transition:opacity var(--d-micro) var(--ease-enter)}.field-check path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset var(--d-ui) var(--ease-enter) 60ms}.field-control[data-valid=true] .field-check{opacity:1}.field-control[data-valid=true] .field-check path{stroke-dashoffset:0}.field-reveal{overflow:hidden;padding:8px;margin:-8px}@media (prefers-reduced-motion: no-preference){.swatch:active{transform:scale(.94);transition-duration:90ms}}@media (hover: none){.swatch:hover{transform:none}}.compose-next{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.compose-blocked{margin:0;color:var(--muted);font-size:.875rem;text-align:right}.compose-error{margin:28px 0 0;padding:12px 16px;border-left:2px solid var(--error);background:color-mix(in srgb,var(--error) 6%,transparent);color:var(--ink-soft);font-size:.9375rem}.btn-primary:disabled{background:var(--rose);color:var(--paper-white)}.field-input::-moz-placeholder{color:var(--muted)}.field-input::placeholder{color:var(--muted)}.btn-loading:before{content:none}.review-row dd{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.review-edit{flex:none;min-height:44px;margin:-12px 0;padding:10px 0 10px 12px;border:0;background:none;color:var(--rose-deep);font:inherit;font-size:.875rem;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:5px;cursor:pointer;transition:text-decoration-color var(--d-ui) var(--ease-enter)}.review-edit:hover{text-decoration-color:currentColor}.preview-open{margin-top:16px}.toast{width:min(400px,calc(100vw - 32px));max-width:none;align-items:flex-start;padding:14px 10px 14px 18px;background:var(--paper-white);border-color:var(--line);box-shadow:0 14px 34px #403b3724}.toast-error{border-color:color-mix(in srgb,var(--error) 35%,transparent)}.toast-body{flex:1;min-width:0}.toast-title{margin:0;color:var(--ink);font-size:.9375rem;font-weight:500}.toast-detail{margin:4px 0 0;color:var(--muted);font-size:.875rem}.toast-action{margin-top:10px;min-height:40px;padding:8px 14px;border:1px solid var(--action-border);border-radius:5px;background:transparent;color:var(--ink);font:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color var(--d-micro) var(--ease-enter),background-color var(--d-micro) var(--ease-enter)}.toast-action:hover{border-color:var(--rose);background:var(--rose-wash)}.toast-close{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-10px 0 -10px 4px;border:0;border-radius:5px;background:none;color:var(--muted);cursor:pointer}.toast-close:hover{color:var(--ink)}.toast-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.seal-envelope{position:relative;width:min(520px,86vw);aspect-ratio:3 / 2;perspective:1400px}.seal-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill;pointer-events:none}.seal-back{z-index:10}.seal-flap-back{z-index:12;transform-origin:50% var(--flap-hinge);backface-visibility:visible;transition:transform .7s var(--ease-in-out),opacity .12s linear .56s}.seal-letter{position:absolute;z-index:20;transition:translate .62s var(--ease-in-out)}.seal-letter img{display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill}.seal-pocket{z-index:30}.seal-flap-front{z-index:40;transform-origin:50% var(--flap-hinge);backface-visibility:hidden;filter:drop-shadow(0 2px 2px rgba(25,18,15,.18));transition:transform .7s var(--ease-in-out)}.seal-closure{z-index:50;transform-origin:var(--closure-x) var(--closure-y);transition:opacity var(--d-micro) var(--ease-enter),scale var(--d-ui) var(--ease-enter)}.seal-envelope[data-phase=open] .seal-flap-back,.seal-envelope[data-phase=tuck] .seal-flap-back,.seal-envelope[data-phase=open] .seal-flap-front,.seal-envelope[data-phase=tuck] .seal-flap-front{transform:rotateX(162deg)}.seal-envelope[data-phase=open] .seal-letter{translate:0 -40%}.seal-envelope[data-phase=close] .seal-flap-back,.seal-envelope[data-phase=sealed] .seal-flap-back{opacity:0}.seal-envelope:not([data-phase=sealed]) .seal-closure{opacity:0;scale:1.18}.seal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-scrim, 300);display:grid;place-content:center;justify-items:center;gap:28px;padding:24px;background:var(--paper);text-align:center}.seal-overlay output{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem)}.success-seal{width:min(360px,78vw);margin-bottom:28px;rotate:-4deg}.success-copy{display:flex;flex-direction:column;align-items:center}.success-copy .link-row{width:min(100%,612px)}.copy-link .btn-label{display:inline-flex;align-items:center;gap:8px}.copy-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.copy-link{transition:background-color var(--d-micro) var(--ease-enter),border-color var(--d-micro) var(--ease-enter),color var(--d-micro) var(--ease-enter)}.link-row[data-copied=true] .copy-link,.link-row[data-copied=true]~.copy-link{background:var(--success);border-color:var(--success);color:var(--paper-white)}.share-status{min-height:1.6em;margin:10px 0 6px}@keyframes seal-arrive{0%{opacity:0;translate:-32px -12px;rotate:-9deg}}@media (prefers-reduced-motion: no-preference){.success-seal{animation:seal-arrive var(--d-scene) var(--ease-enter) backwards}.success-copy>*{animation:settle-in var(--d-object) var(--ease-enter) backwards}.success-copy>:nth-child(1){animation-delay:.38s}.success-copy>:nth-child(2){animation-delay:.46s}.success-copy>:nth-child(3){animation-delay:.54s}.success-copy>:nth-child(n+4){animation-delay:.62s}}@media (max-width: 760px){.compose-actions{position:sticky;bottom:0;z-index:20;margin-inline:-20px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--paper)}.compose-next{flex:1;align-items:stretch}.compose-blocked{text-align:center}.toast{bottom:calc(96px + env(safe-area-inset-bottom))}.success-copy{width:100%}.success-copy>.btn{width:100%}}.skeleton-line{height:8px;background:color-mix(in srgb,var(--ink) 8%,transparent);animation:none}.loading-letter{display:grid;gap:14px;width:min(360px,80vw)}@media (prefers-reduced-motion: no-preference){.loading-letter{animation:fade-in var(--d-ui) var(--ease-enter) .3s backwards}.room-tactile{animation:fade-in var(--d-ui) var(--ease-enter)}}.caret{animation:none}.ceremony-open,.report-btn,.rail-link{transition:border-color var(--d-micro) var(--ease-enter),color var(--d-micro) var(--ease-enter),scale var(--d-micro) var(--ease-enter)}.ceremony-open svg{transition:translate var(--d-ui) var(--ease-enter)}@media (prefers-reduced-motion: no-preference){@media (hover: hover) and (pointer: fine){.ceremony-open:hover svg{translate:3px 0}}.ceremony-open:active,.ceremony-hotspot:active,.report-btn:active:not(:disabled){scale:.97;transition-duration:90ms}}.stagger-line{display:block}.stagger-seg{display:inline-block}.compose-body .progress{margin-bottom:56px}.compose-intro{margin-bottom:44px}.compose-intro .t-h1{margin:0}.compose-intro p{max-width:62ch;margin:14px 0 0;color:var(--ink-soft);font-size:1.0625rem;line-height:1.6}.preview-label{margin:0 0 12px;color:var(--ink-soft);font-size:.875rem;font-weight:500;line-height:1.4}.preview-note{margin:14px 0 0;color:var(--muted);font-size:.8125rem;line-height:1.5}.compose-split .swatches{margin-top:20px}.delivery-form{display:flex;flex-direction:column;gap:36px}.delivery-options legend{margin-bottom:12px}.delivery-option{gap:14px;padding:18px 0}.delivery-option:last-of-type{border-bottom:1px solid var(--line)}.delivery-option input{width:20px;height:20px;margin-top:2px;accent-color:var(--rose)}.delivery-option strong{font-size:1rem;line-height:1.4}.delivery-option span span{margin-top:4px;font-size:.875rem;line-height:1.55}.field{gap:8px}.field-hint,.field-error{margin:0;font-size:.8125rem;line-height:1.5}.compose-back[hidden]{display:inline-flex;visibility:hidden}.compose-back{min-width:96px}.sheet-heading{position:relative;z-index:1;padding:24px 30px 0}.sheet-heading-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;color:var(--muted);font-size:.8125rem;line-height:1.4}.sheet-heading-row label{color:var(--ink-soft);font-weight:500}.sheet-heading-reset{min-height:44px;margin:-14px -4px -14px 0;padding:12px 4px;border:0;background:none;color:var(--rose-deep);font:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:4px;cursor:pointer}.sheet-heading-reset:hover{text-decoration-color:currentColor}.sheet-heading-input{display:block;width:100%;margin-top:6px;padding:4px 0 16px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.25;letter-spacing:-.02em;transition:border-color var(--d-micro) var(--ease-enter)}.sheet-heading-input::-moz-placeholder{color:var(--muted)}.sheet-heading-input::placeholder{color:var(--muted)}.sheet-heading-input:focus{border-bottom-color:var(--rose-deep)}.sheet-heading-input:focus-visible,.sheet-textarea:focus-visible{outline:none}.sheet-heading+label+.sheet-textarea,.sheet-heading~.sheet-textarea{padding-top:18px}.success-title{margin:16px 0}@media (max-width: 760px){.compose-body .progress{margin-bottom:36px}.compose-intro{margin-bottom:32px}.compose-intro p{font-size:1rem}.sheet-heading{padding:20px 20px 0}.sheet-heading-input{font-size:1.3rem}.compose-back{min-width:0}.compose-back[hidden]{display:none}}
