/* Preserve the official logo silhouette and alpha while displaying it in white. */
.brand img{filter:brightness(0) invert(1)}
/* Decorative canvas stays behind the page and never intercepts interaction. */
body{isolation:isolate}
.ambient-scanner{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;contain:strict}
.ambient-scanner[hidden]{display:none}
body>main,body>footer{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.ambient-scanner{display:none}}
/* Interior pages start with the actual content, with a compact context row. */
.page-context{max-width:1230px;margin:0 auto;padding:9px 0 5px}.page-context .breadcrumbs{margin:0;min-height:24px;font-size:9px;gap:10px}.interior main>.page-context+.section{padding-top:18px}.interior main>.section:first-of-type{padding-top:18px}.interior h1{font-family:var(--display);font-size:46px;line-height:1.08;letter-spacing:0;text-transform:none;margin:0 0 24px;max-width:900px}.interior .section-heading h1{margin-bottom:0}.interior .clients h1{margin-bottom:30px}.interior .solutions{padding-top:18px}.contact-direct .contact-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:70px;align-items:start}.contact-direct form{padding:30px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#19191c,#111113)}.contact-info{padding-top:15px}.contact-info h2{font-size:38px;margin-bottom:22px}.contact-info>p:not(.eyebrow){color:#a4a4ae;font-size:13px}.contact-info .fine-print{border-top:1px solid var(--line);padding-top:20px;font-size:10px!important}.contact-direct form h3{font-size:20px}.solution-tabs{margin-top:18px;margin-bottom:0}
/* Keep navigation native: no intercepted clicks or artificial loading delays. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out 100ms ease-out both}
::view-transition-new(root){animation:page-in 180ms ease-out both}
@keyframes page-out{to{opacity:0}}
@keyframes page-in{from{opacity:.45}to{opacity:1}}
header{position:sticky!important;top:0;z-index:50;background:#080808ee;backdrop-filter:blur(12px);transition:box-shadow .2s ease}
header.scrolled{box-shadow:0 10px 35px #0006}
header .scroll-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#ac001d,#ff344b);transform:scaleX(0);transform-origin:left;pointer-events:none}
.button,.text-link,.text-link span,.solution-card,.detail-card,.service-grid article,.sector-grid article,.related-grid a,.brand-paths a,.client-grid>div,.manufacturer-details article{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,color .18s ease,background-color .18s ease}
.text-link:hover{color:#ff4c64}.text-link:hover span{transform:translate(3px,-3px)}
.button:active{transform:translateY(0) scale(.98)}
.detail-card:hover,.service-grid article:hover,.sector-grid article:hover,.related-grid a:hover,.brand-paths a:hover{border-color:#ff334b70;transform:translateY(-4px);box-shadow:0 15px 35px #0004}
.client-grid>div:hover{background:#ffffff04}.manufacturer-details article:hover{border-color:#ff334b55}
.nav-dropdown[open]>div{animation:menu-in .18s ease-out both}
@keyframes menu-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.reveal-pending{opacity:0;transform:translateY(14px)}
.reveal-visible{animation:content-in .42s cubic-bezier(.2,.7,.2,1) both}
@keyframes content-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1350px){.page-context{margin-left:6%;margin-right:6%}}
@media(max-width:1150px){header nav.open{animation:menu-in .18s ease-out both}}
@media(max-width:1000px){.contact-direct .contact-grid{gap:35px}.interior h1{font-size:42px}}
@media(max-width:650px){.page-context{padding-top:4px}.page-context .breadcrumbs{font-size:8px;gap:7px}.interior h1{font-size:35px;line-height:1.1;margin-bottom:22px}.interior main>.page-context+.section{padding-top:14px}.contact-direct .contact-grid{grid-template-columns:1fr;gap:25px}.contact-direct form{padding:22px 18px}.contact-info{padding-top:0}.contact-info h2{font-size:31px}.contact-direct form h3{font-size:18px}header{backdrop-filter:none;background:#080808f5}}
@media(hover:none){.detail-card:hover,.service-grid article:hover,.sector-grid article:hover,.related-grid a:hover,.brand-paths a:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-pending{opacity:1;transform:none}.reveal-visible,.nav-dropdown[open]>div,header nav.open{animation:none}::view-transition-old(root),::view-transition-new(root){animation:none}*,*:before,*:after{transition:none!important;animation:none!important}}
