/* Mobile presentation layer. Intentionally separate from the desktop layout. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{padding-bottom:0}
.menu-bar{position:sticky;top:0;height:48px;gap:10px;padding:0 12px}
.brand{padding-right:8px}.brand span{display:inline}
.menu-bar nav{display:none}.menu-status{font-size:10px}.menu-status time{white-space:nowrap}
.wallpaper{min-height:calc(100dvh - 48px);padding:0 10px 92px;overflow:visible}
.wallpaper:before{position:fixed;pointer-events:none}
.intro-stage{height:440px;margin:0 -10px;overflow:hidden}
.intro-stage #livingHead{left:-20%;bottom:-5%;width:105%;height:65%;object-position:left bottom}
.intro-stage #livingHead.idle,.intro-stage #livingHead.changing{animation:none!important;transform:none!important}
.comic-intro{left:auto!important;right:14px!important;top:20px!important;width:218px;max-width:calc(100vw - 92px);padding:11px 11px 10px;border-width:3px;box-shadow:5px 5px 0 #101828,8px 8px 0 #ffd84d;transform:none}
.comic-intro.changing{transform:translateY(4px)}
.comic-intro>span{font-size:8px}.comic-intro h2{margin:5px 0;font-size:20px;line-height:.94}.comic-intro>p{min-height:0;font-size:10px;line-height:1.32}
.comic-controls{gap:5px;margin-top:9px}.comic-controls button{min-width:0;padding:6px 4px;font-size:8px}.comic-controls b{font-size:8px}
.wardrobe{margin-top:7px;padding-top:6px}.wardrobe>div{gap:4px}.wardrobe button{min-width:0;height:27px;padding:3px}.wardrobe button i{width:10px;height:10px}
.comic-intro:after{left:-17px!important;bottom:42px!important;width:19px!important;height:27px!important}
.avatar-mood{left:18px;bottom:64px;padding:6px 8px}.avatar-mood span{display:none}
.intro-stage .head-label{left:18px;bottom:20px;max-width:230px}.head-label b{font-size:11px}.head-label span{font-size:9px;line-height:1.35}
.finder{position:relative;right:auto;top:auto;width:100%;height:auto;min-height:0;max-height:none;border-radius:14px;overflow:hidden;scrollbar-gutter:auto}
.titlebar{grid-template-columns:auto minmax(0,1fr) auto;height:42px;padding:0 11px;font-size:10px}.titlebar strong{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.traffic{gap:5px}.traffic i{width:10px;height:10px}
.finder-toolbar{height:40px;padding:0 11px}.fixed-view{font-size:9px}.fixed-view i{width:23px;height:23px}.finder-toolbar>span:last-child{font-size:9px}
.finder-intro{padding:25px 19px 20px}.finder-intro>span{margin-bottom:11px;font-size:9px}.finder-intro h1{max-width:100%;margin-bottom:14px;font-size:30px;line-height:1.1;letter-spacing:-.005em;word-spacing:.07em;overflow-wrap:anywhere}.finder-intro .finder-opening{font-size:13px;line-height:1.6}
.finder-intro .ui-desktop-label{display:none}.finder-intro .ui-mobile-label{display:inline}
.career-direction{grid-template-columns:1fr;gap:10px;margin-top:16px}.career-direction article{min-height:0;padding:14px 15px}.career-direction b{font-size:9px}.career-direction article>p{font-size:11px!important}.career-direction ul{font-size:10px}
.role-ribbon{gap:6px;margin-top:12px}.role-ribbon span{padding:5px 7px;font-size:8px}.role-ribbon i{width:100%;margin:5px 0 0;font-size:9px}
.dashboard-groups{padding:7px 12px 23px}.dashboard-group{padding:13px}.dashboard-group>header{gap:7px;padding-bottom:11px}.dashboard-group>header span{font-size:9px}.dashboard-group>header>i{font-size:8px}
.case-study-group .file-grid{grid-template-columns:1fr;gap:8px;padding-top:12px}
.case-study-group .project-file{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;justify-items:start;align-items:center;gap:3px 13px;width:100%;padding:11px 13px;border-color:#e1e7f0;background:rgba(255,255,255,.78);text-align:left}
.case-study-group .project-file>i{grid-row:1/3;width:58px;height:43px;margin:0}.case-study-group .project-file>i:before{width:25px;height:9px}.case-study-group .project-file strong{max-width:100%;margin:0;font-size:13px;white-space:normal}.case-study-group .project-file span{font-size:9px}
.project-file>i svg{width:25px;height:25px}
.walking-avatar{display:none}
.dock{display:flex;left:50%;right:auto;bottom:max(8px,env(safe-area-inset-bottom));gap:5px;padding:7px 8px;transform:translateX(-50%);border-radius:17px}
.dock button,.dock a{width:44px;height:44px}.dock-icon,.dock-icon.dock-linkedin{width:31px;height:31px}.dock button::after,.dock a::after{display:none}
.project-dialog{inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0}
.project-dialog .dialog-bar{position:sticky;top:0;z-index:9;grid-template-columns:auto minmax(0,1fr) auto;height:43px;padding:0 10px}.project-dialog .dialog-bar>strong{padding:0 7px;text-align:center;font-size:9px}
.project-switcher{position:sticky;top:43px;z-index:8;height:44px;grid-template-columns:repeat(5,1fr);padding:5px 7px}.project-switcher button{min-width:0}.project-switcher button span,.project-switcher>i{display:none}
.project-dialog .project-layout{display:block;height:auto}.project-copy{padding:26px 18px}.project-copy h2{font-size:42px;line-height:.92}.lead{font-size:16px;line-height:1.5}.metric-strip{grid-template-columns:1fr;gap:7px;margin:21px 0}.metric-strip div{padding:12px}
.project-data{padding:22px 14px 35px}.data-header{align-items:start;gap:12px}.data-header b{text-align:right}
.flow-row{grid-template-columns:1fr}.flow-arrow{height:22px;transform:rotate(90deg)}.donut-row{grid-template-columns:100px 1fr;gap:12px}.donut{width:96px}.comparison-grid,.driver-grid{grid-template-columns:1fr}
.info-dialog,.about-dialog,.linkedin-dialog,.email-dialog{width:calc(100vw - 18px);max-width:none;max-height:calc(100dvh - 18px);padding:35px 20px 28px;border-radius:13px;box-shadow:5px 5px 0 #101828}
.info-dialog h2{font-size:38px;line-height:.94}.about-dialog .about-lead{font-size:14px}.about-profile,.education-grid{grid-template-columns:1fr}.about-profile article{padding:15px}.about-focus{align-items:flex-start;flex-direction:column}.contact-hub{grid-template-columns:1fr}
.education-hero{grid-template-columns:1fr;min-height:auto}.education-hero img{height:240px}.education-grid article{padding:18px}
#livingHead,.education-hero img,.walking-avatar,.avatar-route img,.mini-guide>img{animation:none!important;transition:none!important;transform:none!important}
.resume-dialog{inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.resume-dialog .dialog-bar{grid-template-columns:auto minmax(0,1fr) auto}.resume-dialog .dialog-bar>strong{text-align:center}.resume-actions a{padding:6px;font-size:7px}.resume-actions a:last-child{display:none}.resume-viewer{padding:8px}
.mini-guide{display:none!important}
