.desk-sceneShell{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.desk-scene{position:absolute;inset:0}.desk-scene:after{content:"";pointer-events:none;mix-blend-mode:soft-light;background:radial-gradient(100% 85% at 12% 0,#fff8e624 0%,#0000 42%),radial-gradient(70% 55% at 8% 12%,#82c8a012 0%,#0000 38%);animation:7s ease-in-out infinite desk-lamp-breath;position:absolute;inset:0}@keyframes desk-lamp-breath{0%,to{opacity:1}50%{opacity:.88}}@media (prefers-reduced-motion:reduce){.desk-scene:after{opacity:.95;animation:none}}.immersion-svg{width:100%;height:100%;display:block}.letter-dock{z-index:20;padding:max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));pointer-events:none;box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:visible}.letter-hero{--card-w:min(540px, calc(100vw - 48px));--pen-length:calc(var(--card-w) * 1.08);--pen-visual-scale:1.4;--pen-sh-ux:.827;--pen-sh-uy:.562;pointer-events:none;justify-content:center;align-items:center;width:100%;max-width:min(1200px,100vw - 24px);min-height:min(92dvh,900px);display:flex;position:relative;overflow:visible}.letter-dock__sheet{z-index:1;pointer-events:auto;flex:none;width:min(540px,100vw - 48px);max-width:min(540px,100vw - 48px);max-height:min(92dvh,900px);position:relative;overflow:visible}.letter-dock__sheet:after{content:"";pointer-events:none;z-index:-1;filter:blur(3px);background:radial-gradient(50% 100%,#00000038 0%,#0000 75%);width:92%;height:20px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)scaleY(.4)}.letter-hero__pen{top:50%;left:calc(50% + (var(--card-w) * .5) + clamp(10px, 2.5vw, 32px));right:max(10px, env(safe-area-inset-right));z-index:2;width:auto;filter:drop-shadow(calc(var(--pen-length) * .028 * var(--pen-sh-ux)) calc(var(--pen-length) * .028 * var(--pen-sh-uy)) calc(var(--pen-length) * .038) #160e0973) drop-shadow(calc(var(--pen-length) * .05 * var(--pen-sh-ux)) calc(var(--pen-length) * .05 * var(--pen-sh-uy)) calc(var(--pen-length) * .078) #30221652) drop-shadow(calc(var(--pen-length) * .082 * var(--pen-sh-ux)) calc(var(--pen-length) * .082 * var(--pen-sh-uy)) calc(var(--pen-length) * .13) #4834222e);pointer-events:none;min-width:0;min-height:0;height:min(96dvh, calc(var(--pen-length) * 2.05));justify-content:center;align-items:center;display:flex;position:absolute;overflow:visible;transform:translateY(-50%)}.letter-hero__caneta{width:min(100%, var(--pen-length));max-width:min(100%, var(--pen-length));aspect-ratio:300/60;height:auto;transform:rotate(90deg) scale(var(--pen-visual-scale));transform-origin:50%;display:block}@media (max-width:600px){.letter-dock{padding:max(16px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left))}.letter-hero{--card-w:min(540px, calc(100vw - 32px));justify-content:center;align-items:center;max-width:calc(100vw - 20px);min-height:0}.letter-hero__pen{display:none}.letter-dock__sheet{width:min(540px,100vw - 32px);max-width:calc(100vw - 20px);max-height:min(94dvh,900px);overflow:visible}}
.letter-card button,.letter-card input,.letter-card a{touch-action:manipulation}.letter-card{--letter-cream-0:#fefcf7;--letter-cream-1:#f3eadb;--letter-stamp-paper-top:#ebe4d6;--letter-stamp-paper:#e6ded1;--letter-ink:#1a1412;--letter-ink-d:#6e5a4c;--letter-blood:#8b2a1f;--letter-line:#1a14126b;--letter-line-hi:#1a141294;--letter-body-size:16px;--letter-body-leading:1.72;--letter-serif:var(--font-garamond), "EB Garamond", Garamond, "Times New Roman", serif;--letter-foot-size:11.75px;--letter-shadow-paper:0 1px 0 #ffffff73, 0 2px 4px #00000014, 0 12px 40px #00000038;border:1px solid var(--letter-line-hi);background:radial-gradient(ellipse 78% 54% at 22% 12%, #f4c97847, transparent 76%), radial-gradient(ellipse 42% 34% at 94% 92%, #120d0b24, transparent 68%), linear-gradient(180deg, var(--letter-cream-0), var(--letter-cream-1));width:min(540px,100vw - 32px);box-shadow:var(--letter-shadow-paper);border-radius:4px;padding:40px 42px 34px;position:relative;transform:none}@supports (color:color-mix(in srgb, white, black)){.letter-card{--letter-stamp-paper-top:color-mix(in srgb, color-mix(in srgb, var(--letter-cream-1) 72%, var(--letter-cream-0) 28%) 91%, #120d0b 9%);--letter-stamp-paper:color-mix(in srgb, color-mix(in srgb, var(--letter-cream-1) 87%, var(--letter-cream-0) 13%) 90%, #120d0b 10%)}}.letter-dock__sheet .letter-card{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;max-height:min(88dvh,820px);overflow-y:auto}.letter-card:before{content:"";border:1px solid var(--letter-line);pointer-events:none;border-radius:2px;position:absolute;inset:8px}.letter-card__head{text-align:center;border-bottom:1px solid var(--letter-line);margin:0 0 20px;padding-bottom:16px}.letter-card__wordmark{font-family:var(--font-garamond), "EB Garamond", Garamond, "Times New Roman", serif;letter-spacing:-.01em;color:var(--letter-ink);margin:0;font-size:clamp(52px,7vw,84px);font-style:italic;font-weight:500;line-height:.96}.letter-card__wordmark-dot{color:var(--letter-blood)}.letter-card__tag{font-family:var(--font-sans), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.28em;color:var(--letter-ink-d);margin:12px 0 0;font-size:10.5px}.letter-card__p{font-family:var(--letter-serif);font-size:var(--letter-body-size);font-style:normal;font-weight:400;line-height:var(--letter-body-leading);color:var(--letter-ink);margin:0 0 14px}.letter-card__invite{font-family:var(--letter-serif);font-size:var(--letter-body-size);letter-spacing:.01em;color:var(--letter-ink);margin:20px 0 10px;font-style:normal;font-weight:400}.letter-card__row{align-items:stretch;gap:9px;display:flex}.letter-card__input{border:1px solid var(--letter-line-hi);min-width:0;min-height:48px;color:var(--letter-ink);background:#fffef9e0;border-radius:4px;flex:1;padding:12px 14px;font-size:16px}.letter-card__input::placeholder{color:#6e5a4ca6;font-style:italic}.letter-card__input:focus{border-color:var(--letter-blood);outline:none;box-shadow:0 0 0 3px #8b2a1f2e}.letter-card__submit{color:#f8f2e8;letter-spacing:.05em;cursor:pointer;white-space:nowrap;background:#1d1511;border:1px solid #1d1511;border-radius:4px;min-height:48px;padding:12px 20px;font-size:15px}.letter-card__submit:hover:not(:disabled){background:#2b211c}.letter-card__input:disabled,.letter-card__submit:disabled{opacity:.56;cursor:not-allowed}.letter-card__msg{min-height:18px;color:var(--letter-ink-d);margin:10px 0 0;font-size:12.5px}.letter-card__msg--ok{color:#5f6b48;font-style:italic}.letter-card__msg--err{color:var(--letter-blood)}.letter-card__signoff{font-family:var(--letter-serif);font-style:normal;font-weight:400;font-size:var(--letter-body-size);color:var(--letter-ink);letter-spacing:.01em;line-height:var(--letter-body-leading);margin:20px 0 0}.letter-card__foot{border-top:1px solid var(--letter-line);font-size:var(--letter-foot-size);color:var(--letter-ink-d);flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0 0;padding-top:14px;display:flex}.letter-card__foot a{color:var(--letter-ink-d);border-bottom:1px solid #120d0b38;text-decoration:none}.letter-card__foot a:hover{color:var(--letter-ink);border-color:#120d0b80}.letter-card__sep{opacity:.55}.letter-card__stamp{opacity:.82;pointer-events:none;position:absolute;bottom:16px;right:20px;transform:rotate(-6deg)}@media (max-width:900px){.letter-card{padding:30px 26px 24px}.letter-card__row{flex-direction:column}}@media (max-width:600px){.letter-dock__sheet .letter-card{width:100%;max-height:min(91dvh,860px)}.letter-card{--letter-shadow-paper:0 1px 0 #ffffff85, 0 3px 8px #0000000d, 0 18px 44px #00000029;border-color:#1a14127a;border-radius:5px;padding:32px 28px 40px}.letter-card:before{border-color:#1a14125c;border-radius:3px;inset:10px}.letter-card__head{margin-bottom:18px;padding-bottom:14px}.letter-card__tag{letter-spacing:.22em;padding:0 6px;font-size:10px;line-height:1.5}.letter-card__p{margin-bottom:13px}.letter-card__invite{margin-top:18px}.letter-card__stamp{opacity:.78;transform-origin:100% 100%;bottom:14px;right:12px;transform:rotate(-5deg)scale(.88)}.letter-card__foot{padding-top:16px;padding-bottom:max(4px, env(safe-area-inset-bottom));gap:10px 14px;margin-top:24px}.letter-card__foot a{box-sizing:border-box;justify-content:center;align-items:center;min-height:44px;padding:10px 4px;display:inline-flex}}@media (max-width:560px){.letter-card{width:100%;padding:28px 22px 36px}.letter-card__wordmark{font-size:clamp(36px,11.5vw,52px)}}
