:root{--bg:#FBFBF9;--surface:#EFECE4;--card:#FFFFFF;--ink:#0B0B0B;--muted:#6D6D66;--line:rgba(11,11,11,.14);--error:#C4372A}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 Archivo,Arial,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}p{color:var(--muted);margin:0 0 24px}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.035em;margin:0 0 24px}h1{font-size:clamp(44px,6.4vw,88px);font-weight:800}h2{font-size:clamp(34px,4.2vw,58px);font-weight:700}h3{font-size:27px}h4{font-size:20px}img{display:block;width:100%;object-fit:cover;filter:none}.wrap{max-width:1320px;margin:auto;padding:0 48px}.section{padding:100px 0}.band{background:var(--surface)}.mono,.eyebrow{font:11px/1.7 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.15em}.eyebrow{display:block;margin-bottom:24px}.section-head:before{content:'';display:block;width:24px;height:3px;background:var(--ink);margin-bottom:20px}.section-head{margin-bottom:42px;max-width:840px}.section-head h2{margin-bottom:16px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:13px 24px;background:var(--ink);color:var(--bg);border:1px solid var(--ink);font-size:13px;font-weight:600;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.outline{background:transparent;color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:12px}.arrow{margin-left:auto;font-size:23px;line-height:1}.chip{display:inline-flex;gap:9px;align-items:center;padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:transparent;font:10px/1.5 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.06em}.chip:hover,.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.chips{display:flex;flex-wrap:wrap;gap:9px}.dot{width:5px;height:5px;border-radius:50%;background:currentColor}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.row{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid var(--line)}.row h3,.row h4,.row p{margin-bottom:5px}.row .number{align-self:flex-start;min-width:40px;padding-top:5px}.row .grow{flex:1}main:focus{outline:none}.skip{position:fixed;left:20px;top:-80px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}header{position:sticky;top:0;background:var(--bg);z-index:30;border-bottom:1px solid var(--line)}.header-inner{max-width:1450px;margin:auto;padding:21px 40px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{display:block;line-height:1}.logo strong{font-size:37px;font-weight:800;letter-spacing:-.07em}.logo small{display:block;font:7px 'JetBrains Mono',monospace;letter-spacing:.15em;margin-top:7px}.nav{display:flex;align-items:center;gap:24px;font-size:12px}.nav a:hover,.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.dropdown{position:relative}.dropdown summary{cursor:pointer;list-style:none}.dropdown summary:after{content:'⌄';margin-left:6px}.dropdown-panel{position:absolute;top:35px;left:-20px;width:255px;padding:18px;background:white;border:1px solid var(--line)}.dropdown-panel a{display:block;padding:8px}.header-inner>.btn{font-size:11px;min-height:43px;padding:10px 18px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 14px}.progress{height:2px;background:var(--ink);position:absolute;bottom:-1px;width:0}.hero{padding:76px 0 58px;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:160px 160px;background-position:center;isolation:isolate;position:relative}.hero:before{content:'';position:absolute;inset:0;background:rgba(251,251,249,.82);z-index:-1}.hero-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:55px;align-items:center}.hero h1{font-size:clamp(48px,6.3vw,88px);line-height:1.02}.stroke{color:transparent;-webkit-text-stroke:1px var(--ink)}.hero p{max-width:515px;font-size:15px}.hero figure{margin:0;position:relative}.hero img{height:480px}.photo-caption{position:absolute;bottom:0;left:0;background:var(--bg);padding:17px 22px;min-width:195px}.hero-bottom{margin-top:54px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:42px 0}.stat{padding:0 30px;border-right:1px solid var(--line)}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{font-size:62px;line-height:1.2;letter-spacing:-.05em}.stat .mono{display:block;margin-top:10px;color:var(--muted);font-size:9px}.division-card{padding:30px;background:white;border:1px solid var(--line);position:relative;transition:.25s;overflow:hidden}.division-card:hover{border-color:var(--ink);transform:translateY(-5px)}.division-card h3{margin:14px 0}.division-card .tagline{font-style:italic;font-size:14px;min-height:46px}.division-card .mini-list{font-size:12px;color:var(--muted);line-height:1.85;min-height:70px}.division-card .mono{font-size:9px}.division-card .card-link{display:flex;border-top:1px solid var(--line);margin-top:25px;padding-top:18px;font-size:12px}.division-preview{position:absolute;right:22px;top:24px;width:120px;height:90px;opacity:0;transform:translateY(10px);transition:.25s;pointer-events:none}.division-card:hover .division-preview{opacity:1;transform:none}.brand-strip{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.product-card{background:white;border:1px solid var(--line);display:block;transition:.25s}.product-card:hover{border-color:var(--ink);transform:translateY(-4px)}.product-image{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--surface)}.product-image img{height:100%;transition:transform .5s}.product-card:hover img{transform:scale(1.045)}.product-image span{position:absolute;bottom:0;left:0;right:0;padding:12px 20px;background:var(--ink);color:white;font-size:12px;transform:translateY(100%);transition:.25s}.product-card:hover .product-image span,.product-card:focus .product-image span{transform:none}.product-copy{padding:22px}.product-copy h3{font-size:22px;margin:12px 0}.product-copy p{font-size:12px;margin:0}.featured{display:grid;grid-template-columns:1fr 1.1fr;gap:48px}.product-row{display:flex;gap:24px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}.product-row img{width:86px;height:78px}.product-row h3{font-size:20px;margin:7px 0}.product-row .mono{font-size:9px}.marquee{overflow:hidden;padding:40px 0;border-block:1px solid var(--line)}.marquee-track{display:flex;gap:64px;width:max-content;animation:marquee 55s linear infinite}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.marquee a{font-size:46px;font-weight:700;white-space:nowrap;color:transparent;-webkit-text-stroke:1px var(--ink)}@keyframes marquee{to{transform:translateX(-50%)}}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.why-grid article{border-top:1px solid var(--line);padding-top:24px}.why-grid h3{font-size:21px;margin:25px 0 15px}.why-grid p{font-size:14px}.cta{background:var(--ink);color:white;padding:72px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.cta h2{max-width:700px;font-size:clamp(34px,4vw,54px);margin:16px 0 0}.cta .btn{background:white;color:var(--ink);min-width:185px}.cta .eyebrow{margin:0;color:#ccc}.cta .section-head:before{background:white}.cta .section-head{margin:0}footer{background:var(--ink);color:white;padding:50px 0 20px;border-top:1px solid rgba(255,255,255,.2)}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px}.footer-grid p{font-size:13px;color:#aaa;max-width:270px;margin-top:20px}.footer-grid a:not(.logo){display:block;font-size:12px;color:#ccc;margin:10px 0}.footer-grid .mono{display:block;margin-bottom:24px;font-size:9px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.2);padding-top:20px;font-size:9px}.breadcrumb{padding:28px 0;color:var(--muted);font-size:10px}.breadcrumb a:hover{text-decoration:underline}.page-head{padding:45px 0 60px}.page-head h1{max-width:1000px}.page-head p{max-width:680px}.wide-image{height:390px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:60px 0;border-top:1px solid var(--line)}.editorial:nth-child(even) .editorial-image{order:2}.editorial-image{height:360px}.catalogue-index{display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.catalogue-index .row{font-size:18px}.filter-bar{padding:22px 0 32px;border-top:1px solid var(--line)}.count{display:block;margin:25px 0;color:var(--muted)}.empty{padding:70px 20px;text-align:center;border:1px solid var(--line);grid-column:1/-1}.gallery-main{aspect-ratio:1/1;width:100%;background:var(--surface);transition:opacity .2s}.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:15px}.thumb{padding:4px;background:white;border:1px solid var(--line)}.thumb[aria-pressed=true]{border:2px solid var(--ink);padding:3px}.thumb img{aspect-ratio:4/3}.detail h1{font-size:clamp(36px,4vw,57px);margin-top:20px}.features{list-style:none;padding:0;margin:22px 0 30px}.features li{position:relative;padding:6px 0 6px 20px;color:var(--muted);font-size:14px}.features li:before{content:'';width:5px;height:5px;background:var(--ink);position:absolute;left:0;top:16px}.spec-table{border-collapse:collapse;width:100%}.spec-table th,.spec-table td{border-bottom:1px solid var(--line);text-align:left;padding:18px 12px;vertical-align:top}.spec-table th{width:30%;font:10px/1.7 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:400}.spec-table td{font-size:14px}.brand-row{display:grid;grid-template-columns:1fr 1.4fr auto;gap:35px;align-items:center;border-top:1px solid var(--line);padding:32px 0}.brand-row h3{font-size:34px;margin:0}.brand-row p{font-size:14px;margin:0}.brand-actions a{display:block;font-size:12px;margin:8px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:block;font-size:12px}.field.full{grid-column:1/-1}.field input,.field textarea,.field select{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:12px 0;font-size:15px;min-height:48px}.field textarea{resize:vertical;min-height:100px}.field .error{display:block;color:var(--error);font-size:12px;min-height:18px}.field [aria-invalid=true]{border-color:var(--error)}.form-note{font-size:12px;margin-top:22px}.form-result{padding:20px;border:1px solid var(--line);margin-top:20px}.form-result p{font-size:14px}.contact-aside{padding:32px;background:var(--surface)}.contact-aside h3{font-size:23px}.contact-aside a{display:block;margin:8px 0}.map-panel{margin-top:30px;padding:40px;border:1px solid var(--line);background:repeating-linear-gradient(0deg,transparent,transparent 49px,var(--line) 50px),repeating-linear-gradient(90deg,transparent,transparent 49px,var(--line) 50px);text-align:center}.map-panel a{background:var(--bg);padding:12px;display:inline-block}.dialog{border:0;border-top:3px solid var(--ink);padding:36px;width:min(650px,calc(100% - 32px));max-height:90vh;background:white;color:var(--ink)}.dialog::backdrop{background:rgba(11,11,11,.55)}.dialog h2{font-size:34px;padding-right:35px}.close{position:absolute;right:18px;top:16px;border:0;background:transparent;font-size:26px}.attached{background:var(--surface);padding:12px;margin-bottom:24px;font-size:13px}.toast{position:fixed;bottom:25px;right:25px;max-width:calc(100% - 50px);background:var(--ink);color:white;border-left:3px solid white;padding:17px 24px;z-index:100;transform:translateY(150%);transition:.3s;font-size:13px}.toast.show{transform:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}.reveal.visible{opacity:1;transform:none}body.locked{overflow:hidden}[hidden]{display:none!important}.timeline .row{align-items:start}.timeline strong{min-width:120px;font-size:24px}.timeline strong:before{content:'●';font-size:9px;margin-right:18px}.privacy{max-width:750px}.privacy p{font-size:15px}
@media(min-width:1600px){.hero img{height:520px}}@media(max-width:1150px){.nav{gap:15px}.header-inner{gap:18px;padding-inline:25px}.header-inner>.btn{display:none}.hero-layout{gap:30px}.hero img{height:430px}.split{gap:40px}.wrap{padding-inline:32px}.division-card{padding:23px}.why-grid{gap:20px}}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{display:none}.menu-toggle{display:block}.nav.open{display:flex;position:fixed;inset:87px 0 0;background:var(--bg);padding:30px;overflow:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;font-size:22px;gap:18px}.nav.open .dropdown-panel{position:static;border:0;width:auto;background:transparent;padding:10px;font-size:17px}.hero h1{font-size:58px}.hero-layout{grid-template-columns:1.2fr 1fr}.hero img{height:390px}.hero .eyebrow{font-size:9px}.why-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.division-preview{display:none}.stat{padding:0 20px}.stat strong{font-size:50px}.brand-row{grid-template-columns:1fr 1.4fr}.brand-actions{grid-column:2}.section{padding:75px 0}.cta .wrap{gap:30px}.hero .actions .btn{font-size:11px;padding:12px 16px}}
@media(max-width:640px){.wrap{padding-inline:22px}.header-inner{padding:18px 22px}.logo strong{font-size:32px}.hero{padding:45px 0 30px}.hero-layout,.split,.featured,.editorial{grid-template-columns:1fr;gap:32px}.hero h1{font-size:clamp(46px,11.8vw,70px)}.hero img{height:300px}.hero figure{margin-top:10px}.hero-bottom{margin-top:30px;font-size:8px}.hero .eyebrow{font-size:8px;letter-spacing:.1em}.stats{grid-template-columns:repeat(2,1fr);padding:22px 0;gap:25px 0}.stat,.stat:first-child{padding:10px 18px}.stat:nth-child(2){border:0}.stat strong{font-size:52px}.stat .mono{font-size:8px}.grid{grid-template-columns:1fr}.section{padding:60px 0}.section-head{margin-bottom:30px}.division-card{padding:28px}.division-card .mini-list{min-height:0}.division-card .tagline{min-height:0}.cta .wrap{display:block}.cta .btn{margin-top:30px}.footer-grid{gap:30px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:20px;font-size:8px}.page-head{padding:24px 0 40px}.page-head h1{font-size:46px}.wide-image{height:250px}.catalogue-index{grid-template-columns:1fr}.editorial{padding:40px 0}.editorial:nth-child(even) .editorial-image{order:0}.editorial-image{height:250px}.row{gap:15px;flex-wrap:wrap}.row h3{font-size:23px}.row>.chips{padding-left:55px}.brand-row{grid-template-columns:1fr;gap:16px}.brand-actions{grid-column:auto;display:flex;gap:22px}.form-grid{grid-template-columns:1fr;gap:15px}.field.full{grid-column:auto}.dialog{padding:26px 22px}.dialog h2{font-size:30px}.why-grid{gap:24px}.why-grid h3{font-size:19px}.spec-table th{width:38%;font-size:9px}.spec-table td{font-size:13px;overflow-wrap:anywhere}.timeline strong{min-width:105px}.timeline .grow{flex-basis:100%}.thumbs{gap:10px}.marquee a{font-size:36px}.product-row{gap:15px}.product-row h3{font-size:18px}.nav.open{inset-block-start:81px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.division-card:hover,.product-card:hover,.btn:hover{transform:none}}
/* v1.3 — motion enhances visible content; no animation is required for access. */
main{overflow-x:clip}.route-exit{overflow-x:clip!important}
.reveal,.reveal.visible{opacity:1;transform:none;transition:none}
img{filter:none}
.section-head{position:relative;isolation:isolate}
.section-head:after{content:attr(data-ghost);position:absolute;right:-.08em;top:-.25em;z-index:-1;font:800 clamp(100px,14vw,210px)/1 Archivo,sans-serif;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(11,11,11,.10);pointer-events:none}
.section-head:before{transform-origin:left}
.bar-enter:before{animation:label-grow .7s cubic-bezier(.2,.7,.2,1) both}
@keyframes label-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.video-hero{height:92vh;height:92svh;min-height:720px;width:100%;padding:0;background:var(--ink);color:white;position:relative;display:flex;align-items:center;isolation:isolate}
.video-hero:before{display:none}
.hero-media{position:absolute;inset:0;overflow:hidden;z-index:-3;background:var(--ink)}
.video-hero .hero-poster,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;animation:ken-burns 28s ease-in-out infinite alternate}
.hero-video{opacity:0;transition:opacity 1s ease;pointer-events:none}
.video-ready .hero-video{opacity:1}
.poster-fallback .hero-video{opacity:0}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,11,11,.65),rgba(11,11,11,.2)),linear-gradient(0deg,rgba(11,11,11,.72),transparent 65%)}
.hero-content{width:100%;padding-top:10px;padding-bottom:150px}
.video-hero h1{font-size:clamp(56px,8vw,120px);line-height:1.03;max-width:1250px;letter-spacing:-.045em;margin:0 0 30px}
.hero-line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.07em}
.hero-line>span{display:block}
.video-hero .stroke{font-style:normal;-webkit-text-stroke:1px white;color:transparent}
.video-hero .eyebrow{color:white;margin-bottom:30px}
.video-hero p{color:rgba(255,255,255,.85);max-width:550px;font-size:16px}
.video-hero .btn.outline{color:white;border-color:white;background:transparent}
.video-hero :focus-visible{outline-color:white}
.hero-controls{position:absolute;bottom:105px;left:0;right:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.scroll-cue{border:0;background:transparent;color:white;display:flex;gap:15px;align-items:center;padding:12px 0}
.scroll-line{display:block;width:1px;height:37px;background:rgba(255,255,255,.35);position:relative;overflow:hidden}
.scroll-line:after{content:'';position:absolute;top:0;left:0;width:1px;height:18px;background:white;animation:scroll-drop 1.8s ease-in-out infinite}
@keyframes scroll-drop{from{transform:translateY(-18px)}to{transform:translateY(42px)}}
.video-controls{display:flex;align-items:center;gap:12px}
.video-control{color:white;background:rgba(11,11,11,.2);border:1px solid rgba(255,255,255,.55);border-radius:0;min-height:42px;padding:10px 15px;font:10px 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.06em}
.video-control:hover{background:white;color:var(--ink)}
@keyframes ken-burns{from{transform:scale(1)}to{transform:scale(1.1)}}
.stats-overlap{position:relative;z-index:2;margin-top:-68px;margin-bottom:25px}
.stats-overlap .stats{background:white;border:1px solid var(--line);padding:34px 35px;box-shadow:0 18px 45px rgba(11,11,11,.065)}
.stats-overlap .stat:first-child{padding-left:0}
.stats-overlap .stat strong{font-size:clamp(48px,4.5vw,68px)}
.image-window{overflow:hidden;position:relative}.image-window .wide-image{width:100%;height:390px}.image-window.editorial-image{height:360px;margin:0}.image-window.editorial-image img{height:100%;width:100%}
[data-parallax]{will-change:transform}.product-card:hover [data-parallax]{filter:brightness(1.04)}
#main[data-page=about]>.section .split{grid-template-columns:1.2fr .8fr;gap:9%}
#main[data-page=about]>.section .split>div:last-child{padding-top:50px}
#main[data-page=about]>.wrap>.image-window{width:88%;margin-left:auto}
#main[data-page=about]>.section:nth-of-type(3) .section-head{margin-left:15%;max-width:950px}
#main[data-page=about] .timeline{max-width:1000px;margin-left:auto}
#main[data-page=about] .timeline .row{padding:35px 0;gap:75px}
.timeline strong:before{display:inline-block;transform-origin:center}
.timeline .dot-enter strong:before{animation:dot-pop .5s cubic-bezier(.2,1.6,.5,1) var(--dot-delay,0ms) backwards}
@keyframes dot-pop{from{transform:scale(0)}to{transform:scale(1)}}
.btn{position:relative;isolation:isolate;overflow:hidden;--sweep:white;--sweep-text:var(--ink);transition:transform .25s,color .3s,border-color .3s}
.btn:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--sweep);transform:translateX(-101%);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.btn:hover:before,.btn:focus-visible:before{transform:translateX(0)}
.btn:hover,.btn:focus-visible{color:var(--sweep-text)}
.btn.outline{--sweep:var(--ink);--sweep-text:white}
.btn.outline:hover,.btn.outline:focus-visible{color:var(--sweep-text)}
.video-hero .btn.outline{--sweep:white;--sweep-text:var(--ink)}
.video-hero .btn.outline:hover,.video-hero .btn.outline:focus-visible{color:var(--ink)}
.cta .btn{--sweep:var(--ink);--sweep-text:white;border-color:white}.cta .btn:hover,.cta .btn:focus-visible{color:white}
a:not(.btn):not(.product-card):not(.chip):not(.logo):not(.product-row){text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:0 1px;background-position:left bottom;transition:background-size .3s,color .25s}
a:not(.btn):not(.product-card):not(.chip):not(.logo):not(.product-row):hover{background-size:100% 1px}
.nav a[aria-current=page]{background-size:100% 1px!important}.cta .section-head:after{-webkit-text-stroke:1px rgba(255,255,255,.12)}
.marquee a:hover,.marquee a:focus-visible{color:var(--ink);background-size:0!important}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
.division-card,.product-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
.division-card:hover,.product-card:hover{transform:translateY(-7px);box-shadow:0 18px 32px rgba(11,11,11,.07)}
.division-preview{display:none!important}
.cursor-preview{position:fixed;top:0;left:0;width:280px;height:200px;z-index:45;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;box-shadow:0 16px 45px rgba(11,11,11,.18);border:6px solid white;background:var(--surface)}
.cursor-preview img{width:100%;height:100%;object-fit:cover}.cursor-preview.active{opacity:1;visibility:visible}
.route-exit{position:fixed!important;pointer-events:none!important;z-index:25;background:var(--bg);margin:0!important;overflow:hidden}
.route-exit .reveal{opacity:1!important;transform:none!important}.route-exit *{animation:none!important}
@media(max-width:900px){.video-hero{min-height:740px}.hero-content{padding-bottom:170px}.video-hero h1{font-size:clamp(56px,8vw,120px)}.stats-overlap .stats{padding:28px 24px}.stats-overlap .stat{padding-inline:15px}.hero-controls{bottom:112px}.cursor-preview{display:none}.section-head:after{right:0}#main[data-page=about]>.section .split{gap:40px}}
@media(max-width:640px){.video-hero{height:92svh;min-height:780px}.hero-content{padding-top:0;padding-bottom:150px}.video-hero h1{font-size:clamp(56px,8vw,120px);line-height:1.02;margin-bottom:25px}.hero-line>span{max-width:100%}.video-hero .eyebrow{font-size:8px;max-width:290px;line-height:1.8;margin-bottom:24px}.video-hero p{font-size:14px;max-width:350px}.video-hero .actions{gap:10px}.video-hero .btn{font-size:11px;padding:12px 16px;min-height:47px}.hero-controls{bottom:110px;align-items:end;gap:10px}.video-controls{gap:6px;flex-direction:column;align-items:stretch}.video-control{font-size:8px;padding:8px 10px;min-height:36px}.scroll-cue{gap:10px}.scroll-cue .mono{font-size:8px;letter-spacing:.08em}.stats-overlap{margin-top:-72px;margin-bottom:0}.stats-overlap .stats{padding:20px 15px;gap:20px 0}.stats-overlap .stat,.stats-overlap .stat:first-child{padding:0 12px}.stats-overlap .stat strong{font-size:43px}.stats-overlap .stat .mono{font-size:7px;letter-spacing:.1em}.image-window .wide-image,.image-window.editorial-image{height:250px}#main[data-page=about]>.section .split{grid-template-columns:1fr;gap:24px}#main[data-page=about]>.section .split>div:last-child{padding-top:0}#main[data-page=about]>.wrap>.image-window{width:100%}#main[data-page=about]>.section:nth-of-type(3) .section-head{margin-left:0}#main[data-page=about] .timeline .row{gap:12px}.section-head:after{font-size:120px;top:-.2em}.hero-shade{background:linear-gradient(90deg,rgba(11,11,11,.63),rgba(11,11,11,.25)),linear-gradient(0deg,rgba(11,11,11,.75),transparent 85%)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.hero-line>span{opacity:1!important;transform:none!important}.hero-media>*,[data-parallax]{transform:none!important;will-change:auto}.hero-video,.cursor-preview,.route-exit{display:none!important}.image-window,.product-image{clip-path:none!important}.btn:hover,.division-card:hover,.product-card:hover{transform:none!important}.btn:before{display:none}.btn:hover{background:var(--sweep);color:var(--sweep-text)}}


/* v1.4 — supporting type, navigation and spacing; v1.3 motion stays intact. */
body{font-size:17px;line-height:1.7}
.wrap{max-width:1280px}
.section{padding:120px 0}
p,.why-grid p,.brand-row p,.privacy p,.footer-grid p,.form-result p{font-size:17px;line-height:1.7}
.page-head p,.video-hero p{font-size:19px;line-height:1.65;max-width:62ch}
.video-hero p{max-width:min(62ch,640px)}
.mono{font-size:12.5px}.eyebrow{font-size:12px}
.section-head .eyebrow,.video-hero .eyebrow,.hero .eyebrow{font-size:12px}
.section-head:before{width:32px;height:3px;margin-bottom:18px}
.section-head h1,.section-head h2{margin-top:18px}
.section-head .eyebrow{margin-bottom:18px}
.section-head p{font-size:17px}
.page-head .section-head p{font-size:19px}
.btn,.hero .actions .btn,.video-hero .btn{font:13.5px/1.4 'JetBrains Mono',monospace;padding:18px 32px}
.chip{font-size:12px}
.division-card{padding:28px}.product-copy{padding:28px}
.division-card .mono,.product-copy .mono,.product-row .mono,.detail>.mono{font-size:12.5px}
.division-card .tagline,.division-card .mini-list{font-size:15px}
.product-copy h3{font-size:19px}
.product-copy p{font:12.5px/1.7 'JetBrains Mono',monospace}
.product-image span,.division-card .card-link{font-size:15px}
.row h3{font-size:24px}.row h4,.product-row h3,.catalogue-index .row{font-size:20px}
.stat .mono,.stats-overlap .stat .mono{font-size:12.5px}
.spec-table th{font-size:12.5px}.spec-table td{font-size:17px}
.features li{font-size:17px}
.field{font:12px/1.7 'JetBrains Mono',monospace}
.field input,.field textarea,.field select{font:17px/1.7 Archivo,Arial,sans-serif}
.field .error{font-size:12px}
.form-note,.attached{font-size:15px;line-height:1.7}
.brand-actions a,.contact-aside a:not(.btn){font-size:15px}
.footer-grid a:not(.logo){font-size:16px;line-height:2.1}
.footer-grid .mono{font-size:12px}
.footer-bottom{font-size:12px}
.logo small{font-size:9px;letter-spacing:.05em}
.toast{font-size:15.5px}.dialog h2{font-size:30px}
.video-control,.scroll-cue .mono{font-size:12px}
.video-control{padding:10px 15px}.video-controls{gap:12px}
.division-card:hover,.product-card:hover{box-shadow:0 24px 48px rgba(0,0,0,.08)}
.cta h2{font-size:clamp(34px,5vw,64px)}
.cta .btn{min-height:52px;padding-block:15px}
::selection{background:var(--ink);color:white}
html{scrollbar-width:thin;scrollbar-color:var(--ink) var(--bg)}
::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:var(--ink);border-radius:8px}::-webkit-scrollbar-track{background:var(--bg)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.video-hero :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
/* Preserve an ink outline with a light separation on inverted surfaces. */
.video-hero :focus-visible,.cta :focus-visible,footer :focus-visible{box-shadow:0 0 0 3px white}
.breadcrumb{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding-top:28px;padding-bottom:0;margin-bottom:28px;font-size:12.5px;line-height:1.7;overflow-wrap:anywhere}
.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.breadcrumb .separator{opacity:.4}.breadcrumb [aria-current=page]{color:var(--ink);font-weight:500;min-width:0}
.breadcrumb+.page-head{padding-top:0}
.breadcrumb+.page-head .section-head h1{margin-top:18px}
/* Desktop navigation */
header{--header-height:84px;height:var(--header-height);background:white;transition:height .25s,box-shadow .25s}
header.scrolled{--header-height:72px;box-shadow:0 8px 30px rgba(0,0,0,.06)}
.header-inner{max-width:1280px;height:100%;padding:0 32px;gap:20px}
.header-inner .logo strong,.mobile-menu-bar .logo strong{font-size:26px}
.header-inner .logo{flex-shrink:0}
.nav{display:flex;align-items:center;gap:20px;font-size:15px;font-weight:550;letter-spacing:.01em}
.nav>a,.mega-trigger{position:relative;white-space:nowrap;background-image:none!important;text-decoration:none!important}
.nav>a:after,.mega-trigger:after{content:'';position:absolute;left:0;right:0;height:3px;bottom:-6px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav>a:hover:after,.nav>a[aria-current=page]:after,.mega-trigger:hover:after,.mega-trigger[data-active=true]:after,.mega-trigger[aria-expanded=true]:after{transform:scaleX(1)}
.mega-trigger{border:0;background:transparent;padding:0;font:inherit;letter-spacing:inherit}
.mega-trigger .chevron{display:inline-block;margin-left:5px;font-size:12px;transition:transform .25s}
.mega-trigger[aria-expanded=true] .chevron{transform:rotate(180deg)}
.header-inner>.btn{display:inline-flex;flex-shrink:0;font-size:13.5px;min-height:48px;padding:12px 18px;gap:12px}
.menu-toggle{display:none;font:12px/1.4 'JetBrains Mono',monospace;min-height:44px;padding:10px 14px}
.mega-panel{position:absolute;top:100%;left:0;width:100%;max-height:calc(100dvh - var(--header-height));overflow:auto;background:white;border:1px solid var(--line);box-shadow:0 40px 80px rgba(0,0,0,.10);padding:40px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .25s,transform .25s,visibility .25s}
.mega-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.mega-inner{max-width:1200px;margin:auto}.mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.05fr);gap:28px}
.mega-column{min-width:0}.mega-thumbnail{height:96px;border-radius:8px;margin-bottom:18px}
.mega-column .eyebrow{margin-bottom:10px}.mega-column h3{font-size:19px;margin:0 0 10px;letter-spacing:-.02em}
.mega-column p{font-size:14px;line-height:1.6;white-space:nowrap;letter-spacing:-.02em;margin-bottom:16px}
.mega-links{display:grid;gap:6px}.mega-links a{font-size:14px;line-height:1.6;padding:5px 18px 5px 0;position:relative}
.mega-links a:after{content:'→';position:absolute;right:0;opacity:0;transform:translateX(-5px);transition:.2s}
.mega-links a:hover:after,.mega-links a:focus-visible:after{opacity:1;transform:none}
.mega-featured{background:#F3F3F0;padding:22px;min-width:0}
.mega-featured .eyebrow{margin-bottom:14px}.mega-featured img{height:100px;margin-bottom:16px}
.mega-featured h3{font-size:19px;margin-bottom:10px}
.mega-featured .mono{display:block;margin-bottom:12px}
.mega-product-link{display:inline-block;font-size:14px;margin-bottom:20px}
.mega-featured .btn{width:100%;min-height:52px;padding:14px 12px;font-size:13.5px;gap:8px}
.mega-brands{display:flex;flex-wrap:nowrap;gap:6px;border-top:1px solid var(--line);margin-top:28px;padding:22px 4px 5px;overflow-x:auto}
.mega-brands .chip{flex-shrink:0;font-size:12px;padding:7px 9px;gap:6px;letter-spacing:0}
.mega-overview{display:inline-block;margin-top:16px;font-size:14px}
/* Mobile navigation uses the same catalogue and the existing hash links. */
.mobile-menu{display:none;position:fixed;inset:0;z-index:60;height:100dvh;background:white;transform:translateX(100%);visibility:hidden;pointer-events:none;transition:transform .3s,visibility .3s}
.mobile-menu.is-open{transform:none;visibility:visible;pointer-events:auto}
.mobile-menu-bar{height:84px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--line)}
.mobile-menu-close{border:0;background:transparent;font-size:30px;width:44px;height:44px;line-height:1}
.mobile-menu-body{overflow-y:auto;overscroll-behavior:contain;padding:12px 24px 32px;padding-bottom:max(32px,env(safe-area-inset-bottom));flex:1;min-height:0}
.mobile-nav{display:block}.mobile-item{border-bottom:1px solid var(--line);opacity:0;transform:translateY(12px);transition:opacity .3s,transform .3s}
.mobile-menu.is-open .mobile-item{opacity:1;transform:none;transition-delay:calc(var(--item-index)*40ms)}
.mobile-primary{display:flex;align-items:baseline;gap:16px;width:100%;padding:18px 0;font:800 28px/1.2 Archivo,Arial,sans-serif;letter-spacing:-.025em;text-align:left;border:0;background:none!important}
.mobile-primary .mono{flex:0 0 23px;font-size:12px;font-weight:400;letter-spacing:.05em}
.mobile-primary .mobile-label{flex:1;min-width:0}
.mobile-primary .accordion-sign{font-size:24px;font-weight:400;transition:transform .25s}
.mobile-primary[aria-expanded=true] .accordion-sign{transform:rotate(45deg)}
.mobile-primary[aria-current=page] .mobile-label,.mobile-primary[data-active=true] .mobile-label{ text-decoration:underline;text-underline-offset:6px}
.mobile-divisions{padding:0 0 18px 39px}
.mobile-divisions a{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:18px;line-height:1.4}
.mobile-divisions img{width:40px;height:40px;border-radius:4px;flex-shrink:0}
.mobile-divisions .mobile-all{font:12.5px/1.7 'JetBrains Mono',monospace}
.mobile-contact{padding-top:28px}.mobile-contact .btn{width:100%;height:52px;padding:14px 24px;margin-bottom:22px}
.mobile-contact>a:not(.btn){display:block;font:14px/1.7 'JetBrains Mono',monospace;padding:8px 0;overflow-wrap:anywhere}
@media(max-width:1250px) and (min-width:1151px){.header-inner{gap:16px;padding-inline:24px}.nav{gap:14px}.header-inner>.btn{padding-inline:12px;gap:8px}.mega-grid{gap:20px}.mega-column p{font-size:14px;letter-spacing:-.04em}}
@media(max-width:1150px){header,header.scrolled{--header-height:68px}.header-inner{padding:0 24px}.header-inner>.btn,.nav{display:none}.menu-toggle{display:block}.mega-panel{display:none}.mobile-menu{display:flex;flex-direction:column}}
@media(max-width:900px){.section{padding:72px 0}.division-card{padding:28px}.stat .mono,.stats-overlap .stat .mono{font-size:12.5px}}
@media(max-width:640px){.header-inner{padding-inline:22px}.section{padding:72px 0}.footer-bottom{font-size:12px;flex-wrap:wrap}.footer-grid .mono{font-size:12px}.footer-grid a:not(.logo){font-size:16px}.product-copy h3{font-size:19px}.product-row h3{font-size:20px}.row h3{font-size:24px}.spec-table th{font-size:12.5px}.spec-table td{font-size:17px}.video-hero p{font-size:17px}.video-hero .eyebrow{font-size:12px;max-width:100%;letter-spacing:.1em}.video-hero .btn{font-size:13.5px;padding:18px 24px}.video-hero{min-height:900px}.hero-content{padding-bottom:180px}.hero-controls{bottom:132px}.video-control,.scroll-cue .mono{font-size:12px}.video-control{padding:8px 10px}.stat .mono,.stats-overlap .stat .mono{font-size:12.5px;letter-spacing:.04em}.dialog h2{font-size:30px}.breadcrumb{gap:5px 8px;font-size:12.5px}.breadcrumb+section[style]{padding-top:0!important}.mobile-primary{gap:12px}.mobile-menu-bar,.mobile-menu-body{padding-inline:22px}.mobile-divisions{padding-left:35px}}
@media(prefers-reduced-motion:reduce){.mega-panel,.mobile-menu,.mobile-item,header{transition:none!important}.mobile-item{transform:none}}


/* v1.5 — brand accents only; existing geometry, type and motion remain in place. */
:root{--navy-900:#14202B;--navy-800:#1B2A38;--navy-700:#24384A;--sky:#A9CDE8;--sky-deep:#2F6A94}
.cta,footer{background:var(--navy-800)}
.cta .btn{color:var(--navy-800);--sweep:var(--navy-700);--sweep-text:white}
.cta .btn:hover,.cta .btn:focus-visible{color:white}
.footer-bottom{position:relative;isolation:isolate;background:var(--navy-900)}
.footer-bottom:before{content:'';position:absolute;z-index:-1;top:0;bottom:-20px;left:calc((100% - 100vw)/2);right:calc((100% - 100vw)/2);background:var(--navy-900)}

.toast{background:var(--navy-800);border-left-color:var(--sky)}
.dialog{border-top-color:var(--navy-800)}

.section-head:before{background:var(--sky-deep)}
/* The existing white label bar on the inverted CTA stays legible. */
.section-head:after,.cta .section-head:after{-webkit-text-stroke-color:rgba(47,106,148,.30)}
a:where(:not(.btn):not(.chip):not(.product-card):not(.product-row):not(.logo)):hover{color:var(--sky-deep)}
.mega-trigger:hover{color:var(--sky-deep)}
footer a:not(.logo):hover{color:var(--sky)}
.breadcrumb a:hover{color:var(--ink)}
.marquee a:hover,.marquee a:focus-visible{color:var(--sky-deep)}
.chip:hover{background:var(--navy-700);border-color:var(--navy-700);color:white}
.chip.active{background:var(--navy-800);border-color:var(--navy-800);color:white}
.chip .dot{color:var(--ink)}
.mobile-primary>.mono,.mobile-primary[aria-current=page] .mobile-label,.mobile-primary[data-active=true] .mobile-label,.mobile-divisions a[aria-current=page]{color:var(--sky-deep)}
.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--sky-deep)}
.field [aria-invalid=true]{border-bottom-color:var(--error)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:var(--sky-deep)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.video-hero :focus-visible{outline-color:var(--sky-deep)}
/* A minimum 72% navy overlay protects the campaign text even over a white video frame. */
.hero-shade{background:linear-gradient(90deg,rgba(20,32,43,.78),rgba(20,32,43,.72)),linear-gradient(0deg,rgba(20,32,43,.72),transparent 65%)}
.video-hero .hero-line:nth-child(2)>span{color:var(--sky)}
.video-hero .hero-line>span{overflow-wrap:normal;word-break:normal}
/* The tagline occupies existing space below the overlapping stats without moving sections. */
.hero-tagline{position:absolute;top:100%;left:48px;right:48px;z-index:1;margin:0;padding:6px 12px;background:white;color:var(--sky-deep);font:12px/1.6 'JetBrains Mono',monospace;letter-spacing:.2em;text-align:center;text-transform:uppercase}
@media(max-width:1150px){.hero-tagline{left:32px;right:32px}}
@media(max-width:640px){.hero-tagline{left:22px;right:22px}.video-hero h1{margin-bottom:3px}}
@media(max-width:360px){.video-hero h1{font-size:48px}}
/* Button/video control corrections — color and state only; sizing and motion stay intact. */
.btn{transition:transform .25s,background-color .2s,color .2s,border-color .2s}
.btn:before{transition:transform .2s cubic-bezier(.2,.7,.2,1)}
.btn:not(.outline){background:var(--navy-800);border-color:var(--navy-800);color:white;--sweep:white;--sweep-text:var(--navy-800)}
.btn:not(.outline):hover,.btn:not(.outline):focus-visible{color:var(--navy-800)}
.btn:not(.outline):active{background:var(--navy-900);border-color:var(--navy-900);color:white}
.btn:not(.outline):active:before{transform:translateX(-101%)}
.btn.outline{background:transparent;color:var(--ink);border-color:var(--ink);--sweep:white;--sweep-text:var(--ink)}
.btn.outline:hover,.btn.outline:focus-visible{color:var(--ink)}
.cta .btn:not(.outline),footer .btn:not(.outline){background:white;border-color:white;color:var(--navy-800);--sweep:white;--sweep-text:var(--navy-800)}
.cta .btn:not(.outline):hover,.cta .btn:not(.outline):focus-visible,footer .btn:not(.outline):hover,footer .btn:not(.outline):focus-visible{color:var(--navy-800)}
.cta .btn:not(.outline):active,footer .btn:not(.outline):active{background:white;border-color:white;color:var(--navy-800)}
.video-control{width:42px;height:42px;min-width:42px;min-height:42px;padding:0;display:grid;place-items:center}
.video-control svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* About story and home division-card refinements. */
.about-story{max-width:100%}
.about-story .section-head,.about-story-copy{max-width:68ch}
.about-story-copy p{font-size:19px;line-height:1.7}
.about-story-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:56px;border-top:1px solid var(--line)}
.about-story-point{padding:24px 22px 0;border-left:1px solid var(--line)}
.about-story-point:first-child{padding-left:0;border-left:0}
.about-story-point .mono{display:block;color:var(--sky-deep);margin-bottom:10px}
.about-story-point strong{display:block;font-size:18px;line-height:1.35}
#main[data-page=home] .grid:has(>.division-card){grid-auto-rows:1fr}
.division-card{display:flex;flex-direction:column;height:100%;min-height:100%;padding:0;border-radius:12px;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.division-card:hover{transform:translateY(-6px);border-color:var(--navy-800);box-shadow:0 28px 56px rgba(20,32,43,.14)}
.division-card-strip{height:230px;flex:0 0 230px;overflow:hidden;background:var(--surface)}
.division-card-strip img{width:100%;height:100%;object-fit:cover;filter:none;transition:transform .25s ease}
.division-card:hover .division-card-strip img{transform:scale(1.04)}
.division-card-body{display:flex;flex:1;flex-direction:column;padding:28px}
.division-card h3{font-size:30px;margin:0 0 10px}
.division-card .tagline{min-height:0;margin:0;font-size:15px;line-height:1.6}
.division-card-divider{height:1px;margin:24px 0;background:var(--line)}
.division-card-details{display:grid;gap:22px}
.division-card-block .mono{display:block;margin-bottom:7px;color:var(--sky-deep)}
.division-card .mini-list{min-height:0;margin:0;font-size:15px;line-height:1.7}
.division-card .card-link{display:flex;align-items:center;margin-top:auto;padding-top:24px;border-top:1px solid var(--line);font-size:15px;font-weight:600}
.division-card .card-link .arrow{transition:transform .25s ease}
.division-card:hover .card-link .arrow{transform:translateX(6px)}
@media(max-width:900px){.about-story-points{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}.about-story-point:nth-child(3){padding-left:0;border-left:0}.division-card-body{padding:28px}}
@media(max-width:640px){.about-story-copy p{font-size:17px}.about-story-points{grid-template-columns:1fr;margin-top:40px}.about-story-point,.about-story-point:first-child,.about-story-point:nth-child(3){padding:18px 0;border-left:0;border-top:1px solid var(--line)}.about-story-point:first-child{border-top:0}.division-card-body{padding:24px}.division-card-strip{height:230px;flex-basis:230px}}
footer{padding-top:64px}
.footer-bottom{margin-top:52px}
.brand-case{text-transform:none}
.division-intro{padding-bottom:20px}
.division-intro-copy{max-width:78ch}
.division-intro-copy p{font-size:19px;line-height:1.75}
.division-intro>.chips{margin-top:32px}
.warranty-note{margin-top:42px;padding:30px 32px;background:var(--navy-800);border-left:4px solid var(--sky);color:white}
.warranty-note .eyebrow{margin-bottom:12px;color:var(--sky)}
.warranty-note p{max-width:78ch;margin:0;color:white}
.brand-families{margin:18px 0 20px}
.brand-families .chip{font-size:11px}
@media(max-width:640px){.division-intro-copy p{font-size:17px}.warranty-note{padding:24px}.brand-families .chip{font-size:10px}}

/* Content-layout polish: tighter rhythm, sector cards, balanced story and project pagination. */
.section{padding:88px 0}
.page-head,.breadcrumb+.page-head{padding:56px 0 40px}
.breadcrumb{margin-bottom:0}
#main:not([data-page=home]) h1{font-size:clamp(34px,4vw,54px);line-height:1.08;max-width:22ch;font-weight:750;text-wrap:balance}
#main:not([data-page=home]) .detail h1{font-size:clamp(34px,2.8vw,44px)}
.mega-all-link{display:flex;align-items:center;justify-content:space-between;margin:0 0 28px;padding:0 0 18px;border-bottom:1px solid var(--line);font-size:17px;font-weight:650}
.mega-all-link span{transition:transform .2s}
.mega-all-link:hover span,.mega-all-link:focus-visible span{transform:translateX(5px)}
.mobile-solutions-row{display:flex;align-items:stretch}
.mobile-solutions-row .mobile-primary{flex:1;min-width:0}
.mobile-accordion-toggle{width:52px;flex:0 0 52px;border:0;background:transparent;font-size:28px;transition:transform .25s}
.mobile-accordion-toggle[aria-expanded=true]{transform:rotate(45deg)}
.about-story-main{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:72px;align-items:start}
.about-story-main .section-head{max-width:480px;margin-bottom:0}
.about-story-copy{max-width:62ch}
.about-story-copy p{font-size:17px;line-height:1.75}
.industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:24px;align-items:stretch}
.industry-card{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;background:white;border:1px solid var(--line);border-radius:12px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.industry-card:hover{transform:translateY(-6px);border-color:var(--navy-800);box-shadow:0 28px 56px rgba(20,32,43,.14)}
.industry-card-image{aspect-ratio:16/9;overflow:hidden;background:var(--surface)}
.industry-card-image img{width:100%;height:100%;object-fit:cover;filter:none;transition:transform .25s ease}
.industry-card:hover .industry-card-image img{transform:scale(1.04)}
.industry-card-body{display:flex;flex:1;flex-direction:column;padding:26px}
.industry-card h3{font-size:22px;margin:0 0 14px}
.industry-card p{font-size:15px;line-height:1.7;margin-bottom:24px}
.industry-card .chips{margin-top:auto;padding-top:4px}
.industry-card .chip{font-size:11px;padding:7px 11px}
.warranty-section{padding-top:0}
.warranty-note{margin:0;padding:30px 32px;background:var(--surface);border-left:3px solid var(--sky-deep);color:var(--ink)}
.warranty-note .eyebrow{margin-bottom:12px;color:var(--sky-deep)}
.warranty-note p{max-width:78ch;margin:0;color:var(--muted)}
.project-load-more{display:flex;justify-content:center;margin-top:40px}
.project-row-new{animation:project-row-in .5s both}
.footer-grid{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));align-items:start}
.footer-grid>div{align-self:start}
.footer-contact>.mono{margin-bottom:18px}
.footer-address{max-width:30ch;margin:0 0 16px!important;font-size:14px!important;line-height:1.6!important;color:#ccc}
.footer-contact-rule{display:block;width:24px;height:1px;margin:0 0 16px;background:var(--sky)}
.footer-phones,.footer-contact-links{display:grid;gap:6px}
.footer-phones a,.footer-contact-links a{margin:0!important;font-size:14px!important;line-height:1.6!important}
.footer-phones a{display:grid!important;grid-template-columns:18px 1fr;align-items:baseline;gap:7px}
.footer-phones .mono{margin:0;font-size:10px;color:var(--sky)}
.footer-contact-links{margin-top:16px}
.division-card{cursor:pointer}
.division-title-link{transition:color .2s}
.division-title-link:hover,.division-title-link:focus-visible{color:var(--sky-deep)}
.logo-mark{display:block}
.logo-mark img{width:auto;height:40px;object-fit:contain;filter:none}
footer .logo-mark img{height:40px}
.gallery-main,.thumb img{object-fit:contain;background:#fff}
.product-image img{object-fit:cover}
@keyframes project-row-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:900px){.section{padding:88px 0}.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-story-main{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:44px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.section{padding:56px 0}.page-head,.breadcrumb+.page-head{padding:56px 0 40px}.industry-grid{grid-template-columns:1fr}.industry-card-body{padding:22px}.about-story-main{grid-template-columns:1fr;gap:30px}.about-story-copy p{font-size:17px}.warranty-note{padding:24px}.project-load-more{margin-top:30px}.project-load-more .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.industry-card:hover{transform:none}.industry-card:hover .industry-card-image img{transform:none}.project-row-new{animation:none}}


/* Client feedback restructure: content-led catalogues, brand logos, news and project cards. */
.news-grid,.brand-product-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.news-card,.brand-product-card,.project-card{background:#fff;border:1px solid var(--line);min-width:0;transition:transform .25s,border-color .25s,box-shadow .25s}
.news-card:hover,.brand-product-card:hover,.project-card:hover{transform:translateY(-6px);border-color:var(--navy);box-shadow:0 18px 42px rgba(20,32,43,.12)}
.news-card-image,.brand-product-image,.project-card-image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--surface)}
.brand-product-image,.project-card-image{aspect-ratio:4/3}.news-card-image img,.brand-product-image img,.project-card-image img{height:100%;transition:transform .45s}
.news-card:hover img,.brand-product-card:hover img,.project-card:hover img{transform:scale(1.035)}
.news-card-copy,.brand-product-copy,.project-card-copy{padding:22px}.news-card-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;color:var(--muted)}
.news-card h3{font-size:20px;margin:0 0 12px}.news-card p{font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px}.news-card-link{font-size:13px;font-weight:700;color:var(--navy)}
.news-more{text-align:center;margin-top:34px}.brand-logo{display:flex;align-items:center;justify-content:center;min-height:68px}.brand-logo img{width:auto;max-width:180px;max-height:58px;object-fit:contain}.brand-logo-fallback{font-size:25px;font-weight:800;letter-spacing:-.04em}
.division-intro-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:72px;align-items:start}.division-intro-copy h1{font-size:clamp(38px,4.2vw,58px);max-width:18ch}.division-intro-copy p{font-size:17px;max-width:62ch}.product-range{background:#F3F3F0;border:1px solid var(--line);padding:30px}.product-range .eyebrow{margin-bottom:18px}.product-range-item{padding:13px 0;border-top:1px solid var(--line);font-size:15px}.brand-partners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.brand-partner{display:flex;min-height:112px;padding:20px;background:#fff;border:1px solid var(--line);transition:.2s}.brand-partner:hover{border-color:var(--navy);transform:translateY(-3px)}
.brand-page-intro{display:grid;grid-template-columns:minmax(220px,.45fr) 1fr;gap:64px;align-items:center}.brand-page-logo{background:#fff;border:1px solid var(--line);padding:35px;min-height:170px}.brand-page-logo.brand-logo img{max-width:240px;max-height:90px}.brand-product-card{appearance:none;text-align:left;padding:0;color:inherit;font:inherit;cursor:pointer}.brand-product-copy h3{font-size:18px;margin:0 0 8px}.brand-product-copy .mono{font-size:10px}.brand-overview-row{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:34px;align-items:center;padding:30px 0;border-top:1px solid var(--line)}.brand-overview-row .brand-logo{justify-content:flex-start}.brand-overview-copy h3{font-size:28px;margin-bottom:8px}.brand-overview-copy p{font-size:14px;margin-bottom:10px}.brand-overview-actions{min-width:155px}.brand-overview-actions a{display:block;font-size:13px;margin:8px 0}.brand-filter-bar{margin-bottom:34px}
.project-card-copy{display:flex;flex-direction:column;min-height:170px}.project-card h3{font-size:20px;margin:15px 0 12px}.project-card p{font-size:14px;margin-top:auto;margin-bottom:0}.project-card .chip{align-self:flex-start}.project-load-more{text-align:center;margin-top:34px}
.blog-hero-meta{display:flex;gap:18px;align-items:center;margin-bottom:18px}.blog-feature{aspect-ratio:16/7;height:auto}.article-body{width:100%;max-width:none;margin:0}.article-body p{font-size:17px;line-height:1.8;margin-bottom:28px}.mega-help{background:#F3F3F0;padding:24px;display:flex;flex-direction:column;align-items:flex-start}.mega-help h3{font-size:22px;margin-bottom:12px}.mega-help p{font-size:14px}.mega-help .btn{margin-top:auto;width:100%}.mega-column p{margin-bottom:0}
@media(max-width:900px){.news-grid,.brand-product-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-partners{grid-template-columns:repeat(2,minmax(0,1fr))}.division-intro-layout,.brand-page-intro{grid-template-columns:1fr;gap:38px}.brand-overview-row{grid-template-columns:150px minmax(0,1fr)}.brand-overview-actions{grid-column:2}}
@media(max-width:640px){.news-grid,.brand-product-grid,.project-grid,.brand-partners{grid-template-columns:1fr}.brand-overview-row{grid-template-columns:1fr;gap:18px}.brand-overview-actions{grid-column:auto}.brand-overview-row .brand-logo{justify-content:flex-start}.product-range{padding:24px}.blog-feature{aspect-ratio:16/9}}

/* Five-fix polish */
.mega-category-list{display:grid;gap:4px;margin-top:14px}.mega-category-list span{display:block;font-size:12px;line-height:1.45;color:var(--muted)}
.division-inline-logos{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.division-inline-logos>a{display:flex;align-items:center;justify-content:center;width:104px;height:58px;padding:9px 12px;background:#fff;border:1px solid var(--line);transition:border-color .2s,transform .2s}.division-inline-logos>a:hover{border-color:var(--navy);transform:translateY(-2px)}.division-inline-logos .brand-logo{min-height:0}.division-inline-logos .brand-logo img{max-width:78px;max-height:32px}.division-inline-logos .brand-logo-fallback{font-size:13px;text-align:center}
.marquee-brand{display:flex!important;align-items:center;justify-content:center;width:150px;height:54px}.marquee .marquee-brand-logo{min-height:0}.marquee .marquee-brand-logo img{width:auto;height:28px;max-width:130px;object-fit:contain;opacity:.85;transition:opacity .2s}.marquee-brand:hover .marquee-brand-logo img,.marquee-brand:focus-visible .marquee-brand-logo img{opacity:1}.marquee .brand-logo-fallback{color:var(--ink);-webkit-text-stroke:0;font:700 17px/1 Archivo,Arial,sans-serif;letter-spacing:-.02em;opacity:.85}.marquee-brand:hover .brand-logo-fallback{opacity:1}
.news-card-copy h3{margin-top:0}
.brand-product-grid{align-items:stretch}.brand-product-card{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden}.brand-product-image{padding:14px;background:#fff}.brand-product-image img{width:100%;height:100%;object-fit:contain}.brand-product-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;width:100%;padding:14px}.brand-product-copy .mono{font-size:12px;line-height:1.5;margin-bottom:8px}.brand-product-copy h3{font-size:18px;line-height:1.3;margin:0;text-align:left;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}

/* Compact product range and larger brand marks */
.product-range-item{padding:10px 5px}
.division-inline-logos>a{height:70px}
.division-inline-logos .brand-logo img{height:44px;max-height:44px;width:auto;object-fit:contain}
.brand-overview-row .brand-logo img{height:56px;max-height:56px;width:auto;object-fit:contain}
.brand-page-logo.brand-logo img{height:80px;max-height:80px;width:auto;object-fit:contain}
.marquee .marquee-brand-logo img{height:40px;max-height:40px;width:auto;object-fit:contain}

/* Exact division and marquee logo sizing */
.division-intro-layout{grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:48px}
.division-inline-logos{display:grid;grid-template-columns:repeat(4,max-content);gap:20px;align-items:stretch}
.division-inline-logos>a{width:fit-content;min-width:150px;height:92px;padding:14px 20px;box-sizing:border-box}
.division-inline-logos .brand-logo{width:100%;min-height:0}
.division-inline-logos .brand-logo img{height:64px;max-height:64px;max-width:110px;width:auto;object-fit:contain}
.division-inline-logos .brand-logo-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:64px;font:800 26px/1 Archivo,Arial,sans-serif;text-align:center;letter-spacing:-.04em}
.marquee{padding:32px 0}
.marquee-track{gap:72px}
.marquee-brand{width:auto;min-width:150px;height:72px}
.marquee .marquee-brand-logo img{height:60px;max-height:60px;max-width:none;width:auto;object-fit:contain}
.marquee .brand-logo-fallback{font:800 24px/1 Archivo,Arial,sans-serif}
@media(max-width:900px){.division-inline-logos{grid-template-columns:repeat(2,minmax(150px,max-content))}}
@media(max-width:640px){.division-inline-logos{grid-template-columns:1fr}.division-inline-logos>a{width:100%}}
/* Multi-page PHP integration */
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:25;width:46px;height:46px;border:1px solid var(--navy,#1B2A38);background:#fff;color:var(--navy,#1B2A38);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .2s,transform .2s,background .2s,color .2s}
.back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{background:var(--navy,#1B2A38);color:#fff}
.social-links{display:flex;align-items:center;gap:12px;margin-top:22px}.social-links a{display:grid!important;place-items:center;width:34px;height:34px;margin:0!important;border:1px solid rgba(255,255,255,.28);color:#fff!important;transition:color .2s,border-color .2s,transform .2s}.social-links a:hover{color:var(--sky,#A9CDE8)!important;border-color:var(--sky,#A9CDE8);transform:translateY(-2px)}.social-links svg{width:16px;height:16px;fill:currentColor}
.mega-category-list{list-style:none;margin:13px 0 0;padding:0;font-size:11px;line-height:1.7;color:var(--muted)}
.mobile-accordion-toggle{flex:0 0 48px;height:48px;background:transparent;border:1px solid var(--line);font-size:20px}.mobile-solutions-row{display:flex;align-items:center;gap:8px}.mobile-solutions-row .mobile-primary{flex:1}
.form-result.success{border-color:var(--sky-deep,#2F6A94);color:var(--navy,#1B2A38)}.form-result.failure{border-color:var(--error);color:var(--error)}
.no-js .reveal{opacity:1;transform:none}

/* Approved-design parity pass. The original single-file CSS remains above. */
.bar-enter:before{animation-duration:.5s}
.section-head:after{transform:translateY(var(--ghost-y,0));transition:transform .12s linear}
.marquee-track{animation-duration:30s}
.video-hero h1{font-size:clamp(56px,8vw,120px);line-height:.95;font-weight:800}

.page-head>.wrap>.breadcrumb,.division-intro-section .breadcrumb,.brand-intro-section .breadcrumb,.blog-post-head .breadcrumb{padding:0;margin:0 0 28px}
.page-head>.wrap>.breadcrumb+*>*,.page-head>.wrap>.breadcrumb+.eyebrow{margin-top:0}
.division-intro-section,.brand-intro-section{padding-top:48px}
.division-intro-section .breadcrumb+ .division-intro-layout,.brand-intro-section .breadcrumb+ .brand-page-intro{margin-top:28px}
.brand-page-intro{grid-template-areas:". crumb" "logo copy";row-gap:28px}
.brand-page-intro>.breadcrumb{grid-area:crumb;margin:0}
.brand-page-intro>.brand-page-logo{grid-area:logo}
.brand-page-intro>.brand-page-copy{grid-area:copy}

.about-story-points{align-items:stretch}
.about-story-point{display:flex;align-items:flex-start;gap:12px}
.about-story-point .mono{flex:0 0 auto;margin:2px 0 0}
.about-story-point strong{font-size:18px;line-height:1.4}
.mission-band{padding:64px 0;background:var(--navy-800);color:white}
.mission-band .eyebrow{color:var(--sky);margin-bottom:14px}
.mission-band h2{max-width:24ch;margin:0;color:white;font-size:clamp(30px,4vw,52px)}
.timeline{position:relative;padding-left:34px}
.timeline:before{content:'';position:absolute;left:5px;top:20px;bottom:20px;width:1px;background:var(--line)}
.timeline .row{position:relative;padding:30px 0;gap:64px}
.timeline .row strong{min-width:125px}
.timeline .row strong:before{position:absolute;left:-34px;top:43px;width:11px;height:11px;margin:0;border:3px solid var(--bg);border-radius:50%;background:var(--sky-deep);color:transparent;box-shadow:0 0 0 1px var(--sky-deep)}

.brand-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.brand-product-card{display:flex;flex-direction:column;height:100%;text-align:left;background:#fff;border:1px solid var(--line)}
.brand-product-image{display:block;aspect-ratio:4/3;padding:14px;background:#fff;overflow:hidden}
.brand-product-image img{width:100%;height:100%;object-fit:contain;background:#fff}
.brand-product-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:14px}
.brand-product-copy .mono{font-size:12px;margin-bottom:8px;color:var(--muted)}
.brand-product-copy h3{min-height:2.6em;margin:0;font-size:18px;line-height:1.3;text-align:left;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.industry-card h3{font-size:22px;font-weight:700}
.industry-card p{font-size:15px}
.project-card h3{font-size:19px;font-weight:600;line-height:1.35;margin:15px 0 12px}
.project-card .project-location{font-size:12.5px;letter-spacing:.02em;text-transform:uppercase}
.news-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.more-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.news-card{display:flex;flex-direction:column;height:100%;overflow:hidden}
.news-card-image{display:block;aspect-ratio:16/9;overflow:hidden}
.news-card-image img{width:100%;height:100%;object-fit:cover}
.news-card-copy{display:flex;flex:1;flex-direction:column;padding:22px}
.news-card-copy h3{font-size:20px;line-height:1.35}
.news-card-copy p{font-size:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-card-link{margin-top:auto}
.page-head,.blog-post-head{position:static;height:auto}
.blog-post-head{padding-bottom:40px}
.blog-post-head h1{margin:0;max-width:22ch;font-size:clamp(34px,4vw,54px);line-height:1.08}
.blog-feature-frame{overflow:hidden;border:1px solid var(--line);border-radius:12px}
.blog-feature-frame .blog-feature{display:block;width:100%;height:auto;aspect-ratio:16/7;margin:0;object-fit:cover}
.article-body{width:100%;max-width:none;margin:0}.article-body p{font-size:17px;line-height:1.8}

@media(max-width:900px){
  .brand-product-grid,.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-story-points{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:0}
  .about-story-point{padding:22px;border-top:1px solid var(--line)}
  .about-story-point:nth-child(odd){padding-left:0;border-left:0}
  .brand-page-intro{grid-template-areas:"crumb" "logo" "copy";row-gap:28px}
}
@media(max-width:640px){
  .about-story-points{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:40px}
  .about-story-point,.about-story-point:first-child,.about-story-point:nth-child(3){padding:18px 12px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
  .about-story-point:nth-child(odd){padding-left:0;border-left:0}
  .about-story-point strong{font-size:16px}
  .timeline{padding-left:26px}.timeline .row{gap:14px}.timeline .row strong{min-width:95px}.timeline .row strong:before{left:-26px}
  .brand-product-grid,.news-grid,.more-news-grid{grid-template-columns:1fr}
  .blog-feature-frame .blog-feature{aspect-ratio:16/9}
}
@media(prefers-reduced-motion:reduce){.section-head:after{transform:none!important}.marquee-track{animation:none!important}}

/* Contact page parity */
.contact-page-head .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.contact-page-head .eyebrow:before{content:'';display:block;width:32px;height:3px;background:var(--sky-deep);transform-origin:left}
.contact-page-head h1{font-size:clamp(34px,4vw,54px);line-height:1.08;max-width:22ch;font-weight:750}
.contact-page-head .lead{font-size:19px;max-width:62ch}
.contact-page-content{padding:88px 0 0}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:70px;align-items:start}
.contact-form .form-grid{gap:24px 28px}
.contact-form .field{display:flex;flex-direction:column;gap:8px;font:12px/1.5 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.12em}
.contact-form .field input,.contact-form .field select,.contact-form .field textarea{width:100%;min-height:50px;margin:0;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:0;background-color:transparent;color:var(--ink);font:17px/1.7 Archivo,Arial,sans-serif;letter-spacing:normal;text-transform:none;transition:border-color .2s}
.contact-form .field textarea{min-height:110px;resize:vertical}
.contact-form .field select{appearance:none;padding-right:36px;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 15px) 22px,calc(100% - 10px) 22px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.contact-form .field input:focus,.contact-form .field select:focus,.contact-form .field textarea:focus{border-bottom-color:var(--sky-deep)}
.contact-form .field [aria-invalid=true],.contact-form .field [aria-invalid=true]:focus{border-bottom-color:var(--error)}
.contact-form .field .error{min-height:18px;color:var(--error);font:11px/1.5 'JetBrains Mono',monospace;letter-spacing:.03em;text-transform:none}
.contact-form>.btn{margin-top:8px;background:var(--navy-800);border-color:var(--navy-800);color:white}
.contact-form>.btn:hover,.contact-form>.btn:focus-visible{background:white;color:var(--navy-800)}
.contact-form .form-note{margin:16px 0 0;color:var(--muted);font-size:12px;letter-spacing:.08em}
.contact-aside{padding:0 32px;background:var(--surface);border:1px solid var(--line)}
.contact-info-block{padding:27px 0;border-top:1px solid var(--line)}
.contact-info-block:first-child{border-top:0}
.contact-info-block>.mono,.contact-hours .mono{display:block;margin:0 0 9px;color:var(--muted);font-size:12px}
.contact-info-block strong{display:block;margin-bottom:8px;font-size:18px}
.contact-info-block p{max-width:36ch;margin:0;color:var(--muted);font-size:16px;line-height:1.7}
.contact-info-block>a:not(.btn){display:block;width:fit-content;margin:5px 0;font-size:17px;line-height:1.55}
.contact-info-block .contact-sub-label{margin-top:18px}
.whatsapp-button{display:inline-flex!important;width:auto!important;margin:0!important;gap:12px}
.whatsapp-button svg{width:18px;height:18px;fill:currentColor}
.contact-hours{display:flex;align-items:flex-start;gap:14px}
.contact-info-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%}
.contact-info-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact-map{height:420px;margin:88px 0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.contact-map iframe{display:block;width:100%;height:420px;border:0;filter:none}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:56px}.contact-aside{padding-inline:28px}}
@media(max-width:640px){.contact-page-content{padding-top:56px}.contact-form .form-grid{grid-template-columns:1fr;gap:18px}.contact-form .field.full{grid-column:auto}.contact-map{margin:56px 0}.contact-aside{padding-inline:22px}}

/* Cloudflare Turnstile */
.turnstile-field{grid-column:1/-1;margin:4px 0 2px;max-width:100%;overflow:hidden}
.turnstile-widget{width:100%;min-height:65px}
.turnstile-widget iframe{max-width:100%}
.turnstile-error{display:block;min-height:18px;margin-top:6px;color:var(--error);font:11px/1.5 'JetBrains Mono',monospace;letter-spacing:.03em}
.turnstile-unavailable{margin:0;color:var(--error);font-size:13px}

/* Global card hover and focus system */
:is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row),
:is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row).reveal,
:is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row).reveal.visible{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease}
:is(.division-card-strip,.product-image,.news-card-image,.brand-product-image,.industry-card-image,.project-card-image){overflow:hidden;border-radius:inherit}
:is(.division-card-strip,.product-image,.news-card-image,.brand-product-image,.industry-card-image,.project-card-image)>img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.division-card .card-link .arrow{display:inline-block;transition:transform .25s}
.news-card-link,.brand-overview-actions a{display:inline-block;transition:transform .25s,background-size .3s,color .25s!important}
.division-title-link,.news-card h3 a{transition:color .25s}

@media(hover:hover) and (pointer:fine){
  :is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row):hover{transform:translateY(-6px);border-color:#1B2A38;box-shadow:0 24px 48px rgba(11,11,11,.10)}
  :is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card):hover :is(.division-card-strip,.product-image,.news-card-image,.brand-product-image,.industry-card-image,.project-card-image)>img{transform:scale(1.05)}
  .division-card:hover .card-link .arrow,.news-card:hover .news-card-link,.brand-overview-row:hover .brand-overview-actions a{transform:translateX(4px)}
  .division-card:hover .division-title-link,.news-card:hover h3 a{color:var(--sky-deep)}
}

:is(.division-card,.product-card,.news-card,.industry-card,.project-card,.brand-overview-row):has(:focus-visible),
.brand-product-card:focus-visible{transform:translateY(-6px);border-color:#1B2A38;box-shadow:0 24px 48px rgba(11,11,11,.10);outline:2px solid #1B2A38;outline-offset:4px}
:is(.division-card,.product-card,.news-card,.industry-card,.project-card):has(:focus-visible) :is(.division-card-strip,.product-image,.news-card-image,.industry-card-image,.project-card-image)>img,
.brand-product-card:focus-visible .brand-product-image>img{transform:scale(1.05)}
.division-card:has(:focus-visible) .card-link .arrow,.news-card:has(:focus-visible) .news-card-link,.brand-overview-row:has(:focus-visible) .brand-overview-actions a{transform:translateX(4px)}
.division-card:has(:focus-visible) .division-title-link,.news-card:has(:focus-visible) h3 a{color:var(--sky-deep)}

@media(prefers-reduced-motion:reduce){
  :is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row),
  :is(.division-card-strip,.product-image,.news-card-image,.brand-product-image,.industry-card-image,.project-card-image)>img,
  .division-card .card-link .arrow,.news-card-link,.brand-overview-actions a,.division-title-link,.news-card h3 a{transition:none!important}
  :is(.division-card,.product-card,.news-card,.brand-product-card,.industry-card,.project-card,.brand-overview-row){transform:none!important}
  :is(.division-card-strip,.product-image,.news-card-image,.brand-product-image,.industry-card-image,.project-card-image)>img{transform:none!important}
}

/* Responsive navigation, home carousels, division layouts and footer */
.mobile-solutions-row{width:100%;min-width:0}
.mobile-solutions-row .mobile-primary{min-width:0}
.mobile-accordion-toggle{display:grid;flex:0 0 48px;place-items:center;width:48px;height:48px;overflow:hidden;border:1px solid var(--line);color:var(--ink);transform:none!important}
.mobile-accordion-toggle svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.mobile-accordion-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.mobile-divisions a>span{display:grid;min-width:0;gap:2px}
.mobile-divisions a strong,.mobile-divisions a small{display:block;overflow-wrap:anywhere}
.mobile-divisions a small{color:var(--muted);font-size:12px;line-height:1.4}

.card-carousel{position:relative;min-width:0}
.carousel-viewport{overflow:hidden;touch-action:pan-y;cursor:grab}
.carousel-viewport.is-dragging{cursor:grabbing;user-select:none}
.carousel-track{display:flex!important;align-items:stretch;gap:24px!important;transition:transform .45s cubic-bezier(.2,.7,.2,1);will-change:transform}
.carousel-slide{flex:0 0 85%;min-width:0;height:auto}
.why-carousel .carousel-slide{box-sizing:border-box;min-height:260px;padding:32px 28px;border-top:1px solid var(--ink)}
.why-carousel .carousel-slide h3{margin:70px 0 16px}
.why-carousel .carousel-slide p{margin:0;color:var(--muted)}
.news-carousel .carousel-slide>.news-card{height:100%}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px}
.carousel-arrows,.carousel-dots{display:flex;align-items:center;gap:10px}
.carousel-arrows button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy-800);transition:background .2s,color .2s,border-color .2s,transform .2s}
.carousel-arrows button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.carousel-arrows button:hover,.carousel-arrows button:focus-visible{border-color:var(--navy-800);background:var(--navy-800);color:#fff;transform:translateY(-2px)}
.carousel-arrows button:disabled{opacity:.35;pointer-events:none}
.carousel-dots button{width:9px;height:9px;padding:0;border:1px solid var(--navy-800);border-radius:50%;background:transparent;transition:background .2s,transform .2s}
.carousel-dots button.active,.carousel-dots button[aria-current=true]{background:var(--navy-800);transform:scale(1.15)}
.footer-credit a{display:inline!important;margin:0!important;color:inherit!important;text-decoration:underline;text-underline-offset:3px}

@media(min-width:1025px){
  .why-carousel .carousel-viewport{overflow:visible;cursor:auto;touch-action:auto}
  .why-carousel .carousel-track{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px!important;transform:none!important;transition:none;will-change:auto}
  .why-carousel .carousel-slide{display:block;min-width:0;min-height:0;padding:24px 0 0}
  .why-carousel .carousel-slide h3{margin:25px 0 15px}
  .why-carousel .carousel-controls{display:none}
}

@media(min-width:1025px) and (max-width:1150px){
  .why-carousel .carousel-track{gap:20px!important}
}

@media(min-width:1024px){
  .news-carousel .carousel-viewport{overflow:visible;cursor:auto;touch-action:auto}
  .news-carousel .carousel-track{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important;transform:none!important;transition:none}
  .news-carousel .carousel-slide{display:block;min-width:0}
  .news-carousel .carousel-controls{display:none}
}

@media(max-width:900px){
  .division-intro-layout{grid-template-columns:minmax(0,1fr);gap:36px}
  .division-intro-copy,.product-range{width:100%;min-width:0}
  .product-range{box-sizing:border-box}
  .division-inline-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .division-inline-logos>a{width:100%;min-width:0;height:74px;padding:10px 12px}
  .division-inline-logos .brand-logo img{height:48px;max-height:48px;max-width:100%}
  .division-inline-logos .brand-logo-fallback{height:48px;font-size:20px}
  .warranty-section,.warranty-section .wrap,.warranty-note{width:100%;box-sizing:border-box}

  .home-division-grid .division-card-divider,.home-division-grid .division-card-details{display:none}
  .home-division-grid .division-card-body{display:flex;flex-direction:column}
  .home-division-grid .card-link{margin-top:auto}

  footer{padding-top:36px}
  .footer-grid{display:flex;flex-direction:column;gap:22px}
  .footer-brand{order:2}
  .footer-brand>.logo,.footer-brand>p,.footer-explore,.footer-solutions{display:none!important}
  .footer-contact{order:1}
  .footer-contact>.mono,.footer-address,.footer-contact-rule{display:none!important}
  .footer-contact-links{margin-top:8px}
  .footer-contact-links a{display:none!important}
  .footer-contact-links a:last-child{display:block!important;width:fit-content}
  .footer-phones{margin:0}
  .social-links{margin:0}
  .footer-bottom{margin-top:30px}
  .footer-privacy,.footer-admin{display:none!important}
}

@media(max-width:640px){
  .mobile-divisions{padding-left:0}
  .mobile-divisions a{align-items:center;padding:10px 0}
  .mobile-divisions img{width:48px;height:48px;object-fit:cover}
  .carousel-track{gap:18px!important}
  .carousel-slide{flex-basis:85%}
  .why-carousel .carousel-slide{min-height:248px;padding:28px 22px}
  .why-carousel .carousel-slide h3{margin-top:58px}
  .carousel-controls{margin-top:22px}
  .footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}
}

@media(prefers-reduced-motion:reduce){
  .carousel-track,.carousel-arrows button,.carousel-dots button,.mobile-accordion-toggle svg{transition:none!important}
}

/* Brand overview actions retain the approved stacked rhythm. */
.brand-overview-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.brand-overview-actions a{margin:0}
