/* Small feedback for daily actions; one-time entrances for the showcase. */
:root{--ease-out:cubic-bezier(.23,1,.32,1);--motion-feedback:160ms;--motion-panel:220ms}
.footer-bottom{flex-wrap:wrap;align-items:center;row-gap:14px}
.site-footer .footer-legal{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center}
.footer-legal a{line-height:1.8;overflow-wrap:anywhere}
.footer-legal a:hover{text-decoration:underline;text-underline-offset:4px}
.button,.icon-button{transition:transform var(--motion-feedback) var(--ease-out)}
.button:active:not(:disabled),.icon-button:active:not(:disabled){transform:scale(.97)}
.video-cover img,.content-card-cover img,.circle-picture img,.feature-story>img{transition:transform 250ms var(--ease-out)}
.hero-links .icon,.story-link .icon,.section-heading>a .icon{transition:transform var(--motion-feedback) var(--ease-out)}
/* Override the old touch hover transforms; only real pointing devices zoom. */
.video-cover:hover img,.feature-story:hover>img{transform:none}
@media(hover:hover) and (pointer:fine){
 .video-cover:hover img,.content-card-cover:hover img,.feature-story:hover>img{transform:scale(1.035)}
 .hero-links a:hover .icon,.feature-story:hover .story-link .icon,.section-heading>a:hover .icon{transform:translateX(3px)}
}
.header-search{position:absolute;top:100%;left:0;right:0;width:100%;background:var(--surface);border:1px solid var(--line);transform-origin:top center}
@media(max-width:760px){
 #main-nav{transform-origin:top right}
 .site-footer .footer-bottom{align-items:flex-start;font-size:12px}
 .site-footer .footer-legal{flex-direction:column;align-items:flex-start;gap:8px}
}
@media(prefers-reduced-motion:reduce){
 .button:active:not(:disabled),.icon-button:active:not(:disabled),.video-cover:hover img,.feature-story:hover>img,.content-card-cover:hover img,.hero-links a:hover .icon,.feature-story:hover .story-link .icon,.section-heading>a:hover .icon{transform:none}
}
