/* A fine gold rail on desktop, a thumb-friendly dock on phones. */
.icon-navigation{position:fixed;z-index:46;left:18px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:6px;padding:10px 7px;background:#fcf8f0e8;backdrop-filter:blur(18px);border:1px solid #b69b7040;border-radius:36px;box-shadow:0 8px 30px #7251360b;animation:dock-arrive .8s cubic-bezier(.22,1,.36,1) both}
.icon-navigation[hidden]{display:none!important}
.icon-navigation>a,.icon-navigation>#motion{position:relative;display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;color:#937345;border:0;border-radius:50%;background:transparent;transition:color .35s,background .35s,transform .35s}
.icon-navigation svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.icon-navigation a[aria-current]{color:#72502d;background:#bc9a6321}
.icon-navigation a[aria-current]:after{content:'';position:absolute;left:-11px;top:21px;width:3px;height:3px;border-radius:50%;background:#a67b40}
.icon-navigation a:focus-visible,.icon-navigation #motion:focus-visible{outline:1px solid #9a7442;outline-offset:3px}
.dock-label{position:absolute;left:calc(100% + 20px);top:50%;transform:translate(-5px,-50%);padding:9px 13px;border:1px solid #b69b7040;background:#fcf8f0f5;border-radius:5px;white-space:nowrap;font:400 11px/1.4 var(--sans);letter-spacing:.3px;color:#725136;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,transform .3s,visibility .25s}
.icon-navigation a:focus-visible .dock-label,.icon-navigation button:focus-visible .dock-label{opacity:1;visibility:visible;transform:translate(0,-50%)}
.dock-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.dock-play{display:none}.dock-motion[aria-pressed=true] .dock-pause{display:none}.dock-motion[aria-pressed=true] .dock-play{display:block}
@media(hover:hover){.icon-navigation a:hover,.icon-navigation #motion:hover{color:#674323;background:#bc9a631a}.icon-navigation a:hover svg,.icon-navigation #motion:hover svg{transform:translateY(-1px)}.icon-navigation a:hover .dock-label,.icon-navigation button:hover .dock-label{opacity:1;visibility:visible;transform:translate(0,-50%)}}
@media(min-width:851px){.section-shell{padding-left:max(7.5%,92px)}.art-label{left:max(6%,94px)}.site-footer{padding-left:max(7%,92px)}}
@media(max-width:850px){
 .icon-navigation{left:50%;top:auto;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);flex-direction:row;justify-content:space-between;gap:0;width:min(420px,calc(100% - 24px));padding:7px;border-radius:35px;box-shadow:0 5px 30px #72513615}
 .icon-navigation>a,.icon-navigation>#motion{flex:1;min-width:44px;width:auto;height:44px}
 .icon-navigation svg{width:21px;height:21px}
 .icon-navigation a[aria-current]:after{left:calc(50% - 1.5px);top:auto;bottom:-3px}
 .dock-label{display:none}
 .stage{padding-bottom:max(94px,calc(78px + env(safe-area-inset-bottom)))}
 .chapter-navigation{margin-top:0}
 .chapter-navigation .experience-controls{display:none}
 .site-footer{padding-bottom:max(106px,calc(92px + env(safe-area-inset-bottom)))}
}
@media(max-width:350px){.icon-navigation{width:calc(100% - 8px);padding:6px 0}.icon-navigation>a,.icon-navigation>#motion{min-width:43px}}
@media(max-width:850px) and (orientation:landscape){.stage{grid-template-rows:minmax(0,1fr);padding-bottom:82px}.chapter-navigation{display:none}.icon-navigation{bottom:max(8px,env(safe-area-inset-bottom));padding:4px 7px}}
@keyframes dock-arrive{from{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.icon-navigation{animation:none}.icon-navigation a,.icon-navigation #motion,.icon-navigation svg,.dock-label{transition:none}}
.details-paused .icon-navigation{animation:none}
