/* Shared motion and interaction system; all content works without JavaScript. */
:root{--site-header:86px;--chapter-height:58px;--ease:cubic-bezier(.22,.7,.25,1)}
html{scrollbar-gutter:stable}body{overflow-x:clip}
.nav{height:var(--site-header);transition:background-color .2s,box-shadow .2s;view-transition-name:site-header}
body[data-scrolled="true"] .nav{background:#fcfcfdf7;box-shadow:0 5px 22px #30374206}
.progress{position:fixed;inset:0 0 auto;height:2px;z-index:60;background:#b6a8ca;transform:scaleX(0);transform-origin:left;pointer-events:none}
.skip{position:absolute;left:20px;top:-100px;z-index:100;padding:14px 20px;background:#fcfcfd;color:#50545a}.skip:focus{top:12px}
.mobile-science{display:none}
.motion-ready [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .65s var(--ease),transform .65s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.motion-ready [data-reveal].is-visible{opacity:1;transform:none}
.line-button{transition:color .18s,background-color .18s}
.line-button:after,.line-button[aria-pressed="true"]:after{content:"";position:absolute;inset:auto 0 -1px;height:1px;background:#8d809f;transform:scaleX(0);transform-origin:left;transition:transform .24s var(--ease)}
.line-button[aria-pressed="true"]:after{transform:scaleX(1)}.line-button[data-loading="true"]{color:#8d809f}
.collection-image{position:relative;aspect-ratio:3/2}
.collection-image>[data-line-image]{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .3s ease}
.collection-image[data-active-line="zero"]>[data-line-image="zero"],.collection-image[data-active-line="fuel"]>[data-line-image="fuel"]{opacity:1}
.button .arrow-icon,.hero-link .arrow-icon,.round .arrow-icon,.nav-link .arrow{transition:transform .18s var(--ease)}.round:hover{rotate:0deg}
@media(hover:hover) and (pointer:fine){.button:hover .arrow-icon,.hero-link:hover .arrow-icon,.round:hover .arrow-icon{transform:translate(2px,-2px)}.footer-links a{transition:color .18s}.footer-links a:hover{color:#8c7b9e}}
:where(a,button,summary):focus-visible{outline:2px solid #9b88b5;outline-offset:5px}
.line-button{min-height:44px}.round{min-width:40px;min-height:40px}.close{min-width:40px;min-height:40px}
details summary{align-items:center;min-height:30px}details summary:after{color:#9b91a8}
.modal{max-height:85svh;overflow-y:auto;overscroll-behavior:contain}.modal[open]{animation:dialog-arrive .18s var(--ease) both}.modal[open]::backdrop{animation:backdrop-arrive .18s ease both}body:has(.modal[open]){overflow:hidden}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}
.research-nav{position:sticky;top:var(--site-header);z-index:15;min-height:var(--chapter-height);padding:16px 7%;align-items:center;background:#fcfcfdf5;backdrop-filter:blur(14px);flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d5cfe0 transparent}
.research-nav a{position:relative;white-space:nowrap;flex-shrink:0;padding:4px 0;transition:color .18s}.research-nav a:after{content:"";position:absolute;inset:auto 0 -5px;height:1px;background:#a793ba;transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}
.research-nav a[aria-current="location"]{color:#79678c}.research-nav a[aria-current="location"]:after,.research-nav a:hover:after{transform:scaleX(1)}
html:has(.research-nav){scroll-padding-top:calc(var(--site-header) + var(--chapter-height) + 24px)}.research-footer{scroll-margin-top:0}
@media(max-width:620px){:root{--site-header:78px;--chapter-height:56px}.navlinks .mobile-science{display:inline}.navlinks a[href="#formula"]{display:none}.research-nav{padding:16px 6%;gap:24px}.motion-ready [data-reveal]{transform:translateY(10px)}.motion-ready [data-reveal].is-visible{transform:none}.round{min-width:44px;min-height:44px}.footer-links a{padding-block:8px}.research-hero,.research-section,.hero,.section{min-width:0}}
/* Progressive enhancement: browsers without this feature retain normal links. */
@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s;animation-timing-function:ease}::view-transition-group(site-header){animation-duration:0s}::view-transition-old(site-header),::view-transition-new(site-header){animation:none}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}.motion-ready [data-reveal]{opacity:1;transform:none;transition:none}.progress{display:none}.nav,.line-button,.line-button:after,.collection-image>[data-line-image],.research-nav a,.research-nav a:after,.button .arrow-icon,.hero-link .arrow-icon,.round .arrow-icon{transition:none}.modal[open],.modal[open]::backdrop{animation:none}}
