.door-page .door{max-width:390px;min-height:844px;margin:0 auto;padding:28px var(--pad) 40px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;box-sizing:border-box}.door-page .door .door-top{display:flex;flex-direction:column;gap:18px}.door-page .door .brand-line{display:flex;align-items:center;justify-content:space-between}.door-page .door .sign-in{font-family:var(--sans);font-size:14px;color:var(--ink);text-decoration:none}.door-page .door .keeping{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--edge);border-radius:12px;background:var(--paper-raised)}.door-page .door .keeping .thumb,.door-page .door .keeping .thumb img,.door-page .door .keeping .thumb .plate{width:44px;height:44px;border-radius:8px;overflow:hidden;flex-shrink:0}.door-page .door .keeping .thumb img{display:block;object-fit:cover}.door-page .door .keeping .said{display:flex;flex-direction:column;gap:3px;min-width:0}.door-page .door .keeping .label{font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.door-page .door .keeping .title{font-family:var(--serif);font-size:20px;line-height:1.05;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.door-page .door .door-says{position:relative;height:110px}.door-page .door .door-tag{display:flex;flex-direction:column;gap:8px;animation:head-out .45s ease .1s forwards,head-in .45s ease 11.55s forwards}.door-page .door h1,.door-page .door .door-beat{margin:0;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.door-page .door .door-sub{font-family:var(--serif);font-size:19px;line-height:normal;color:var(--ink-soft);margin:0}.door-page .door .door-beat{position:absolute;top:0;left:0;right:0;opacity:0;transform:translateY(-6px);animation:head-in .45s ease var(--in) forwards,head-out .45s ease var(--out) forwards}.door-page .door .door-beat[data-beat="1"]{--in: .55s;--out: 3.9s}.door-page .door .door-beat[data-beat="2"]{--in: 4.35s;--out: 6.3s}.door-page .door .door-beat[data-beat="3"]{--in: 6.75s;--out: 8.3s}.door-page .door .door-beat[data-beat="4"]{--in: 8.75s;--out: 11.1s}.door-page .door .door-stage-row{display:flex;justify-content:center;margin-inline:calc(-1 * var(--pad));overflow-x:clip}.door-page .door .door-stage{position:relative;flex:none;width:342px;height:470px;clip-path:inset(0 -100px);pointer-events:none;user-select:none;-webkit-user-select:none;color:var(--ink)}.door-page .door .door-stage img{display:block;max-width:none}.door-page .door .src .bg,.door-page .door .src .ph img,.door-page .door .cover img,.door-page .door .pt img,.door-page .door .mc .p img,.door-page .door .mcard .h img{width:100%;height:100%;object-fit:cover}.door-page .door .src{position:absolute;width:150px;height:200px;border-radius:14px;overflow:hidden;background:var(--ink);box-shadow:0 10px 26px #1c161038;opacity:0;transform:translateY(30px) scale(.92);animation:src-in .9s cubic-bezier(.2,.7,.2,1) var(--in) forwards,src-fly .9s cubic-bezier(.2,.7,.2,1) var(--fly) forwards}.door-page .door .src.s1{left:-6px;top:6px;--r: -4deg;--fx: 78px;--fy: 129px;--in: .4s;--fly: 4.3s}.door-page .door .src.s2{right:-16px;top:2px;--r: -3deg;--fx: -112px;--fy: 132px;--in: .95s;--fly: 4.52s}.door-page .door .src.s3{left:-6px;top:224px;--r: 3deg;--fx: 102px;--fy: -88px;--in: 1.5s;--fly: 4.74s}.door-page .door .src.s4{right:-10px;top:228px;--r: -4deg;--fx: -108px;--fy: -92px;--in: 2.05s;--fly: 4.96s}.door-page .door .src .bg{position:absolute;inset:0}.door-page .door .src .tag{position:absolute;left:8px;top:8px;z-index:1;display:flex;align-items:center;gap:6px;padding:3px 8px 3px 4px;border-radius:99px;background:#fffffff0;color:var(--ink);font:600 10px var(--sans);white-space:nowrap}.door-page .door .src .tag .logo{display:block;flex:none;width:18px;height:18px;object-fit:contain}.door-page .door .src .tag .yt-frame{position:relative}.door-page .door .src .tag .yt-frame img{position:absolute;left:50%;top:50%;width:25px;height:auto;transform:translate(-50%,-50%)}.door-page .door .src .rail{position:absolute;right:8px;bottom:34px;display:flex;flex-direction:column;gap:10px}.door-page .door .src .rail i{box-sizing:content-box;width:18px;height:18px;border-radius:99px;border:2px solid #fff;opacity:.95}.door-page .door .src .cap{position:absolute;left:8px;right:34px;bottom:8px;font:400 9px/1.3 var(--sans);color:#fff;text-shadow:0 1px 2px rgb(0 0 0 / .6)}.door-page .door .src.yt{height:150px;background:#fff}.door-page .door .src.yt .ph{position:relative;display:block;height:84px}.door-page .door .src.yt .ph:after{content:"";position:absolute;left:50%;top:50%;width:34px;height:24px;margin:-12px 0 0 -17px;border-radius:7px;background:#e33}.door-page .door .src.yt .ph:before{content:"";position:absolute;z-index:1;left:50%;top:50%;margin:-6px 0 0 -4px;border-left:10px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent}.door-page .door .src.yt .bar{display:block;height:3px;background:linear-gradient(90deg,#e33 40%,#ddd 40%)}.door-page .door .src.yt .t{display:block;margin:8px;font:500 11px/1.2 var(--sans);color:var(--ink)}.door-page .door .src.web{background:#fff}.door-page .door .src.web .url{display:flex;align-items:center;height:22px;padding:0 8px;background:#ecebe8;font:400 8px var(--mono);color:#6b6963;white-space:nowrap;overflow:hidden}.door-page .door .src.web .ph{display:block;height:86px}.door-page .door .src.web .t{display:block;margin:8px 8px 4px;font:500 12px/1.15 var(--serif);color:var(--ink)}.door-page .door .src.web u{display:block;height:4px;margin:5px 8px;border-radius:2px;background:var(--ground);text-decoration:none}.door-page .door .src.web u.w70{width:70%}.door-page .door .src.web u.w50{width:50%}.door-page .door .src.web .tag{top:28px}.door-page .door .src.cam{background:#111}.door-page .door .src.cam .vf{position:absolute;inset:30px 12px 44px;border:1px solid rgb(255 255 255 / .5)}.door-page .door .src.cam .vf:before,.door-page .door .src.cam .vf:after{content:"";position:absolute;box-sizing:content-box;width:14px;height:14px;border:2px solid #fff}.door-page .door .src.cam .vf:before{left:-2px;top:-2px;border-right:0;border-bottom:0}.door-page .door .src.cam .vf:after{right:-2px;bottom:-2px;border-left:0;border-top:0}.door-page .door .src.cam .shut{position:absolute;left:50%;bottom:8px;width:26px;height:26px;margin-left:-13px;border-radius:99px;background:#fff;box-shadow:0 0 0 3px #111,0 0 0 4.5px #fff}@keyframes src-in{to{opacity:1;transform:translateY(0) rotate(var(--r))}}@keyframes src-fly{0%{opacity:1;transform:translateY(0) rotate(var(--r))}to{opacity:0;transform:translate(var(--fx),var(--fy)) scale(.12) rotate(0)}}.door-page .door .more{position:absolute;left:0;right:0;top:436px;display:flex;justify-content:center;align-items:center;gap:9px}.door-page .door .more .m{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:99px;box-shadow:0 4px 12px #1c16102e;opacity:0;transform:translateY(14px) scale(.8);animation:more-in .9s cubic-bezier(.2,.7,.2,1) calc(2.7s + .12s * var(--i)) forwards,more-fly .9s cubic-bezier(.2,.7,.2,1) calc(4.5s + .15s * var(--i)) forwards}.door-page .door .more .m img{width:30px;height:30px;object-fit:contain}.door-page .door .more .m.glyph{background:#fff}.door-page .door .more .m.glyph img{width:18px;height:18px}.door-page .door .more .m.lbl{width:auto;padding:0 11px;background:#fff;font:600 11px var(--sans);color:var(--ink);white-space:nowrap}@keyframes more-in{to{opacity:1;transform:none}}@keyframes more-fly{0%{opacity:1;transform:none}to{opacity:0;transform:translate(var(--fx),-216px) scale(.2)}}.door-page .door .mark{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:22px;background:var(--ink);display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);animation:mark-in .9s cubic-bezier(.2,.7,.2,1) 3.9s forwards,mark-pulse .4s ease 4.4s 5,mark-gone .9s cubic-bezier(.2,.7,.2,1) 6.3s forwards}@keyframes mark-in{to{opacity:1;transform:scale(1)}}@keyframes mark-pulse{50%{transform:scale(1.12)}}@keyframes mark-gone{to{opacity:0;transform:scale(1.5)}}.door-page .door .dev{position:absolute;left:50%;top:6px;box-sizing:content-box;width:250px;height:520px;margin-left:-131px;border-radius:34px;border:6px solid var(--ink);background:var(--paper);overflow:hidden;box-shadow:0 24px 50px #1c161047;opacity:0;transform:translateY(520px);animation:dev-up .9s cubic-bezier(.2,.7,.2,1) 6.3s forwards;font-size:16px;line-height:normal}.door-page .door .book{position:absolute;inset:0;animation:book-scroll 1.4s cubic-bezier(.4,0,.2,1) 8.3s forwards}.door-page .door .cover{display:block;height:96px}.door-page .door .pt{position:relative;display:block;box-sizing:content-box;width:54px;height:54px;margin:-30px 0 0 14px;border:3px solid var(--paper);border-radius:99px;overflow:hidden;box-shadow:0 4px 12px #1c161033}.door-page .door .nm{padding:6px 14px 0}.door-page .door .nm b{display:block;font:400 19px/1.05 var(--serif)}.door-page .door .nm small{display:block;font:400 7px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.door-page .door .mtabs{display:flex;gap:10px;padding:10px 14px 6px;border-bottom:1px solid var(--rule);font:400 6.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.door-page .door .mtabs span:first-child{color:var(--house-olive)}.door-page .door .mgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px 8px;padding:10px 14px}.door-page .door .mc .p{position:relative;display:block;aspect-ratio:1}.door-page .door .mc .p img{border-radius:4px}.door-page .door .mc b{display:block;margin-top:5px;font:400 10.5px/1.1 var(--serif)}.door-page .door .mc small{display:block;font:400 5.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.door-page .door .tapdot{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:99px;background:#f4f2edd9;box-shadow:0 0 0 2px #16151340;opacity:0;transform:scale(.4);animation:tap-ring .9s ease 9.2s forwards}@keyframes dev-up{to{opacity:1;transform:translateY(0)}}@keyframes book-scroll{to{transform:translateY(-150px)}}@keyframes tap-ring{30%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.door-page .door .mcard{position:absolute;inset:0;background:var(--paper);transform:translateY(100%);animation:mcard-up .9s cubic-bezier(.2,.7,.2,1) 9.7s forwards}.door-page .door .mcard .h{position:relative;display:block;height:200px}.door-page .door .mcard .h:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgb(20 18 15 / .62))}.door-page .door .mcard .h b{position:absolute;left:14px;right:14px;bottom:12px;z-index:1;font:400 22px/1.05 var(--serif);color:var(--paper)}.door-page .door .mcard .l{display:block;padding:14px 14px 4px;font:400 6.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--house-olive)}.door-page .door .mcard .i{display:flex;justify-content:space-between;margin:0 14px;padding:8px 0;border-bottom:1px solid var(--rule);font:400 11.5px var(--serif);opacity:0;transform:translateY(6px);animation:row-in .9s cubic-bezier(.2,.7,.2,1) calc(10.2s + .14s * var(--i)) forwards}.door-page .door .mcard .i span{font:400 8.5px var(--mono);color:var(--ink-soft)}@keyframes mcard-up{to{transform:translateY(0)}}@keyframes row-in{to{opacity:1;transform:translateY(0)}}@keyframes head-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes head-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}.door-page .door .door-ways{display:flex;flex-direction:column;gap:14px;visibility:hidden;opacity:0;transform:translateY(10px);animation:ways-in .9s cubic-bezier(.2,.7,.2,1) 11.5s forwards}@keyframes ways-in{0%{visibility:visible;opacity:0;transform:translateY(10px)}to{visibility:visible;opacity:1;transform:translateY(0)}}.door-page .door .already{margin:0;font-family:var(--sans);font-size:14px;color:var(--ink-faint);text-align:center}.door-page .door .already a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}@media(prefers-reduced-motion:reduce){.door-page .door .door-tag,.door-page .door .door-beat,.door-page .door .src,.door-page .door .more .m,.door-page .door .mark,.door-page .door .dev,.door-page .door .book,.door-page .door .tapdot,.door-page .door .mcard,.door-page .door .mcard .i,.door-page .door .door-ways{animation:none}.door-page .door .src,.door-page .door .more .m{opacity:0}.door-page .door .mark{opacity:0;transform:scale(1.5)}.door-page .door .dev{opacity:1;transform:translateY(0)}.door-page .door .book{transform:translateY(-150px)}.door-page .door .mcard{transform:translateY(0)}.door-page .door .mcard .i{opacity:1;transform:translateY(0)}.door-page .door .door-ways{visibility:visible;opacity:1;transform:translateY(0)}}.door-page .form{max-width:20rem;margin:12vh auto 0;padding:28px 28px 40px}.door-page .form .brand-row{display:flex;margin:0 0 1.75rem}.door-page .form h1{font-family:var(--serif);font-size:34px;line-height:1.05;margin:0 0 .3rem}.door-page .form .sub{font-family:var(--serif);font-size:16px;color:var(--ink-soft);margin:0 0 1.3rem;line-height:1.45}.door-page .form .sub b{color:var(--ink);font-weight:inherit}.door-page .form .field-group{margin-bottom:.9rem}.door-page .form .address{font-family:var(--mono);font-size:.68rem;color:var(--ink-soft);margin:.4rem 0 0;letter-spacing:.04em}.door-page .form .address b{color:var(--ink);font-weight:600}.door-page .form button.pill{margin-top:.4rem}.door-page .form .links{margin-top:1.1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;font-family:var(--sans);font-size:14px;color:var(--ink-faint)}.door-page .form .links a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.door-page .form .hint{font-family:var(--sans);font-size:.78rem;color:var(--ink-faint);margin:.35rem 0 0}.door-page .form .field-group .error{margin:.6rem 0 0}.door-page .form>.error{margin:0 0 1.1rem}.door-page .form .change{margin-top:1.1rem}.door-page .form .change>summary{font-family:var(--sans);font-size:.85rem;color:var(--ink);font-weight:600;cursor:pointer;list-style:none}.door-page .form .change>summary::-webkit-details-marker{display:none}.door-page .form .change[open]>summary{margin-bottom:1.1rem}
