@font-face{font-family:Manrope;src:url('assets/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--navy:#142c46;--deep:#0e2238;--red:#c82032;--ink:#182d42;--muted:#526170;--paper:#f3f4f2;--line:#d8dfe3;--white:#fff;--gutter:clamp(24px,5.6vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--white);font:400 15px/1.7 Manrope,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}::selection{color:white;background:var(--red)}:focus-visible{outline:3px solid #d34e59;outline-offset:5px}input,textarea{caret-color:var(--red)}::-webkit-scrollbar{width:9px}::-webkit-scrollbar-thumb{background:#788796}::-webkit-scrollbar-track{background:var(--paper)}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{max-width:1600px;padding-left:var(--gutter);padding-right:var(--gutter);margin:auto}.skip{position:fixed;left:16px;top:-100px;z-index:50;background:white;padding:12px 20px}.skip:focus{top:12px}.topbar{background:var(--navy);color:#e5ebf0;font-size:11px;letter-spacing:.01em}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:33px}.topbar a:hover{text-decoration:underline}.header{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 3px 18px #0e22380b}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:inline-flex;flex-direction:column;line-height:1;position:relative;width:182px;flex:none}.brand-word{font-size:31px;letter-spacing:-.04em;color:var(--red);font-weight:800;position:relative;width:max-content}.brand-word:before{content:'';position:absolute;left:0;top:-8px;width:100%;height:1px;background:var(--red);transform:rotate(-7deg);transform-origin:left}.brand-word>span{font-size:11px;letter-spacing:.14em;display:block;text-align:right;margin-top:1px}.brand-tag{font-size:11px;letter-spacing:.04em;margin-top:8px;color:var(--muted)}nav{display:flex;align-items:center;gap:28px}nav>a{font-size:12px;font-weight:600;white-space:nowrap}nav>a:not(.button){position:relative;padding-block:12px}nav>a:not(.button):after{content:'';position:absolute;bottom:4px;left:0;width:100%;transform:scaleX(0);transform-origin:left;height:2px;background:var(--red);transition:transform .2s}nav>a:hover:after{transform:scaleX(1)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--red);color:white;padding:17px 23px;border:1px solid var(--red);font-size:12px;font-weight:700;line-height:1.5;transition:background .2s,border-color .2s}.button:hover{background:#a91526;border-color:#a91526}.button svg{width:19px;height:19px}.nav-cta{padding:13px 17px;gap:16px;margin-left:3px}.menu-toggle{display:none}.hero{position:relative;min-height:650px;height:calc(100svh - 194px);max-height:820px;background:var(--deep);color:white;overflow:hidden}.hero-photo{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:62% 48%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,29,47,.94) 0%,rgba(10,29,47,.79) 34%,rgba(10,29,47,.25) 70%,rgba(10,29,47,.10) 100%),linear-gradient(0deg,rgba(10,29,47,.6),transparent 30%)}.hero-content{position:relative;padding-top:clamp(68px,7vh,100px);padding-bottom:120px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,4.8vw,76px);font-weight:500;line-height:1.1;letter-spacing:-.035em;margin-bottom:27px}h1 span{color:#fff}h1 span:after{content:'';display:inline-block;width:11px;height:11px;background:var(--red);margin-left:9px}h1{animation:hero-arrive 1s cubic-bezier(.16,1,.3,1)}@keyframes hero-arrive{from{transform:translateY(20px);filter:blur(3px)}to{transform:none;filter:blur(0)}}.hero-content>p{max-width:550px;color:#e0e6ec;font-size:15px;line-height:1.8;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:29px}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;font-weight:600;line-height:1.7}.text-link:hover{text-decoration:underline;text-underline-offset:6px}.hero-bottom{position:absolute;bottom:27px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#e3e9ee;letter-spacing:.035em}.hero-bottom>a{display:flex;align-items:center;gap:13px}.hero-bottom svg{width:17px}.expertise-strip{background:var(--paper);border-bottom:1px solid var(--line)}.expertise-strip>.wrap{display:flex;justify-content:space-between;gap:30px;align-items:center;min-height:76px;font-size:12px}.expertise-strip>.wrap>span{font-weight:700}.expertise-strip>.wrap>div{display:flex;gap:40px;color:#485968}.expertise-strip>.wrap>div>span:before{content:'';width:5px;height:5px;background:var(--red);display:inline-block;margin:0 12px 2px 0}.section{padding-top:104px;padding-bottom:104px}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:46px}h2{font-size:clamp(30px,3vw,44px);font-weight:500;letter-spacing:-.03em;line-height:1.23;margin-bottom:0}.section-heading>p{max-width:350px;color:var(--muted);font-size:14px;margin:0 0 3px}.solution-explorer{display:grid;grid-template-columns:34% 66%;border-top:1px solid var(--line)}.solution-tabs{display:flex;flex-direction:column;padding-right:42px;padding-top:8px;align-self:start}.solution-tabs button{text-align:left;display:flex;justify-content:space-between;align-items:center;gap:15px;background:transparent;border:0;border-bottom:1px solid var(--line);padding:21px 15px 21px 0;color:var(--muted);font-size:15px;line-height:1.5;transition:color .2s}.solution-tabs button[aria-selected=true]{color:var(--red);font-weight:700}.solution-tabs button svg{width:19px}.solution-tabs button:hover{color:var(--red)}#solution-panel{background:var(--paper)}.solution-image{height:310px;overflow:hidden}.solution-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.solution-copy{display:flex;justify-content:space-between;gap:28px;padding:25px 29px 29px;min-height:170px;align-items:center}.solution-copy h3{font-size:24px;letter-spacing:-.025em;font-weight:600;margin-bottom:8px}.solution-copy p{font-size:13px;line-height:1.8;color:var(--muted);max-width:520px;margin:0}.circle-link{border:1px solid #9ba8b1;width:43px;height:43px;border-radius:50%;display:flex;align-items:center;justify-content:center}.circle-link:hover{background:var(--navy);color:white;border-color:var(--navy)}.partners{background:var(--paper);padding:58px 0 40px}.partners-heading{display:flex;justify-content:space-between;gap:60px;align-items:end}.partners h2{font-size:29px;line-height:1.3}.partners-heading p{max-width:350px;font-size:13px;color:var(--muted);margin:0}.brand-row{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:38px;min-height:154px}.brand-row>span{justify-self:center}.abb{font-size:48px;font-weight:800;letter-spacing:-.06em;color:#c82032}.socomec{font-size:33px;font-weight:800;color:#283d4d;letter-spacing:-.04em;line-height:1.1}.socomec>span{display:block;font-size:11px;font-weight:500;letter-spacing:.02em;text-align:center;margin-top:5px}.mitsubishi{display:flex;align-items:center;gap:9px;color:#182b40;font-size:16px;line-height:1.05;font-weight:800;letter-spacing:.005em}.mitsubishi svg{width:43px;height:40px;fill:#c82032;stroke:none}.mitsubishi small{display:block;font-size:11px;font-weight:500;margin-top:7px}.finder{font-size:43px;line-height:1;font-style:italic;font-weight:800;letter-spacing:-.04em;color:#243b55}.finder small{display:block;font-style:normal;letter-spacing:.02em;font-size:11px;font-weight:500;margin:7px 0 0 2px}.underlink{display:flex;justify-content:flex-end;align-items:center;gap:12px;font-size:11px;font-weight:600}.underlink:hover{text-decoration:underline}.underlink svg{width:17px}.sector-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:65px}.sector-grid a{padding:26px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:20px;font-weight:500;transition:color .2s}.sector-grid a:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.sector-grid a:hover{color:var(--red)}.sector-grid svg{width:23px}.expertise{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white}.expertise-photo{min-height:610px;overflow:hidden}.expertise-photo img{display:block;width:100%;height:100%;object-fit:cover}.expertise-content{padding:70px var(--gutter) 70px 65px;align-self:center;max-width:800px}.expertise-content h2{font-size:clamp(30px,2.9vw,43px);margin-bottom:25px}.expertise-content p{color:#d4dfe9;line-height:1.9;font-size:13px}.expertise-content ul{list-style:none;padding:0;margin:25px 0 29px;font-size:12px;color:#e3eaf0}.expertise-content li{padding:12px 0;border-top:1px solid #ffffff2a;display:flex;align-items:center;gap:14px}.expertise-content li:before{content:'';width:5px;height:5px;background:#ed7180;flex:none}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:110px;padding-bottom:100px}.contact-intro>p{font-size:14px;max-width:400px;color:var(--muted);margin:25px 0 35px}.contact-phone{display:flex;align-items:center;gap:30px;font-size:23px;font-weight:600;letter-spacing:-.025em}.contact-phone:hover,.email:hover{color:var(--red)}.email{display:inline-block;font-size:13px;margin-top:8px}.location{margin-top:38px;font-size:12px}.location strong{font-weight:700}.location p{color:var(--muted);margin-top:8px}form label{display:block;font-size:11px;font-weight:600;margin-bottom:19px;color:var(--ink)}label>span{color:var(--red)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{display:block;width:100%;margin-top:7px;border:0;border-bottom:1px solid #acb7c0;background:var(--paper);border-radius:0;color:var(--ink);padding:12px;font-size:12px;outline-offset:2px}textarea{resize:vertical;min-height:96px}input::placeholder,textarea::placeholder{color:#62707c;opacity:1}.form-note{font-size:11px;color:var(--muted);line-height:1.7;margin:0 0 22px;max-width:440px}form .button{width:100%;justify-content:space-between}#form-status{font-size:12px;margin:18px 0 0;color:var(--ink)}#form-status a{text-decoration:underline}footer{background:var(--deep);color:#d7e1e9;padding-top:60px;font-size:11px}.footer-top{display:grid;grid-template-columns:1fr 1.2fr 1fr .8fr;gap:45px;padding-bottom:45px}.footer-brand .brand-word{color:white}.footer-brand .brand-word:before{background:white}.footer-brand .brand-tag{color:#c0cedb}.footer-top>p{margin:0;font-size:15px;line-height:1.8}.footer-top>div{display:flex;flex-direction:column;gap:8px}.footer-top a:hover{text-decoration:underline}.footer-top>div a{display:flex;align-items:center;gap:12px}.footer-top svg{width:14px;height:14px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff26;padding-top:20px;padding-bottom:23px;gap:25px;font-size:11px;color:#b9c8d4}.footer-bottom a{display:flex;align-items:center;gap:8px}.footer-bottom svg{width:14px;height:14px}
@media(min-width:1600px){.hero-content{padding-top:110px}}@media(max-width:1180px){nav{gap:17px}nav>a{font-size:11px}.header-inner{gap:20px}.nav-cta{gap:12px;padding:12px}.brand{width:155px}.expertise-strip>.wrap>div{gap:22px}.hero{min-height:620px}.expertise-content{padding-left:40px}.contact{gap:65px}.solution-tabs{padding-right:25px}.solution-tabs button{font-size:13px}.footer-top{gap:25px}}
@media(max-width:960px){.header-inner{height:80px}.menu-toggle{display:flex;width:43px;height:43px;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:1px solid var(--line);padding:10px}.menu-toggle span{display:block;background:var(--navy);height:1px;width:100%;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:15px var(--gutter) 25px;background:white;box-shadow:0 18px 20px #142c4612;align-items:stretch;gap:0}nav.open{display:flex;flex-direction:column}nav>a{font-size:14px}nav>a:not(.button){padding-block:13px;border-bottom:1px solid var(--line)}.nav-cta{margin:18px 0 0;justify-content:space-between;padding:14px}.hero{height:auto;min-height:620px}.hero-content{padding-top:75px}.hero h1{font-size:60px}.hero-photo{object-position:57% center}.expertise-strip>.wrap{align-items:start;flex-direction:column;gap:14px;padding-top:20px;padding-bottom:20px}.section{padding-top:75px;padding-bottom:75px}.section-heading{gap:35px}.section-heading>p{max-width:280px}.solution-explorer{grid-template-columns:36% 64%}.solution-tabs button{padding-block:19px;font-size:12px}.solution-image{height:280px}.solution-copy{padding:22px;min-height:190px}.solution-copy h3{font-size:20px}.solution-copy p{font-size:12px}.circle-link{width:35px;height:35px}.brand-row{gap:25px}.mitsubishi{font-size:12px}.mitsubishi svg{width:32px}.abb{font-size:41px}.socomec{font-size:28px}.finder{font-size:36px}.expertise-content{padding:45px 35px}.expertise-content h2{font-size:29px}.expertise-photo{min-height:560px}.contact{gap:50px}.contact h2{font-size:31px}.contact-phone{font-size:21px}.form-row{grid-template-columns:1fr;gap:0}.footer-top{grid-template-columns:1fr 1fr;row-gap:35px}.footer-top>p{justify-self:end}}
@media(max-width:640px){:root{--gutter:24px}html{scroll-padding-top:90px}.topbar{font-size:11px}.topbar .wrap{min-height:30px}.topbar .wrap>span{max-width:225px;line-height:1.5;padding:5px 0}.topbar a{font-size:11px;white-space:nowrap;margin-left:15px}.header-inner{height:76px}.brand-word{font-size:28px}.brand-tag{font-size:11px;margin-top:6px}nav{top:76px}.hero{min-height:655px}.hero-photo{object-position:55% center}.hero-shade{background:linear-gradient(90deg,rgba(10,29,47,.89),rgba(10,29,47,.53)),linear-gradient(0deg,rgba(10,29,47,.7),transparent 30%)}.hero-content{padding-top:70px;padding-bottom:130px}.hero h1{font-size:clamp(42px,11.3vw,64px);line-height:1.14;letter-spacing:-.035em;margin-bottom:23px}h1 span:after{height:8px;width:8px;margin-left:7px}.hero-content>p{font-size:13px;max-width:340px;line-height:1.8}.desktop{display:none}.hero-actions{flex-direction:column;align-items:start;gap:22px}.hero-actions .button{font-size:12px;padding:16px 20px;gap:28px}.hero-actions .text-link{font-size:12px}.hero-bottom{bottom:24px;gap:20px;font-size:11px}.hero-bottom>span{max-width:160px}.expertise-strip>.wrap{font-size:11px;padding-top:23px;padding-bottom:23px;gap:12px}.expertise-strip>.wrap>div{gap:12px;flex-wrap:wrap;font-size:11px}.expertise-strip>.wrap>div>span:before{margin-right:7px;width:4px;height:4px}.section{padding-top:65px;padding-bottom:65px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:32px}.section-heading>p{margin-top:20px;max-width:340px;font-size:13px}.solution-explorer{display:block;border-top:0}.solution-tabs{display:grid;grid-template-columns:1fr 1fr;padding:0 0 25px;gap:0 15px}.solution-tabs button{font-size:11px;gap:8px;padding:16px 0;align-items:start}.solution-tabs button svg{width:14px;height:16px}.solution-tabs button:hover{padding-left:0}.solution-tabs button[aria-selected=true]{border-bottom:2px solid var(--red)}.solution-image{height:235px}.solution-copy{min-height:190px;padding:23px;gap:15px}.solution-copy h3{font-size:21px}.solution-copy p{font-size:12px}.partners{padding:45px 0 32px}.partners-heading{display:block}.partners h2{font-size:27px}.partners-heading p{font-size:12px;margin-top:18px}.brand-row{grid-template-columns:1fr 1fr;gap:35px 20px;padding:36px 0 32px}.abb{font-size:45px}.socomec{font-size:31px}.mitsubishi{font-size:13px}.mitsubishi svg{width:36px}.finder{font-size:39px}.underlink{font-size:11px;justify-content:start}.sector-grid{grid-template-columns:1fr}.sector-grid a{font-size:18px;padding:22px 0}.sector-grid a:nth-last-child(2){border-bottom:0}.expertise{grid-template-columns:1fr}.expertise-photo{min-height:0;height:310px}.expertise-photo img{object-position:center}.expertise-content{padding:43px 24px 48px}.expertise-content h2{font-size:31px}.expertise-content p{font-size:13px}.expertise-content ul{font-size:11px}.contact{display:block}.contact-intro{margin-bottom:42px}.contact h2{font-size:33px}.contact-intro>p{font-size:13px}.contact-phone{font-size:23px}.email{font-size:12px}.location{margin-top:28px}.form-row{grid-template-columns:1fr 1fr;gap:14px}form label{font-size:11px}.form-note{font-size:11px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:35px}.footer-top>p{font-size:11px;justify-self:start;margin-top:2px}.footer-brand{width:auto}.footer-brand .brand-word{font-size:25px}.footer-brand .brand-tag{font-size:11px}.footer-top>div{font-size:11px}.footer-bottom{align-items:start;flex-wrap:wrap;gap:13px;font-size:11px}.footer-bottom>span:nth-child(2){order:3;width:100%}footer{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Readability at every screen size. */
.form-note{font-size:12px}form label{font-size:12px}.solution-copy p{font-size:14px}.expertise-content p{font-size:14px}.expertise-content ul{font-size:13px}.contact-intro>p{font-size:14px}.partners-heading p{font-size:14px}.topbar .wrap{padding-top:5px;padding-bottom:5px}.topbar{color:#e5eff8}.hero-content>p{color:#e2edf6}footer{color:#d8e8f5}
@media(max-width:640px){.solution-tabs button{font-size:12px}.topbar .wrap>span{max-width:200px}.topbar a{font-size:11px}.hero-bottom{font-size:11px}.solution-copy{min-height:214px}.form-row{grid-template-columns:1fr;gap:0}.footer-top>div{font-size:12px}}
/* Lucide navigation and sitemap. */
svg{stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.header-inner{gap:24px;transition:height .3s cubic-bezier(.16,1,.3,1)}.header.compact .header-inner{height:78px}.header.compact{box-shadow:0 6px 24px #0e223814}.header nav{margin-left:auto;gap:22px}.menu-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;flex:none;padding:9px;border:1px solid var(--line);background:white;color:var(--navy)}.menu-toggle svg{width:22px;height:22px}.menu-close-icon{display:none}.menu-toggle[aria-expanded=true] .menu-open-icon{display:none}.menu-toggle[aria-expanded=true] .menu-close-icon{display:block}.menu-toggle:hover{border-color:var(--red);color:var(--red)}.nav-dropdown{position:relative}.nav-dropdown>summary{font-size:12px;font-weight:600;list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;padding:15px 0;white-space:nowrap}.nav-dropdown>summary::-webkit-details-marker,.drawer-group>summary::-webkit-details-marker{display:none}.nav-dropdown>summary svg{width:13px;height:13px;transition:transform .25s}.nav-dropdown[open]>summary{color:var(--red)}.nav-dropdown[open]>summary svg{transform:rotate(180deg)}.submenu{position:absolute;top:100%;left:-22px;width:330px;padding:12px 22px 17px;background:white;border-top:2px solid var(--red);box-shadow:0 18px 40px #0e22381f;animation:menu-open .28s cubic-bezier(.16,1,.3,1)}.submenu a{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e5e9eb;font-size:12px;font-weight:500;line-height:1.5}.submenu a>svg:first-child{width:17px;height:17px;color:var(--muted)}.submenu a>svg:last-child{width:14px;height:14px;margin-left:auto}.submenu a:hover{color:var(--red)}.submenu .submenu-all{color:var(--red);font-weight:700;border-bottom:0;padding-top:17px}.site-menu{position:absolute;top:100%;left:0;right:0;background:white;color:var(--ink);max-height:calc(100dvh - 80px);overflow:auto;box-shadow:0 22px 50px #0e22382b;border-top:1px solid var(--line);animation:menu-open .35s cubic-bezier(.16,1,.3,1)}.site-menu[hidden]{display:none}.sitemap{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:70px;padding-top:38px;padding-bottom:45px}.drawer-group>summary,.drawer-about h2{font-size:20px;font-weight:600;line-height:1.5;letter-spacing:-.02em;margin:0 0 18px;list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.drawer-group>summary svg{width:16px;height:16px}.drawer-group[open]>summary svg{transform:rotate(180deg)}.drawer-group a,.drawer-about>a:not(.button){display:flex;align-items:center;gap:13px;font-size:12px;padding:11px 0;border-bottom:1px solid var(--line);line-height:1.5}.drawer-group a svg{width:17px;height:17px}.drawer-group a svg:last-child,.drawer-about>a svg{width:15px;height:15px;margin-left:auto}.drawer-group a:hover,.drawer-about>a:not(.button):hover{color:var(--red)}.drawer-about .button{margin:25px 0 12px;width:100%;justify-content:space-between;gap:10px;font-size:11px}.drawer-about .drawer-phone{border:0!important;justify-content:start}.drawer-about .drawer-phone svg{margin-left:0!important}.brand-row>img{display:block;justify-self:center;width:170px;max-width:90%;height:64px;object-fit:contain}.brand-row>img:first-child{width:115px}.brand-row>img:nth-child(3){width:150px;height:70px}.email{display:inline-flex;align-items:center;gap:9px}.email svg{width:16px;height:16px}.location strong{display:flex;align-items:center;gap:8px}.location strong svg{width:17px;height:17px}.location p{padding-left:25px}.button svg,.text-link svg,.sector-grid svg,.circle-link svg{transition:transform .25s cubic-bezier(.16,1,.3,1)}.button:hover svg,.text-link:hover svg,.sector-grid a:hover svg,.circle-link:hover svg{transform:translateX(4px)}.in-view{animation:section-arrive .85s cubic-bezier(.16,1,.3,1) both}.switching .solution-image img{animation:solution-arrive .6s cubic-bezier(.16,1,.3,1)}.switching .solution-copy{animation:copy-arrive .45s cubic-bezier(.16,1,.3,1)}@keyframes menu-open{from{opacity:.4;transform:translateY(-10px);clip-path:inset(0 0 8% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes section-arrive{from{opacity:.6;transform:translateY(24px);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes solution-arrive{from{opacity:.65;transform:scale(1.025);clip-path:inset(0 0 5% 0)}to{opacity:1;transform:scale(1);clip-path:inset(0)}}@keyframes copy-arrive{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:1250px){.header nav{gap:16px}.header nav>a,.nav-dropdown>summary{font-size:11px}.header-inner{gap:17px}.brand{width:145px}.nav-cta{padding:12px;gap:10px}.sitemap{gap:40px}}
@media(max-width:1100px){.header nav{display:none}.header-inner{justify-content:space-between}.sitemap{grid-template-columns:1fr 1fr;gap:35px 50px}.drawer-about{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.drawer-about h2{grid-column:1/-1}.drawer-about .button{margin:20px 0 0}.drawer-about .drawer-phone{margin-top:20px}.header.compact .header-inner{height:72px}}
@media(max-width:640px){.sitemap{display:block;padding-top:18px;padding-bottom:30px}.drawer-group{border-bottom:1px solid var(--line)}.drawer-group>summary{font-size:19px;padding:17px 0;margin:0}.drawer-group>div{padding-bottom:15px}.drawer-group a,.drawer-about>a:not(.button){font-size:13px;padding:12px 0}.drawer-about{display:block;margin-top:28px}.drawer-about h2{font-size:19px;margin-bottom:10px}.drawer-about .button{margin-top:25px;font-size:12px}.drawer-about .drawer-phone{margin-top:8px}.brand-row>img{width:145px;height:55px}.brand-row>img:first-child{width:100px}.brand-row>img:nth-child(3){width:140px;height:65px}.site-menu{max-height:calc(100dvh - 76px)}.header.compact .header-inner{height:68px}}

/* Preserve the original white-lettered logo on its dark field. */
.brand{width:194px;height:72px;padding:11px 16px;background:var(--navy);justify-content:center}.brand-logo{width:162px;height:auto;display:block;object-fit:contain}.footer-brand{background:transparent;padding:0;width:178px;height:auto;align-self:start}.footer-brand .brand-logo{width:178px}.header.compact .brand{height:60px;padding-block:7px}@media(max-width:1250px){.brand{width:178px;padding-inline:13px}.brand-logo{width:152px}}@media(max-width:1180px){.header nav{display:none}}@media(max-width:640px){.brand{height:60px;width:170px;padding:8px 12px}.brand-logo{width:146px}.header.compact .brand{height:54px}.footer-brand{padding:0;height:auto;width:145px}.footer-brand .brand-logo{width:145px}}
.brand{background:#000}.footer-brand{background:#000;padding:10px 12px;width:194px}.footer-brand .brand-logo{width:170px}@media(max-width:640px){.footer-brand{width:145px;padding:6px 8px}.footer-brand .brand-logo{width:129px}}
/* Manual carousels: photographic storytelling and original partner marks. */
.hero-carousel-controls{display:flex;align-items:center;gap:13px}.carousel-arrow{border:1px solid #aab9c6;background:transparent;color:inherit;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:8px;transition:background .2s,color .2s,border-color .2s}.carousel-arrow svg{width:18px;height:18px}.carousel-arrow:hover:not(:disabled){background:var(--red);color:white;border-color:var(--red)}.carousel-arrow:disabled{opacity:.3;cursor:default}.hero-dots{display:flex;gap:3px}.hero-dot{padding:10px 5px;border:0;background:transparent;position:relative;width:24px;height:32px}.hero-dot:after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:#d3dfe6}.hero-dot[aria-current=true]:after{background:#f17c89;width:17px;border-radius:3px}.hero-counter{font-size:11px;min-width:30px;letter-spacing:.04em;font-variant-numeric:tabular-nums}.slide-changing .hero-photo{animation:hero-image-change .8s cubic-bezier(.16,1,.3,1)}.slide-changing .hero-content h1{animation:copy-arrive .65s cubic-bezier(.16,1,.3,1)}@keyframes hero-image-change{from{opacity:.5;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.brand-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0;min-height:145px;padding:28px 0;overscroll-behavior-x:contain;align-items:center}.brand-row::-webkit-scrollbar{display:none}.brand-slide{flex:0 0 33.3333%;display:flex;align-items:center;justify-content:center;scroll-snap-align:start;min-width:0;height:86px}.brand-slide img{display:block;object-fit:contain;max-width:75%;height:64px;width:175px}.brand-slide:first-child img{width:115px}.brand-slide:nth-child(3) img{width:150px;height:70px}.partner-carousel-controls{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-bottom:23px;gap:20px;font-size:11px;color:var(--muted)}.partner-carousel-controls>div{display:flex;gap:8px;color:var(--navy)}.partner-carousel-controls .carousel-arrow{width:32px;height:32px}.partners .underlink{margin-top:8px}@media(max-width:640px){.hero-bottom{display:grid;grid-template-columns:1fr auto;row-gap:14px}.hero-carousel-controls{grid-column:1/-1;grid-row:1;justify-content:start;gap:11px}.hero-bottom>span{grid-row:2;max-width:210px}.hero-bottom>a{grid-column:2;grid-row:2}.hero-content{padding-bottom:180px}.hero{min-height:700px}.hero-carousel-controls .carousel-arrow{width:34px;height:34px}.brand-row{padding:24px 0;min-height:125px}.brand-slide{flex-basis:50%;height:78px}.brand-slide img{width:145px;height:55px;max-width:85%}.brand-slide:first-child img{width:100px}.brand-slide:nth-child(3) img{width:135px;height:63px}.partner-carousel-controls{font-size:11px;margin-bottom:20px}.partner-carousel-controls>span{max-width:200px}}

/* Logo fourni par le client, conservé sans modification. */
.brand{background:white;padding:9px 0}.brand-logo{width:178px}.footer-brand{background:white;padding:9px 12px;width:194px}.footer-brand .brand-logo{width:170px}@media(max-width:1250px){.brand-logo{width:164px}}@media(max-width:640px){.brand{padding:6px 0}.brand-logo{width:158px}.footer-brand{padding:7px 9px;width:145px}.footer-brand .brand-logo{width:127px}}
/* Gesture-first carousels, with native vertical scroll and keyboard alternatives. */
.hero{touch-action:pan-y;cursor:grab}.hero.dragging,.brand-row.dragging{cursor:grabbing;user-select:none}.hero .button,.hero a{cursor:pointer}.hero-photo,.brand-slide img{-webkit-user-drag:none;user-select:none}.hero-carousel-controls{gap:18px}.gesture-hint{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;font-size:11px}.gesture-hint svg{width:21px;height:21px}.hero-dot{width:19px;height:18px;padding:6px 3px;display:inline-flex;align-items:center}.hero-dot:after{width:5px;height:5px}.hero-dot[data-active=true]:after{width:16px;background:#f17c89;border-radius:3px}.hero-dots{align-items:center}.brand-row{cursor:grab;touch-action:pan-x pan-y;user-select:none}.partner-carousel-controls .gesture-hint{max-width:none}.partner-carousel-controls{min-height:45px}@media(max-width:640px){.hero-carousel-controls{gap:13px}.gesture-hint{font-size:11px}.partner-carousel-controls{align-items:start;gap:12px}.partner-carousel-controls>span:first-child{max-width:145px}.partner-carousel-controls .gesture-hint{white-space:normal;max-width:145px}.hero-dots{gap:2px}}
/* Hauteur demandée par le client, à tous les formats et pendant le défilement. */
.header .header-inner,.header.compact .header-inner{height:72px}
/* L’en-tête se retire pendant la lecture et revient en haut de page. */
.header{transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .2s}.header.is-hidden{transform:translateY(-130%);opacity:0;pointer-events:none}
/* Une image apparaît à droite de chaque secteur, au survol et au focus. */
.sector-grid a{position:relative;min-height:108px;padding-right:165px;gap:15px}.sector-grid a>span{position:relative;z-index:1}.sector-grid a>svg{position:absolute;right:0;top:calc(50% - 11px)}.sector-preview{position:absolute;right:38px;top:50%;width:112px;height:72px;object-fit:cover;opacity:0;visibility:hidden;clip-path:inset(0 0 0 12%);transform:translate(10px,-50%);transition:opacity .28s,transform .4s cubic-bezier(.16,1,.3,1),clip-path .4s cubic-bezier(.16,1,.3,1),visibility .28s}.sector-grid a:hover .sector-preview,.sector-grid a:focus-visible .sector-preview{opacity:1;visibility:visible;transform:translate(0,-50%);clip-path:inset(0)}@media(max-width:1100px) and (min-width:641px){.sector-grid{column-gap:35px}.sector-grid a{font-size:17px;padding-right:132px}.sector-preview{width:90px;height:65px;right:30px}}@media(max-width:640px){.sector-grid a{font-size:17px;min-height:94px;padding-right:122px}.sector-preview{width:82px;height:58px;right:30px;opacity:1;visibility:visible;clip-path:inset(0);transform:translate(0,-50%)}.sector-grid a:hover .sector-preview{transform:translate(0,-50%)}}@media(hover:none){.sector-preview{opacity:1;visibility:visible;clip-path:inset(0);transform:translate(0,-50%)}}
/* A generous closing statement and a complete corporate directory. */
.site-footer{padding:0;background:var(--deep);color:#d8e8f5}.footer-statement{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;padding:76px 0 60px;border-bottom:1px solid #ffffff26}.footer-statement h2{font-size:clamp(56px,7vw,96px);font-weight:500;line-height:1.04;letter-spacing:-.035em;color:white;margin:0}.footer-statement h2>span{color:#f17c89}.footer-project{display:flex;align-items:center;gap:35px;padding:14px 0 8px;font-size:12px;color:#c2d4e3}.footer-project strong{display:block;color:white;font-size:20px;font-weight:500;margin-top:7px}.footer-project>svg{width:46px;height:46px;stroke-width:1.2;transition:transform .25s}.footer-project:hover>svg{transform:translate(4px,-4px)}.footer-directory{display:grid;grid-template-columns:1.35fr 1fr 1fr .85fr;gap:48px;padding:58px 0 45px}.footer-company{min-width:0}.footer-company .footer-brand{width:190px;padding:10px 12px;margin-bottom:22px}.footer-company .footer-brand .brand-logo{width:166px}.footer-company>p{font-size:14px;line-height:1.8;margin:0 0 23px}.footer-company address{font-size:12px;color:#b9cedf;font-style:normal;line-height:1.8;margin-bottom:15px}.footer-contact-link{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.7;padding:5px 0}.footer-contact-link>svg{width:15px;height:15px}.footer-contact-link>span{overflow-wrap:anywhere}.site-footer .footer-column{position:static;display:flex;flex-direction:column;align-items:stretch;gap:0;background:none;box-shadow:none;padding:0;margin:0;min-width:0}.footer-column h3{font-size:15px;line-height:1.5;font-weight:600;color:white;margin:0 0 18px}.site-footer .footer-column>a{font-size:12px;line-height:1.6;font-weight:400;padding:7px 0;white-space:normal;color:#c3d5e4;border:0;display:block}.site-footer .footer-column>a:after{display:none}.site-footer .footer-column>a:hover,.footer-contact-link:hover{color:white;text-decoration:underline;text-underline-offset:5px}.footer-network{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #ffffff26;padding:25px 0;font-size:12px}.footer-network>a{display:flex;align-items:center;gap:13px;color:#c3d5e4}.footer-network svg{width:16px;height:16px}.footer-socials{display:flex;gap:28px;flex:none}.footer-socials>a{display:flex;align-items:center;gap:9px}.footer-network a:hover{color:white}.footer-legal{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0;border-top:1px solid #ffffff26;color:#abc2d5;font-size:11px}.footer-legal a{display:flex;align-items:center;gap:12px}.footer-legal svg{width:15px;height:15px;transform:rotate(180deg)}
@media(max-width:1180px){.footer-directory{grid-template-columns:1.25fr 1fr 1fr;gap:40px 35px}.site-footer .footer-column:last-child{grid-column:2/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.footer-column:last-child h3{grid-column:1/-1}.footer-company{grid-row:span 2}.footer-statement{gap:35px}.footer-project{gap:20px}.footer-project strong{font-size:18px}}
@media(max-width:800px){.footer-statement{align-items:start;flex-direction:column;gap:30px;padding-top:60px;padding-bottom:40px}.footer-statement h2{font-size:clamp(56px,10vw,78px)}.footer-project{justify-content:space-between;width:100%;padding:0}.footer-project>svg{width:35px;height:35px}.footer-directory{grid-template-columns:1fr 1fr;gap:38px;padding:40px 0}.footer-company{grid-column:1/-1;grid-row:auto}.site-footer .footer-column:last-child{grid-column:1/-1;grid-template-columns:1fr 1fr;column-gap:38px}.footer-network{flex-direction:column;align-items:start;gap:24px}.footer-network>a{align-items:start}.footer-network>a>svg{margin-top:3px}.footer-network>a>svg:last-child{display:none}.footer-network>a>span{max-width:300px}.footer-legal{flex-wrap:wrap;row-gap:17px}.footer-legal>span:nth-child(2){order:3;width:100%}.footer-company .footer-brand{width:180px}.footer-company .footer-brand .brand-logo{width:156px}}
@media(max-width:400px){.footer-directory{column-gap:22px}.site-footer .footer-column>a{font-size:11px}.footer-column h3{font-size:14px}.footer-statement h2{font-size:56px}.footer-project strong{font-size:18px}.footer-legal{font-size:10px}}
@media(max-width:400px){.footer-statement h2{font-size:clamp(48px,14vw,56px)}}
/* City selection and interactive Google maps, paired with route actions. */
.locations-section{padding-bottom:30px}.locations-layout{display:grid;grid-template-columns:27% 1fr;gap:48px;border-top:1px solid var(--line);padding-top:28px}.agency-tabs{display:flex;flex-direction:column;align-self:start}.agency-tabs button{display:flex;align-items:center;justify-content:space-between;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:20px 15px 20px 0;color:var(--muted);font-size:21px;line-height:1.4;transition:color .2s}.agency-tabs small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:5px}.agency-tabs button[aria-selected=true]{color:var(--red);font-weight:600}.agency-tabs button[aria-selected=true] small{color:var(--red)}.agency-tabs button:hover{color:var(--red)}.agency-tabs svg{width:20px;height:20px}.agency-map{height:360px;background:#e5e9e7;overflow:hidden}.agency-map iframe{border:0;width:100%;height:100%;display:block}.agency-details{padding:26px 0 0;display:flex;justify-content:space-between;gap:30px}.agency-details h3{font-size:23px;font-weight:500;letter-spacing:-.02em;margin:0 0 10px;line-height:1.4}.agency-details address{font-style:normal;font-size:13px;line-height:1.8;color:var(--muted);max-width:410px}.agency-directions{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:165px;flex:none}.agency-directions .button{padding:12px 16px;justify-content:space-between;gap:18px}.waze-link{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;font-weight:600;padding:5px 1px;color:var(--ink)}.waze-link svg{width:18px;height:18px}.waze-link:hover{text-decoration:underline;text-underline-offset:5px}.map-note{color:var(--muted);font-size:11px;margin:22px 0 0}.locations-section+.contact{border-top:0}
@media(max-width:1000px){.locations-layout{grid-template-columns:24% 1fr;gap:30px}.agency-tabs button{font-size:18px;padding:17px 10px 17px 0}.agency-details{flex-direction:column;gap:22px}.agency-directions{flex-direction:row;align-items:center;justify-content:start;gap:25px}.agency-directions .button{min-width:165px}.agency-map{height:330px}}
@media(max-width:640px){.locations-layout{display:block;padding-top:0;border:0}.agency-tabs{flex-direction:row;overflow-x:auto;gap:22px;scrollbar-width:none;margin-bottom:24px;padding-bottom:3px}.agency-tabs button{flex:none;font-size:16px;min-width:96px;padding:12px 0;border-bottom:1px solid var(--line);gap:12px}.agency-tabs button[aria-selected=true]{border-bottom:2px solid var(--red)}.agency-tabs button>svg{width:15px;height:15px}.agency-tabs small{font-size:11px}.agency-map{height:300px}.agency-details{padding-top:23px}.agency-details h3{font-size:22px}.agency-details address{font-size:13px}.agency-directions{gap:20px}.agency-directions .button{min-width:150px;font-size:11px;padding:12px}.waze-link{font-size:11px}.map-note{font-size:11px;line-height:1.7}.locations-section{padding-bottom:15px}}
/* Original route-service icons and the white footer logo. */
.agency-directions .button,.agency-directions .waze-link{justify-content:flex-start;gap:10px}.route-brand-icon{display:block;width:24px;height:24px;object-fit:contain;flex:none}.agency-directions .button .route-brand-icon{background:white;border-radius:4px;padding:3px}.agency-directions .waze-link{padding-left:2px;min-height:34px}.footer-company .footer-brand{background:transparent;padding:0;width:190px;min-height:57px}.footer-company .footer-brand .brand-logo{width:190px;mix-blend-mode:screen}@media(max-width:800px){.footer-company .footer-brand{width:180px;min-height:54px}.footer-company .footer-brand .brand-logo{width:180px}}@media(max-width:640px){.agency-directions{gap:18px}.agency-directions .button{min-width:150px}.route-brand-icon{width:23px;height:23px}}
/* Google Maps route link without a background. */
#agency-google{background:transparent;border-color:transparent;color:var(--ink)}
#agency-google:hover{background:transparent;border-color:transparent;color:var(--red)}
#agency-google .route-brand-icon{background:transparent;border-radius:0;padding:0}
/* Equal route actions with outlined styling. */
.agency-directions{align-items:stretch}
#agency-google,#agency-waze{display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box;width:176px;min-width:176px;min-height:48px;padding:11px 14px;border:1px solid var(--line);background:transparent;color:var(--ink);gap:10px;font-size:12px;font-weight:600;line-height:1.5;text-decoration:none}
#agency-google:hover,#agency-waze:hover{background:transparent;border-color:var(--red);color:var(--red);text-decoration:none}
@media(max-width:640px){.agency-directions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#agency-google,#agency-waze{width:100%;min-width:0;padding:11px 10px;font-size:11px;gap:8px}}
/* Leading countdowns and a measured 15-second solution cycle. */
.solution-selector{min-width:0}.solution-tabs button{position:relative;gap:12px}.solution-timer{flex:none;min-width:29px;text-align:left;font-size:11px;font-weight:500;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--muted)}.solution-tab-label{flex:1;min-width:0}.solution-tabs button[aria-selected=true] .solution-timer{color:var(--red);font-weight:700}.solution-tabs button:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--red);transform-origin:left;transform:scaleX(var(--solution-progress,0));opacity:0;transition:transform .1s linear}.solution-tabs button[aria-selected=true]:after{opacity:1}.solution-tabs button[aria-selected=true]{border-bottom:1px solid var(--line)}.solution-playback{margin:20px 42px 0 0;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;line-height:1.7}.solution-playback button{background:transparent;border:0;padding:5px 0;color:var(--ink);font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.solution-playback button:hover{color:var(--red)}
@media(max-width:1180px){.solution-playback{margin-right:25px}.solution-tabs button{gap:9px}.solution-timer{min-width:25px}}
@media(max-width:640px){.solution-tabs button{align-items:center;gap:8px;font-size:12px}.solution-timer{font-size:11px;min-width:25px}.solution-tabs button svg{display:none}.solution-tabs{padding-bottom:0}.solution-playback{margin:16px 0 25px;gap:8px 12px}.solution-playback button{min-height:32px}}
/* Countdown aligned to the right of each solution label. */
.solution-timer{text-align:right;margin-left:auto}
/* Seven represented brands; five visible together on desktop. */
.brand-slide{flex-basis:20%}.brand-slide img{width:150px;max-width:78%}.brand-slide[data-brand="danfoss"] img{width:150px;height:64px}.brand-slide[data-brand="te"] img{width:155px;height:64px}.brand-slide[data-brand="ses"] img{background:var(--navy);padding:10px;width:160px;height:50px;max-width:90%;object-fit:contain}
@media(min-width:641px) and (max-width:1023px){.brand-slide{flex-basis:33.3333%}}
@media(max-width:640px){.brand-slide{flex-basis:50%}.brand-slide img{max-width:85%}.brand-slide[data-brand="danfoss"] img{width:135px;height:58px}.brand-slide[data-brand="te"] img{width:135px;height:58px}.brand-slide[data-brand="ses"] img{width:145px;height:48px;max-width:90%;padding:9px}}
/* Automatic playback remains optional; gestures stay available. */
.autoplay-toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:inherit;font-size:11px;font-weight:600;line-height:1.5;padding:7px 4px;min-height:32px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;flex:none}.autoplay-toggle:hover{color:#f17c89}.hero-carousel-controls .autoplay-toggle{margin-left:3px}.partner-motion-controls{display:flex;align-items:center;gap:18px!important}.partner-motion-controls .autoplay-toggle:hover{color:var(--red)}
@media(max-width:640px){.hero-carousel-controls{gap:9px}.hero-carousel-controls .gesture-hint{gap:6px}.hero-carousel-controls .hero-counter{min-width:27px}.hero-carousel-controls .autoplay-toggle{padding-inline:2px;margin-left:0}.partner-carousel-controls{flex-direction:column;gap:8px}.partner-carousel-controls>span:first-child{max-width:none}.partner-motion-controls{width:100%;justify-content:space-between}.partner-motion-controls .gesture-hint{max-width:none!important}}
/* Published KPIs: quiet typography, one count-up on entry. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}/* A typographic proof band, using the same navy as the site identity. */
.kpi-section{padding:76px 0 80px;background:var(--deep);color:white;scroll-margin-top:96px}
.kpi-section>.wrap{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,2.15fr);gap:clamp(50px,6vw,96px);align-items:start}
.kpi-heading{margin:0;padding-top:12px}
.kpi-heading h2{max-width:10ch;margin:0;font-size:clamp(30px,3vw,44px);line-height:1.2;font-weight:500;letter-spacing:-.03em;text-wrap:balance;color:white}
.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 32px}
.kpi-item{min-width:0;padding:23px 0 0;border-top:1px solid #3d5066;transition:border-color .3s ease}
.kpi-item:hover{border-color:var(--signal-soft,#f17c89)}
.kpi-number{font-size:clamp(48px,4.6vw,68px);font-weight:500;letter-spacing:-.035em;line-height:1.12;margin:0 0 13px;color:white;font-variant-numeric:tabular-nums;transition:transform .35s cubic-bezier(.16,1,.3,1),color .25s ease}
.kpi-item:hover .kpi-number{transform:translateY(-3px);color:#f7b7be}
.kpi-item>p:last-child{font-size:13px;line-height:1.6;margin:0;color:#c1cedb;max-width:22ch}
.kpi-item>p:last-child>span{white-space:nowrap}
@media(min-width:641px){.kpi-item:nth-child(-n+3){padding-top:12px;border-top-color:transparent}.kpi-item:nth-child(-n+3):hover{border-top-color:#f17c89}}
@keyframes kpi-arrive{from{transform:translateY(12px);clip-path:inset(0 0 20% 0)}to{transform:translateY(0);clip-path:inset(0)}}
@media(prefers-reduced-motion:no-preference){.kpi-section.is-counting .kpi-number{animation:kpi-arrive .8s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--kpi-index,0)*80ms)}}
@media(max-width:1024px){.kpi-section>.wrap{grid-template-columns:1fr;gap:36px}.kpi-heading h2{max-width:none;font-size:34px}.kpi-section{padding:60px 0}.kpi-number{font-size:58px}}
@media(max-width:640px){.kpi-section{padding:42px 0 46px}.kpi-section>.wrap{gap:30px}.kpi-heading h2{font-size:30px;max-width:15ch}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 24px}.kpi-item{padding-top:20px}.kpi-item:nth-child(-n+2){padding-top:0;border-top:0}.kpi-number{font-size:48px;margin-bottom:9px}.kpi-item>p:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){.kpi-number,.kpi-item{transition:none}.kpi-item:hover .kpi-number{transform:none}}
/* The header returns as soon as scrolling changes upward. */
.header{transition:transform .18s cubic-bezier(.16,1,.3,1),opacity .12s}.header:not(.is-hidden){transition-duration:.14s,.1s}
@media(max-width:640px){.kpi-heading a,.hero-carousel-controls .autoplay-toggle,.hero-carousel-controls .gesture-hint{font-size:11px}}

/* The compact figure rolls into its complete value without moving the grid. */
.kpi-format-toggle{position:relative;display:block;width:100%;height:1.12em;padding:0;border:0;background:none;text-align:left;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;font-variant-numeric:inherit}
.kpi-format-toggle:focus-visible{outline:2px solid #f17c89;outline-offset:6px}
.kpi-compact{display:block;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .25s ease,filter .3s ease}
.kpi-expanded{position:absolute;inset:0;display:flex;align-items:center;font-size:.76em;white-space:nowrap;opacity:0;transform:translateY(14px);filter:blur(4px);transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .3s ease,filter .3s ease;pointer-events:none}
.kpi-item:hover .kpi-compact,.kpi-format-toggle:focus-visible .kpi-compact,.kpi-format-toggle[aria-pressed="true"] .kpi-compact{opacity:0;transform:translateY(-14px);filter:blur(4px)}
.kpi-item:hover .kpi-expanded,.kpi-format-toggle:focus-visible .kpi-expanded,.kpi-format-toggle[aria-pressed="true"] .kpi-expanded{opacity:1;transform:translateY(0);filter:blur(0)}
.kpi-item:focus-within .kpi-number{color:#f7b7be}
@media(hover:none){.kpi-item:hover .kpi-compact{opacity:1;transform:none;filter:none}.kpi-item:hover .kpi-expanded{opacity:0;transform:none;filter:none}.kpi-format-toggle:focus-visible .kpi-compact,.kpi-format-toggle[aria-pressed="true"] .kpi-compact{opacity:0}.kpi-format-toggle:focus-visible .kpi-expanded,.kpi-format-toggle[aria-pressed="true"] .kpi-expanded{opacity:1}}
@media(prefers-reduced-motion:reduce){.kpi-compact,.kpi-expanded{transition:none;transform:none!important;filter:none!important}}
