*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--text,Arial,sans-serif);color:var(--ink);background:var(--background);-webkit-font-smoothing:antialiased}.diner{--background:#f5f0e5;--paper:#fffdf5;--ink:#30423b;--muted:#667069;--line:#dadacf;--accent:#a83732;--selection:#304e41;--selected-text:#fffdf5}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}a,button,label{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{border:0;background:none}button,a{touch-action:manipulation}.page{max-width:1440px;margin:0 auto;padding:0 56px}header{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}header a:hover,header button:hover,footer a:hover{text-decoration:underline;text-underline-offset:4px}.name{font-size:20px;letter-spacing:-.5px}.name span{display:block;font-size:9px;letter-spacing:1.6px;margin-top:7px}.skip{position:absolute;top:-100px;left:20px;z-index:20;padding:14px;background:var(--paper)}.skip:focus{top:20px}.role{font-size:13px;line-height:1.6;display:inline-block;border-bottom:1px solid var(--line);padding-bottom:4px}.role:hover{border-color:var(--accent)}h1{font-family:var(--display,Georgia,serif);font-weight:400;letter-spacing:-2px;line-height:1.02;margin:18px 0 22px}h1 em{font-weight:400;color:var(--accent)}.tabletop{position:relative;padding-top:25px;min-height:710px}.intro{text-align:center} .intro h1{font-size:58px}.console{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:28px 32px;z-index:2}.diner .console{max-width:600px;margin:36px auto 0;box-shadow:0 3px 0 #e1e2d6,0 22px 38px -27px #34483d55;transform:rotate(-.6deg)}.question-explorer{padding:0;margin:0;border:0;min-width:0}.question-explorer legend{font-family:var(--display,Georgia,serif);font-size:24px;padding:0;margin-bottom:20px;letter-spacing:-.4px}.question-radio{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%)}.question-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.question-picker label{min-height:43px;display:flex;align-items:center;justify-content:center;text-align:center;padding:9px 6px;border:1px solid var(--line);border-radius:4px;cursor:pointer;font-size:12px;line-height:1.2;transition:background .15s,border-color .15s,color .15s;color:var(--ink)}.question-picker label:hover{border-color:var(--accent)}.question-stage{border-top:1px solid var(--line);margin-top:23px;padding-top:22px;min-height:208px}.answer-panel{display:none}.answer-panel h2{font-size:19px;line-height:1.3;font-weight:500;letter-spacing:-.25px;margin:0 0 12px}.answer-panel p{font-size:15px;line-height:1.65;margin:0}.answer-panel .answer-source{font-size:10px;color:var(--muted);margin-top:18px;letter-spacing:.2px}.badge{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;border:1px solid #5e746759;border-radius:6px;min-height:132px;padding:20px 16px;box-shadow:0 4px 0 #72897635,0 16px 28px -22px #253f3d80;transition:transform .2s,box-shadow .2s;z-index:3}.badge strong{font-family:var(--display,Georgia,serif);font-weight:400;letter-spacing:-.8px;white-space:nowrap}.badge span{font-size:11px}.badge .badge-small{font-size:9px;letter-spacing:1px}.experience-badge{left:5.2%;top:190px;width:210px;background:#bfd4bc;transform:rotate(-4deg)}.experience-badge strong{font-size:26px}.experience-badge:hover{transform:rotate(-2deg) translateY(-4px)}.cv-badge{right:5.5%;top:212px;width:180px;background:#f1d69c;transform:rotate(5deg)}.cv-badge strong{font-size:35px}.cv-badge:hover{transform:rotate(2deg) translateY(-4px)}.sticker{position:absolute;transform:perspective(700px) translate3d(var(--px,0px),var(--py,0px),0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotate(var(--rot,0deg));transition:transform .35s ease-out;z-index:1;text-align:center}.sticker .art{display:block;width:100%;background-image:url('/assets/stickers.png');background-repeat:no-repeat;filter:drop-shadow(0 5px 3px #122e2224)}.sauna .art{aspect-ratio:404/496;background-size:380.198% 206.452%;background-position:5.830% 2.273%}.running .art{aspect-ratio:513/342;background-size:299.415% 299.415%;background-position:51.124% 18.035%}.pizza .art{aspect-ratio:460/475;background-size:333.913% 215.579%;background-position:99.907% 6.375%}.mountains .art{aspect-ratio:506/468;background-size:303.557% 218.803%;background-position:3.204% 96.583%}.caption{display:block;margin-top:5px;font-size:10px;color:var(--muted)}.tabletop>.sauna{left:4.5%;top:390px;width:85px;--rot:-7deg}.tabletop>.pizza{right:6%;top:442px;width:72px;--rot:9deg}.tabletop>.running{left:16%;top:570px;width:98px;--rot:-8deg}.tabletop>.mountains{right:12%;top:42px;width:86px;--rot:8deg}.ai-sticker{right:16%;top:610px;--rot:-8deg}.ai-mark{display:flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:10px;background:#b5cfc0;box-shadow:0 3px 0 #72908280;font-size:19px;font-weight:500;letter-spacing:-1px}.steam{position:absolute;top:-10px;left:50%;font-family:Georgia,serif;font-size:24px;color:var(--muted);opacity:.45;animation:steam 4s ease-in-out infinite;pointer-events:none}@keyframes steam{0%,100%{transform:translateY(2px);opacity:.15}50%{transform:translateY(-9px);opacity:.5}}.contact-ticket{text-align:center;margin:30px auto 20px;font-family:var(--display,Georgia,serif);font-style:italic;font-size:21px}.contact-ticket a{border-bottom:1px solid var(--line);padding-bottom:4px}.contact-ticket a:hover{border-color:var(--accent)}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);min-height:72px;font-size:12px;color:var(--muted)}footer div{display:flex;gap:30px}dialog{max-width:670px;width:calc(100% - 40px);max-height:85dvh;padding:30px 36px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 35px 100px #0004}dialog::backdrop{background:#10242099;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.dialog-top button{padding:10px 0 10px 16px;text-decoration:underline;text-underline-offset:4px}dialog h2{font-family:var(--display,Georgia,serif);font-size:33px;font-weight:400;line-height:1.15;letter-spacing:-.7px;margin:25px 0 30px}.job{border-top:1px solid var(--line);padding:18px 0}.job h3{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:15px;font-weight:500;margin:0 0 9px}.job small{font-size:11px;font-weight:400;color:var(--muted);white-space:nowrap}.job p,.education{font-size:14px;line-height:1.65;margin:0}.education{color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.dialog-download{display:inline-block;margin-top:24px;border-bottom:1px solid var(--accent);padding-bottom:5px;font-size:14px;color:var(--accent)}
@media(min-width:1500px){.page{padding:0 60px}.tabletop{min-height:740px}}
@media(max-width:1150px) and (min-width:1001px){.page{padding:0 30px}.diner .console{max-width:520px}.experience-badge{left:0;width:180px}.experience-badge strong{font-size:23px}.cv-badge{right:0;width:150px}.tabletop>.running{left:7%}.tabletop>.mountains{right:6%}}
@media(max-width:1000px){.page{padding:0 22px}header{min-height:94px;gap:15px}.name{font-size:18px}.name span{font-size:8px;letter-spacing:1px}.tabletop{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:24px 16px;min-height:0;padding-top:25px}.intro{order:0;flex-basis:100%}.intro h1{font-size:45px;margin:17px 0 19px}.role{font-size:12px}.diner .console{order:1;flex-basis:100%;width:100%;max-width:600px;margin:4px 0 0;transform:none;padding:24px}.badge{position:relative;top:auto;left:auto;right:auto;order:2;flex:0 1 calc(50% - 8px);max-width:205px;min-height:119px;padding:17px 8px;gap:10px}.experience-badge{transform:rotate(-2deg)}.cv-badge{transform:rotate(2deg)}.experience-badge strong{font-size:clamp(18px,4.5vw,25px)}.cv-badge strong{font-size:31px}.badge .badge-small{font-size:8px;letter-spacing:.6px}.badge span{font-size:10px}.tabletop>.sticker{position:relative;left:auto;right:auto;top:auto;order:3;width:calc(23% - 9px);max-width:73px;align-self:center}.tabletop>.running{max-width:88px}.tabletop>.pizza{max-width:61px}.tabletop>.ai-sticker{display:none}.contact-ticket{order:4;flex-basis:100%;margin:0 0 30px}.question-explorer legend{font-size:23px;margin-bottom:18px}.question-picker label{font-size:11px;min-height:44px;padding:8px 3px}.question-stage{min-height:0;padding-top:20px;margin-top:20px}.answer-panel h2{font-size:19px}.answer-panel p{font-size:14px;line-height:1.7}.answer-panel .answer-source{font-size:10px;margin-top:17px}footer{font-size:11px;min-height:70px}dialog{padding:22px;max-height:87dvh}dialog h2{font-size:28px}.job h3{font-size:14px}.job p,.education{font-size:13px}}
@media(max-width:380px){.page{padding:0 16px}.intro h1{font-size:41px}.diner .console{padding:21px}.question-picker label{font-size:10.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.sticker{transform:rotate(var(--rot,0deg))}}

@media(max-width:1000px){.tabletop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:640px;margin-inline:auto}.intro,.diner .console,.contact-ticket{grid-column:1/-1}.diner .console{max-width:none}.badge{grid-column:span 2;width:100%}.experience-badge{justify-self:end}.cv-badge{justify-self:start}.tabletop>.sticker{width:100%;justify-self:center}}





.application-brand{display:flex;align-items:center;flex-direction:column;gap:30px;margin:0 auto 30px}.application-brand>span{font-size:9px;letter-spacing:1.7px;font-weight:500}.application-brand img{display:block;width:220px;height:auto;max-width:100%}.intro h1{margin-top:0;margin-bottom:25px}.intro .role{font-size:19px;font-weight:500;line-height:1.35;max-width:100%;padding:13px 24px;border:1px solid #9cb4a6;border-radius:5px;background:#e2e9dc;color:#244333;box-shadow:0 2px 0 #afc0b25c}.intro .role:hover{background:#d6e2cc;border-color:#5e7c6b}.diner .console{margin-top:32px}.answer-panel p+p:not(.answer-source){margin-top:15px}.experience-badge{top:240px}.cv-badge{top:262px}.tabletop>.sauna{top:442px}.tabletop>.pizza{top:506px}.tabletop>.running{top:705px}.ai-sticker{top:752px}
@media(max-width:1000px){.application-brand{gap:27px;margin-bottom:28px}.application-brand img{width:195px}.intro .role{font-size:17px;padding:12px 18px}.diner .console{margin-top:4px}.experience-badge,.cv-badge,.tabletop>.sticker{top:auto}}
@media(max-width:380px){.intro .role{font-size:16px;padding:12px 15px}.application-brand img{width:185px}}

/* Quiet arcade layer. Content and all links stay above it. */
.page{position:relative;z-index:1}#snake-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}#effects-canvas{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;pointer-events:none;overflow:clip;z-index:20}#effects-canvas::backdrop{background:transparent;pointer-events:none}.game-controls{display:flex;align-items:center;gap:9px;position:relative;padding:10px 0 18px;flex-wrap:nowrap}.game-controls[hidden]{display:none}.game-guide{display:flex;flex-direction:column;gap:4px}.game-title{font-size:9px;letter-spacing:1.5px}.game-keys{font-size:9px;color:var(--muted)}.direction-keys{display:flex;gap:3px}.direction-keys button{width:27px;height:27px;padding:0;border:1px solid #b6c5b7;border-bottom-width:3px;border-radius:4px;background:#e6eadc;font-size:14px}.direction-keys button:hover{background:#d4dec9}.direction-keys button:active{transform:translateY(2px);border-bottom-width:1px}.game-action{font-size:11px;padding:7px 11px;border-radius:4px;background:#304e41;color:#fffdf5;min-width:52px}.game-hide{font-size:10px;text-decoration:underline;text-underline-offset:3px;padding:7px 2px}.game-score{font-size:11px;min-width:23px;text-align:center;font-variant-numeric:tabular-nums;color:#45634a}.game-status{position:absolute;right:0;bottom:0;font-size:9px;color:var(--muted);white-space:nowrap}.question-picker label{position:relative;will-change:auto}.question-picker label:active{box-shadow:inset 0 1px 3px #304e4120}.question-stage{transform-origin:50% 0}
@media(max-width:700px){header{flex-wrap:wrap;padding:23px 0 13px;row-gap:16px}.game-controls{width:100%;justify-content:flex-start;padding-bottom:19px}.game-status{left:0;right:auto}.direction-keys button{width:30px;height:30px}.game-action{min-height:32px}.tabletop{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.direction-keys button:active{transform:none}}

.snake-playing .badge,.snake-playing .sticker{transition:none}

.question-explorer:has(#q-fit:checked) [data-answer=fit],.question-explorer:has(#q-motivation:checked) [data-answer=motivation],.question-explorer:has(#q-marketplace:checked) [data-answer=marketplace],.question-explorer:has(#q-partners:checked) [data-answer=partners],.question-explorer:has(#q-onboarding:checked) [data-answer=onboarding],.question-explorer:has(#q-demand:checked) [data-answer=demand],.question-explorer:has(#q-ai:checked) [data-answer=ai],.question-explorer:has(#q-plan:checked) [data-answer=plan],.question-explorer:has(#q-measurement:checked) [data-answer=measurement],.question-explorer:has(#q-revenue:checked) [data-answer=revenue],.question-explorer:has(#q-teams:checked) [data-answer=teams],.question-explorer:has(#q-ownership:checked) [data-answer=ownership]{display:block}

.question-explorer:has(#q-fit:checked) #label-fit,.question-explorer:has(#q-motivation:checked) #label-motivation,.question-explorer:has(#q-marketplace:checked) #label-marketplace,.question-explorer:has(#q-partners:checked) #label-partners,.question-explorer:has(#q-onboarding:checked) #label-onboarding,.question-explorer:has(#q-demand:checked) #label-demand,.question-explorer:has(#q-ai:checked) #label-ai,.question-explorer:has(#q-plan:checked) #label-plan,.question-explorer:has(#q-measurement:checked) #label-measurement,.question-explorer:has(#q-revenue:checked) #label-revenue,.question-explorer:has(#q-teams:checked) #label-teams,.question-explorer:has(#q-ownership:checked) #label-ownership{background:var(--selection);color:var(--selected-text);border-color:var(--selection)}

.question-explorer:has(#q-fit:focus-visible) #label-fit,.question-explorer:has(#q-motivation:focus-visible) #label-motivation,.question-explorer:has(#q-marketplace:focus-visible) #label-marketplace,.question-explorer:has(#q-partners:focus-visible) #label-partners,.question-explorer:has(#q-onboarding:focus-visible) #label-onboarding,.question-explorer:has(#q-demand:focus-visible) #label-demand,.question-explorer:has(#q-ai:focus-visible) #label-ai,.question-explorer:has(#q-plan:focus-visible) #label-plan,.question-explorer:has(#q-measurement:focus-visible) #label-measurement,.question-explorer:has(#q-revenue:focus-visible) #label-revenue,.question-explorer:has(#q-teams:focus-visible) #label-teams,.question-explorer:has(#q-ownership:focus-visible) #label-ownership{outline:2px solid var(--accent);outline-offset:2px}

.game-guide{min-width:60px}.game-controls[data-state="over"] .game-title{color:#a83732;font-weight:700;letter-spacing:.7px}.game-controls[data-state="over"] .game-action{background:#a83732;box-shadow:0 2px 0 #672f2b35}.game-controls[data-state="over"] .game-status{color:#943b39;font-size:10px;font-weight:500}.game-controls[data-state="over"] .game-score{color:#943b39}
@media(max-width:380px){.game-controls{gap:6px}.game-guide{min-width:50px}.direction-keys button{width:25px;height:30px}.game-score{min-width:20px}.game-hide{font-size:9px}}

.snake-restart-hint{position:fixed;z-index:2;pointer-events:none;width:164px;padding:11px 14px 12px;border:1px solid #c9aca4;border-radius:6px;background:#fffaf0;color:#5f3c45;box-shadow:0 3px 0 #c9aca433,0 9px 18px -12px #58324566}.snake-restart-hint[hidden]{display:none}.snake-restart-hint span{display:block;margin-bottom:5px;font-size:9px;line-height:1.2;letter-spacing:1px;text-transform:uppercase;color:#a05258}.snake-restart-hint strong{display:block;font-size:12px;line-height:1.4;font-weight:500}
@media(max-width:700px){.snake-restart-hint{width:max-content;max-width:calc(100vw - 16px);padding:5px 10px;border-radius:4px}.snake-restart-hint span,.snake-restart-hint br{display:none}.snake-restart-hint strong{font-size:11px;line-height:1.3;white-space:nowrap}}

#experience{overscroll-behavior:contain}#experience .dialog-top{position:sticky;top:0;z-index:1;background:var(--paper);box-shadow:0 -32px 0 var(--paper);padding:8px 0;border-bottom:1px solid var(--line)}#experience .job h3{font-size:16px;flex-wrap:wrap;gap:5px 16px;margin-bottom:7px}#experience .job small{font-size:12px}#experience .job-role{font-size:14px;font-weight:500;line-height:1.5}#experience .job-location{font-size:12px;color:var(--muted);margin-top:3px}#experience .job ul{margin:12px 0 0;padding-left:18px;font-size:14px;line-height:1.65}#experience .job li+li{margin-top:6px}
@media(max-width:1000px){#experience .job h3{font-size:15px}#experience .job-role,#experience .job ul{font-size:14px}}
