/* Progressive motion layer: native navigation continuity and functional feedback. */
@view-transition{navigation:auto}

.site-header{view-transition-name:site-header}
main{view-transition-name:page-content}
.scroll-progress{view-transition-name:none}

::view-transition-old(page-content){animation:iv-page-out .22s ease both}
::view-transition-new(page-content){animation:iv-page-in .42s cubic-bezier(.2,.72,.2,1) both}
::view-transition-old(site-header),::view-transition-new(site-header){animation:none}
@keyframes iv-page-out{to{opacity:0;transform:translateY(-5px)}}
@keyframes iv-page-in{from{opacity:0;transform:translateY(9px)}}

.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:2px;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#8ab89d,#d5ad61);box-shadow:0 0 14px rgba(213,173,97,.35);will-change:transform}

.desktop-nav a{position:relative}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-.72rem;height:1px;transform:scaleX(0);transform-origin:right;background:var(--gold);transition:transform .28s cubic-bezier(.2,.72,.2,1)}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after,.desktop-nav a.active::after{transform:scaleX(1);transform-origin:left}

:where(.header-control,.start-primary,.start-secondary,.button,.light-button,.destination-cta){transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
:where(.header-control,.start-primary,.start-secondary,.button,.light-button,.destination-cta):hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.2)}
:where(.header-control,.start-primary,.start-secondary,.button,.light-button,.destination-cta):active{transform:translateY(0) scale(.985)}

.motion-reveal{opacity:1;transform:none}
.motion-enabled .motion-reveal{opacity:0;transform:translateY(18px);transition:opacity .58s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.72,.2,1) var(--reveal-delay,0ms)}
.motion-enabled .motion-reveal.is-visible{opacity:1;transform:none}

:where(.knowledge-routes,.editorial-list,.question-ledger,.book-catalog,.topic-image-grid,.start-roadmap) a:focus-visible{position:relative;z-index:2}
:where(.knowledge-routes,.editorial-list,.question-ledger,.book-catalog,.topic-image-grid,.start-roadmap) a b{transition:transform .2s ease,color .2s ease}
:where(.knowledge-routes,.editorial-list,.question-ledger,.book-catalog,.topic-image-grid,.start-roadmap) a:hover b{transform:translateX(4px);color:#e0ba70}

@media(prefers-reduced-motion:reduce){
    @view-transition{navigation:none}
    ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
    .scroll-progress{display:none}
    .motion-reveal,.motion-enabled .motion-reveal{opacity:1!important;transform:none!important;transition:none!important}
    *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
