/* Scoped product-type controls; existing visuals and content remain in place. */
.nano-types { margin: 22px 0 26px; --nano-accent: #6da8d8; }
.nano-types__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.nano-types__tabs button { appearance: none; font: inherit; font-size: 12px; line-height: 1.4; color: #aeb8be; padding: 10px 15px; border: 1px solid rgba(174,184,190,.22); border-radius: 999px; background: rgba(7,11,13,.65); cursor: pointer; transition: color .25s, border-color .25s, background .25s, box-shadow .25s; }
.nano-types__tabs button[aria-selected="true"] { color: #e3e8eb; border-color: rgba(109,168,216,.7); background: rgba(91,143,181,.2); box-shadow: inset 0 0 18px rgba(109,168,216,.08); }
.nano-types__tabs button:hover { border-color: #6da8d8; color: #fff; }
.nano-types__tabs button:focus-visible, .nano-types__panel:focus-visible { outline: 2px solid #6da8d8; outline-offset: 4px; }
.nano-types__panel { animation: nano-description-in .38s ease both; }
.nano-types__panel[hidden] { display: none !important; }
.nano-types__panel p { font-size: clamp(14px,1.1vw,17px); line-height: 1.75; color: rgb(255 255 255); margin: 0; }
@keyframes nano-description-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.nano-particle-host { position: relative; }
.nano-molecules { position: absolute; inset: 0 0 auto; width: 100%; height: 100%; pointer-events: none; z-index: 0; opacity: .48; transition: opacity .5s ease; }
.nano-particle-host.nano-molecules-active > .nano-molecules { opacity: .68; }
.scene > .scene-copy { position: relative; z-index: 1; }
.product-detail-grid > div:not(.nano-hover-shade), .product-patents > div:not(.nano-hover-shade), .product-stats > article, .next-products > :not(canvas):not(.nano-hover-shade) { position: relative; z-index: 1; }
.product-explorer__detail > :not(.nano-molecules) { position: relative; z-index: 1; }
.product-explorer__detail > .product-detail__close { position: absolute; z-index: 4; }
@media(max-width:700px) { .nano-types__tabs button { font-size: 11px; padding: 9px 12px; } .nano-types__panel p { font-size: 14px; line-height: 1.65; } }
@media(prefers-reduced-motion:reduce) { .nano-types__panel { animation: none; } .nano-types__tabs button, .nano-molecules { transition: none; } }

/* Subtle hover shade, with headings, links and product controls kept above it. */
.nano-particle-host > .nano-hover-shade { max-width: none !important; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: #000; opacity: 0; transition: opacity .35s ease; }
.nano-molecules-active > .nano-hover-shade { opacity: .10; }
.nano-pillars__inner { position: relative; z-index: 1; }
.product-tile:hover .product-tile__media img { filter: saturate(.92) contrast(1.07) brightness(.76) !important; }
/* Product-detail visuals stay still; manual model camera controls remain available. */
.product-page .brand-mark img, .product-page .visual-orbit { animation: none !important; rotate: none !important; }
@media(prefers-reduced-motion:reduce) { .nano-hover-shade { transition: none; } }

/* Contact backgrounds share the molecular effect without occupying grid cells. */
.contact-main.nano-particle-host, .contact-footer.nano-particle-host { isolation: isolate; }
.contact-main.nano-particle-host > section, .contact-footer.nano-particle-host > img, .contact-footer.nano-particle-host > p { position: relative; z-index: 1; }
