/* Shared "calm and crisp" layer: refined easing, crisp type, steady touch, soft page-to-page cross-fade. Native CSS only. */
:root{--ease-out:cubic-bezier(.22,1,.36,1)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:88px}
body{font-kerning:normal;font-optical-sizing:auto}
h1,h2,h3{text-wrap:balance}
p,li,figcaption{text-wrap:pretty}
a,button,input,select,textarea,summary,[role=button],[role=tab]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
img,video,svg{max-width:100%}
img{height:auto}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.34s;animation-timing-function:var(--ease-out)}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}html{scroll-behavior:auto!important}}
