/* Quiet hover feedback and a scroll-driven slash-to-drive morph. */
.card,.button,.language-button,.delivery-row,.product-photo img,.hero-photo img{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease,background .2s ease}
.product-photo{overflow:hidden}.product-photo img{transform-origin:50% 55%}
@media(hover:hover) and (pointer:fine){.card:hover{transform:translateY(-5px);box-shadow:0 18px 42px #0a284113;border-color:#9cbccc}.card:hover .product-photo img{transform:scale(1.025)}.button:hover{transform:translateY(-2px);box-shadow:0 6px 17px #07547a20}.language-button:hover{transform:scale(1.045)}.delivery-row:hover{transform:translateX(5px);background:#ffffff0d}.hero-photo:hover img{transform:scale(1.018)}}
.card:focus-within{border-color:#6ba3be;box-shadow:0 9px 25px #0a28410c}

/* One morphing slash, a real drive carrier, and a finite status-light sweep. */
.hardware-companion{position:fixed;z-index:8;right:max(9px,calc((100vw - 1400px)/2));top:44px;bottom:14vh;width:44px;pointer-events:none;color:var(--cyan,#00a5bd);opacity:.9;--dock-opacity:0}
.companion-drive{position:absolute;top:0;left:4px;width:36px;will-change:transform;transform-origin:center center;z-index:1}
.companion-drive svg,.companion-slot svg{display:block;width:100%;height:auto;overflow:visible}
.companion-morph,.companion-details{transition:color .2s}
.companion-led{opacity:.35}
.companion-slot{position:absolute;bottom:0;left:0;width:44px;opacity:var(--dock-opacity);z-index:0;color:#759ba8}
.tray-bed{fill:#e8f1f5;fill-opacity:.5;stroke:#a8bec7;stroke-width:1}
.tray-rail{stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.tray-contact{fill:#2b4656;stroke:#879da4;stroke-width:.7}
.tray-front{fill:#d9e6eb;stroke:currentColor;stroke-width:1}
.companion-trace,.companion-light{filter:drop-shadow(0 0 2px #00a5bd) drop-shadow(0 0 4px #00a5bd88)}
.companion-flash{filter:drop-shadow(0 0 3px #00a5bd) drop-shadow(0 0 6px #00a5bd66)}
.is-neutral .companion-morph,.is-neutral .companion-details{color:#7997a1}
@media(max-width:1350px){.hardware-companion{right:3px;width:28px}.companion-drive{width:24px;left:2px}.companion-slot{width:28px}}
@media(max-width:780px){.hardware-companion{right:2px;width:18px;opacity:.8}.companion-drive{width:16px;left:1px}.companion-slot{width:18px}}
@media(prefers-reduced-motion:reduce){.hardware-companion{display:none}.card,.button,.language-button,.delivery-row,.product-photo img,.hero-photo img{transition:none!important;transform:none!important}}
