/* Material-inspired spatial response; layout and typography stay in screen.css. */
:root {--dr-spatial:cubic-bezier(.2,1.1,.3,1);--dr-effects:cubic-bezier(.2,0,0,1);}
/* The guard is set in the head and expires after 1 second if JS fails. */
html.dr-cascade-boot :is(.brand,.header-actions>button,.home-intro__date,.home-intro__line,.home-intro__bubble,.article-header>*,.article-image,.article-ad,.gh-content>*,.article-byline,.podium-promo,.article-comments,.section-heading>*,.podium-heading>*,.feature-card,.story-card,.podium-card,.honour-card,.author-card,.archive-hero>*,.honours-title,.rail-progress,.newsletter>*,.site-footer__inner>*) {opacity:0;}
@keyframes dr-control-enter {0%{translate:0 12px;opacity:0;}45%{opacity:1;}80%{translate:0 -1px;}100%{translate:0 0;opacity:1;}}
@keyframes dr-surface-enter {0%{translate:0 20px;opacity:0;}40%{opacity:1;}80%{translate:0 -1px;}100%{translate:0 0;opacity:1;}}
.site-nav {translate:0 -10px;transition:translate 360ms var(--dr-spatial),opacity 160ms var(--dr-effects),visibility 0s linear 160ms;}
.site-nav.is-open {translate:0 0;transition-delay:0s;}
.site-nav.is-open li {animation:dr-control-enter 420ms var(--dr-effects) both;}
.site-nav.is-open li:nth-child(2) {animation-delay:45ms;}
.site-nav.is-open li:nth-child(3) {animation-delay:90ms;}
.site-nav.is-open li:nth-child(4) {animation-delay:135ms;}
.site-nav.is-open li:nth-child(n+5) {animation-delay:180ms;}
.site-nav li:focus-within {animation:none;}
.image-lightbox.is-open .image-lightbox__figure {animation:dr-surface-enter 480ms var(--dr-effects) both;}
.image-lightbox.is-open .image-lightbox__close {animation:dr-control-enter 400ms var(--dr-effects) 100ms both;}
@media (prefers-reduced-motion:reduce) {
  html.dr-cascade-boot :is(.brand,.header-actions>button,.home-intro__date,.home-intro__line,.home-intro__bubble,.article-header>*,.article-image,.article-ad,.gh-content>*,.article-byline,.podium-promo,.article-comments,.section-heading>*,.podium-heading>*,.feature-card,.story-card,.podium-card,.honour-card,.author-card,.archive-hero>*,.honours-title,.rail-progress,.newsletter>*,.site-footer__inner>*) {opacity:1;}
  *,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
  .site-nav {translate:none;}
}
@media print {
  html.dr-cascade-boot * {opacity:1!important;}
  *,*::before,*::after {animation:none!important;transition:none!important;}
}

/* Progress follows actual scroll position without an extra delayed tween.
   Only the track's emphasis changes, with no change to layout height. */
.rail-progress {transform-origin:center;transition:transform 360ms cubic-bezier(.2,0,0,1),border-radius 360ms cubic-bezier(.2,0,0,1);}
.rail-progress span {transition:border-radius 360ms cubic-bezier(.2,0,0,1);}
.rail-section.is-interacting .rail-progress {transform:scaleY(1.35);}
@media(prefers-reduced-motion:reduce){.rail-section.is-interacting .rail-progress {transform:none;}}
