.persistent-profile { position:fixed; z-index:8; left:4vw; top:15vh; width:28vw; max-width:440px; bottom:7rem; overflow-y:auto; }
.persistent-profile h1 { font-size:clamp(2rem,3.2vw,3.4rem); line-height:1.05; }
.persistent-profile .about-role { margin:1rem 0 1.4rem; color:#7567a2; font-size:.83rem; line-height:1.6; }
.persistent-profile p { font-size:.92rem; line-height:1.8; color:var(--muted); }
.alignment-region { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; inset:6.3rem 8rem 6.8rem 37vw; gap:.5rem; overflow-y:auto; overflow-x:hidden; scrollbar-width:thin; }
.alignment-region[hidden] { display:none; }
.alignment-region .alignment-copy { width:100%; max-width:none; }
.alignment-region .alignment-copy h2 { font-size:clamp(1.7rem,2.8vw,3rem); max-width:none; }
.alignment-region .alignment-copy p { font-size:.82rem; line-height:1.55; margin:.65rem 0; }
.alignment-region .chapter-intent { margin:.45rem 0!important; font-size:.75rem!important; }
.alignment-region .interaction-hint { font-size:.7rem!important; }
.alignment-region .perspectives { grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; margin:.65rem 0; }
.alignment-region .perspectives button { padding:.65rem 1.4rem .65rem .6rem; }
.alignment-region .perspectives button::after { right:.4rem; }
.alignment-region .perspectives span { font-size:.72rem; }
.alignment-region .perspectives small { font-size:.62rem; }
.alignment-region .experience-link,.alignment-region .illustration-note { display:none; }
.decision-space { width:100%; flex-shrink:0; max-width:650px; margin:0 auto 3rem; aspect-ratio:700/530; }
.shared-decision h3,.scene-result h3 { font-size:1.1rem; }
.shared-decision p,.scene-result p { font-size:.71rem; line-height:1.5; }
.about-region { justify-content:center; }
.about-thesis { padding:0; }
.about-thesis h2 { font-size:clamp(2.5rem,4vw,4.6rem); }
.journey-nav { width:6.3rem; right:.8rem; }
.rail-markers button .rail-label { position:absolute; right:46px; width:max-content; max-width:130px; background:#f5f6f8e8; padding:.3rem; pointer-events:none; }
.site-footer { min-height:5rem; height:auto; padding:1rem 3vw; justify-content:flex-start; }
.skills-label { flex:0 0 auto; font-weight:500; font-size:.72rem; color:var(--muted); }
.footer-skills { gap:.5rem; flex-wrap:wrap; overflow:visible; padding:0; }
.footer-skills span { padding:.45rem .65rem; border:1px solid #7567d833; border-radius:6px; background:#ffffff80; color:#54545e; font-size:.7rem; }
.profile-actions { gap:0; }
.profile-actions a { gap:.5rem; padding:0 1rem; }
.profile-actions a + a { border-left:1px solid var(--line); }
.profile-actions a.contact-action { border-top:0; border-right:0; border-bottom:0; border-radius:0; background:none; }
.profile-actions svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.research-stage { flex-shrink:0; }
.research-topics { grid-template-columns:1fr 1fr; margin-top:.8rem; }
.research-topics button { font-size:.72rem; padding:.5rem; }
@media(max-width:700px) {
 .persistent-profile { top:6rem; left:1rem; right:1rem; width:auto; bottom:auto; max-height:25vh; }
 .persistent-profile h1 { font-size:1.7rem; }
 .persistent-profile .about-role { margin:.5rem 0; font-size:.72rem; }
 .persistent-profile p { font-size:.75rem; line-height:1.5; }
 .alignment-region { top:calc(6rem + 27vh); left:1rem; right:4.7rem; bottom:8rem; }
 .journey-nav { top:calc(6rem + 27vh); bottom:8rem; width:3.5rem; right:.4rem; justify-content:flex-start; overflow-y:auto; }
 .rail-markers { gap:0!important; }
 .site-footer { padding:.7rem 1rem; gap:.5rem; display:block; max-height:7rem; overflow-y:auto; }
 .skills-label { display:block; margin-bottom:.5rem; }
 .footer-skills { gap:.3rem; }
 .footer-skills span { font-size:.6rem; padding:.3rem .4rem; }
 .profile-actions a { padding:0 .55rem; gap:.3rem; }
 .profile-actions svg { width:15px; }
 .alignment-region .perspectives { grid-template-columns:1fr; }
 .alignment-region .alignment-copy h2 { font-size:1.7rem; }
 .about-thesis h2 { font-size:2rem; }
}
