/* Mobile is a dedicated touch composition. Enabled by experience.js, not a shrunk desktop. */
html{touch-action:pan-y;scroll-padding-top:90px}
body{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}
header{padding:calc(var(--safe-top) + 12px) 20px 10px}
.brand{font-size:15px;gap:9px}.brand img{width:32px;height:32px}
#skip{font-size:14px;min-height:44px;padding:8px 13px}#skip span{margin-left:7px}
.intro{left:7vw;right:7vw;top:calc(var(--safe-top) + 105px);max-width:none}
h1{font-size:clamp(32px,9.4vw,43px);line-height:1.28;margin-bottom:22px;letter-spacing:-.05em}
.eyebrow{font-size:15px;margin-bottom:17px;letter-spacing:.035em}
.lead{font-size:17px;line-height:1.7}
.caption{left:7vw;right:7vw;max-width:none;bottom:calc(var(--safe-bottom) + 125px);text-shadow:0 2px 16px #07121f,0 1px 4px #07121f}
.caption h2{font-size:30px;line-height:1.28;margin-bottom:14px}
.caption p:not(.eyebrow){font-size:17px;line-height:1.55;margin-bottom:0}
#sectionCaption{bottom:calc(var(--safe-bottom) + 125px)}#sectionCaption h2{font-size:29px}
#scrollHint{display:none}
#mobileStage{position:fixed;z-index:5;display:flex;justify-content:space-between;left:22px;right:22px;bottom:calc(var(--safe-bottom) + 70px);pointer-events:none;font-size:14px;color:var(--muted)}
#mobileStageText{font-size:15px;font-weight:550;color:var(--ink)}
.timeline{bottom:calc(var(--safe-bottom) + 12px);left:6px;right:6px;padding:0 0 5px;gap:0;justify-content:space-between}
.timeline button{min-width:0;min-height:44px;flex:1;padding:0;font-size:14px}
.timeline:after,#progressLine{left:16px;right:16px;width:calc(100% - 32px)}
body[data-stage="프로필"] .timeline,body[data-stage="프로필"] #mobileStage{display:none}
#profile{padding:calc(var(--safe-top) + 100px) 22px calc(var(--safe-bottom) + 30px);align-items:flex-start;overflow-y:auto;overscroll-behavior-y:auto;touch-action:pan-y}
.profile-inner{display:grid;grid-template-columns:104px minmax(0,1fr);gap:17px 18px;align-items:start;max-width:480px;margin:auto}
.profile-photo{grid-column:1;grid-row:1/3;width:104px;height:156px;min-height:0;border-radius:3px}
.profile-photo img{object-position:center 22%}
.profile-copy{display:contents}
.profile-copy .eyebrow{grid-column:2;grid-row:1;align-self:end;font-size:14px;line-height:1.5;margin:0}
.profile-copy h2{grid-column:2;grid-row:2;font-size:clamp(24px,6.3vw,28px);line-height:1.4;margin:0;letter-spacing:-.055em}
.profile-description{grid-column:1/-1;font-size:17px;line-height:1.75;margin:5px 0 0}
.credentials{grid-column:1/-1;display:flex;flex-direction:column;gap:7px;margin:0;font-size:15px;line-height:1.5}
.services{grid-column:1/-1;display:flex;flex-direction:column;gap:0;margin:7px 0 0}
.services a{min-height:55px;padding:15px 0;font-size:17px;align-items:center;border-bottom:1px solid #c8d0c9}
.services a:last-child{border:0}
.desktop{display:none}
#atomLabels span{font-size:17px}
#axisLabels span,#sectionLabels span{font-size:14px}
#waveScience{left:7vw;right:7vw;top:calc(var(--safe-top) + 104px);max-width:none}
.desktop-equation{display:none}.mobile-equation{display:block;font-size:clamp(21px,5.6vw,25px);white-space:nowrap;margin-bottom:14px}
.science-kicker{font-size:14px;margin-bottom:12px}
.science-relations{font-size:17px;gap:24px}.science-relations span:first-child{display:none}
.science-decay{font-size:16px;margin-top:14px}
body[data-stage="파동"] .science-decay{visibility:hidden}
#waveMeasures text{font-size:16px}
#performance{top:80px;left:12px;padding:7px 10px;font-size:11px;max-width:210px}
#performance small{font-size:11px}#debugProgress{width:160px}
@media(max-height:720px){.intro{top:calc(var(--safe-top) + 91px)}h1{font-size:34px}.lead{font-size:16px}.caption{bottom:calc(var(--safe-bottom) + 115px)}.caption h2,#sectionCaption h2{font-size:27px}.caption .eyebrow{margin-bottom:11px}#sectionCaption{bottom:calc(var(--safe-bottom) + 115px)}#waveScience{top:calc(var(--safe-top) + 90px)}.science-kicker{margin-bottom:8px}.science-decay{margin-top:10px}}
@media(orientation:landscape) and (max-height:520px){.intro{top:90px;right:48%}h1{font-size:27px}.lead{font-size:16px}.caption{max-width:45%;bottom:95px}.caption h2,#sectionCaption h2{font-size:25px}#waveScience{left:auto;right:5vw;top:83px;max-width:48%}.science-equation{font-size:22px}.science-kicker,.science-decay{display:none}#sectionCaption{max-width:45%;bottom:95px}.profile-inner{max-width:560px}.timeline{left:45%;}#mobileStage{right:55%;bottom:27px}#mobileStage>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){#mobileStage,.timeline{display:none}}
