/* Shared local proposal: motion never controls access to content. */
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#16dcef,#996aff,#ff299e);transform-origin:left;z-index:1000;pointer-events:none;box-shadow:0 0 12px #24d9ed70}
@media(prefers-reduced-motion:no-preference){
 .story-grid article,.service-details>*,.about-details>*,.product-support,.brief-box{transition:translate .3s,box-shadow .3s,border-color .3s}
 .story-grid article:hover,.service-details>*:hover,.about-details>*:hover,.product-support:hover,.brief-box:hover{translate:0 -4px;box-shadow:0 12px 30px #0bd2ed20}
 .spec-list li{transition:background .25s,padding-left .25s}.spec-list li:hover{background:#1cb5e012;padding-left:8px}
 footer a,.resources a,.related-links a{transition:color .25s,translate .25s}footer a:hover,.resources a:hover,.related-links a:hover{color:#61e9f7;translate:0 -2px}
 .step-icon{transition:rotate .3s,box-shadow .3s}.steps article:hover .step-icon{rotate:8deg;box-shadow:0 0 25px #1ecbea55}
 .share-product,.carousel-controls button{transition:scale .2s,box-shadow .2s}.share-product:hover,.carousel-controls button:not(:disabled):hover{scale:1.04;box-shadow:0 0 20px #20c6ed30}
 .search:focus-within{box-shadow:0 0 0 4px #23d6ef18,0 0 25px #23d6ef24}.search{transition:box-shadow .3s}
 .story-grid article.motion-enter{animation-name:card-arrive}.world-stats>div.motion-enter{animation-name:stat-arrive}
 .logo img,.corner-brand img{transition:filter .4s}.logo:hover img,.corner-brand:hover img{filter:drop-shadow(0 0 16px #29c9f075)}
}
@keyframes card-arrive{from{opacity:0;translate:0 32px;scale:.97}to{opacity:1;translate:0 0;scale:1}}
@keyframes stat-arrive{from{opacity:0;translate:0 16px;scale:.92}to{opacity:1;translate:0 0;scale:1}}
@media(hover:none){.story-grid article:hover,.service-details>*:hover,.about-details>*:hover,.product-support:hover,.brief-box:hover{translate:none}}
@media(prefers-reduced-motion:no-preference){
 html{scroll-behavior:smooth}
 .motion-enter{animation:site-arrive .8s cubic-bezier(.2,.65,.3,1) both;animation-delay:var(--motion-delay,0ms)}
 .motion-gallery{animation:gallery-arrive .8s ease-out both}
 header nav a{position:relative}
 header nav a::after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#21d9ef,#ff32a5);transform:scaleX(0);transform-origin:left;transition:transform .25s}
 header nav a:hover::after,header nav a:focus-visible::after{transform:scaleX(1)}
 .pink,.category-tabs a,.filters a,.gallery-thumbs button{transition:translate .22s,box-shadow .22s,background-color .22s}
 .pink:hover,.pink:focus-visible{translate:0 -3px;box-shadow:0 8px 28px #f4269c50}
 .pink:active{translate:0 0}
 .category-tabs a:hover,.filters a:hover{translate:0 -2px;box-shadow:0 5px 18px #16c6e928}
 .product,.space-card{transition:transform .3s,border-color .3s,box-shadow .3s}
 .product:hover,.space-card:hover{transform:translateY(-6px);box-shadow:0 14px 32px #04b8ea25;border-color:#45dcef}
 .card-photo,.product-image{transition:box-shadow .35s}
 .space-card:hover .card-photo,.product:hover .product-image{box-shadow:0 0 22px #23bff54d}
 .gallery-thumbs button:hover{translate:0 -3px}
 .gallery-stage{transition:box-shadow .35s}.gallery-stage:hover{box-shadow:0 0 0 1px #076ba5,0 15px 44px #00aaff40}
 .faq-list details[open]>p,details[open]>.answer{animation:answer-arrive .35s ease-out}
 input,textarea{transition:box-shadow .2s,border-color .2s}input:focus,textarea:focus{box-shadow:0 0 0 4px #24ccef20}
 .language-options:not([hidden]){animation:answer-arrive .2s ease-out}
 .world-stats>div{transition:translate .3s}.world-stats>div:hover{translate:0 -4px}
 .about-home>img{transition:filter .5s}.about-home>img:hover{filter:brightness(1.08)}
}
@keyframes site-arrive{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}
@keyframes gallery-arrive{from{opacity:.5;scale:.98}to{opacity:1;scale:1}}
@keyframes answer-arrive{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
@media(hover:none){.product:hover,.space-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-enter,.motion-gallery{animation:none!important}}
