.hero{justify-content:center}
.hero-media{position:absolute;inset:0;z-index:0!important;pointer-events:none}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.15s ease,visibility 1.15s ease;background:#16212a}
.hero-slide.is-active{opacity:1;visibility:visible}
.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.82) brightness(.72)}
.hero-slide:first-child img{filter:saturate(.92) brightness(1.02)}
.hero-slide:nth-child(4) img{object-position:center 38%}
.hero-slide:nth-child(6) img{object-position:center 45%}
.hero:after{z-index:1;pointer-events:none}
.hero .hero-copy{position:relative;z-index:2!important;padding-top:100px;padding-bottom:100px}

.impact-carousel{padding:27px clamp(24px,4vw,70px) 20px;background:var(--paper);overflow:hidden}
.impact-carousel+.observe{padding-top:64px}
.impact-context{font-size:clamp(27px,2.4vw,42px);font-weight:400;line-height:1.18;letter-spacing:-.045em;width:100%;max-width:790px;margin:48px auto 44px;text-align:center;text-wrap:balance}
.impact-controls{display:flex;justify-content:space-between;align-items:center}
.impact-status{display:flex;align-items:center;gap:24px}
.impact-count{font-family:"Arial Narrow",Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.18em;color:#66757a}
.impact-count span{color:var(--ink)}
.impact-playback{padding:4px 0;border:0;border-bottom:1px solid #87928f;background:transparent;color:#5d6a69;font-size:11px;letter-spacing:.035em;cursor:pointer}
.impact-playback:hover,.impact-playback:focus-visible{color:var(--ink);border-color:var(--ink)}
.impact-arrows{display:flex;gap:8px}
.impact-arrows button{width:42px;height:42px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:22px;line-height:1;cursor:pointer;transition:background .2s,color .2s}
.impact-arrows button:hover,.impact-arrows button:focus-visible{background:var(--ink);color:var(--paper);outline:0}
.impact-viewport{position:relative;height:clamp(345px,30vw,520px)}
.impact-slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:clamp(40px,8vw,135px);align-items:center;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .42s ease,transform .42s ease,visibility .42s ease}
.impact-slide.is-active{opacity:1;visibility:visible;transform:none}
.impact-slide h2{font-size:clamp(46px,5.8vw,98px);line-height:.96;letter-spacing:-.073em;font-weight:500;margin:0;max-width:850px}
.impact-art{position:relative;width:100%;overflow:hidden}
.impact-art video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#23343b;border:1px solid rgba(20,33,42,.32)}
.impact-art .impact-drawing{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;z-index:1}
.impact-slide.is-drawing .impact-drawing{animation:cad-drawing-reveal 1.8s cubic-bezier(.62,0,.22,1) both}
@keyframes cad-drawing-reveal{0%,25%{opacity:1;clip-path:inset(0)}100%{opacity:0;clip-path:inset(0 0 0 100%)}}
.impact-art svg{width:100%;height:auto;display:block;overflow:visible}
.impact-art path,.impact-art rect,.impact-art circle{vector-effect:non-scaling-stroke;stroke-linecap:square;stroke-linejoin:miter}
.impact-art .art-grid{fill:none;stroke:#d9d2c5;stroke-width:1}
.impact-art .art-rule{fill:none;stroke:#57676b;stroke-width:1.5}
.impact-art .art-block,.impact-art .art-step{fill:#efe7d8;stroke:var(--ink);stroke-width:2}
.impact-art .art-route,.impact-art .art-trace,.impact-art .art-quality,.impact-art .art-check,.impact-art .art-arrow{fill:none;stroke:var(--amber);stroke-width:3.5}
.impact-art .art-loop{fill:none;stroke:#9a7658;stroke-width:2;stroke-dasharray:5 7}
.impact-art .art-part{fill:#e6d6b8;stroke:var(--ink);stroke-width:2}
.impact-art .art-wheel{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}
.impact-art .art-hazard{fill:none;stroke:#a27c54;stroke-width:2}
.impact-art .art-shield{fill:#efe7d8;stroke:var(--ink);stroke-width:2.5}
.impact-art .art-site{fill:none;stroke:var(--ink);stroke-width:2}
.impact-art .art-site path:last-child{stroke:var(--amber);stroke-width:3.2}
.impact-slide.is-active .art-route,.impact-slide.is-active .art-trace{stroke-dasharray:400;stroke-dashoffset:400;animation:impact-draw 3.4s ease-in-out infinite}
.impact-slide.is-active .art-check{stroke-dasharray:90;stroke-dashoffset:90;animation:impact-check 3.4s ease-in-out infinite}
.impact-slide.is-active .art-loop{animation:impact-loop 3.4s ease-in-out infinite}
.impact-slide.is-active .art-step{animation:impact-step 3s ease-in-out infinite}
.impact-slide.is-active .art-step:nth-of-type(2){animation-delay:.23s}
.impact-slide.is-active .art-step:nth-of-type(3){animation-delay:.46s}
.impact-slide.is-active .art-step:nth-of-type(4){animation-delay:.69s}
.impact-slide.is-active .art-part{animation:impact-conveyor 3s linear infinite}
.impact-slide.is-active .part-two{animation-delay:.55s}
.impact-slide.is-active .part-three{animation-delay:1.1s}
.impact-slide.is-active .art-quality{stroke-dasharray:75;stroke-dashoffset:75;animation:impact-quality 3.8s ease-in-out infinite}
.impact-slide.is-active .quality-two{animation-delay:.45s}
.impact-slide.is-active .quality-three{animation-delay:.9s}
.impact-slide.is-active .art-hazard{animation:impact-hazard 3.4s ease-in-out infinite}
.impact-slide.is-active .art-shield{animation:impact-shield 3.4s ease-in-out infinite}
.impact-slide.is-active .art-site path:last-child{stroke-dasharray:70;stroke-dashoffset:70;animation:impact-quality 3.8s ease-in-out infinite}
.impact-slide.is-active .site-two path:last-child{animation-delay:.35s}
.impact-slide.is-active .site-three path:last-child{animation-delay:.7s}
.impact-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;border-top:1px solid var(--line);padding-top:14px}
.impact-track button{height:19px;padding:0;border:0;background:transparent;cursor:pointer}
.impact-track button span{display:block;height:3px;background:#c5c1b8;transition:background .2s,transform .2s;transform-origin:left}
.impact-track button[aria-current="true"] span,.impact-track button:hover span,.impact-track button:focus-visible span{background:var(--ink);transform:scaleY(1.8)}
.impact-track button[aria-current="true"] span{position:relative;overflow:hidden}
.impact-carousel.is-running .impact-track button[aria-current="true"] span:after{content:"";position:absolute;inset:0;background:var(--amber);transform-origin:left;animation:impact-progress 5.8s linear forwards}
.impact-track button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@keyframes impact-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes impact-draw{0%,8%{stroke-dashoffset:400}42%,78%{stroke-dashoffset:0}100%{stroke-dashoffset:-400}}
@keyframes impact-check{0%,42%{stroke-dashoffset:90}58%,86%{stroke-dashoffset:0}100%{stroke-dashoffset:-90}}
@keyframes impact-loop{0%,18%{opacity:.9}42%,100%{opacity:0}}
@keyframes impact-step{0%,10%{fill:#efe7d8}40%,78%{fill:#d3a052}100%{fill:#efe7d8}}
@keyframes impact-conveyor{0%{transform:translateX(-35px);opacity:0}20%{opacity:1}77%{opacity:1}100%{transform:translateX(55px);opacity:0}}
@keyframes impact-quality{0%,10%{stroke-dashoffset:75}40%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-75}}
@keyframes impact-hazard{0%,25%{opacity:1}55%,100%{opacity:.17}}
@keyframes impact-shield{0%,20%{opacity:.24}55%,85%{opacity:1}100%{opacity:.24}}
@media(max-width:950px){.impact-slide{grid-template-columns:1fr .85fr;gap:20px}.impact-viewport{height:310px}}
@media(max-width:620px){.hero .hero-copy{padding-top:80px;padding-bottom:80px}.impact-carousel{padding-top:20px}.impact-carousel+.observe{padding-top:48px}.impact-context{font-size:clamp(24px,6vw,30px);margin:28px auto 32px}.impact-viewport{height:430px}.impact-slide{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:0;padding:24px 0 12px;align-items:start}.impact-slide h2{font-size:clamp(45px,10vw,68px)}.impact-art{max-width:430px;margin:auto 0 0 auto}.impact-arrows button{width:38px;height:38px}.impact-track{gap:5px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.impact-slide{transition:none}.impact-playback{display:none}.impact-slide.is-drawing .impact-drawing{animation:none;opacity:0}.impact-slide.is-active .art-route,.impact-slide.is-active .art-trace,.impact-slide.is-active .art-check,.impact-slide.is-active .art-loop,.impact-slide.is-active .art-step,.impact-slide.is-active .art-part,.impact-slide.is-active .art-quality,.impact-slide.is-active .art-hazard,.impact-slide.is-active .art-shield,.impact-slide.is-active .art-site path:last-child{animation:none;stroke-dashoffset:0;opacity:1}}
