.inner-hero,.article{padding:clamp(9rem,16vw,13rem) clamp(1rem,8vw,9rem) clamp(3rem,7vw,6rem);background:#112638}.inner-hero{min-height:48svh}.inner-hero>p:first-child,.article>p:first-child{margin:0 0 .75rem;color:#ff6337;font-size:.75rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.inner-hero h1,.article h1{max-width:14ch;margin:0;font-size:clamp(3rem,7vw,6rem);line-height:.9;letter-spacing:-.06em}.inner-hero h1+p,.article .lead{max-width:62ch;font-size:1.15rem}.content-grid,.catalog-grid,.field-grid,.faq-list{display:grid;gap:1rem;padding:clamp(3rem,7vw,7rem) clamp(1rem,8vw,9rem);background:#edf4f7;color:#091017;color-scheme:light}.content-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.content-grid article,.catalog-card{padding:1.4rem;border:1px solid #acc2cf;background:#fff}.content-grid h2,.catalog-card h2{margin-top:0}.content-grid a,.catalog-card a,.article a{font-weight:850}.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.catalog-card img{display:block;width:100%;height:170px;object-fit:contain;margin:1rem 0;background:#e7f0f4}.missing-visual{display:grid;height:170px;place-items:center;margin:1rem 0;background:#e7f0f4;color:#345c78;font-weight:850}.field-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));background:#102d45;color:#f4f7f8}.field-grid figure{margin:0;background:#071017}.field-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.field-grid figcaption{padding:.75rem 1rem;font-weight:850}.disclaimer{margin:0;padding:0 clamp(1rem,8vw,9rem) 4rem;background:#102d45;color:#bdcad4}.article{min-height:70svh}.article p{max-width:68ch}.faq-list details{padding:1rem;border-bottom:1px solid #acc2cf}.faq-list summary{cursor:pointer;font-weight:850}.site-footer{display:flex;justify-content:space-between;gap:1rem;padding:2rem clamp(1rem,4vw,4.5rem);background:#071017;color:#bdcad4}.site-footer nav{display:flex;gap:1rem}
[hidden]{display:none!important}
.empty-family{padding:clamp(3rem,7vw,7rem) clamp(1rem,8vw,9rem);background:#edf4f7;color:#091017}.empty-family p{max-width:58ch}.empty-family a{display:inline-grid;min-height:48px;place-items:center;padding:0 1rem;background:#163f63;color:#fff;font-weight:850;text-decoration:none}
.family-rail button:disabled{cursor:not-allowed;opacity:.52}

@font-face{font-family:RouteArabic;src:url(noto-sans-arabic.woff2) format("woff2");font-display:swap;font-weight:400 800}
.language-switch{display:flex;gap:.4rem;align-items:center;font-size:.73rem;font-weight:800}.language-switch a{text-decoration:none}.menu-toggle,.mobile-menu,.mobile-contact,.hero-mobile-nav{display:none}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.route-cta-secondary{background:transparent;border:1px solid var(--paper);color:var(--paper)}.home-about,.home-news{position:relative;padding:clamp(4rem,8vw,8rem) clamp(1rem,8vw,9rem);background:#102d45}.home-about h2,.home-news h2{max-width:13ch;margin:2rem 0;font-size:clamp(2.5rem,5vw,5rem);line-height:.9;letter-spacing:-.055em}.home-about p{max-width:70ch}.home-news{background:#edf4f7;color:#091017}.home-news>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#acc2cf}.home-news article{padding:1.5rem;background:#fff}.home-news h3{font-size:1.45rem;line-height:1.05}.home-news a{font-weight:850}.arabic-intro{padding:clamp(3rem,7vw,7rem) clamp(1rem,8vw,9rem);background:#102d45;font-family:RouteArabic,Route,sans-serif}.arabic-intro h2{max-width:20ch;font-size:clamp(2rem,4vw,4rem);line-height:1.1}.arabic-intro p{max-width:68ch;font-size:1.05rem;line-height:2.05}[dir="rtl"] body,[dir="rtl"] input,[dir="rtl"] textarea,[dir="rtl"] button,[dir="rtl"] select{font-family:RouteArabic,Route,sans-serif}[dir="rtl"] .route-head nav{margin-left:0;margin-right:auto}[dir="rtl"] .media-wash{background:linear-gradient(270deg,#071017f3 3%,#071017a5 46%,#07101720 78%),linear-gradient(0deg,#091017 0%,transparent 46%)}[dir="rtl"] .route-line i{margin-inline-start:auto}[dir="rtl"] .client-references li{border-right:0;border-left:1px solid #35546c}
@media(max-width:800px){.route-head{gap:.5rem}.route-head>nav,.route-head>.language-switch,.route-head>.head-action{display:none}.menu-toggle{display:grid;place-items:center;min-width:48px;min-height:48px;margin-left:auto;border:1px solid var(--line);background:#091017;color:var(--paper);font:800 .75rem Route,sans-serif}.mobile-menu{position:fixed;inset:0;overflow-y:auto;overscroll-behavior:contain;background:#071017f7;padding:1rem 1rem 2rem;z-index:50}.mobile-menu[hidden]{display:none}.mobile-menu nav{display:grid!important;gap:.5rem;margin-top:4rem}.mobile-menu nav a{display:flex!important;align-items:center;min-height:48px;padding:0 1rem;border-bottom:1px solid var(--line);font-size:1.25rem}.mobile-menu button{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);background:transparent;color:var(--paper);font-size:2rem}.mobile-contact{position:fixed;z-index:19;right:1rem;bottom:1rem;display:grid;place-items:center;min-width:48px;min-height:48px;padding:0 .9rem;background:var(--orange);color:var(--graphite);font-size:.78rem;font-weight:850;text-decoration:none;box-shadow:0 10px 25px #0008}.home-news>div{grid-template-columns:1fr}.hero-actions .route-cta{flex:1;justify-content:center}.client-reference-list{grid-template-columns:1fr}.arabic-intro p{font-size:1rem;line-height:2}.site-footer{padding-bottom:5rem}[dir="rtl"] .menu-toggle{margin-left:0;margin-right:auto}[dir="rtl"] .mobile-menu button{right:auto;left:1rem}}
.mobile-menu:not([hidden]){display:block}
.sector-explorer{position:relative;padding:clamp(4rem,8vw,8rem) clamp(1rem,8vw,9rem);background:#112638}.sector-explorer header{max-width:68ch}.sector-explorer h2{max-width:14ch;font-size:clamp(2.4rem,5vw,5rem);line-height:.92;letter-spacing:-.05em}.sector-rail{display:flex;gap:1px;margin-top:2.5rem;overflow:auto;background:#35546c;scroll-snap-type:x mandatory}.sector-rail article{flex:0 0 min(28rem,78vw);min-height:300px;padding:1.5rem;background:#0b1924;scroll-snap-align:start}.sector-rail h3{margin:0;font-size:1.5rem}.sector-rail article>p:nth-of-type(1){color:#ff6337;font-weight:850}.sector-rail a{font-weight:850}.sector-explorer::after,.equipment-route::after,.home-about::after,.home-news::after{content:"";position:absolute;right:8vw;bottom:0;width:min(22rem,28vw);height:3px;background:linear-gradient(90deg,var(--orange),transparent)}.equipment-route::after{background:linear-gradient(90deg,#163f63,transparent)}.home-about::after{background:linear-gradient(90deg,#9ab4c5,transparent)}.home-news::after{background:linear-gradient(90deg,#163f63,transparent)}.route-reveal{transition:opacity .6s ease,transform .7s cubic-bezier(.16,1,.3,1)}.route-reveal:not(.is-visible){opacity:.35;transform:translateY(34px)}.route-reveal.is-visible{opacity:1;transform:translateY(0)}@media(max-width:800px){.sector-rail article{min-height:280px}.route-reveal:not(.is-visible){opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.route-reveal{transition:none;transform:none!important;opacity:1!important}}

.section-link{display:inline-flex;align-items:center;min-height:48px;margin-top:1.25rem;border-bottom:1px solid currentColor;font-weight:850;text-decoration:none}
.reference-band{display:grid;grid-template-columns:minmax(13rem,.35fr) minmax(0,1.65fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-height:196px;padding:2rem clamp(1rem,8vw,9rem);background:linear-gradient(180deg,#112638 0,#071017 30%);color:#f4f7f8;border-top:1px solid #35546c;border-bottom:1px solid #35546c}.reference-band header p{margin:.2rem 0;color:#9fb3c1;font-size:.73rem}.reference-band header>p:first-child{color:#ff6337;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.reference-band h2{max-width:15ch;margin:.35rem 0;font-size:clamp(1.4rem,2vw,2rem);line-height:1}.reference-window{min-width:0;overflow:hidden}.reference-window:focus-visible{outline:3px solid #ff6337;outline-offset:6px}.reference-list{display:flex;flex-wrap:wrap;gap:.9rem 1.75rem;margin:0;padding:0;list-style:none}.reference-list li{position:relative;display:flex;align-items:center;flex:0 1 calc((100% - 8.75rem)/6);min-width:8.5rem;min-height:44px;padding-left:1rem;font-size:clamp(.8rem,1vw,.96rem);font-weight:850;line-height:1.2}.reference-list li::before{content:"";position:absolute;left:0;width:5px;height:5px;border-radius:50%;background:#ff6337}.reference-hint{display:none}
@media(max-width:800px){.reference-band{display:block;min-height:0;max-height:176px;padding:1rem;overflow:hidden;background:linear-gradient(180deg,#112638 0,#071017 42%)}.reference-band header{display:grid;grid-template-columns:1fr auto;align-items:end;gap:.1rem 1rem}.reference-band header>p:first-child{grid-column:1/-1}.reference-band header>p:last-child{display:none}.reference-band h2{margin:.1rem 0 .55rem;font-size:1.1rem;white-space:nowrap}.reference-window{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.reference-window::-webkit-scrollbar{display:none}.reference-list{flex-wrap:nowrap;gap:.75rem;width:max-content}.reference-list li{flex:0 0 74vw;min-height:48px;padding-inline-start:1rem;border-top:1px solid #35546c;border-bottom:1px solid #35546c;scroll-snap-align:start}.reference-list li::before{left:auto;inset-inline-start:0}.reference-hint{display:flex;justify-content:flex-end;gap:.5rem;margin:.3rem 0 0;color:#9fb3c1;font-size:.68rem;font-weight:800}.reference-hint span{color:#ff6337}}
.service-hero h1{max-width:17ch}
.service-ledger{padding:clamp(3rem,7vw,7rem) clamp(1rem,8vw,9rem);background:#edf4f7;color:#091017;color-scheme:light}
.service-ledger article{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(220px,.7fr) minmax(280px,1.1fr);gap:clamp(1.5rem,5vw,5rem);padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid #9db3c0}
.service-ledger article:last-child{border-bottom:1px solid #9db3c0}
.service-ledger h2{max-width:15ch;margin:0;font-size:clamp(1.8rem,3vw,3.4rem);line-height:.94;letter-spacing:-.045em}
.service-ledger p{margin:0;color:#34505f}
.service-ledger h2+p{color:#091017;font-weight:800}
.service-stock{display:grid;grid-template-columns:1.35fr auto;align-items:end;gap:2rem;padding:clamp(4rem,8vw,8rem) clamp(1rem,8vw,9rem);background:#102d45;color:#f4f7f8}
.service-stock h2{max-width:13ch;margin:0;font-size:clamp(2.5rem,5vw,5rem);line-height:.9;letter-spacing:-.055em}
.service-stock p{max-width:58ch;color:#bdcad4}
.service-stock a{display:inline-grid;min-height:52px;place-items:center;padding:0 1.25rem;background:#ff6337;color:#091017;font-weight:850;text-decoration:none}

@media(max-width:800px){
  .client-references{grid-template-columns:1fr;gap:2.5rem}
  .client-references>div{position:static}
  .client-reference-list{grid-template-columns:1fr}
  .client-references li,.client-references li.client-reference-wide{grid-column:auto;min-height:64px;padding-inline:0;border-right:0}
  .client-references>a{grid-column:1}
  .service-ledger article{grid-template-columns:1fr;gap:.9rem}
  .service-stock{grid-template-columns:1fr;align-items:start}
  .service-stock a{justify-self:start}
}

@media(max-width:800px){.film-hero .hero-mobile-nav{display:grid}}

/* Evidence-backed landing flow: every homepage region is complete in place. */
.sector-rail{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1px;overflow:visible;background:#35546c;scroll-snap-type:none}
.sector-rail article{min-width:0;min-height:260px;scroll-snap-align:none}
.sector-rail article:nth-child(1),.sector-rail article:nth-child(2){grid-column:span 6}
.sector-rail article:nth-child(n+3){grid-column:span 4}
.reference-window{min-width:0;overflow:visible}
.reference-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.7rem 1.2rem}
.reference-list li{min-width:0;padding-inline-start:1rem}
@media(min-width:801px){.film-hero .hero-controls{overflow:visible}}
.equipment-route .family-rail{display:grid;overflow:visible}
.equipment-route .product-rail{overflow-x:hidden;overflow-y:auto}
.command-route .stage-nav{display:grid;overflow:visible}
.field-reel .reel-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
.field-reel .reel-track figure{min-width:0;max-width:none}

@media(max-width:800px){
  html:not([data-enhanced]) .route-head{position:relative;height:auto;min-height:68px;flex-wrap:wrap;padding-block:.65rem;background:#071017}
  html:not([data-enhanced]) .route-head>nav{display:flex!important;order:4;width:100%;gap:.3rem;flex-wrap:wrap;margin:0}
  html:not([data-enhanced]) .route-head>nav a{flex:1 1 calc(33.333% - .3rem);min-width:6rem;padding:.3rem;border:1px solid #35546c}
  html:not([data-enhanced]) .route-head>.language-switch{display:flex}
  html:not([data-enhanced]) .route-head>.head-action{display:grid}
  html:not([data-enhanced]) .menu-toggle{display:none}
  .sector-rail{grid-template-columns:1fr}
  .sector-rail article,.sector-rail article:nth-child(n){grid-column:1;min-height:0}
  .reference-band{max-height:none;padding:1rem}
  .reference-band header{display:block}
  .reference-band header>p:last-child{display:none}
  .reference-band h2{white-space:normal}
  .reference-window{overflow:visible}
  .reference-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem .6rem;width:auto}
  .reference-list li{min-height:38px;padding-inline-start:.65rem;border:0;font-size:.72rem;overflow-wrap:anywhere}
  .reference-list li:nth-last-child(-n+2){grid-column:span 3;min-height:34px}
  .reference-hint{display:none}
  .equipment-route .family-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:visible}
  .equipment-route .family-rail button{min-width:0;width:auto;min-height:52px;padding:.45rem;font-size:.68rem}
  .equipment-route .product-rail{display:block;max-height:340px;overflow-x:hidden;overflow-y:auto;border:1px solid #c3d3dd}
  .equipment-route .product-rail button{width:100%;min-height:58px;border:0;border-bottom:1px solid #c3d3dd}
  .command-route .stage-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .command-route .stage-nav button{min-width:0;min-height:54px;padding:.4rem;text-align:center}
  .field-reel .reel-track{display:grid;grid-template-columns:1fr;overflow:visible;margin:0;padding:0}
  .field-reel .reel-track figure{width:100%;min-width:0}
}

/* One continuous sector → family → product route. No carousel or overflow affordance. */
.guided-finder{position:relative;overflow-x:clip;scroll-margin-top:5.5rem;padding:clamp(4.5rem,9vw,9rem) clamp(1rem,8vw,9rem);background:#112638;color:#f4f7f8}
.guided-finder header{max-width:58rem}.guided-finder h2{max-width:13ch;margin:0;font-size:clamp(2.55rem,5.5vw,5.8rem);line-height:.88;letter-spacing:-.065em}.guided-finder header p{max-width:60ch;margin:1.25rem 0 0;color:#bdcad4}
.finder-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin:2.5rem 0 1rem;color:#9fb3c1;font-size:.76rem;font-weight:800}.finder-breadcrumb button{min-height:44px;border:0;border-bottom:1px solid transparent;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.finder-breadcrumb button:not(:disabled):hover{color:#fff;border-color:var(--orange)}.finder-breadcrumb button:disabled{opacity:.42;cursor:not-allowed}
.finder-sector-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:#35546c}.finder-sector-grid button{display:grid;align-content:space-between;gap:2rem;min-width:0;min-height:160px;border:0;padding:1.25rem;background:#0b1924;color:#f4f7f8;font:inherit;text-align:left;cursor:pointer;transition:background .32s cubic-bezier(.16,1,.3,1),color .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1)}.finder-sector-grid strong{font-size:clamp(1.05rem,1.4vw,1.4rem);line-height:1.05}.finder-sector-grid span{color:#bdcad4;font-size:.83rem;line-height:1.35}.finder-sector-grid button[aria-pressed="true"]{background:var(--orange);color:#091017;box-shadow:inset 0 -5px 0 #fff}.finder-sector-grid button[aria-pressed="true"] span{color:#27323a}.finder-sector-grid button:not([aria-pressed="true"]):hover{background:#173249}
.finder-workspace{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:1px;margin-top:1px;background:#35546c;transition:clip-path .38s cubic-bezier(.16,1,.3,1),opacity .32s ease}.finder-family-stage,.finder-product-stage{min-width:0;padding:clamp(1.25rem,2.5vw,2.25rem);background:#0b1924}.finder-product-stage{background:#eff6f9;color:#091017}.finder-stage-heading{min-height:108px}.finder-stage-heading h3{margin:0;font-size:clamp(1.35rem,2.3vw,2.45rem);line-height:.94;letter-spacing:-.045em}.finder-stage-heading p{max-width:48ch;margin:.75rem 0 0;color:#9fb3c1;font-size:.88rem}.finder-product-stage .finder-stage-heading p{color:#345c78}
.finder-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#35546c}.finder-family-grid button{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0;min-height:56px;border:0;padding:.75rem;background:#102638;color:#f4f7f8;font:800 .78rem/1.15 Route,Arial,sans-serif;text-align:left;cursor:pointer;transition:background .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),color .3s cubic-bezier(.16,1,.3,1),opacity .3s ease}.finder-family-grid button span{overflow-wrap:anywhere}.finder-family-grid button small{color:#9fb3c1;font:inherit}.finder-family-grid button[aria-pressed="true"]{transform:translateX(.25rem);background:#f4f7f8;color:#091017}.finder-family-grid button[aria-pressed="true"] small{color:#27597d}.finder-family-grid button:disabled{opacity:.45;cursor:not-allowed}
.finder-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#acc2cf}.finder-product-grid button{display:grid;grid-template-columns:2.8rem minmax(0,1fr);align-items:center;gap:.65rem;min-width:0;min-height:62px;border:0;padding:.75rem;background:#fff;color:#091017;font:700 .82rem/1.25 Route,Arial,sans-serif;text-align:left;cursor:pointer;transition:background .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1),opacity .28s ease,clip-path .38s cubic-bezier(.16,1,.3,1)}.finder-product-grid button b{color:#27597d;font-size:.7rem}.finder-product-grid button span{overflow-wrap:anywhere}.finder-product-grid button:hover,.finder-product-grid button.is-active{background:#d8ebf4;transform:translateY(-2px)}
.finder-detail{position:relative;display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:0;margin-top:1px;background:#fff;color:#091017;border:1px solid #acc2cf;transform-origin:top;animation:finderDetailIn .4s cubic-bezier(.16,1,.3,1) both}.finder-detail-visual{display:grid;min-height:260px;place-items:center;padding:2rem;background:linear-gradient(135deg,#d8ebf4,#fff)}.finder-detail-visual img{max-width:84%;max-height:300px;object-fit:contain;filter:drop-shadow(0 16px 14px #0a1f3530)}.finder-detail-copy{padding:clamp(1.5rem,4vw,3rem)}.finder-detail-copy p{max-width:62ch;margin:.55rem 0}.finder-detail-copy [data-finder-id]{color:#27597d;font-weight:850}.finder-detail-copy h3{max-width:14ch;margin:.25rem 0 .8rem;font-size:clamp(1.8rem,3vw,3.5rem);line-height:.9;letter-spacing:-.055em}.finder-detail-copy [data-finder-spec]{color:#27597d;font-weight:850}.finder-detail-copy a{display:inline-flex;align-items:center;min-height:48px;margin-top:1rem;padding:0 1rem;background:#163f63;color:#fff;font-weight:850;text-decoration:none}.finder-detail-close{position:absolute;z-index:2;top:.75rem;right:.75rem;display:grid;place-items:center;width:44px;height:44px;border:1px solid #acc2cf;background:#fff;color:#091017;font-size:1.5rem;cursor:pointer}.finder-return{display:inline-flex;align-items:center;min-height:48px;margin-top:1.5rem;border-bottom:1px solid currentColor;font-weight:850;text-decoration:none}
@keyframes finderDetailIn{from{opacity:0;transform:translateY(18px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
@media(max-width:1000px){.finder-sector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finder-sector-grid button:last-child{grid-column:2}.finder-workspace{grid-template-columns:1fr}.finder-stage-heading{min-height:0;margin-bottom:1.5rem}}
@media(max-width:800px){.guided-finder{padding-block:4rem}.guided-finder h2{font-size:clamp(2.5rem,13vw,4.25rem)}.finder-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-sector-grid button{min-height:108px;gap:.75rem;padding:1rem}.finder-sector-grid button:last-child{grid-column:1/-1}.finder-sector-grid button span{font-size:.78rem}.finder-workspace{display:block;background:transparent;margin-top:1rem}.finder-family-stage,.finder-product-stage{padding:1rem}.finder-family-stage{margin-bottom:1px}.finder-family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-product-grid{grid-template-columns:1fr}.finder-product-grid button{min-height:60px}.finder-detail{grid-template-columns:1fr}.finder-detail-visual{min-height:200px}.finder-detail-copy h3{max-width:18ch}.finder-detail-close{top:.5rem;right:.5rem}.finder-breadcrumb{margin:1.5rem 0 .75rem}}
    @media(prefers-reduced-motion:reduce){.finder-sector-grid button,.finder-family-grid button,.finder-product-grid button,.finder-workspace{transition:none}.finder-detail{animation:none}}

    /* Selection cockpit: one bounded decision surface, not a stack of catalog states. */
    .guided-finder{padding-block:clamp(4rem,7vw,7rem)}
    .guided-finder header{max-width:48rem}.guided-finder h2{max-width:12ch;font-size:clamp(2.7rem,5.2vw,5.3rem);letter-spacing:-.07em}.guided-finder header p{max-width:56ch}
    .finder-sector-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin-top:2.5rem;background:#35546c}.finder-sector-strip button{position:relative;display:flex;align-items:center;min-width:0;min-height:56px;border:0;padding:.75rem 1rem;background:#0b1924;color:#bdcad4;font:800 clamp(.68rem,1vw,.84rem)/1.15 Route,Arial,sans-serif;text-align:left;cursor:pointer;transition:color .24s cubic-bezier(.16,1,.3,1),background .24s cubic-bezier(.16,1,.3,1)}.finder-sector-strip button::after{content:"";position:absolute;right:1rem;bottom:0;left:1rem;height:2px;background:transparent;transform:scaleX(.3);transform-origin:left;transition:background .24s ease,transform .24s cubic-bezier(.16,1,.3,1)}.finder-sector-strip button[aria-pressed="true"]{background:#173249;color:#f4f7f8}.finder-sector-strip button[aria-pressed="true"]::after{background:var(--orange);transform:scaleX(1)}.finder-sector-strip button:not([aria-pressed="true"]):hover{background:#102638;color:#f4f7f8}
    .finder-cockpit{display:grid;grid-template-columns:minmax(188px,.72fr) minmax(248px,.94fr) minmax(360px,1.34fr);grid-template-rows:minmax(0,1fr);min-height:650px;max-height:760px;margin-top:1px;overflow:hidden;background:#35546c}.finder-cockpit>*{min-width:0;min-height:0}.finder-family-plane{display:flex;flex-direction:column;padding:1.5rem;background:#0b1924}.finder-product-plane{display:flex;min-height:0;flex-direction:column;padding:1.5rem;background:#eef5f8;color:#091017}.finder-plane-heading{min-height:76px;padding-bottom:1rem;border-bottom:1px solid currentColor}.finder-family-plane .finder-plane-heading{color:#f4f7f8;border-color:#35546c}.finder-plane-heading p{margin:0;font-size:clamp(1rem,1.45vw,1.35rem);font-weight:850;line-height:1.05}.finder-plane-heading span{display:block;margin-top:.45rem;color:#5c7b91;font-size:.78rem;font-weight:750}.finder-family-plane .finder-plane-heading span{color:#9fb3c1}
    .finder-family-nav{display:grid;gap:1px;margin-top:1rem;background:#35546c}.finder-family-nav button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:0;min-height:48px;border:0;padding:.6rem .75rem;background:#102638;color:#bdcad4;font:800 .76rem/1.2 Route,Arial,sans-serif;text-align:left;cursor:pointer;transition:background .24s cubic-bezier(.16,1,.3,1),color .24s cubic-bezier(.16,1,.3,1),opacity .2s ease}.finder-family-nav button span{overflow-wrap:anywhere}.finder-family-nav button small{color:#7797ad;font:inherit;font-variant-numeric:tabular-nums}.finder-family-nav button[aria-pressed="true"]{background:#f4f7f8;color:#091017}.finder-family-nav button[aria-pressed="true"] small{color:#27597d}.finder-family-nav button:not(:disabled):hover{background:#1b3b52;color:#f4f7f8}.finder-family-nav button:disabled{opacity:.35;cursor:not-allowed}
    .finder-product-list{display:grid;min-height:0;flex:1;align-content:start;margin-top:1rem;overflow-x:hidden;overflow-y:auto;border-top:1px solid #acc2cf;border-bottom:1px solid #acc2cf;scrollbar-color:#53768e transparent;scrollbar-width:thin}.finder-product-list button{display:grid;grid-template-columns:2.3rem minmax(0,1fr);align-items:center;gap:.5rem;width:100%;min-height:56px;border:0;border-bottom:1px solid #d2e0e7;padding:.65rem .25rem;background:transparent;color:#091017;font:800 .76rem/1.2 Route,Arial,sans-serif;text-align:left;cursor:pointer;transition:background .24s cubic-bezier(.16,1,.3,1),color .24s cubic-bezier(.16,1,.3,1)}.finder-product-list button:last-child{border-bottom:0}.finder-product-list button b{color:#2c6086;font-size:.68rem;font-variant-numeric:tabular-nums}.finder-product-list button span{overflow-wrap:anywhere}.finder-product-list button:hover,.finder-product-list button.is-active{background:#d5e7f0}.finder-product-list button.is-active{box-shadow:inset 3px 0 0 var(--orange)}
    .finder-mobile-select{display:none}.finder-preview{display:grid;grid-column:3;grid-template-columns:minmax(180px,.72fr) minmax(0,1fr);min-height:0;height:100%;overflow:hidden;background:#fff;color:#091017}.finder-preview-visual{display:grid;min-height:0;place-items:center;padding:clamp(1rem,2.4vw,2.4rem);background:radial-gradient(circle at 50% 40%,#d8edf5 0 20%,#c3dce8 21%,#eff7fa 58%)}.finder-preview-visual img{max-width:100%;max-height:420px;object-fit:contain;filter:drop-shadow(0 20px 18px #06203335);transition:transform .36s cubic-bezier(.16,1,.3,1),opacity .3s ease}.finder-preview-copy{min-height:0;align-self:center;padding:clamp(1.35rem,2.8vw,3rem);transition:opacity .28s ease,transform .34s cubic-bezier(.16,1,.3,1),clip-path .34s cubic-bezier(.16,1,.3,1)}.finder-preview-copy.is-changing{opacity:.48;transform:translateY(12px);clip-path:inset(0 0 15% 0)}.finder-preview-copy p{max-width:42ch;margin:.55rem 0;color:#3c5768}.finder-preview-copy [data-finder-id]{margin:0;color:#27597d;font-size:.75rem;font-weight:850;font-variant-numeric:tabular-nums}.finder-preview-copy [data-finder-family-name]{margin:.45rem 0 0;color:#27597d;font-size:.78rem;font-weight:850}.finder-preview-copy h3{max-width:12ch;margin:.6rem 0 1rem;font-size:clamp(2rem,3.2vw,4rem);line-height:.88;letter-spacing:-.065em}.finder-preview-copy [data-finder-spec]{color:#27597d;font-weight:850}.finder-preview-copy a{display:inline-flex;align-items:center;min-height:48px;margin-top:1rem;padding:0 1rem;background:#163f63;color:#fff;font-weight:850;text-decoration:none;transition:background .2s ease}.finder-preview-copy a:hover{background:#0d2b44}
    @media(max-width:1080px){.finder-cockpit{grid-template-columns:minmax(170px,.62fr) minmax(230px,.85fr) minmax(300px,1.15fr)}.finder-preview{grid-template-columns:1fr}.finder-preview-visual{min-height:250px}.finder-preview-copy h3{font-size:clamp(1.8rem,3vw,3rem)}}
    @media(max-width:800px){.finder-sector-strip{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem}.finder-sector-strip button{min-height:52px;padding:.7rem .75rem;font-size:.68rem}.finder-sector-strip button:last-child{grid-column:1/-1}.finder-cockpit{display:block;min-height:0;max-height:none;overflow:visible;background:transparent}.finder-family-plane,.finder-product-plane,.finder-preview{margin-top:1px;padding:1rem}.finder-plane-heading{min-height:0;padding-bottom:.75rem}.finder-family-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.75rem}.finder-family-nav button{min-height:52px;padding:.55rem;font-size:.68rem}.finder-product-plane{display:block}.finder-product-list{display:none}.finder-mobile-select{display:block;width:100%;min-height:52px;margin-top:.75rem;border:1px solid #acc2cf;padding:0 .75rem;background:#fff;color:#091017;font:800 .78rem Route,Arial,sans-serif}.finder-preview{grid-template-columns:1fr}.finder-preview-visual{min-height:260px;padding:1.5rem}.finder-preview-visual img{max-height:330px}.finder-preview-copy{padding:1.25rem}.finder-preview-copy h3{max-width:16ch;font-size:clamp(2rem,10vw,3.25rem)}}
@media(prefers-reduced-motion:reduce){.finder-sector-strip button,.finder-sector-strip button::after,.finder-family-nav button,.finder-product-list button,.finder-preview-copy,.finder-preview-visual img,.finder-preview-copy a{transition:none!important}}

/* White-primary editorial system: the film hero is the sole dark landing region. */
:root{--canvas:#fff;--canvas-soft:#f7fafb;--ink:#102638;--muted:#526979;--line:#cbd8df;--media-well:#e8f3f8;--signal:#ff6337;color-scheme:light}
body{background:var(--canvas);color:var(--ink)}
/* Media remains a dark stage: the global ink token must never bleed into the
   hero copy, fixed masthead, or language controls laid over moving footage. */
.film-hero,.film-hero .hero-content,.film-hero .hero-content h1,.film-hero .hero-copy,.film-hero .hero-sector,.film-hero .brand,.film-hero .route-head,.film-hero .route-head a{color:#fff}
.route-head{color:#fff}.route-head .brand,.route-head nav a,.route-head .language-switch a,.route-head .head-action{color:#fff}.route-head .brand-wordmark{color:#fff}.route-head.is-scrolled{background:#102638f2}
.landing-flow{background:var(--canvas)}
.guided-finder{background:var(--canvas);color:var(--ink);border-top:1px solid var(--line)}.guided-finder header p{color:var(--muted)}.finder-sector-strip{background:var(--line)}.finder-sector-strip button{background:var(--canvas-soft);color:var(--ink)}.finder-sector-strip button[aria-pressed="true"],.finder-sector-strip button:not([aria-pressed="true"]):hover{background:var(--ink);color:#fff}.finder-cockpit{background:var(--line)}.finder-family-plane{background:var(--canvas-soft);color:var(--ink)}.finder-family-plane .finder-plane-heading{color:var(--ink);border-color:var(--line)}.finder-family-plane .finder-plane-heading span{color:var(--muted)}.finder-family-nav{background:var(--line)}.finder-family-nav button{background:var(--canvas);color:var(--ink)}.finder-family-nav button small{color:var(--muted)}.finder-family-nav button[aria-pressed="true"]{background:var(--ink);color:#fff}.finder-family-nav button:not(:disabled):hover{background:#dcecf3;color:var(--ink)}.finder-product-plane{background:var(--canvas-soft)}.finder-preview{background:var(--canvas)}.finder-preview-visual{background:radial-gradient(circle at 50% 40%,#d8edf5 0 20%,#c3dce8 21%,var(--media-well) 58%)}
.reference-band{background:var(--canvas);color:var(--ink);border-color:var(--line)}.reference-band header p{color:var(--muted)}.reference-band h2{color:var(--ink)}.reference-list li{color:var(--ink)}.command-route,.home-about,.home-news,.field-reel,.contact-route,.site-footer{background:var(--canvas);color:var(--ink);border-top:1px solid var(--line)}.home-news>div{background:var(--line)}.home-news article{background:var(--canvas)}.field-reel figure{background:var(--canvas-soft);border:1px solid var(--line)}.field-reel figcaption{color:var(--ink)}.site-footer{border-bottom:1px solid var(--line)}.site-footer a{color:var(--ink)}
.command-route{background:var(--canvas)}.home-about{background:var(--canvas)}.home-news{background:var(--canvas)}.field-reel{background:var(--canvas)}.contact-route{background:var(--canvas)}.site-footer{background:var(--canvas)}
.landing-flow>.route-reveal+.route-reveal{position:relative}.landing-flow>.route-reveal+.route-reveal::before{content:"";position:absolute;top:-1px;right:0;left:0;height:28px;background:linear-gradient(180deg,#10263810,transparent);pointer-events:none}
.route-reveal{opacity:1;transform:none;clip-path:inset(0)}
.route-reveal.is-near{transform:none}
html[data-enhanced="true"] .landing-flow .route-reveal:not(.is-visible),html[data-enhanced="true"] .landing-flow .route-reveal.is-near,html[data-enhanced="true"] .landing-flow .route-reveal.is-visible{opacity:1;transform:none;clip-path:none;filter:none}
.inner-hero--media{position:relative;isolation:isolate;display:grid;align-content:end;min-height:clamp(26rem,52vw,42rem);overflow:hidden;background:var(--ink);color:#fff}.inner-hero--media::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102638e8 0%,#102638a6 48%,#10263836 100%),linear-gradient(0deg,#102638c2 0%,transparent 50%)}.inner-hero-media{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.inner-hero--media>p,.inner-hero--media h1,.inner-hero--media a{position:relative}.inner-hero--media>p:first-child{color:var(--signal)}.inner-hero--media h1+p{color:#fff}.content-grid,.catalog-grid,.field-grid,.faq-list,.service-ledger,.empty-family{background:var(--canvas);color:var(--ink)}.content-grid article,.catalog-card{border-color:var(--line)}.field-grid figure{background:var(--canvas)}.service-stock{background:var(--canvas-soft);color:var(--ink);border-block:1px solid var(--line)}.service-stock p{color:var(--muted)}.service-stock a{background:var(--ink);color:#fff}.article{background:var(--canvas);color:var(--ink)}
html:not([data-enhanced]) .route-reveal{opacity:1!important;transform:none!important;clip-path:inset(0)!important}
@media(max-width:800px){.reference-band{background:var(--canvas)}.reference-list{width:auto}.reference-list li{border-color:var(--line)}.inner-hero--media{min-height:30rem}.inner-hero-media{object-position:60% center}}
@media(prefers-reduced-motion:reduce){.route-reveal,.route-reveal.is-near,.route-reveal.is-visible{opacity:1;clip-path:inset(0)}}

/* RTL is a true mirrored reading plane, including the hero controls and cockpit. */
html[dir="rtl"] body{font-family:"Noto Sans Arabic",Route,Arial,sans-serif;text-align:right}
html[dir="rtl"] .route-head,html[dir="rtl"] .hero-actions,html[dir="rtl"] .language-switch{direction:rtl}
html[dir="rtl"] .film-hero .hero-content{justify-items:start;text-align:right}
html[dir="rtl"] .film-hero .hero-controls{direction:rtl}
html[dir="rtl"] .finder-sector-strip button,html[dir="rtl"] .finder-family-nav button,html[dir="rtl"] .finder-product-list button{text-align:right}
html[dir="rtl"] .finder-sector-strip button::after{right:1rem;left:1rem;transform-origin:right}
html[dir="rtl"] .finder-cockpit{direction:rtl}
html[dir="rtl"] .finder-family-plane{grid-column:3}html[dir="rtl"] .finder-product-plane{grid-column:2}html[dir="rtl"] .finder-preview{grid-column:1}
html[dir="rtl"] .finder-product-list button.is-active{box-shadow:inset -3px 0 0 var(--signal)}
html[dir="rtl"] .inner-hero--media::after{background:linear-gradient(270deg,#102638e8 0%,#102638a6 48%,#10263836 100%),linear-gradient(0deg,#102638c2 0%,transparent 50%)}
@media(max-width:800px){html[dir="rtl"] .finder-family-plane,html[dir="rtl"] .finder-product-plane,html[dir="rtl"] .finder-preview{grid-column:auto}}

/* Motion is a sequence of distinct acts, not a universal 3-D scroll effect. */
.route-reveal{--flow-progress:0;--flow-distance:6vh;--flow-scale:.968;--flow-clip:5%;--flow-shadow:0 24px 34px #10263816;will-change:auto}
html[data-enhanced="true"] .landing-flow .route-reveal{opacity:1;transform:none;clip-path:none;filter:none}
html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state="approaching"] .route-line i{transform:scaleX(.72)}
html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state="settled"] .route-line i{transform:scaleX(1)}
html[data-enhanced="true"] .landing-flow .command-route[data-flow-state="approaching"] .stage-window{transform:translateX(28px);opacity:.76}
html[data-enhanced="true"] .landing-flow .home-about[data-flow-state="approaching"] .home-about-columns{transform:translateY(30px);opacity:.64}
html[data-enhanced="true"] .landing-flow .home-news[data-flow-state="approaching"] article{transform:translateY(28px);opacity:.66}
html[data-enhanced="true"] .landing-flow .home-news[data-flow-state="approaching"] article:nth-child(2){transition-delay:.07s}
html[data-enhanced="true"] .landing-flow .home-news[data-flow-state="approaching"] article:nth-child(3){transition-delay:.14s}
html[data-enhanced="true"] .landing-flow .field-reel[data-flow-state="approaching"] .reel-track{clip-path:inset(0 12% 0 0)}
html[data-enhanced="true"] .landing-flow .contact-route[data-flow-state="approaching"] [data-request-composer]{transform:translateY(28px);opacity:.68}
.route-line i,.stage-window,.home-about-columns,.home-news article,.reel-track,[data-request-composer]{transition:transform .5s cubic-bezier(.2,.7,.3,1),opacity .42s ease,clip-path .5s cubic-bezier(.2,.7,.3,1)}
.command-route{background:var(--canvas);color:var(--ink)}.command-route header>p{max-width:56ch;color:var(--muted)}.command-route .stage-layout{grid-template-columns:minmax(11rem,.43fr) minmax(0,1.57fr);gap:clamp(1rem,4vw,4rem);margin-top:2.25rem}.command-route .stage-nav{gap:1px;border-top:1px solid var(--line)}.command-route .stage-nav button{min-height:58px;padding:.75rem 0;border:0;border-bottom:1px solid var(--line);color:var(--muted)}.command-route .stage-nav button.is-active{padding-inline-start:.7rem;background:var(--canvas-soft);color:var(--ink);box-shadow:inset 3px 0 0 var(--signal)}.command-route .stage-window{position:relative;min-height:290px;background:var(--canvas-soft);border:1px solid var(--line);overflow:hidden}.command-route .stage-window article{position:absolute;inset:0;display:grid;align-content:center;min-height:0;padding:clamp(1.5rem,4vw,4rem);background:var(--canvas-soft);color:var(--ink);opacity:0;transform:translateY(1rem);clip-path:inset(0 0 100% 0);pointer-events:none;animation:none;transition:opacity .26s ease,transform .38s cubic-bezier(.16,1,.3,1),clip-path .42s cubic-bezier(.16,1,.3,1)}.command-route .stage-window article.is-active{display:grid;opacity:1;transform:translateY(0);clip-path:inset(0);pointer-events:auto}.command-route .stage-window span{color:#a33119}.command-route .stage-window h3{max-width:16ch;margin:1rem 0;color:var(--ink)}.command-route .stage-window p{max-width:58ch;margin:0;color:#365364}
.contact-route{grid-template-columns:minmax(0,.88fr) minmax(20rem,1.12fr);align-items:start;gap:clamp(1.5rem,5vw,5rem);padding-block:clamp(4rem,7vw,6.5rem);background:var(--canvas);color:var(--ink)}.contact-route .route-line{grid-column:1/-1;margin-inline:0}.contact-route-copy h2{max-width:10ch;font-size:clamp(2.4rem,4.6vw,5.5rem);line-height:.9}.contact-route-copy p{max-width:46ch;color:var(--muted)}.contact-route aside{display:grid;grid-column:auto;justify-content:start;gap:.6rem;margin-top:1.5rem;border:0;padding:0;color:var(--ink);font-weight:800}.contact-route aside a{display:inline-flex;align-items:center;gap:.55rem;min-height:30px}.contact-route aside svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}.share-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.25rem}.share-control,.mobile-contact{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--canvas);color:var(--ink);cursor:pointer}.share-control svg,.mobile-contact svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65}.share-control:hover{border-color:var(--signal);background:#fff3ee;color:#8b301b}.share-control:focus-visible{outline:3px solid var(--signal);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}
.site-footer{align-items:center;flex-wrap:wrap}.site-footer .share-controls{margin-left:auto}.site-footer .share-control{background:var(--canvas);color:var(--ink)}
@media(max-width:800px){.command-route .stage-layout,.contact-route{grid-template-columns:1fr;gap:1.25rem}.command-route .stage-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.command-route .stage-nav button{padding:.65rem;font-size:.75rem;text-align:center}.command-route .stage-nav button.is-active{padding-inline:.65rem;box-shadow:inset 0 -3px 0 var(--signal)}.command-route .stage-window{min-height:340px}.contact-route{padding-block:4rem}.contact-route-copy h2{max-width:10ch;font-size:clamp(2.3rem,11vw,4.4rem)}.site-footer .share-controls{width:100%;margin-left:0}.mobile-contact{width:48px;padding:0;background:var(--signal);color:var(--ink)}}
@media(prefers-reduced-motion:reduce){html[data-enhanced="true"] .landing-flow .route-reveal{transition:opacity .24s linear,transform .28s ease,clip-path .28s ease}.command-route .stage-window article{transition-duration:.16s}}
.language-separator{display:grid;align-self:stretch;place-items:center;width:1px;min-height:18px;background:transparent}.language-separator::before{content:"";width:1px;height:1rem;background:currentColor;opacity:.55}
.share-control,.mobile-contact{width:44px;height:44px;flex:0 0 44px}
.service-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:2rem 0 0;padding:0;list-style:none;background:var(--line)}.service-journey li{display:grid;gap:.35rem;min-height:72px;padding:1rem;background:var(--canvas-soft);font-weight:800}.service-journey b{color:var(--signal);font-size:.72rem}.footer-taxonomy{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:1.5rem;width:100%}.footer-taxonomy>div,.footer-taxonomy nav{display:grid;align-content:start;gap:.45rem}.footer-taxonomy strong{margin-bottom:.25rem}.site-footer{display:grid;grid-template-columns:1fr auto;gap:1.5rem}.site-footer .share-controls{align-self:end}@media(max-width:800px){.service-journey{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-taxonomy{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{display:block}.site-footer .share-controls{margin-top:1.5rem}}
.route-head .products-mega strong{color:var(--ink)}
/* Proof, trust and navigation are compositional infrastructure. */
body .products-nav>button[aria-expanded="true"] span{transform:none}
.proof-rail{padding:clamp(2.4rem,5vw,4.4rem) clamp(1rem,8vw,9rem);background:var(--canvas-soft);border:0}.proof-rail ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,3vw,3rem);margin:0;padding:0;list-style:none}.proof-rail li{display:grid;gap:.55rem;min-height:0;padding:0;border:0}.proof-rail strong{font-size:clamp(2.8rem,6vw,6rem);letter-spacing:-.07em;line-height:.85;font-variant-numeric:tabular-nums}.proof-rail span{max-width:16ch;color:var(--muted);font-weight:750}.products-nav{position:relative;display:inline-flex;align-items:center;gap:.12rem}.products-nav>button{display:inline-flex;width:auto;height:auto;min-width:44px;min-height:44px;padding:.5rem .75rem;gap:.45rem;align-items:center;justify-content:center;border:0;background:transparent;color:inherit;cursor:pointer}.products-trigger{font:inherit;font-weight:800}.products-mega{position:absolute;z-index:100;top:calc(100% + .4rem);left:0;right:auto;width:min(640px,calc(100vw - 2rem));padding:1.1rem;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 50px #07101730;opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .2s ease}.products-mega.is-open{opacity:1;transform:none}.products-mega.is-closing{opacity:0;transform:translateY(-6px);pointer-events:none}.products-mega>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem .75rem}.products-mega a{display:grid;align-content:start;justify-items:start;min-height:68px;padding:.7rem .75rem;border-radius:10px;color:var(--ink);text-align:start;text-decoration:none;transition:background .2s ease,color .2s ease}.products-mega a:hover,.products-mega a:focus-visible{background:var(--canvas-soft);color:var(--signal)}.products-mega strong,.products-mega span{display:block;text-align:start}.products-mega strong{font-size:.93rem;line-height:1.15}.products-mega span{margin-top:.28rem;color:var(--muted);font-size:.73rem;line-height:1.35}.products-mega footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.8rem;padding:.85rem .75rem 0;border-top:1px solid var(--line);font-size:.78rem}.products-mega footer p{margin:0;color:var(--muted)}.products-mega footer a{display:inline-flex;min-height:44px;padding:.4rem .55rem;align-items:center}.mobile-products{display:grid;gap:.55rem;padding:.45rem 0;border-bottom:1px solid #ffffff32}.mobile-products summary{min-height:44px;font-weight:850;cursor:pointer}.mobile-products a{padding-left:.8rem}.reference-band{display:grid;grid-template-columns:minmax(14rem,.4fr) minmax(0,1.6fr);gap:2rem;align-items:center;min-height:0;padding:clamp(2rem,4vw,3.5rem) clamp(1rem,8vw,9rem);overflow:hidden}.reference-band header p{max-width:34ch}.reference-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}.reference-track{display:flex;width:max-content;animation:trust-drift 52s linear infinite}.reference-track ol{display:flex;flex:0 0 auto;gap:clamp(1.75rem,3.6vw,3.5rem);margin:0;padding:0 clamp(1.75rem,3.6vw,3.5rem) 0 0;list-style:none}.reference-track li{display:flex;align-items:center;gap:.75rem;min-height:52px;white-space:nowrap;font-size:clamp(1rem,1.65vw,1.55rem);font-weight:800}.reference-track li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal)}.reference-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.reference-window:hover .reference-track,.reference-window:focus-within .reference-track{animation-play-state:paused}@keyframes trust-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}.home-about{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}.home-about>.route-line{grid-column:1/-1}.home-about-lead{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(18rem,.75fr);gap:clamp(2rem,6vw,7rem);align-items:end}.home-about-lead h2{max-width:13ch;margin:0;font-size:clamp(3rem,5.3vw,5.4rem)}.home-about-lead p,.home-about-columns p{color:var(--muted);line-height:1.65}.home-about-columns{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,5vw,5rem);padding-top:0;border-top:0}.home-about .section-link{grid-column:1}.film-hero .hero-content{animation:hero-arrive .78s cubic-bezier(.16,1,.3,1) both}@keyframes hero-arrive{from{opacity:.01;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes route-content-in{from{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}html[data-enhanced="true"] body:not(:has(.film-hero)) main{animation:route-content-in .28s cubic-bezier(.2,.7,.3,1) both}@media(prefers-reduced-motion:reduce){html[data-enhanced="true"] body:not(:has(.film-hero)) main{animation:none}}.landing-flow .route-line{display:none}.landing-flow>.route-reveal+.route-reveal::before{display:none}@media(max-width:800px){.proof-rail ol{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-rail li{min-height:7.5rem}.reference-band{display:block}.reference-band header{margin-bottom:1rem}.products-mega{display:none}.home-about{display:block}.home-about-lead{display:block}.home-about-lead p{margin-top:1.5rem}.home-about-columns{margin-top:2rem;grid-template-columns:1fr}.home-about .section-link{display:inline-block;margin-top:1.5rem}.hero-in-view .mobile-contact{opacity:0;pointer-events:none;transform:translateY(120%)}.mobile-contact{transition:opacity .24s ease,transform .3s cubic-bezier(.2,.7,.3,1)}}@media(prefers-reduced-motion:reduce){.film-hero .hero-content{animation-duration:.32s}.reference-track{animation-duration:104s;opacity:.96}}

/* Primary navigation uses a single restrained motion cue. */
.route-head>nav>a,.products-trigger{position:relative}
.command-route .stage-window h3{max-width:18ch;margin:1rem 0;color:var(--ink);font-size:clamp(2rem,3.4vw,4.25rem);line-height:.94;letter-spacing:-.045em}
.route-head>nav>a::after,.products-trigger::after{content:"";position:absolute;inset-inline:.7rem;bottom:0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .24s cubic-bezier(.16,1,.3,1)}
.route-head>nav>a:hover::after,.route-head>nav>a:focus-visible::after,.products-trigger:hover::after,.products-trigger:focus-visible::after,.products-trigger[aria-expanded="true"]::after{transform:scaleX(1)}
[dir="rtl"] .route-head>nav>a::after,[dir="rtl"] .products-trigger::after{transform-origin:right}
[dir="rtl"] .products-mega{right:0;left:auto}
@media(prefers-reduced-motion:reduce){.route-head>nav>a::after,.products-trigger::after{transition-duration:.12s}}

/* Stitch post-hero composition: editorial asymmetry on a single white canvas. */
.proof-rail{position:relative;background:#fff;border-bottom:1px solid var(--line)}.proof-rail li{position:relative;padding-inline-start:1rem}.proof-rail li::before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:var(--signal);transform:scaleY(.35);transform-origin:bottom;transition:transform .6s cubic-bezier(.16,1,.3,1)}.proof-rail strong{color:var(--ink)}
.guided-finder{padding-block:clamp(5rem,10vw,10rem);background:#fff}.guided-finder header{display:grid;grid-template-columns:minmax(16rem,.7fr) minmax(18rem,1fr);gap:clamp(2rem,7vw,8rem);align-items:end;max-width:none;margin-bottom:3rem}.guided-finder header h2{margin:0;max-width:10ch}.guided-finder header p{margin:0;max-width:48ch}.finder-sector-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:transparent;border-block:1px solid var(--line)}.finder-sector-strip button{min-height:74px;border:0;border-inline-end:1px solid var(--line);background:#fff}.finder-sector-strip button:last-child{border:0}.finder-cockpit{margin-top:0;border:0;background:#fff;grid-template-columns:minmax(12rem,.58fr) minmax(15rem,.8fr) minmax(19rem,1.15fr)}.finder-family-plane,.finder-product-plane,.finder-preview{border:0;border-inline-end:1px solid var(--line);background:#fff}.finder-preview{border-inline-end:0}.finder-preview-visual{background:#edf4f7}.finder-product-list{max-height:28rem}.finder-preview-copy{padding:clamp(1.4rem,3vw,3rem)}
.command-route[data-service-journey]{padding:clamp(3.5rem,7vw,6rem) clamp(1rem,8vw,9rem);border-top:1px solid var(--line);overflow:clip}.command-route[data-service-journey] header{display:grid;grid-template-columns:minmax(14rem,.72fr) minmax(15rem,1.28fr);column-gap:clamp(2rem,6vw,6rem);align-items:end}.command-route[data-service-journey] .eyebrow{grid-column:1/-1;margin:0 0 1rem;color:var(--signal);font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.command-route[data-service-journey] h2{max-width:14ch;margin:0;font-size:clamp(2.5rem,4vw,4rem);line-height:.94}.command-route[data-service-journey] header p:not(.eyebrow){max-width:42ch;margin:0;color:var(--muted)}.command-route[data-service-journey] .section-link{grid-column:2;margin-top:1.25rem}.service-journey--asymmetric{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;list-style:none;background:#fff}.service-journey--asymmetric li{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(1.5rem,5vw,5rem);align-items:center;min-width:0;min-height:clamp(17.5rem,25vw,23.5rem);padding:clamp(1rem,2.5vw,2rem) 0;background:#fff}.service-journey--asymmetric li:nth-child(even){grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.service-journey--asymmetric li:nth-child(even) .service-journey-copy{grid-column:2}.service-journey--asymmetric li:nth-child(even) .service-journey-media{grid-column:1;grid-row:1}.service-journey--asymmetric li,.service-journey-copy,.service-journey--asymmetric figure,.service-journey-media{min-width:0}.service-journey-copy{max-width:34rem}.service-journey-copy b{display:block;margin-bottom:.55rem;color:#c9d8df;font-size:clamp(2.3rem,5vw,4.5rem);line-height:.7;letter-spacing:-.08em}.service-journey-copy p{margin:.5rem 0;color:var(--signal);font-size:.76rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.service-journey-copy h3{max-width:15ch;margin:.4rem 0 .75rem;font-size:clamp(1.65rem,2.8vw,2.7rem);line-height:.94;letter-spacing:-.045em}.service-journey-copy span{display:block;max-width:45ch;color:var(--muted);line-height:1.55}.service-journey-media{position:relative;block-size:clamp(17.5rem,25vw,22.5rem);min-height:0;overflow:hidden;background:#edf4f7}.service-journey-media::after{content:"";position:absolute;inset-block-end:0;inset-inline-end:0;width:38%;height:5px;background:var(--signal)}.service-journey--asymmetric img{width:100%;height:100%;min-height:inherit;object-fit:cover;filter:saturate(.84) contrast(.98)}
.home-about{padding-block:clamp(5rem,10vw,10rem)}.home-about-columns{grid-template-columns:minmax(0,1fr) minmax(15rem,.72fr);align-items:start}.home-about-columns figure{margin:0;min-height:18rem;overflow:hidden;background:#edf4f7}.home-about-columns img{display:block;width:100%;height:100%;object-fit:cover}.reference-band{overflow-x:clip;border-block:1px solid var(--line)}.reference-window{position:relative;height:52px;contain:strict}.reference-track{position:absolute;top:0;left:0;width:max-content}.reference-track ol{flex:0 0 auto;min-width:0}@keyframes trust-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}.home-news{padding-block:clamp(5rem,10vw,9rem)}.home-news>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:2.5rem}.home-news .eyebrow{margin:0 0 .6rem;color:var(--signal);font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.home-news h2{margin:0;font-size:clamp(2.8rem,5vw,5.2rem)}.home-news article{display:grid;align-content:start;padding:0 0 1.5rem}.home-news article img{width:100%;aspect-ratio:1.25;object-fit:cover;margin-bottom:1.25rem}.home-news article p,.home-news article h3,.home-news article a{margin-inline:1.25rem}.home-news article h3{font-size:clamp(1.35rem,2vw,2.1rem)}
html[data-enhanced="true"] .landing-flow .service-journey--asymmetric li{transition:opacity .55s ease,transform .7s cubic-bezier(.16,1,.3,1)}html[data-enhanced="true"] .landing-flow [data-service-journey][data-flow-state="approaching"] .service-journey--asymmetric li{opacity:.38;transform:translateY(24px)}html[data-enhanced="true"] .landing-flow [data-service-journey][data-flow-state="settled"] .service-journey--asymmetric li{opacity:1;transform:none}html[data-enhanced="true"] .landing-flow [data-service-journey][data-flow-state="approaching"] .service-journey--asymmetric li:nth-child(even){transform:translateY(42px)}
@media(max-width:800px){.proof-rail li{padding-inline-start:.75rem}.guided-finder header{display:block;margin-bottom:2rem}.guided-finder header p{margin-top:1rem}.finder-sector-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-sector-strip button{min-height:64px}.finder-sector-strip button:last-child{grid-column:1/-1;border-top:1px solid var(--line)}.finder-cockpit{display:block}.finder-family-plane,.finder-product-plane,.finder-preview{border-inline-end:0;border-bottom:1px solid var(--line)}.command-route[data-service-journey] header{display:block}.command-route[data-service-journey] header p:not(.eyebrow){margin-top:1.25rem}.command-route[data-service-journey] .section-link{display:inline-block;margin-top:1.5rem}.service-journey--asymmetric,.service-journey--asymmetric li,.service-journey--asymmetric li:nth-child(even){display:block;min-height:0}.service-journey--asymmetric li{padding-block:1.5rem}.service-journey--asymmetric li:nth-child(even) .service-journey-copy{grid-column:auto}.service-journey--asymmetric li:nth-child(even) .service-journey-media{grid-column:auto;grid-row:auto}.service-journey-media{block-size:clamp(11.5rem,50vw,12.5rem);margin-top:1rem}.service-journey-copy h3{font-size:clamp(1.6rem,7vw,2.25rem)}.home-about-columns{grid-template-columns:1fr}.home-about-columns figure{min-height:15rem;margin-top:1.5rem}.home-news>header{display:block}.home-news>div{gap:1.5rem;background:transparent}.home-news article{border-bottom:1px solid var(--line);background:#fff}}
@media(prefers-reduced-motion:reduce){.proof-rail li::before{transform:scaleY(1)}html[data-enhanced="true"] .landing-flow [data-service-journey][data-flow-state] .service-journey--asymmetric li{opacity:1;transform:none}}

/* Field-to-spec editorial rebuild: every post-hero chapter shares one white working field. */
.landing-flow{background:#fff}.proof-rail{padding:1.25rem clamp(1rem,7vw,8rem);border-bottom:1px solid var(--line);background:#fff}.proof-rail ol{gap:0}.proof-rail li{grid-template-columns:auto 1fr;align-items:baseline;gap:.55rem;min-height:0;padding:0 clamp(.75rem,2vw,2rem);border-inline-start:1px solid var(--line)}.proof-rail li:first-child{border-inline-start:0}.proof-rail li::before{display:none}.proof-rail strong{font-size:clamp(1.45rem,2.5vw,2.35rem);letter-spacing:-.06em;line-height:1}.proof-rail span{font-size:.76rem;line-height:1.2}
.guided-finder{padding-block:clamp(3.5rem,7vw,6.5rem)}.guided-finder header{grid-template-columns:minmax(15rem,.75fr) minmax(16rem,1fr);margin-bottom:2.25rem}.guided-finder header h2{font-size:clamp(2.15rem,4.5vw,4.85rem);line-height:.94}.finder-sector-strip{grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden}.finder-sector-strip button{min-height:58px;padding:.75rem;background:#fff;font-size:.84rem}.finder-cockpit{grid-template-columns:minmax(12rem,.55fr) minmax(14rem,.82fr) minmax(19rem,1.15fr);border-block:1px solid var(--line)}.finder-plane-heading{padding:1rem 1.15rem}.finder-family-nav button,.finder-product-list button{min-height:48px;padding:.7rem 1rem}.finder-preview-visual{min-height:260px}.finder-preview-copy{padding:1.4rem}.finder-preview-copy h3{font-size:clamp(1.5rem,2.6vw,2.5rem);line-height:.98}
.service-story{max-block-size:1400px;padding:clamp(4rem,8vw,7rem) clamp(1rem,8vw,9rem);background:#fff;border-block:1px solid var(--line);overflow:clip}.service-story header{display:grid;grid-template-columns:minmax(15rem,.78fr) minmax(17rem,1.22fr);align-items:end;gap:clamp(1.5rem,6vw,6rem);margin-bottom:clamp(2rem,4vw,3.25rem)}.service-story h2{max-width:11ch;margin:0;font-size:clamp(2.5rem,4.4vw,56px);line-height:.92;letter-spacing:-.052em}.service-story header p{max-width:40ch;margin:0;color:var(--muted);line-height:1.55}.service-story .section-link{grid-column:2;justify-self:start;margin-top:-.5rem}.service-story-layout{display:grid;grid-template-columns:minmax(16rem,.84fr) minmax(20rem,1.16fr);gap:clamp(2rem,6vw,7rem);align-items:start}.service-story ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.service-story li{border-top:1px solid var(--line)}.service-story li:last-child{border-bottom:1px solid var(--line)}.service-story button{display:grid;gap:.35rem;width:100%;min-height:130px;padding:1.1rem 0;border:0;background:transparent;color:var(--ink);text-align:start;cursor:pointer;transition:color .25s ease}.service-story button span{color:var(--signal);font-size:.75rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.service-story button strong{font-size:clamp(1.15rem,1.85vw,1.65rem);line-height:1.05}.service-story button small{max-width:48ch;color:var(--muted);font-size:.88rem;line-height:1.45}.service-story li.is-active button{color:#081e2d}.service-story li.is-active button strong{color:var(--signal)}.service-story-media{position:sticky;top:7.5rem;max-width:520px;max-height:360px;margin:0 0 0 auto;overflow:hidden;background:#eaf2f5}.service-story-media img{display:block;width:100%;height:clamp(15rem,28vw,360px);object-fit:cover;transition:opacity .28s ease,transform .7s cubic-bezier(.16,1,.3,1)}.service-story-media.is-changing img{opacity:.58;transform:scale(1.035)}.service-story-media figcaption{padding:.75rem 1rem;background:#fff;color:var(--ink);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.home-about{grid-template-columns:minmax(17rem,1.05fr) minmax(17rem,.95fr);gap:clamp(2rem,7vw,8rem);padding-block:clamp(4rem,8vw,7rem);align-items:center}.home-about-media{height:min(48vw,520px);margin:0;overflow:hidden;background:#eaf2f5}.home-about-media img{display:block;width:100%;height:100%;object-fit:cover}.home-about h2{max-width:12ch;margin:0 0 1.25rem;font-size:clamp(2.3rem,4vw,4.7rem);line-height:.94}.home-about p{max-width:58ch;color:var(--muted);line-height:1.6}.home-about .section-link{display:inline-flex;margin-top:.8rem}
.reference-band{grid-template-columns:1fr;gap:.8rem;padding:1.3rem clamp(1rem,8vw,9rem);border-block:1px solid var(--line)}.reference-band header{display:flex;align-items:baseline;gap:1rem}.reference-band header h2{margin:0;font-size:1rem}.reference-band header p{margin:0;color:var(--muted);font-size:.82rem}.reference-window{height:38px}.reference-track li{min-height:38px;font-size:1rem}.reference-track li::before{width:4px;height:4px}.reference-accessible{position:absolute}
.editorial-evidence{padding-block:clamp(4rem,8vw,7rem)}.home-news>header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2rem}.home-news h2{font-size:clamp(2.4rem,4.5vw,4.8rem);line-height:.95}.news-layout{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(12rem,.65fr));gap:clamp(1.25rem,3vw,3rem);align-items:start}.home-news article{padding:0}.home-news article img{margin:0 0 1rem}.home-news article p,.home-news article h3,.home-news article a{margin-inline:0}.home-news article h3{margin-block:.4rem .8rem;font-size:clamp(1.15rem,2vw,1.75rem);line-height:1.08}.home-news article.is-lead h3{font-size:clamp(1.8rem,3vw,3rem)}.field-reel{margin-top:clamp(2rem,5vw,5rem);padding-top:1.25rem;border-top:1px solid var(--line)}.field-reel header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1rem}.field-reel h2{font-size:1rem}.field-reel p{margin:0;color:var(--muted);font-size:.84rem}.reel-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden}.reel-track figure{margin:0;background:#eaf2f5}.reel-track img{display:block;width:100%;aspect-ratio:1.4;object-fit:cover}.reel-track figcaption{padding:.65rem .75rem;color:var(--muted);font-size:.75rem}
.contact-close{grid-template-columns:minmax(16rem,.8fr) minmax(20rem,1.2fr);gap:clamp(2rem,7vw,8rem);padding:clamp(4rem,8vw,7rem) clamp(1rem,8vw,9rem);background:#082030;color:#fff}.contact-close .contact-route-copy h2{max-width:10ch;color:#fff;font-size:clamp(2.5rem,4.4vw,4.9rem)}.contact-close .contact-route-copy p,.contact-close aside{color:#c4d3da}.contact-close aside a{color:#fff}.contact-close form{border:1px solid #ffffff38;background:#0e2a3d}.contact-close label{color:#dce8ee}.contact-close select,.contact-close textarea,.contact-close input{border-color:#ffffff4d;background:#fff;color:var(--ink)}.contact-close button{background:var(--signal);color:#071d2b}.contact-close .share-control{border-color:#ffffff4d;background:transparent;color:#fff}.site-footer{padding:2.5rem clamp(1rem,8vw,9rem);background:#061823}
html[data-enhanced="true"] .landing-flow .route-reveal{transition:clip-path .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1),filter .75s ease}html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state="approaching"]{clip-path:inset(5% 0 0 0);filter:blur(2px);transform:translateY(22px)}html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state="settled"]{clip-path:inset(0);filter:none;transform:none}
@media(max-width:800px){.proof-rail{padding-block:1rem}.proof-rail ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.proof-rail li{border-inline-start:0;padding:0}.proof-rail strong{font-size:1.5rem}.proof-rail span{font-size:.7rem}.guided-finder{padding-block:3.5rem}.guided-finder header{display:block}.guided-finder header p{margin-top:1rem}.finder-sector-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.finder-sector-strip button:last-child{grid-column:1/-1}.finder-cockpit{display:block}.finder-family-plane,.finder-product-plane,.finder-preview{border-inline-end:0;border-bottom:1px solid var(--line)}.service-story{max-block-size:1900px;padding-block:3.5rem}.service-story header{display:block;margin-bottom:2rem}.service-story h2{font-size:clamp(2.2rem,10vw,40px)}.service-story header p{margin-top:1rem}.service-story .section-link{display:inline-flex;margin-top:1.25rem}.service-story-layout{display:block}.service-story button{min-height:0;padding:1rem 0}.service-story li.is-active button{padding-inline-start:.6rem}.service-story-media{position:relative;top:auto;max-width:none;max-height:220px;margin-top:1.5rem}.service-story-media img{height:220px}.home-about{display:flex;flex-direction:column;gap:1.5rem;padding-block:4rem}.home-about-media{order:2;width:100%;height:220px}.home-about>div{order:1}.home-about h2{font-size:clamp(2.25rem,10vw,3.3rem)}.reference-band{padding-block:1.1rem}.reference-band header{display:block}.reference-band header p{margin-top:.35rem}.news-layout{grid-template-columns:1fr;gap:2rem}.home-news article.is-lead h3{font-size:2rem}.reel-track{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-close{display:grid;grid-template-columns:1fr;padding-block:4rem}.contact-close form{padding:1rem}html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state]{clip-path:none;filter:none;transform:none}}
@media(prefers-reduced-motion:reduce){.reference-track{animation:none;transform:none}.service-story-media img,html[data-enhanced="true"] .landing-flow .route-reveal{transition:none}.service-story-media{position:relative;top:auto}}
.service-story-layout,.service-story-layout>*,.service-story li{min-width:0}
@media(max-width:800px){
  .landing-flow a,.landing-flow button,.landing-flow input,.landing-flow select,.landing-flow textarea,.site-footer a{min-block-size:44px}
  .landing-flow a,.site-footer a{display:inline-flex;align-items:center}
  .home-news article a,.contact-close aside a{padding-block:.5rem}
}

/* Consolidated compact post-hero correction. */
.guided-finder{max-block-size:900px;padding-block:2rem}.guided-finder header{margin-bottom:1.25rem}.guided-finder header h2{font-size:clamp(2rem,3.5vw,3.5rem)}.finder-cockpit{min-height:0;max-height:610px}.finder-preview-visual{min-height:190px}.finder-preview-copy{padding:1rem}.finder-preview-copy h3{font-size:clamp(1.35rem,2.2vw,2.1rem)}.finder-family-nav button,.finder-product-list button{min-height:44px;padding:.5rem .8rem}
.service-story{max-block-size:900px;padding:2.5rem clamp(1rem,8vw,9rem)}.service-story header{margin-bottom:1.5rem}.service-story h2{font-size:clamp(2.25rem,3.7vw,48px)}.service-story-layout{grid-template-columns:minmax(15rem,.62fr) minmax(22rem,1.38fr);gap:clamp(1.5rem,4vw,4rem)}.service-step-list{align-content:start}.service-story .service-step-list li{border-top:1px solid var(--line)}.service-story .service-step-list button{min-height:72px;padding:.7rem 0;align-items:center}.service-story .service-step-list button span{font-variant-numeric:tabular-nums}.service-story .service-step-list button strong{font-size:1rem}.service-story-stage{display:grid;grid-template-columns:minmax(14rem,.82fr) minmax(18rem,1.18fr);gap:1.25rem;align-items:start}.service-story-details{min-height:270px}.service-story-details article{padding:1rem 0}.service-story-details article span{color:var(--signal);font-size:.75rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.service-story-details h3{max-width:13ch;margin:.55rem 0 .8rem;font-size:clamp(1.6rem,2.6vw,2.7rem);line-height:.95}.service-story-details p{max-width:36ch;margin:0;color:var(--muted);line-height:1.5}.service-story-media{position:sticky;top:6.5rem;max-width:none;height:290px;margin:0}.service-story-media img{height:260px}@media(min-width:801px){html[data-enhanced="true"] .service-story-details article:not(.is-active){display:none}}
.home-about{max-block-size:620px;padding-block:3rem}.home-about-media{height:320px}.home-about h2{font-size:clamp(2rem,3.3vw,3.5rem)}.editorial-evidence{padding-block:3rem}.home-news>header{margin-bottom:1.25rem}.home-news h2{font-size:clamp(2rem,3.5vw,3.5rem)}.field-reel{margin-top:1.5rem;padding-top:1rem}.field-reel header{margin-bottom:.65rem}.contact-close{max-block-size:760px;padding-block:3rem}.contact-close .contact-route-copy h2{font-size:clamp(2rem,3.5vw,3.6rem)}.contact-close form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:1rem}.contact-close form label:nth-of-type(7),.contact-close form button,.contact-close .share-controls{grid-column:1/-1}.contact-close textarea{min-height:72px}
html[data-enhanced="true"] .landing-flow .route-reveal{transition:clip-path .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1)}html[data-enhanced="true"] .landing-flow .route-reveal[data-flow-state="approaching"]{clip-path:inset(3% 0 0 0);filter:none;transform:translateY(16px)}
@media(max-width:800px){.guided-finder{max-block-size:1450px;padding-block:2rem}.finder-preview-visual{min-height:200px}.service-story{max-block-size:1250px;padding-block:2.25rem}.service-story h2{font-size:clamp(2rem,9vw,36px)}.service-story-layout,.service-story-stage{display:block}.service-story .service-step-list button{min-height:64px}.service-story-details{min-height:0;margin-top:1rem}.service-story-details article{padding:.8rem 0}.service-story-details article:not(.is-active){display:none}.service-story-details h3{font-size:1.7rem}.service-story-media{position:relative;top:auto;height:auto;margin-top:1rem}.service-story-media img{height:220px}.home-about{max-block-size:none;padding-block:2.5rem}.home-about-media{height:200px}.editorial-evidence{padding-block:2.5rem}.field-reel{margin-top:1rem}.contact-close{max-block-size:1000px;padding-block:2.5rem}.contact-close form{grid-template-columns:1fr}.contact-close form label:nth-of-type(7),.contact-close form button,.contact-close .share-controls{grid-column:auto}.contact-close textarea{min-height:64px}}

/* Finder distillation: category first, then one product-and-preview workspace. */
.finder-family-nav{grid-template-columns:repeat(7,minmax(0,1fr));margin:0;border-block:1px solid var(--line);background:#fff}.finder-family-nav button{min-height:52px;border-inline-end:1px solid var(--line);background:#fff}.finder-family-nav button:last-child{border-inline-end:0}.finder-cockpit{display:grid;grid-template-columns:minmax(18rem,.78fr) minmax(21rem,1.22fr);min-height:0;max-height:560px;margin-top:0;border-bottom:1px solid var(--line);background:#fff}.finder-product-plane{border-inline-end:1px solid var(--line)}.finder-preview{grid-column:auto;border-inline-end:0}.finder-preview-visual{min-height:220px}.finder-preview-copy h3{font-size:clamp(1.35rem,2.2vw,2.1rem)}html[dir="rtl"] .finder-product-plane,html[dir="rtl"] .finder-preview{grid-column:auto}
@media(max-width:800px){.finder-family-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.finder-family-nav button{min-height:52px;border-bottom:1px solid var(--line)}.finder-cockpit{display:block;max-height:none}.finder-product-plane,.finder-preview{border-inline-end:0;border-bottom:1px solid var(--line)}}

/* Editorial news rebuild: one lead, two supporting reads, then field evidence. */
.home-news.editorial-evidence{max-width:1180px;margin-inline:auto;padding-block:clamp(2.5rem,5vw,4.5rem)}.home-news>header{align-items:baseline;margin-bottom:clamp(1.25rem,2.5vw,2rem)}.home-news h2{font-size:clamp(2rem,3.4vw,3.4rem);line-height:.98}.news-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(18rem,5fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:start}.news-lead,.news-support-story{min-width:0}.news-lead img{display:block;width:100%;aspect-ratio:16/9;max-height:380px;object-fit:cover}.news-story-copy{padding-top:.8rem}.news-story-copy time{display:block;color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.news-story-copy h3{margin:.4rem 0 .75rem;line-height:1.04}.news-lead h3{max-width:24ch;font-size:clamp(1.65rem,2.6vw,2.2rem)}.news-support{display:grid;gap:clamp(1rem,2.2vw,1.5rem)}.news-support-story{display:grid;grid-template-columns:clamp(8.75rem,15vw,13.75rem) minmax(0,1fr);gap:1rem;padding-bottom:clamp(1rem,2vw,1.5rem);border-bottom:1px solid var(--line)}.news-support-story img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.news-support-story .news-story-copy{padding-top:0}.news-support-story h3{font-size:clamp(1.25rem,1.7vw,1.5rem)}.field-reel{margin-top:clamp(1.75rem,4vw,3rem);padding-top:1rem}.field-reel header{gap:.8rem;margin-bottom:.75rem}.reel-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;overflow:hidden}.reel-track figure{margin:0;background:#eaf2f5}.reel-track img{display:block;width:100%;block-size:clamp(7.5rem,10vw,9.25rem);object-fit:cover}.reel-track figcaption{padding:.45rem .6rem;color:var(--muted);font-size:.75rem}
@media(max-width:800px){.home-news.editorial-evidence{padding-inline:1rem;padding-block:2.5rem}.home-news>header{display:flex;align-items:baseline;gap:1rem}.home-news h2{font-size:clamp(2rem,9vw,2.7rem)}.news-layout{grid-template-columns:1fr;gap:1.5rem}.news-lead img{max-height:220px}.news-lead h3{font-size:clamp(1.55rem,7vw,2rem)}.news-support{gap:1rem}.news-support-story{grid-template-columns:minmax(0,8.75rem) minmax(0,1fr);gap:.8rem;padding-bottom:1rem}.news-support-story h3{font-size:clamp(1.1rem,5.5vw,1.35rem)}.reel-track{grid-template-columns:repeat(2,minmax(0,1fr))}.reel-track img{block-size:7.5rem}}

/* Cascade correction: these scopes outrank the legacy homepage and reel defaults. */
.home-news>.news-layout{grid-template-columns:minmax(0,7fr) minmax(18rem,5fr);background:transparent}.home-news .field-reel .reel-track{grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.home-news .field-reel h2{max-width:none;margin:0;font-size:1rem;line-height:1.1;letter-spacing:normal}.home-news .field-reel header{display:flex;align-items:baseline;justify-content:flex-start}.home-news .field-reel p{max-width:58ch}
@media(max-width:800px){.home-news>.news-layout{grid-template-columns:1fr}.home-news .field-reel .reel-track{grid-template-columns:repeat(2,minmax(0,1fr))}.home-news .field-reel header{display:flex;align-items:baseline;gap:.75rem}.home-news .field-reel h2{font-size:1rem}.home-news .field-reel p{font-size:.78rem}.home-news .field-reel .reel-track img{block-size:6.25rem}}

/* Durable compact field evidence override */
.landing-flow .home-news.editorial-evidence .field-reel{max-block-size:340px;overflow:clip;padding-inline:0;padding-block-end:1rem}
.landing-flow .home-news.editorial-evidence .field-reel h2{max-width:none;margin:0;font-size:clamp(1rem,1.25vw,1.25rem);line-height:1.1;letter-spacing:normal}
.landing-flow .home-news.editorial-evidence .field-reel p{max-width:58ch;margin:0;color:var(--muted);font-size:.84rem;line-height:1.35}
.landing-flow .home-news.editorial-evidence .field-reel .reel-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;overflow:hidden;margin:0;padding:0}
.landing-flow .home-news.editorial-evidence .field-reel figure{min-width:0;max-width:none;overflow:hidden}
.landing-flow .home-news.editorial-evidence .field-reel img{display:block;width:100%;block-size:clamp(7rem,9vw,9.25rem);aspect-ratio:auto;object-fit:cover}
.landing-flow .home-news.editorial-evidence .field-reel figcaption{padding:.45rem .6rem;font-size:.75rem;line-height:1.25;overflow-wrap:anywhere}
@media(max-width:800px){
  .landing-flow .home-news.editorial-evidence .field-reel{max-block-size:430px}
  .landing-flow .home-news.editorial-evidence .field-reel header{display:block;margin-bottom:.75rem}
  .landing-flow .home-news.editorial-evidence .field-reel .reel-track{grid-template-columns:repeat(2,minmax(0,1fr))}
  .landing-flow .home-news.editorial-evidence .field-reel img{block-size:clamp(5.75rem,28vw,7rem)}
}

/* ============================================================
   Final polish layer.
   The post-hero canvas is white with navy type and one orange signal.
   These rules bring the rest of the site onto that same system and repair
   three defects the masthead cascade had introduced: an unreadable footer,
   a centred Products panel, and an invisible panel link.
   Appended last so it wins on order rather than by weight.
   ============================================================ */

/* --- masthead: a restrained signal underline, thinner than a rule --- */
.route-head>nav>a::after,.products-trigger::after{height:2px;transition-duration:.26s}

/* --- Products panel ---
   It lives inside the masthead nav, so `.route-head nav a` (centred, white)
   reached it and beat the panel's own rules. Restate them here. */
.route-head .products-mega{width:min(560px,calc(100vw - 2rem));padding:.85rem}
.route-head .products-mega>div{gap:.1rem .5rem}
.route-head .products-mega a{place-items:start;justify-items:start;align-content:start;min-height:56px;padding:.55rem .6rem;color:var(--ink);text-align:start}
.route-head .products-mega a:hover,.route-head .products-mega a:focus-visible{background:var(--canvas-soft);color:var(--signal)}
.route-head .products-mega strong{font-size:.88rem;font-weight:800}
.route-head .products-mega a:hover strong,.route-head .products-mega a:focus-visible strong{color:var(--signal)}
.route-head .products-mega span{margin-top:.2rem;font-size:.71rem;line-height:1.3;color:var(--muted)}
.route-head .products-mega footer{margin-top:.55rem;padding:.7rem .6rem 0;font-size:.75rem}
.route-head .products-mega footer a{justify-items:start;padding:.3rem .1rem;color:var(--ink);font-weight:800;border-bottom:1px solid var(--signal)}
.route-head .products-mega footer a:hover{background:transparent;color:var(--signal)}

/* --- footer: navy close, legible type ---
   An earlier rule left ink text on the near-black plate. */
.site-footer{background:var(--ink);color:#c3d2dc;border-top:0;border-bottom:0;padding-block:clamp(2.2rem,4vw,3.4rem)}
.site-footer strong{display:block;margin-bottom:.55rem;color:#fff;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.site-footer a{color:#dbe6ec;font-weight:500;text-decoration:none}
.site-footer a:hover,.site-footer a:focus-visible{color:var(--signal)}
.site-footer nav,.footer-taxonomy>div{display:grid;align-content:start;gap:.4rem;font-size:.83rem}
.footer-taxonomy{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.2rem,3vw,2.6rem)}
.site-footer .share-control{background:transparent;border-color:rgb(255 255 255/.26);color:#dbe6ec}
.site-footer .share-control:hover{background:transparent;border-color:var(--signal);color:var(--signal)}

/* --- floating WhatsApp: one deliberate signal button --- */
.mobile-contact{border:0;background:var(--signal);color:#fff;border-radius:50%;box-shadow:0 12px 26px rgb(16 38 56/.28)}
.mobile-contact svg{stroke-width:1.55}
.mobile-contact:hover{background:var(--ink)}

/* --- internal hero: same voice as the plate titles, one size down --- */
.inner-hero h1,.article h1{max-width:16ch;font-size:clamp(2.4rem,5.2vw,4.2rem);line-height:.94;letter-spacing:-.045em}
.inner-hero,.article{padding-block:clamp(7rem,12vw,10rem) clamp(2.5rem,5vw,4.5rem)}
.inner-hero h1+p,.article .lead{max-width:56ch;font-size:1.02rem;line-height:1.6}
.inner-hero>p:first-child,.article>p:first-child{font-size:.7rem;letter-spacing:.2em}

/* --- internal sections join the white canvas --- */
.content-grid,.catalog-grid,.faq-list,.field-grid,.empty-family,.equipment-route{
  background:var(--canvas);
  color:var(--ink);
  padding-inline:clamp(1.25rem,5vw,4rem);
  padding-block:clamp(3rem,5.5vw,5.5rem);
}
.content-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:clamp(1.4rem,2.4vw,2.6rem)}
.content-grid article{padding:1.4rem 0 0;border:0;border-top:2px solid var(--ink);background:transparent}
.content-grid h2{margin:0 0 .5rem;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.2;letter-spacing:-.02em}
.content-grid p{margin:0 0 1rem;max-width:44ch;color:var(--muted);font-size:.9rem;line-height:1.6}
.content-grid a,.empty-family a{font-weight:800;font-size:.76rem;letter-spacing:.11em;text-transform:uppercase}
.content-grid a{color:var(--ink);border-bottom:1px solid var(--signal);text-decoration:none;padding-bottom:.15rem}
.content-grid a:hover{color:var(--signal)}
.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr));gap:clamp(1.4rem,2.4vw,2.4rem)}
.catalog-card{padding:0;border:0;background:transparent}
.catalog-card img{height:200px;margin:0 0 .9rem;padding:8%;background:var(--canvas-soft)}
.catalog-card>p:first-child{margin:0 0 .55rem;color:var(--muted);font:800 .68rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em;text-transform:uppercase}
.catalog-card h2{margin:0 0 .45rem;font-size:1.02rem;line-height:1.25;letter-spacing:-.02em}
.catalog-card p{margin:0 0 .5rem;color:var(--muted);font-size:.86rem;line-height:1.55;max-width:42ch}
.catalog-card a{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);border-bottom:1px solid var(--signal);text-decoration:none;font-size:.74rem;letter-spacing:.11em;text-transform:uppercase}
.catalog-card a:hover{color:var(--signal)}
.missing-visual{height:200px;margin:0 0 .9rem;background:var(--canvas-soft);color:var(--muted);font:800 .66rem/1.4 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:center}
.faq-list{gap:0;max-width:64rem}
.faq-list details{padding:1.1rem 0;border-bottom:1px solid var(--line)}
.faq-list summary{font-size:1rem;font-weight:700;letter-spacing:-.01em}
.faq-list details p{margin:.7rem 0 0;max-width:62ch;color:var(--muted);line-height:1.65}
.empty-family{background:var(--canvas)}
.empty-family a{background:var(--ink);color:#fff;border:0}
.empty-family a:hover{background:var(--signal)}

/* --- chantiers: a four-up field strip, cropped to remove letterboxing --- */
.field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.6vw,1.6rem)}
.field-grid figure{background:var(--canvas-soft)}
.field-grid img{aspect-ratio:4/5;object-fit:cover;object-position:center}
.field-grid figcaption{padding:.7rem 0 0;color:var(--ink);font-size:.82rem;font-weight:600;letter-spacing:-.01em}

/* --- services page: an editorial ledger, not equal cards --- */
.service-ledger h2{font-size:clamp(1.2rem,1.9vw,1.7rem);line-height:1.15;letter-spacing:-.025em}
.service-ledger p{color:var(--muted);font-size:.9rem;line-height:1.62}
.service-stock{background:var(--canvas-soft)}
.service-stock h2{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.05;letter-spacing:-.035em}
.service-stock a{background:var(--ink);color:#fff}
.service-stock a:hover{background:var(--signal)}

/* --- products page console: the homepage catalogue voice --- */
.equipment-route>header{max-width:64rem}
.equipment-route>header p{color:var(--muted);font:800 .68rem/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.equipment-route>header h2{font-size:clamp(1.7rem,3.1vw,2.7rem);line-height:1.06;letter-spacing:-.032em;max-width:20ch}
.equipment-route .family-rail button{border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:start;font-size:.85rem;font-weight:600}
.equipment-route .family-rail button:hover:not([disabled]){color:var(--signal)}
.equipment-route .product-rail{border:0;border-top:1px solid var(--ink);max-height:430px}
.equipment-route .product-rail button{border-bottom:1px solid var(--line);background:transparent;text-align:start}
.equipment-route .product-rail button:hover{background:var(--canvas-soft)}
.equipment-route .product-focus,.equipment-route .product-visual{background:var(--canvas-soft)}
.equipment-route .product-visual img{padding:6%}
.equipment-route [data-catalog-search]{border:0;border-bottom:1px solid var(--ink);background:transparent;border-radius:0;padding-inline:0}
.equipment-route [data-catalog-search]:focus-visible{outline:2px solid var(--signal);outline-offset:3px}

.contact-route-copy h2{font-size:clamp(1.9rem,3.4vw,3.1rem);line-height:1.04;letter-spacing:-.035em;max-width:13ch}

/* --- article --- */
.article p{max-width:60ch;color:var(--muted);line-height:1.75}
.article .lead{color:var(--ink)}
.article a{color:var(--ink);border-bottom:1px solid var(--signal);text-decoration:none}

@media(max-width:900px){
  .footer-taxonomy{grid-template-columns:repeat(2,minmax(0,1fr))}
  .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}
}
@media(max-width:560px){
  .footer-taxonomy{grid-template-columns:minmax(0,1fr)}
  .field-grid{grid-template-columns:minmax(0,1fr)}
  .field-grid img{aspect-ratio:4/3}
}

/* --- corrections after the first visual pass --- */
.route-head .products-mega footer a{align-items:center;border-bottom:0;text-decoration:underline;text-decoration-color:var(--signal);text-decoration-thickness:1px;text-underline-offset:5px}
/* One WhatsApp action, in the same corner at every width. */
.mobile-contact{position:fixed;z-index:19;inset-inline-end:clamp(1rem,2vw,1.6rem);inset-block-end:clamp(1rem,2vw,1.6rem);inset-inline-start:auto;min-width:52px;min-height:52px;padding:0;transition:background-color .24s ease,opacity .3s ease}
[dir="rtl"] .mobile-contact{right:auto}
.mobile-contact:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
/* The reference list fills the console instead of leaving a dead column. */
.equipment-route .product-rail{max-height:none;block-size:100%}
/* Arabic: no upper case, and tracking loosens the script without adding hierarchy. */
[dir="rtl"] .site-footer strong,[dir="rtl"] .contact-route label,[dir="rtl"] .contact-route button,
[dir="rtl"] .content-grid a,[dir="rtl"] .catalog-card a,[dir="rtl"] .catalog-card>p:first-child,
[dir="rtl"] .equipment-route>header p,[dir="rtl"] .missing-visual{text-transform:none;letter-spacing:normal}

/* Text-safe variants of the signal.
   #ff6337 on white is ~3:1 — fine for rules, ticks, focus rings and other
   non-text marks, short of AA for small type or for white text on a filled
   button. These two carry the same signal at a legible contrast. */
:root{--signal-text:#c8431f;--signal-solid:#d4451d}
.content-grid a:hover,.catalog-card a:hover,.site-footer a:hover,.site-footer a:focus-visible,
.route-head .products-mega a:hover,.route-head .products-mega a:focus-visible,
.route-head .products-mega a:hover strong,.route-head .products-mega footer a:hover,
.equipment-route .family-rail button:hover:not([disabled]){color:var(--signal-text)}
.empty-family a:hover,.service-stock a:hover,.contact-route button:hover,.mobile-contact{background:var(--signal-solid)}
.mobile-contact:hover{background:var(--ink)}
.site-footer .share-control:hover{border-color:var(--signal);color:var(--signal-text)}

/* Pointer targets: text links in the footer and in the plate footers sat under
   24px tall. */
.site-footer a{display:inline-flex;align-items:center;min-height:26px}
.site-footer .share-controls a,.site-footer .share-control{min-height:44px}
/* The WhatsApp action stands down while the hero owns the screen, at every
   width — the mobile rule already did this and the hero must stay clear. */
.hero-in-view .mobile-contact{opacity:0;pointer-events:none}
.hero-onscreen .mobile-contact{opacity:0;pointer-events:none}
/* The panel sat .4rem below the trigger, and that gap is outside the nav box,
   so pointerleave fired and closed the panel before the cursor could reach
   it. The panel now meets the trigger and keeps the optical gap as padding. */
.route-head .products-mega{top:100%;padding-top:1.25rem}

/* --- one gutter for the whole site ---
   The internal sections were full-bleed with their own padding while the
   plate sections sit in a 1220px measure, so their left edges disagreed by
   about 100px at desktop. This resolves to the same line at every width. */
.inner-hero,.article,.content-grid,.catalog-grid,.faq-list,.field-grid,.empty-family,
.equipment-route,.service-ledger,.service-stock,.contact-route,.disclaimer{
  padding-inline:max(clamp(20px,5vw,60px),calc(50vw - 550px));
}
.faq-list{max-width:none}
/* the return link should hug its label, not stretch across the hero */
.finder-return{align-self:start;justify-self:start;width:fit-content;max-width:100%}

/* --- product-family masthead: compact editorial introduction, not a full-screen media wall --- */
.inner-hero--product{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(16rem,.88fr);
  grid-template-rows:auto auto auto auto;
  align-content:center;
  column-gap:clamp(2rem,7vw,7rem);
  row-gap:.7rem;
  padding-block:clamp(6.5rem,10vw,8.5rem) clamp(3rem,5vw,4.5rem);
  background:var(--canvas);
  color:var(--ink);
}
.inner-hero--product::after{display:none}
.inner-hero--product .inner-hero-media{
  position:relative;
  inset:auto;
  z-index:0;
  grid-column:2;
  grid-row:1 / -1;
  align-self:center;
  justify-self:stretch;
  width:100%;
  height:clamp(16rem,30vw,23rem);
  padding:clamp(1rem,3vw,2.25rem);
  object-fit:contain;
  object-position:center;
  background:var(--media-well);
  opacity:1;
  filter:none;
}
.inner-hero--product>p,
.inner-hero--product h1,
.inner-hero--product a{grid-column:1;position:relative;z-index:1}
.inner-hero--product>p:first-child{margin:0 0 .1rem;color:var(--signal-text);font-size:.68rem;letter-spacing:.2em}
.inner-hero--product h1{max-width:11ch;margin:0;font-size:clamp(3rem,6vw,5.4rem);line-height:.9;letter-spacing:-.06em}
.inner-hero--product h1+p{max-width:44ch;margin:.35rem 0 .9rem;color:var(--muted);font-size:1.04rem;line-height:1.55}
.inner-hero--product .finder-return{margin-top:.1rem;color:var(--ink);border-bottom:1px solid var(--signal-text);text-decoration:none}
.inner-hero--product .finder-return:hover{color:var(--signal-text)}

@media(max-width:800px){
  .inner-hero--product{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto;
    gap:.7rem;
    padding-block:4.75rem 2rem;
  }
  .inner-hero--product .inner-hero-media{
    grid-column:1;
    grid-row:auto;
    order:5;
    width:100%;
    height:min(14rem,58vw);
    margin-top:.9rem;
    padding:1rem;
  }
  .inner-hero--product h1{font-size:clamp(2.75rem,14vw,4.2rem)}
  .inner-hero--product h1+p{font-size:.95rem}
}

html[dir="rtl"] .inner-hero--product .inner-hero-media{grid-column:2}
@media(max-width:800px){html[dir="rtl"] .inner-hero--product .inner-hero-media{grid-column:1}}

/* --- article: a meta rail beside the text --- */
.article{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:start}
.article-rail{display:grid;align-content:start;gap:10px}
.article-rail p{margin:0;font:700 10.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:var(--signal-text)}
.article-body{min-width:0;max-width:68ch}
.article-body h1{max-width:20ch}
.article-cta{display:inline-flex;align-items:center;min-height:48px;margin-top:.5rem;padding-inline:1.6rem;background:var(--ink);color:#fff;font:800 .72rem/1 system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;text-decoration:none;border:0}
.article-cta:hover{background:var(--signal-solid)}
[dir="rtl"] .article-cta{letter-spacing:normal;text-transform:none}
@media(max-width:760px){
  .article{grid-template-columns:minmax(0,1fr);gap:14px}
}
/* A Latin phone number inside RTL text reorders to 46 01 25 45 222+ unless it
   is given its own direction. */
[dir="rtl"] a[href^="tel:"]{direction:ltr;unicode-bidi:embed;display:inline-block}
/* the four services are linked from the homepage method band */
.service-ledger article{scroll-margin-top:clamp(88px,12vh,140px)}
.footer-place{margin:.15rem 0 0;color:#9fb2c0;font-size:.83rem}
.footer-fax{margin:.15rem 0 0;color:#9fb2c0;font-size:.83rem}
.footer-fax span:first-child{color:#7d93a4}
.footer-legal{grid-column:1/-1;margin:1.6rem 0 0;padding-top:1.2rem;border-top:1px solid rgb(255 255 255/.12);color:#7d93a4;font-size:.78rem}

/* Product detail pages: editorial rows keep the full local product record visible. */
.product-detail-list{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(3rem,7vw,6rem);padding-block:clamp(3rem,7vw,7rem);background:var(--canvas)}
.product-detail-card{display:grid;grid-template-columns:minmax(18rem,.9fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:start;padding-block:clamp(1.5rem,3vw,3rem);border-block-start:1px solid var(--line)}
.product-detail-card:first-child{border-block-start:0}
.product-detail-media{display:grid;place-items:center;align-self:start;block-size:clamp(22.5rem,27vw,30rem);min-height:0;overflow:hidden;background:var(--canvas-soft)}
.product-detail-media img{display:block;width:100%;height:100%;min-height:0;margin:0;object-fit:contain;padding:clamp(1rem,4vw,3rem)}
.product-detail-ref,.product-guide-kicker{margin:0 0 .7rem;color:var(--signal-text);font:800 .68rem/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.product-detail-copy h2{max-width:16ch;margin:0 0 .8rem;font-size:clamp(1.8rem,3.2vw,3.2rem);line-height:.98;letter-spacing:-.045em}
.product-detail-spec{margin:0 0 1.25rem;padding-block:.7rem;border-block:1px solid var(--line);color:var(--ink);font:700 .8rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}
.product-detail-description{max-width:58ch;margin:0 0 1.5rem;color:var(--muted);line-height:1.7}
.product-detail-cta,.product-request-guide>a{display:inline-flex;align-items:center;min-height:48px;padding-inline:1.35rem;background:var(--ink);color:#fff!important;font:800 .72rem/1 system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;text-decoration:none}
.product-detail-cta:hover,.product-request-guide>a:hover{background:var(--signal)}
.product-detail-cta:focus-visible,.product-request-guide>a:focus-visible{color:#fff!important;outline:3px solid var(--signal);outline-offset:4px}
.product-request-guide{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;margin:0 clamp(1rem,8vw,9rem);padding-block:clamp(2rem,4vw,3rem);border-block:1px solid var(--line);background:var(--canvas-soft)}
.product-request-guide h2{margin:0 0 .6rem;font-size:clamp(1.5rem,2.7vw,2.5rem);line-height:1;letter-spacing:-.04em}
.product-request-guide p{max-width:58ch;margin:0;color:var(--muted);line-height:1.65}
.product-related{padding:clamp(2rem,4vw,3.5rem) clamp(1rem,8vw,9rem);background:var(--canvas)}
.product-related h2{margin:0 0 1rem;font-size:clamp(1.5rem,2.7vw,2.5rem);letter-spacing:-.04em}
.product-related ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 2rem;margin:0;padding:0;list-style:none}
.product-related li{border-block-end:1px solid var(--line)}
.product-related a{display:flex;justify-content:space-between;gap:1rem;padding-block:1rem;color:var(--ink);text-decoration:none}
.product-related a:hover{color:var(--signal-text)}
.product-related b{color:var(--muted);font:700 .72rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}
[dir="rtl"] .product-detail-ref,[dir="rtl"] .product-guide-kicker{letter-spacing:normal;text-transform:none;font-size:.78rem}
@media(max-width:900px){
  .product-detail-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:1.5rem}
  .product-detail-media{block-size:clamp(15rem,48vw,22.5rem);min-height:0}
  .product-request-guide{grid-template-columns:1fr;align-items:start}
  .product-request-guide>a{justify-self:start}
}
@media(max-width:560px){
  .product-detail-list{padding-inline:1rem}
  .product-detail-card{padding-block:1.5rem}
  .product-detail-media{block-size:clamp(15rem,70vw,22.5rem)}
  .product-request-guide{margin-inline:1rem}
}

/* --- family browser: compact index, one persistent detail --- */
.family-browser{padding:clamp(2.5rem,5vw,5rem) max(clamp(20px,5vw,60px),calc(50vw - 550px));background:var(--canvas);color:var(--ink);overflow:clip}
.family-browser-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.8fr);gap:clamp(1.5rem,5vw,5rem);align-items:end;padding-block-end:clamp(1.5rem,3vw,2.5rem);border-block-end:1px solid var(--line)}
.family-browser-kicker{margin:0 0 .65rem;color:var(--signal-text);font:800 .68rem/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.family-browser-head h2{max-width:14ch;margin:0;font-size:clamp(2rem,3.8vw,3.5rem);line-height:.96;letter-spacing:-.05em}
.family-browser-search{display:grid;gap:.45rem;color:var(--muted);font:800 .65rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.family-browser-search input{min-height:46px;border:1px solid var(--line);border-radius:0;background:var(--canvas-soft);color:var(--ink);padding:.65rem .8rem;font-family:inherit;font-size:.95rem;font-weight:400;line-height:1.4}
.family-browser-search input:hover{border-color:var(--muted)}
.family-browser-search input:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-color:var(--signal)}
.family-mobile-picker{display:none}
.family-browser-layout{display:grid;grid-template-columns:minmax(15rem,.58fr) minmax(0,1.42fr);border-block-end:1px solid var(--line)}
.family-index{min-width:0;border-inline-end:1px solid var(--line);padding-block:1.25rem}
.family-index>p{display:flex;align-items:baseline;justify-content:space-between;margin:0;padding:0 1.1rem .75rem;color:var(--muted);font:800 .67rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.family-index>p span{font:700 .74rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}
.family-index ol{list-style:none;max-block-size:min(42rem,calc(100svh - 13rem));overflow-y:auto;overflow-x:hidden;margin:0;padding:0;border-block-start:1px solid var(--line)}
.family-index li{border-block-end:1px solid var(--line)}
.family-index-item{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:.7rem;align-items:center;width:100%;min-height:50px;border:0;background:transparent;color:var(--ink);padding:.55rem 1.1rem;text-align:start;font-family:inherit;font-size:.88rem;font-weight:600;line-height:1.25;cursor:pointer}
.family-index-item b{color:var(--muted);font:700 .7rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.07em}
.family-index-item:hover{background:var(--canvas-soft)}
.family-index-item.is-selected{background:var(--ink);color:#fff}
.family-index-item.is-selected b{color:var(--signal)}
.family-index-item:focus-visible{outline:2px solid var(--signal);outline-offset:-3px}
.family-detail-stage{min-width:0;background:var(--canvas-soft)}
html[data-enhanced] .family-detail-panel:not(.is-active){display:none}
.family-detail-panel{display:grid;grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);grid-template-rows:minmax(0,1fr) auto;gap:clamp(1.4rem,4vw,3.4rem);align-items:start;min-width:0;padding:clamp(1.25rem,3vw,3rem)}
.family-detail-media{display:grid;place-items:center;min-width:0;min-height:clamp(15rem,28vw,24rem);background:var(--canvas);overflow:hidden}
.family-detail-media img{display:block;width:100%;height:100%;min-height:clamp(15rem,28vw,24rem);object-fit:contain;padding:clamp(1.25rem,4vw,3.5rem)}
.family-detail-media p{margin:1rem;color:var(--muted);font:800 .68rem/1.4 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:center}
.family-detail-copy{min-width:0;padding-block:.25rem}
.family-detail-ref{margin:0 0 .75rem;color:var(--signal-text);font:800 .7rem/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.family-detail-copy h2{max-width:14ch;margin:0 0 1rem;font-size:clamp(1.8rem,3.2vw,3.3rem);line-height:.96;letter-spacing:-.05em}
.family-detail-spec{margin:0 0 1.2rem;padding-block:.7rem;border-block:1px solid var(--line);color:var(--ink);font:700 .78rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}
.family-detail-description{max-width:54ch;margin:0 0 1.35rem;color:var(--muted);font-size:.92rem;line-height:1.7}
.family-detail-quote{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding-inline:1.25rem;background:var(--signal-solid);color:#fff!important;font:800 .7rem/1 system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;text-decoration:none}
.family-detail-quote:hover{background:var(--ink)}
.family-detail-quote:focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.family-detail-nav{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-block-start:1rem;border-block-start:1px solid var(--line)}
.family-detail-nav a{display:grid;gap:.35rem;min-height:44px;color:var(--ink);text-decoration:none}
.family-detail-nav a:last-child{text-align:end}
.family-detail-nav span{color:var(--muted);font:800 .62rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.family-detail-nav b{font:700 .74rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}
.family-detail-nav a:hover{color:var(--signal-text)}
.family-detail-nav a:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
.family-browser-empty{margin:0;padding:2rem;color:var(--muted);font-size:.9rem}
.family-browser-empty[hidden]{display:none}
[dir="rtl"] .family-detail-nav a:last-child{text-align:start}
[dir="rtl"] .family-detail-nav a:first-child{text-align:end}
@media(max-width:900px){
  .family-browser{padding-inline:max(1rem,calc(50vw - 360px))}
  .family-browser-head{grid-template-columns:minmax(0,1fr);gap:1.25rem;align-items:start}
  .family-browser-head h2{max-width:18ch}
  .family-browser-layout{grid-template-columns:minmax(0,1fr)}
  .family-index{border-inline-end:0;display:none}
  .family-mobile-picker{display:grid;gap:.45rem;padding-block:1rem;border-block-end:1px solid var(--line);color:var(--muted);font:800 .65rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
  .family-mobile-picker select{min-height:46px;border:1px solid var(--line);border-radius:0;background:var(--canvas);color:var(--ink);padding:.65rem .75rem;font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.35}
  .family-mobile-picker select:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-color:var(--signal)}
  .family-detail-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:1.25rem;padding:1rem}
  .family-detail-media,.family-detail-media img{min-height:clamp(13rem,54vw,20rem);height:clamp(13rem,54vw,20rem)}
  .family-detail-copy{padding-block:0}
  .family-detail-copy h2{max-width:18ch;font-size:clamp(1.75rem,8vw,2.7rem)}
  .family-detail-quote{width:100%}
  .family-detail-nav{grid-column:1;gap:.75rem}
}
@media(max-width:560px){
  .family-browser{padding-block:2.5rem 3rem;padding-inline:1rem}
  .family-browser-head h2{font-size:clamp(1.9rem,10vw,2.7rem)}
  .family-detail-description{font-size:.88rem}
  .family-detail-nav span{font-size:.58rem;letter-spacing:.08em}
}

/* --- approved product-family canvas --- */
body:has(.family-intro) .route-head,body:not(:has([data-landing-flow])):has(.contact-route) .route-head{
  background:#fff;
  color:var(--ink);
  border-bottom:1px solid var(--line);
  box-shadow:0 4px 18px rgb(16 38 56/.05);
}
body:has(.family-intro) .route-head.is-scrolled,body:not(:has([data-landing-flow])):has(.contact-route) .route-head.is-scrolled{background:#fff}
body:has(.family-intro) .route-head .brand img,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .brand img{filter:none}
body:has(.family-intro) .route-head .brand-wordmark,body:has(.family-intro) .route-head nav a,body:has(.family-intro) .language-switch,body:has(.family-intro) .head-action,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .brand-wordmark,body:not(:has([data-landing-flow])):has(.contact-route) .route-head nav a,body:not(:has([data-landing-flow])):has(.contact-route) .language-switch,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .head-action{color:var(--ink)}
body:has(.family-intro) .route-head .language-switch a,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .language-switch a{color:var(--ink)}
body:has(.family-intro) .route-head .head-action,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .head-action{border-color:var(--ink)}
body:has(.family-intro) .route-head .head-action:hover,body:not(:has([data-landing-flow])):has(.contact-route) .route-head .head-action:hover{background:var(--ink);color:#fff}
body:has(.family-intro) .menu-toggle,body:not(:has([data-landing-flow])):has(.contact-route) .menu-toggle{background:#fff;color:var(--ink);border-color:var(--line)}

.family-intro{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(25rem,.95fr);
  gap:clamp(2rem,7vw,7rem);
  align-items:end;
  padding:5.8rem clamp(1rem,2.2vw,2.25rem) 2rem;
  background:var(--canvas);
  color:var(--ink);
  border-block-end:1px solid var(--line);
}
.family-intro-copy{min-width:0}
.family-intro-path{display:flex;align-items:center;gap:.7rem;margin:0 0 1.25rem;color:var(--muted);font:600 .64rem/1 system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.family-intro-path a{color:inherit;text-decoration:none}
.family-intro-path a:hover{color:var(--signal-text)}
.family-intro-kicker{display:none}
.family-intro h1{max-width:12ch;margin:0;font-size:clamp(2.8rem,5vw,4.25rem);font-weight:750;line-height:.94;letter-spacing:-.055em;text-transform:uppercase}
.family-intro-lede{max-width:48ch;margin:1rem 0 0;color:var(--ink);font-size:clamp(.92rem,1.25vw,1.08rem);line-height:1.55}
.family-finder-return{display:inline-flex;margin-top:1rem;color:var(--signal-text);font:700 .68rem/1 system-ui,sans-serif;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.family-finder-return:hover{text-decoration:underline}
.family-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,2vw,2rem);margin:0;padding:0;list-style:none}
.family-proof li{display:grid;justify-items:center;align-content:start;gap:.45rem;min-width:0;text-align:center}
.family-proof-icon{display:grid;place-items:center;width:3.35rem;height:3.35rem;border:1px solid var(--line);border-radius:50%;color:var(--ink)}
.family-proof-icon svg{width:1.55rem;height:1.55rem;fill:none}
.family-proof strong{color:var(--ink);font-size:.78rem;font-weight:750;line-height:1.25}
.family-proof li>span:last-child{max-width:12ch;color:var(--muted);font-size:.7rem;line-height:1.3}

.family-browser{padding:0 clamp(1rem,2.2vw,2.25rem) 0;background:var(--canvas);color:var(--ink)}
.family-browser-head{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}
.family-browser-layout{grid-template-columns:minmax(15rem,23%) minmax(0,1fr);height:clamp(36rem,48vw,43rem);min-height:0;border-block-end:1px solid var(--line)}
.family-index{padding:1.15rem 0 0;border-inline-end:1px solid var(--line)}
.family-index-search{display:grid;gap:.55rem;padding:0 1rem 1rem;color:var(--muted);font:700 .62rem/1 system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase}
.family-search-control{display:grid;grid-template-columns:1.1rem minmax(0,1fr);align-items:center;gap:.6rem;min-height:42px;border:1px solid var(--line);background:var(--canvas);padding:0 .7rem}
.family-search-control svg{width:1.05rem;height:1.05rem;color:var(--ink);fill:none}
.family-search-control input{width:100%;min-height:40px;border:0;background:transparent;color:var(--ink);font-family:inherit;font-size:.88rem;letter-spacing:normal;text-transform:none}
.family-search-control input:focus{outline:0}
.family-search-control:focus-within{border-color:var(--signal);outline:2px solid var(--signal);outline-offset:2px}
.family-index>p{padding:0 1rem .7rem;border-block-start:1px solid var(--line);padding-block-start:1rem}
.family-index ol{max-block-size:calc(100% - 5.5rem);overflow-y:auto}
.family-index-item{min-height:44px;grid-template-columns:2.8rem minmax(0,1fr);padding:.5rem 1rem;font-size:.78rem}
.family-index-item.is-selected{background:var(--ink)}
.family-detail-stage{height:100%;overflow:hidden;background:var(--canvas)}
.family-detail-panel{grid-template-columns:minmax(17rem,.86fr) minmax(0,1.14fr);grid-template-rows:minmax(0,1fr) auto;gap:0;height:100%;min-height:0;overflow:hidden;padding:0;background:var(--canvas)}
.family-detail-media{min-height:0;height:100%;background:var(--canvas);border-inline-end:1px solid var(--line)}
.family-detail-media img{min-height:0;height:100%;padding:clamp(2rem,6vw,5rem);object-fit:contain}
.family-detail-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(2rem,4vw,4rem) clamp(1.5rem,4vw,4.5rem)}
.family-detail-ref{margin:0 0 1.1rem;font-size:.7rem;letter-spacing:.16em}
.family-detail-copy h2{max-width:16ch;margin:0 0 1.5rem;font-size:clamp(2rem,3.3vw,3.5rem);line-height:.97}
.family-detail-spec{width:100%;margin:0 0 1.5rem;padding:.8rem 0;border-block:1px solid var(--line);font-size:.75rem}
.family-detail-description{max-width:48ch;margin:0 0 1.8rem;font-size:.9rem;line-height:1.7}
.family-detail-quote{min-height:48px;padding-inline:1.35rem;background:var(--signal-solid);font-size:.7rem}
.family-detail-quote:hover{background:var(--ink)}
.family-detail-nav{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1.5rem;padding:1rem clamp(1rem,2.2vw,2.25rem) 1.25rem;border-block-start:1px solid var(--line);background:var(--canvas)}
.family-detail-nav a{display:grid;align-content:start;gap:.3rem;min-width:0}
.family-detail-nav a:last-child{text-align:end}
.family-detail-nav span{font-size:.58rem}
.family-detail-nav b{font-size:.7rem;color:var(--signal-text)}
.family-detail-nav strong{overflow:hidden;color:var(--ink);font-size:.72rem;font-weight:650;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.family-detail-list{display:flex!important;align-items:center;justify-content:center;gap:.55rem;min-width:9rem!important;color:var(--ink);font:700 .62rem/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.family-detail-list svg{width:1.1rem;height:1.1rem;color:var(--signal-text);fill:none}
.family-detail-list:hover{color:var(--signal-text)}

/* --- approved contact canvas --- */
body:not(:has([data-landing-flow])):has(.contact-route){background:var(--canvas);color:var(--ink)}
.contact-route{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:0;align-items:stretch;min-height:calc(100svh - 68px);padding:4.25rem clamp(1rem,2.2vw,2.25rem) 3rem;background:var(--canvas);color:var(--ink)}
.contact-route-panel{display:grid;grid-template-rows:clamp(12rem,20vw,18rem) 1fr;min-width:0;background:var(--canvas-soft);border:1px solid var(--line);border-inline-end:0}
.contact-route-media{position:relative;min-width:0;overflow:hidden;background:var(--media-well)}
.contact-route-media img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.58) contrast(1.04)}
.contact-route-media-fade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgb(16 38 56/.82) 100%)}
.contact-route-panel{display:flex;flex-direction:column}
.contact-route-media{order:2;min-height:clamp(14rem,21vw,20rem)}
.contact-route-copy{order:1;position:relative;z-index:1;min-width:0;padding:1.5rem clamp(1.25rem,3vw,2.8rem) 2.25rem;margin-top:0;color:var(--ink)}
.contact-route-brand{display:inline-flex;align-items:center;gap:.55rem;min-height:2.5rem;margin-bottom:1.3rem;color:var(--ink);font-size:.82rem;font-weight:800;letter-spacing:.09em;text-decoration:none}
.contact-route-brand img{width:2rem;height:2rem}
.contact-route-kicker{margin:0 0 .7rem;color:var(--signal-text);font:800 .65rem/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.contact-route-copy h1,.contact-route-copy h2{max-width:11ch;margin:0;font-size:clamp(2rem,3.8vw,3.9rem);line-height:.96;letter-spacing:-.05em}
.contact-route-copy>p:not(.contact-route-kicker){max-width:38ch;margin:1rem 0 1.6rem;color:var(--muted);font-size:.9rem;line-height:1.6}
.contact-route-channels{display:grid;gap:0!important;margin:0!important;padding:0!important;border-block-start:1px solid var(--line)!important}
.contact-route-channels a{display:grid!important;grid-template-columns:1.4rem minmax(0,1fr);align-items:center;gap:.7rem;min-height:3.25rem!important;padding:.65rem 0;border-block-end:1px solid var(--line);color:var(--ink);font-weight:400;text-decoration:none}
.contact-route-channels a:hover{color:var(--signal-text)}
.contact-route-channels svg{width:1.25rem;height:1.25rem;color:var(--signal-text);fill:none;stroke:currentColor;stroke-width:1.6}
.contact-route-channels a>span{display:grid;gap:.2rem;font-size:.8rem;line-height:1.25}
.contact-route-channels strong{font-size:.72rem;font-weight:750}
.contact-route-channels a>span>span{color:var(--muted);font-size:.78rem}
.family-proof{width:100%;min-width:0}
body:has(.family-intro) .menu-toggle,body:not(:has([data-landing-flow])):has(.contact-route) .menu-toggle{display:none!important}
.route-head .mobile-menu[data-mobile-menu]{color:var(--paper)}
.route-head .mobile-menu[data-mobile-menu] nav a,.route-head .mobile-menu[data-mobile-menu] summary{color:inherit!important}

@media(max-width:900px){
  .family-intro{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-block:5.2rem 1.6rem}
  .family-proof{max-width:32rem}
  .family-browser-layout{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}
  .family-index{display:none}
  .family-mobile-picker{display:grid;gap:.5rem;padding-block:1rem;border-block-end:1px solid var(--line);font:700 .63rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
  .family-mobile-picker select{min-height:46px;border:1px solid var(--line);border-radius:2px;background:var(--canvas);color:var(--ink);padding:.7rem .8rem;font:600 .88rem/1.35 inherit;letter-spacing:normal;text-transform:none}
  .family-detail-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(18rem,58vw) auto auto;height:auto;min-height:0}
  .family-detail-media{height:100%;min-height:0;border-inline-end:0;border-block-end:1px solid var(--line)}
  .family-detail-media img{height:100%;min-height:0;padding:clamp(1.5rem,8vw,3rem)}
  .family-detail-copy{padding:1.5rem 1.25rem 2rem}
  .family-detail-copy h2{font-size:clamp(1.8rem,7vw,2.8rem)}
  .family-detail-nav{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.55rem;padding-inline:1.25rem}
  .family-detail-nav strong{display:none}
  .family-detail-list{min-width:2.5rem!important;font-size:0;letter-spacing:0}
  .family-detail-list svg{width:1.3rem;height:1.3rem}
  body:has(.family-intro) .menu-toggle,body:not(:has([data-landing-flow])):has(.contact-route) .menu-toggle{display:grid!important;font-size:0}
  body:has(.family-intro) .menu-toggle::before,body:not(:has([data-landing-flow])):has(.contact-route) .menu-toggle::before{content:'☰';font-size:1.1rem;line-height:1}
  .contact-route{grid-template-columns:minmax(0,1fr);min-height:0;padding-block:4.75rem 2rem}
  .contact-route-panel{order:2;grid-template-rows:10rem auto;border-inline-end:1px solid var(--line)}
  .contact-route-media{order:2;min-height:10rem}
  .contact-route-copy{order:1;margin-top:0;padding:1.25rem 1rem 1.5rem}
  .contact-route-brand{margin-bottom:1rem}
  .contact-route-copy h1,.contact-route-copy h2{font-size:clamp(2rem,10vw,3rem)}
}
@media(max-width:560px){
  .family-intro{padding-inline:1rem}
  .family-intro h1{font-size:clamp(2.2rem,9vw,3.4rem);letter-spacing:-.08em;overflow-wrap:normal;word-break:normal}
  .family-proof{gap:.4rem}
  .family-proof-icon{width:2.85rem;height:2.85rem}
  .family-proof-icon svg{width:1.3rem;height:1.3rem}
  .family-proof strong{font-size:.7rem}
  .family-proof li>span:last-child{font-size:.62rem}
  .family-browser{padding-inline:1rem}
  .family-detail-panel{grid-template-rows:minmax(15rem,70vw) auto auto}
  .contact-route{padding-inline:1rem}
  .form-heading h2{font-size:1.45rem}
}
[dir="rtl"] .family-intro h1{text-transform:none}
[dir="rtl"] .family-intro-path,[dir="rtl"] .family-intro-path,[dir="rtl"] body:not(:has([data-landing-flow])):has(.contact-route) .contact-route-kicker{letter-spacing:normal;text-transform:none}

/* --- shared request composer contract ---
   The homepage and contact route intentionally share this exact form system.
   Keep its descendants here so the late landing stylesheet cannot change the
   controls, grid or action treatment. */
[data-request-composer]{scroll-margin-block-start:clamp(18rem,31vw,24rem)}
.pl-form[data-contact-route],.contact-route[data-contact-route]{min-width:0}
.pl-form[data-contact-route]>form,.contact-route[data-contact-route]>form{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:clamp(.85rem,1.4vw,1.15rem);min-width:0;max-width:none;margin:0}
.pl-form[data-contact-route]>form{padding:clamp(1.25rem,2.5vw,2rem);border:1px solid var(--pl-hair);background:var(--canvas)}
.contact-route[data-contact-route]>form{padding:clamp(1.25rem,2.2vw,2rem);border:1px solid var(--line);background:var(--canvas)}
.pl-form[data-contact-route] .form-heading,.contact-route[data-contact-route] .form-heading{display:flex;align-items:flex-start;gap:1rem;min-width:0;padding-block-end:1.1rem;border-block-end:1px solid var(--line)}
.form-heading-icon{display:grid;place-items:center;flex:none;width:24px;height:24px;color:var(--muted)}
.form-heading-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6}
.form-heading h2{margin:0;color:var(--ink);font-size:clamp(1.45rem,2.4vw,2.3rem);line-height:1.03;letter-spacing:-.04em}
.form-heading .form-intro{margin:.65rem 0 0;color:var(--muted);font-size:.86rem;line-height:1.55}
.form-note,.form-guidance,.form-email-note{grid-column:1/-1;min-width:0;margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}
.contact-fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;min-inline-size:0;margin:0;padding:1rem 0 0;border:0;border-block-start:1px solid var(--line)}
.contact-fieldset legend{grid-column:1/-1;min-width:0;margin:0;padding:0 0 .65rem;color:var(--ink);font-size:.65rem;font-weight:750;line-height:1.25}
.contact-fieldset label{display:grid;grid-column:auto;gap:.45rem;min-width:0;color:var(--ink);font:600 .76rem/1.25 system-ui,sans-serif;letter-spacing:normal;text-transform:none}
.contact-fieldset label.contact-fieldset-wide{grid-column:1/-1}
.contact-fieldset .field-label{display:flex;align-items:center;gap:.55rem;min-height:24px;min-width:0}
.contact-fieldset .field-label>span:last-child{min-width:0}
.contact-fieldset .field-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;color:var(--muted)}
.contact-fieldset .field-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.55}
.contact-fieldset input,.contact-fieldset select,.contact-fieldset textarea{box-sizing:border-box;inline-size:100%;min-inline-size:0;max-inline-size:100%;min-block-size:48px;border:1px solid var(--line);border-radius:2px;background:var(--canvas);color:var(--ink);padding:.7rem .8rem;font-family:inherit;font-size:.9rem;font-weight:400;line-height:1.4}
.contact-fieldset select{appearance:auto;text-overflow:ellipsis}
.contact-fieldset textarea{min-block-size:112px;resize:vertical}
.contact-fieldset input:focus,.contact-fieldset select:focus,.contact-fieldset textarea:focus{border-color:var(--signal);box-shadow:none;outline:2px solid var(--signal);outline-offset:2px}
.contact-fieldset input:user-invalid,.contact-fieldset select:user-invalid,.contact-fieldset textarea:user-invalid{border-color:var(--signal-solid);box-shadow:inset 0 0 0 1px var(--signal-solid)}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;grid-column:1/-1;min-width:0}
.form-actions button{display:inline-flex;align-items:center;justify-content:center;min-block-size:52px;padding-inline:1.35rem;border:0;background:var(--ink);color:#fff;font:800 .72rem/1 system-ui,sans-serif;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}
.form-actions button:hover{background:var(--signal-solid)}
.form-actions button:focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.contact-route[data-contact-route] .form-actions>button[type=submit]{flex:1 1 14rem;background:var(--signal-solid)}
.contact-route[data-contact-route] .form-actions>button[type=submit]:hover{background:var(--ink)}
.form-actions .share-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0}
.form-actions .share-control{flex:0 0 44px;inline-size:44px;block-size:44px;min-inline-size:44px;min-block-size:44px;padding:0}
.form-actions .share-control svg{inline-size:21px;block-size:21px}

/* Product pages already expose a dedicated quote CTA; keep the redundant
   floating action out of the pager and CTA reading path on mobile. */
@media(max-width:900px){
  body:has(.family-intro) .family-detail-nav{padding-inline-end:4rem}
  body:has(.family-intro) .mobile-contact{display:none}
}

/* Family detail owns its full panel row; the guide starts after that row. */
.family-browser-layout{grid-template-rows:minmax(0,1fr);min-block-size:0;overflow:clip}
.family-detail-stage{block-size:100%;min-block-size:0;overflow:hidden}
.family-detail-panel{block-size:100%;min-block-size:0;scroll-margin-block-start:clamp(5rem,8vw,7rem)}
.product-request-guide,.product-related,.empty-family{margin-inline:0;padding-inline:clamp(1rem,2.2vw,2.25rem);min-width:0}
.product-request-guide{grid-template-columns:minmax(0,58ch) max-content;justify-content:start;align-items:center;gap:clamp(1.5rem,4vw,4rem);padding-block:clamp(1.5rem,3vw,2.25rem)}
.product-request-guide>div{min-width:0;max-width:58ch}
.product-request-guide>a{justify-self:start;white-space:nowrap}
.product-related{padding-block:1.75rem 2.25rem}
.product-related ul{gap:0 clamp(1rem,2.2vw,2rem)}
.empty-family{grid-template-columns:minmax(0,58ch) auto;align-items:center;gap:clamp(1.5rem,4vw,4rem);padding-block:clamp(2rem,4vw,3rem)}
.empty-family>p{min-width:0;max-width:58ch;margin:0}
.empty-family>div{min-width:0;max-width:58ch}
.empty-family>a{justify-self:end;white-space:nowrap}
.family-mobile-picker,.family-mobile-picker select{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
.family-mobile-picker select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-products summary{list-style:none}
.mobile-products summary::-webkit-details-marker{display:none}

@media(max-width:900px){
  .pl-form[data-contact-route]>form,.contact-route[data-contact-route]>form{grid-template-columns:minmax(0,1fr)}
  .contact-fieldset{grid-template-columns:minmax(0,1fr)}
  .contact-fieldset label,.contact-fieldset label.contact-fieldset-wide{grid-column:1}
  .family-browser-layout{grid-template-rows:auto;overflow:visible}
  .family-detail-stage{block-size:auto;overflow:visible}
  .family-detail-panel{block-size:auto;overflow:visible}
  .product-request-guide,.empty-family{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}
  .product-request-guide>a,.empty-family>a{justify-self:start}
  .pl-form[data-contact-route]>form{padding:1.25rem 1rem}
  .contact-route[data-contact-route]>form{padding:1.35rem 1rem}
  .family-intro h1{max-width:100%;font-size:clamp(2.2rem,9vw,3.4rem);letter-spacing:-.08em;overflow-wrap:normal;word-break:normal}
  .family-mobile-picker{inline-size:100%;min-inline-size:0}
  .family-mobile-picker select{inline-size:100%;max-inline-size:100%;min-inline-size:0;box-sizing:border-box}
}
@media(max-width:560px){
  .product-request-guide,.product-related,.empty-family{padding-inline:1rem}
  .product-request-guide>a,.empty-family>a{white-space:normal}
}

[dir=rtl] .contact-fieldset label,[dir=rtl] .form-actions button{letter-spacing:normal;text-transform:none;font-size:.78rem}

/* Realisations detail pages use the verified field image as the record, with
   the same quiet canvas and one clear route back into the request flow. */
body:has(.project-detail){background:var(--canvas);color:var(--ink)}
body:has(.project-detail) .route-head{background:var(--canvas);color:var(--ink)}
body:has(.project-detail) .route-head .brand img{filter:none}
body:has(.project-detail) .route-head .brand-wordmark,body:has(.project-detail) .route-head nav a,body:has(.project-detail) .route-head .language-switch,body:has(.project-detail) .route-head .head-action{color:var(--ink)}
body:has(.project-detail) .route-head .head-action{border-color:var(--ink)}
.project-detail{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,7vw,7rem);align-items:center;max-width:var(--pl-max,1220px);min-height:calc(100svh - 82px);margin:0 auto;padding:clamp(7rem,12vw,10rem) clamp(1rem,5vw,3.75rem) clamp(3rem,6vw,5rem)}
.project-detail-copy{min-width:0}
.project-detail-copy .pl-meta{margin-block-end:1.4rem}
.project-detail-copy h1{max-width:13ch;margin:0 0 1.7rem;font-size:clamp(2.4rem,5.4vw,5.2rem);line-height:.94;letter-spacing:-.06em}
.project-detail-back{display:inline-flex;align-items:center;min-height:44px;margin-inline-start:1rem;color:var(--ink);font:700 .7rem/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:underline;text-decoration-color:var(--signal);text-underline-offset:5px}
.project-detail-media{min-width:0;margin:0;background:var(--canvas-soft);overflow:hidden}
.project-detail-media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.project-detail-media figcaption{padding:1rem 1.2rem;color:var(--muted);font-size:.8rem;font-weight:650}
@media(max-width:900px){
  body:has(.project-detail) .menu-toggle{display:grid;background:var(--canvas);color:var(--ink);border-color:var(--line)}
  .project-detail{grid-template-columns:minmax(0,1fr);gap:2.2rem;min-height:0;padding-block:6rem 3rem}
  .project-detail-copy{order:1}
  .project-detail-media{order:2}
  .project-detail-copy h1{font-size:clamp(2.45rem,11vw,4.2rem)}
}
[dir=rtl] .project-detail-back{letter-spacing:normal;text-transform:none}

/* Final route polish: keep fixed-header arrivals, route language controls and
   mobile action affordances readable across the shared route shells. */
#trouver-un-equipement,#services,#contact,[data-request-composer]{scroll-margin-block-start:clamp(5.5rem,10vh,7rem)}
body:has(.project-detail) .route-head .language-switch a{color:var(--ink)}
body:has(.project-detail) .route-head .language-switch a:hover,body:has(.project-detail) .route-head .language-switch a:focus-visible{color:var(--signal-text);text-decoration:underline;text-underline-offset:4px}
.project-detail-note{max-width:34ch;margin:0 0 1.4rem;color:var(--muted);font-size:.9rem;line-height:1.55}
.project-related-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,2vw,1.5rem);margin:1.25rem 0 0;padding:0;list-style:none}
.project-related-list li{min-width:0}
.project-related-list a{display:block;color:var(--ink);text-decoration:none}
.project-related-list img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--canvas-soft);transition:transform .35s var(--pl-ease)}
.project-related-list a:hover img,.project-related-list a:focus-visible img{transform:scale(1.025)}
.project-related-list span{display:block;padding:.65rem 0 0;color:var(--muted);font-size:.75rem;line-height:1.3;font-weight:650}

@media(max-width:900px){
  body:not(:has([data-landing-flow])):has(.contact-route) .mobile-contact,body:has([data-landing-flow] .pl-detail.is-in) .mobile-contact{display:none}
  .contact-route[data-contact-route]>form,.pl-form[data-contact-route]>form{gap:.65rem}
  .pl-form[data-contact-route] .form-heading,.contact-route[data-contact-route] .form-heading{gap:.75rem;padding-block-end:.85rem}
  .form-heading .form-intro{margin-top:.45rem}
  .contact-fieldset{gap:.65rem .85rem;padding-top:.75rem}
  .contact-fieldset legend{padding-bottom:.45rem}
  .contact-fieldset label{gap:.35rem}
  .project-related-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
}

@media(prefers-reduced-motion:reduce){
  .project-related-list img{transition:none}
}
