/* Adapted from workwellness: quiet entrances, staggered cards and directional feedback. */
.ui-icon{display:inline-block;width:18px;height:18px;flex:0 0 18px;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.menu .ui-icon{margin-left:7px}.close .ui-icon{width:22px;height:22px}.nav-programs summary .ui-icon{width:14px;height:14px;vertical-align:-2px}.nav-programs[open] summary .ui-icon{transform:rotate(180deg)}
.hero-copy{animation:none}.motion-item{opacity:1;translate:0 12px;transition:opacity .55s ease,translate .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--motion-delay,0ms)}
.motion-item[data-motion=photo]{translate:0 6px;transition-duration:.75s}.motion-item[data-motion=card]{translate:0 16px}.motion-item.is-visible,.motion-item:focus-within{opacity:1;translate:0 0}
.motion-highlight{background-image:linear-gradient(transparent 86%,#94c7e450 86%);background-size:0% 100%;background-repeat:no-repeat;transition:background-size .8s cubic-bezier(.22,1,.36,1)}.is-visible .motion-highlight{background-size:100% 100%}
.editorial figure,.about-gallery figure,.detail-hero figure{overflow:hidden}.detail-hero figure{border-radius:4px 50px 4px 4px}
.editorial figure img,.about-gallery img,.detail-hero figure img,.space-main img{transition:transform .7s cubic-bezier(.22,1,.36,1)}
.cards article,.comparison article,.feature-grid article,.audience-grid article,.needs-grid>a{transition:box-shadow .3s ease,border-color .3s ease,opacity .55s ease,translate .65s cubic-bezier(.22,1,.36,1);transition-delay:0s,0s,var(--motion-delay,0ms),var(--motion-delay,0ms)}
.card-body>a,.text-link{gap:10px}.card-body>a .ui-icon{margin-left:auto}.detail-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.detail-faq summary::-webkit-details-marker{display:none}.detail-faq summary::after{content:'';width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex-shrink:0;transition:transform .25s}.detail-faq details[open] summary::after{transform:rotate(225deg)}
@media(hover:hover) and (pointer:fine){.editorial figure:hover img,.about-gallery figure:hover img,.detail-hero figure:hover img,.space-main:hover img{transform:scale(1.025)}.btn:hover .ui-icon,.text-link:hover .ui-icon,.card-body>a:hover .ui-icon,.education:hover .ui-icon{transform:translateX(3px)}.cards article:hover,.comparison article:hover,.feature-grid article:hover,.audience-grid article:hover{box-shadow:0 18px 32px -22px #02437c65;border-color:#9bbdd3}}
@media(max-width:760px){.motion-item,.motion-item[data-motion=card],.motion-item[data-motion=photo]{translate:0 8px;transition-duration:.4s,.5s}.motion-item.is-visible,.motion-item:focus-within{translate:0 0}.detail-hero figure{border-radius:4px 35px 4px 4px}}
@media(prefers-reduced-motion:reduce){.motion-item,.motion-item[data-motion]{opacity:1;translate:none;transition:none}.motion-highlight{background-size:100% 100%;transition:none}html{scroll-behavior:auto!important}.ui-icon,main img{transition:none!important;transform:none!important}}
@media print{.motion-item,.motion-item[data-motion]{opacity:1;translate:none}}

/* Final responsive review: retain contrast and align directional cues. */
@media(hover:hover) and (pointer:fine){.btn:hover .ui-icon-down{transform:translateY(3px)}}
@media(max-width:760px){.news-grid{grid-template-columns:1fr}.nav-programs>summary{min-height:48px}.menu{min-height:44px;display:inline-flex;align-items:center}.mobile-fixed a{min-height:54px;display:flex;align-items:center;justify-content:center;gap:8px}.btn .ui-icon{flex-shrink:0}}
@media(min-width:761px){.menu{display:none}}
