@font-face{font-family:Cabin Sketch;src:url(/fonts/cabin-sketch/CabinSketch-Bold.ttf) format("truetype");font-weight:700;font-display:block}@font-face{font-family:Manrope;src:url(/fonts/manrope.ttf) format("truetype");font-weight:200 800;font-display:swap}:root{--slate: #191b1d;--chalk: #ffffff;--muted: #ffffff;--field-size: clamp(22px, 1.7vw, 26px);font-family:Cabin Sketch,sans-serif;color:var(--chalk);background:var(--slate);font-synthesis:none;font-weight:700}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;background:none;border:0;touch-action:manipulation;cursor:pointer}button:focus-visible,a:focus-visible{outline:1px dashed var(--chalk);outline-offset:7px}#app{position:relative;width:100%;height:var(--app-height, 100dvh);min-height:340px;overflow:hidden;background:var(--slate);background-image:linear-gradient(#0e0f1229,#0e0f1229),url(/textures/blackboard-photo-v3-pattern.svg);background-position:center;background-size:100% 100%,720px 450px;background-repeat:no-repeat,repeat}#canvas-host{position:absolute;inset:0;z-index:2;pointer-events:none}.doodle-board{touch-action:none}#app.contact-panel{touch-action:pan-y pinch-zoom}.doodle-drawing,.doodle-drawing *{user-select:none!important;-webkit-user-select:none!important}#canvas-host canvas{display:block;width:100%;height:100%}#board-content{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;pointer-events:none}.panel{min-width:0;position:relative;pointer-events:none}.identity{padding:clamp(36px,7vw,130px);display:flex;align-items:center}.identity-copy{margin-top:-4vh;pointer-events:auto}h1{color:#f4df87;font-size:clamp(66px,9vw,128px);line-height:1.05;font-weight:700;margin:0;letter-spacing:.01em}.name{font-size:32px;margin:0 0 30px;line-height:1.5}.intro{font-size:clamp(20px,1.65vw,25px);line-height:1.65;margin:0 0 28px;text-wrap:pretty}.name,.intro{text-transform:none}.chalk-link{pointer-events:auto;font-size:23px;line-height:1.8;min-height:44px;padding:5px 0;display:inline-flex;align-items:center;gap:20px;position:relative}.chalk-link:after{content:"";position:absolute;bottom:0;left:-3px;right:-3px;height:12px;background:url(/textures/chalk-line.svg) center / 100% 100% no-repeat;opacity:.76;transform:rotate(-.5deg)}.chalk-link:hover:after{opacity:1}.chalk-link.link-confirmed:after{opacity:1;filter:drop-shadow(0 0 1px #fff)}.chalk-link span{font-family:Manrope,sans-serif;font-size:23px}.contact{padding:0 clamp(36px,6.3vw,110px) 0 0;display:flex;align-items:center}#contact-form{position:relative;width:100%;max-width:520px;pointer-events:auto;margin-top:-4vh}.field{position:relative;margin:0 0 24px}.field label{display:block;font-size:23px;line-height:1.8;margin-bottom:12px}.field input,.field textarea{display:block;width:100%;border:0;border-radius:0;background:transparent;color:var(--chalk);caret-color:var(--chalk);font-family:Cabin Sketch,sans-serif;font-size:var(--field-size);font-weight:700;letter-spacing:0;line-height:2.15;padding:9px 6px;outline:none;resize:none;overflow:auto;scrollbar-width:thin;scrollbar-color:#84988b transparent}.field input{height:44px;line-height:1.3}.email-field{margin-bottom:48px}.email-field label{margin-bottom:6px}.field textarea{height:calc(var(--field-size) * 2.15 * 4 + 18px);overflow:hidden;overflow-wrap:break-word;white-space:pre-wrap}.chalk-surface{position:relative}.chalk-surface:after{content:"";position:absolute;inset:-4px;pointer-events:none;background:url(/textures/chalk-frame.svg) center / 100% 100% no-repeat;opacity:.76}.chalk-email:after{top:auto;height:14px;bottom:-5px;background-image:url(/textures/chalk-line.svg)}.chalk-surface:focus-within:after{opacity:1;filter:drop-shadow(0 0 .65px rgb(255 255 255 / 55%))}.field input::placeholder,.field textarea::placeholder{color:#fff;opacity:1;font-size:calc(var(--field-size) * .84)}.scene-ready .field input,.scene-ready .field textarea{color:transparent}.scene-ready .field input::selection,.scene-ready .field textarea::selection{background:#68877688;color:transparent}.send{margin-top:24px}#contact-status{font:12px/1.6 Manrope,sans-serif;color:var(--muted);max-width:350px;margin:0;position:absolute;left:0;top:calc(100% + 12px)}#contact-form.performing:not(.native-chalk) .field,#contact-form.performing:not(.native-chalk) .send,#contact-form.performing.confirming .field,#contact-form.performing.confirming .send{visibility:hidden}#contact-status.error,#contact-status.warning{font-family:Cabin Sketch,Manrope,sans-serif;font-weight:700;font-size:21px;line-height:1.35;letter-spacing:.01em}#contact-status.error{color:#ff8f84}#contact-status.warning{color:#f4cf6b}#contact-status.sr-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mobile-only{display:none}#loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000;font:13px Manrope,sans-serif;z-index:5}#loading.model-ready{background:transparent;pointer-events:none}#loading.waiting-power{pointer-events:auto}.loading-face{position:relative;width:min(90vw,820px);aspect-ratio:2 / 1}#loading-text{position:absolute;bottom:10%;left:0;right:0;margin:0;text-align:center;color:#d6e4ec;font:700 clamp(15px,1.5vw,20px)/1.5 "Cabin Sketch",sans-serif}#loading-progress{margin-left:.6em;font-variant-numeric:tabular-nums}#power-on{position:absolute;bottom:10%;left:50%;transform:translate(-50%);min-width:90px;min-height:44px;margin:0;padding:5px 14px;font:700 clamp(18px,1.6vw,23px)/1.5 "Cabin Sketch",sans-serif}#power-on[hidden]{display:none}#opening-backdrop{position:absolute;inset:0;z-index:1;background:#000;pointer-events:none}.booting #board-content{opacity:0}@media(pointer:fine){#app{cursor:url(/textures/chalk-cursor-3d.png) 18 51,auto;cursor:image-set(url(/textures/chalk-cursor-3d.png) 1x,url(/textures/chalk-cursor-3d@2x.png) 2x) 18 51,auto}#app button,#app a,#app input,#app textarea{cursor:inherit}#app.robot-hover,#app.robot-hover *{cursor:grab!important}}#app.robot-grab,#app.robot-grab *{cursor:grabbing!important}@media(max-width:760px){:root{--field-size: 22px}#board-content{display:flex;width:200%}.panel{width:50%;flex-shrink:0}.identity{padding:32px;align-items:flex-start}.identity-copy{margin-top:12px}h1{font-size:clamp(72px,20vw,92px);margin-bottom:0}.name{font-size:24px;margin-bottom:22px}.intro{font-size:22px;line-height:1.6;margin-bottom:24px}.mobile-only{display:flex}.identity .mobile-only{margin-top:15px}.chalk-link{font-size:20px}.contact{padding:74px 28px 25px;align-items:flex-start;overflow-y:auto;pointer-events:auto;overscroll-behavior-y:contain}#contact-form{margin:0;max-width:none}.back{position:absolute;left:28px;top:14px;font-size:13px;min-height:40px}.field{margin-bottom:21px}.field label{font-size:20px;margin-bottom:6px}.field input{height:44px}.email-field{margin-bottom:41px}.email-field label{margin-bottom:3px}.field textarea{height:calc(var(--field-size) * 2.15 * 4 + 18px)}.send{margin-top:15px}#contact-status{font-size:11px;max-width:290px}.contact:focus-within{scroll-padding-top:15px}}@media(max-width:360px){:root{--field-size: 21px}.contact{padding-left:22px;padding-right:22px}.back{left:22px}.identity{padding:26px}.intro{font-size:21px}}@media(max-height:600px)and (min-width:761px){:root{--field-size: 20px}.identity-copy,#contact-form{margin-top:0}.identity{padding-top:18px;padding-bottom:18px}h1{font-size:65px;margin-bottom:0}.name{margin-bottom:10px}.intro{font-size:24px;margin-bottom:10px}.field{margin-bottom:10px}.email-field{margin-bottom:34px}.field textarea{line-height:1.85;height:calc(var(--field-size) * 1.85 * 4 + 18px)}.send{margin-top:9px}#contact-status{top:calc(100% + 5px)}}.field textarea{word-break:break-all}.sound-toggle{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:8;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:0;background:transparent;color:#fff;font:700 16px Cabin Sketch,sans-serif;opacity:.72;cursor:pointer}.sound-toggle[hidden]{display:none}.sound-toggle:hover,.sound-toggle:focus-visible{opacity:1}.sound-toggle:focus-visible{outline:1px dashed #fff;outline-offset:3px}.sound-toggle:disabled{cursor:wait}.sound-toggle[aria-pressed=true]{opacity:.92}@media(max-width:760px){.sound-toggle{left:max(14px,env(safe-area-inset-left));right:auto;bottom:max(12px,env(safe-area-inset-bottom))}.contact-panel .sound-toggle{inset:12px 12px auto auto;min-width:44px;justify-content:center}.contact-panel .sound-toggle span{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.identity-copy,.field label,.chalk-link,.field input,.field textarea{text-transform:uppercase}#email{text-transform:lowercase}.board-greeting{position:absolute;color:#fff;white-space:nowrap;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent var(--erase),#000 calc(var(--erase) + 12px),#000 calc(var(--reveal) - 14px),transparent var(--reveal));mask-image:linear-gradient(90deg,transparent var(--erase),#000 calc(var(--erase) + 12px),#000 calc(var(--reveal) - 14px),transparent var(--reveal));transition:opacity .35s}.board-greeting.gone{opacity:0}.send-confirmation{position:absolute;color:#fff;white-space:nowrap;pointer-events:none}.field input,.field textarea{font-kerning:none;font-variant-ligatures:none}
