/* A small, static signature of three layers. No scroll-triggered or continuous effects. */
.layer-detail{display:block;width:112px;height:84px;flex:none;overflow:visible;pointer-events:none}
.layer-detail path{stroke-width:1.2;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.layer-detail .layer-earth{fill:#eee5d8;stroke:var(--earth)}
.layer-detail .layer-olive{fill:#e0e8d1;stroke:var(--olive)}
.layer-detail .layer-char{fill:#2b3329;stroke:#2b3329}
.page-heading-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.page-heading-bar .breadcrumbs{margin-bottom:0}
.page-heading-bar .layer-detail{width:86px;height:64px}
.home-library-title-group{display:flex;align-items:center;gap:22px}
.home-library-title-group .layer-detail{width:96px;height:72px}
.home-library-title-group h2{min-width:0}

/* Colour changes remain quiet; keyboard focus has the same clear destination cue. */
:is(.text-link,.team-email,.footer-contact,.button,.site-header a,.footer-directory a,.home-pathways summary,.association-details summary,.fee-controls button,.source-controls button){transition:color 160ms ease,background-color 160ms ease,border-color 160ms ease,text-decoration-color 160ms ease}
:is(.text-link,.team-email,.footer-contact,.button)>span[aria-hidden="true"],.home-lesson-open>span{display:inline-block;flex:none;transition:transform 180ms ease}
:is(.text-link,.team-email,.footer-contact,.button):focus-visible>span[aria-hidden="true"],.home-lesson:focus-visible .home-lesson-open>span{transform:translate(2px,-2px)}
.home-lesson-picture{transition:background-color 180ms ease}
.home-lesson:focus-visible .home-lesson-picture{background:#fffefa}
.home-lesson:focus-visible h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.home-pathways summary:focus-visible,.association-details summary:focus-visible{color:var(--green)}
.home-pathway-toggle:after{transition:transform 180ms ease,opacity 180ms ease}
.home-pathways details[open] .home-pathway-toggle:after{display:block;transform:rotate(0);opacity:0}
.association-details .disclosure{transition:transform 180ms ease}
@media(hover:hover) and (pointer:fine){
 :is(.text-link,.team-email,.footer-contact,.button):hover>span[aria-hidden="true"],.home-lesson:hover .home-lesson-open>span{transform:translate(2px,-2px)}
 .home-lesson:hover .home-lesson-picture{background:#fffefa}
}

/* Progressive enhancement: browsers without intrinsic-size interpolation keep native details. */
@supports (interpolate-size:allow-keywords) and selector(details::details-content){
 :is(.home-pathways,.association-details) details::details-content{
  interpolate-size:allow-keywords;height:0;overflow:clip;opacity:0;
  transition:height 240ms cubic-bezier(.2,.65,.3,1),opacity 160ms ease,content-visibility 240ms allow-discrete;
 }
 :is(.home-pathways,.association-details) details[open]::details-content{height:auto;opacity:1}
}
@media(max-width:700px){
 .page-heading-bar{gap:18px;margin-bottom:23px}
 .page-heading-bar .layer-detail{width:62px;height:46px}
 .home-library-title-group{gap:16px}
 .home-library-title-group .layer-detail{width:64px;height:48px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{transition:none!important;animation:none!important}
 :is(.home-pathways,.association-details) details::details-content{transition:none!important}
 :is(.text-link,.team-email,.footer-contact,.button)>span[aria-hidden="true"],.home-lesson-open>span{transform:none!important}
}
@media print{.layer-detail{display:none}}
