/* Additive local motion experiment; no typography overrides. */
body[data-look="glass"] .hero{--exit:0}
body[data-look="glass"] .hero #liquid-canvas{opacity:calc(1 - var(--exit)*.65)}
body[data-look="glass"] .hero:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:140px;pointer-events:none;background:linear-gradient(transparent,var(--paper));z-index:-1}
body[data-look="glass"] .hero-word{transform:translate3d(0,calc(var(--exit)*-36px),0);opacity:calc(1 - var(--exit)*.45);will-change:transform,opacity}
.opening{position:relative;isolation:isolate;background:var(--paper)}
.opening>.label{display:block;transition:opacity .7s,transform .9s cubic-bezier(.16,1,.3,1)}
.opening:not(.opening-arrived)>.label{opacity:0;transform:translateY(18px)}
.opening>.reveal{transition-delay:.08s}
.opening .opening-note{transition:opacity .8s .16s,transform .9s .16s cubic-bezier(.16,1,.3,1)}
.opening:not(.opening-arrived) .opening-note{opacity:0;transform:translateY(22px)}
.deck-stage{transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.7,.2,1);transform:perspective(1200px) rotateX(var(--deck-rx,0deg)) rotateY(var(--deck-ry,0deg));touch-action:pan-y}
.deck-item{backface-visibility:hidden;box-shadow:0 18px 32px #364b3c25,0 2px 3px #364b3c12}
#ppt-lightbox[open]{animation:none;overflow-x:hidden}
#ppt-lightbox[open]::backdrop{animation:viewer-backdrop .45s ease both}
#ppt-lightbox #ppt-full{transform-origin:center;backface-visibility:hidden}
@keyframes viewer-backdrop{from{background:#2e3b3600}to{background:#2e3b36aa}}
.motion-version{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:35;display:flex;align-items:center;gap:14px;white-space:nowrap;padding:12px 18px;border-radius:26px;background:#f2efe9ee;border:1px solid #81918755;backdrop-filter:blur(16px);box-shadow:0 8px 30px #283f3220;font-size:10px;color:#37423f}
.motion-version>a{border-bottom:1px solid #60756b60;padding-bottom:2px}
.preview-switch{display:none}
@media(max-width:650px){.motion-version{bottom:10px;font-size:9px;gap:12px}.hero:after{height:110px}}
@media(prefers-reduced-motion:reduce){body[data-look="glass"] .hero-word{transform:none;opacity:1}.opening>.label,.opening .opening-note{transition:none!important;transform:none!important;opacity:1!important}.deck-stage{transition:none;transform:none}#ppt-lightbox[open]::backdrop{animation:none}}
.motion-paused .hero-word{will-change:auto}
#ppt-detail .detail-grid>article:last-child{grid-column:1/-1}
