/* Ivory motion language: a clear entrance, responsive controls, steady reading. */
.hero-copy {animation:none;}
.home-hero .home-light-layout {overflow:hidden;}
.photo-masthead .page-photo-backdrop img,.home-hero .hero-art {transform-origin:right center;}
.site-atmosphere,.hero-atmosphere {display:none;}
.site-header {transition:box-shadow .3s ease,background-color .3s ease;}
.site-header.is-scrolled {background:#fffdf8fa;box-shadow:0 5px 24px #203b3214;}
.site-header::after {content:"";position:absolute;left:0;bottom:-1px;width:100%;height:3px;background:#4a7564;transform:scaleX(var(--reading-progress,0));transform-origin:left;transition:transform .16s linear;pointer-events:none;}

/* Highlight stays inside the hovered surface; no custom cursor or trails. */
.has-pointer-glow {position:relative;isolation:isolate;transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s,border-color .25s,background-color .25s,color .2s;}
.has-pointer-glow > .interaction-glow {display:block;position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(280px circle at var(--pointer-x,50%) var(--pointer-y,50%),#598c6c38,#7b9c7010 62%,transparent 85%);transition:opacity .32s;}
.has-pointer-glow.is-pointer-active > .interaction-glow,.has-pointer-glow:focus-visible > .interaction-glow {opacity:1;}
.button.primary > .interaction-glow {background:radial-gradient(180px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ffffff40,#ffffff08 70%,transparent);}
.has-pointer-glow .arrow-icon,.has-pointer-glow .secondary-arrow {transition:transform .35s cubic-bezier(.2,.75,.2,1);}
.has-pointer-glow:is(:hover,:focus-visible) :is(.arrow-icon,.secondary-arrow) {transform:translateX(9px);}
.text-link {background-image:linear-gradient(var(--gold),var(--gold));background-position:left bottom;background-repeat:no-repeat;background-size:0 2px;transition:background-size .4s,border-color .25s,color .2s;}
.text-link:is(:hover,:focus-visible) {background-size:100% 2px;border-color:transparent;}
@media(hover:hover) and (pointer:fine) {
 .button.has-pointer-glow:hover {transform:translateY(-4px);box-shadow:0 10px 22px #254d4326;}
 :is(.resource-tile,.feature-card,.external-link-card,.featured-insight,.about-focus-card).has-pointer-glow:hover {transform:translateY(-5px);box-shadow:0 12px 24px #254d4314;border-color:#668574;}
 :is(.service-row,.notice-item,.notice-preview a,.inv-source-list>a,.ed-topic,.ed-related-links>a).has-pointer-glow:hover {transform:translateX(7px);background-color:#e6ede2;}
 .footer-nav-group a {transition:transform .25s,color .2s;}
 .footer-nav-group a:hover {transform:translateX(5px);}
}
.button.has-pointer-glow:active {transform:translateY(0) scale(.98);box-shadow:0 2px 5px #254d4320;transition-duration:.12s;}
.nav-menu {transition:opacity .24s ease,transform .3s cubic-bezier(.2,.75,.2,1);}
.js-enabled .nav-menu {pointer-events:none;}
.js-enabled .nav-item.is-open > .nav-menu {pointer-events:auto;}
.nav-item.is-open .nav-menu>a {animation:nav-link-enter .36s both;}
.nav-item.is-open .nav-menu>a:nth-child(2) {animation-delay:45ms;}
.nav-item.is-open .nav-menu>a:nth-child(3) {animation-delay:90ms;}
.nav-item.is-open .nav-menu>a:nth-child(4) {animation-delay:135ms;}
@keyframes nav-link-enter {from{opacity:0;transform:translateY(-7px);}to{opacity:1;transform:none;}}
.js-enabled .svc-option[open] .svc-option-body {animation:none;}
main summary {transition:background-color .3s;}
main summary:hover {background-color:#e6ede2;}
main details.is-disclosure-moving {will-change:height;}

/* The same switch governs native CSS feedback and scripted motion. */
.motion-is-still {scroll-behavior:auto;}
.motion-paused *,.motion-paused *::before,.motion-paused *::after,
.motion-suspended *,.motion-suspended *::before,.motion-suspended *::after {animation:none !important;transition:none !important;}
:is(.motion-paused,.motion-suspended) .has-pointer-glow,
:is(.motion-paused,.motion-suspended) .has-pointer-glow :is(.arrow-icon,.secondary-arrow),
:is(.motion-paused,.motion-suspended) .footer-nav-group a {transform:none !important;}
:is(.motion-paused,.motion-suspended) .interaction-glow {opacity:0;}
.motion-toggle::before {content:"";width:9px;height:12px;border-inline:2px solid currentColor;}
.motion-toggle[aria-pressed="true"]::before {width:0;height:0;border:6px solid transparent;border-left:9px solid currentColor;border-right:0;}
.motion-toggle:disabled::before {width:10px;height:10px;border:1px solid currentColor;border-radius:50%;}
html:not(.js-enabled) .site-header {position:relative;}
html:not(.js-enabled) .menu-toggle,html:not(.js-enabled) .submenu-toggle {display:none;}
@media(prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto !important;}
 *,*::before,*::after {animation:none !important;transition:none !important;}
 .has-pointer-glow,.has-pointer-glow :is(.arrow-icon,.secondary-arrow),.footer-nav-group a {transform:none !important;}
 .interaction-glow {display:none !important;}
}
html:not(.js-enabled) .footer-display-settings {display:none;}
