/* RST: petrol, emerald, pearl and champagne. Self-hosted; no framework. */
body{--r-dark:#102d38;--r-steel:#135b62;--r-green:#168568;--r-copper:#c5a365;--r-paper:#f5f4ef;--r-ink:#142f37;--r-muted:#52666c;background:var(--r-paper);font-size:15px}
body.theme-graphite{--r-dark:#182321;--r-green:#477b59;--r-steel:#3a5047}
body.theme-steel{--r-dark:#142c3e;--r-green:#226f82;--r-steel:#275773}
body .topbar{background:var(--r-dark);padding:10px 5%;letter-spacing:1px}
body .siteheader{position:relative;z-index:20;padding:12px 5%;background:#f5f4eff5;border-bottom:1px solid #102d381c}
body .siteheader .logo{height:70px;width:170px}
body .navlinks{font-size:12px;gap:24px}
body .primary{background:var(--r-green);border-radius:0;padding:15px 23px;font-weight:600;min-height:46px}
body .outline{border-radius:0;min-height:46px}
body .hero.cinematic{display:flex;align-items:center;min-height:clamp(540px,74svh,820px);isolation:isolate;overflow:hidden;background:var(--r-dark)}
body .cinematic .herovisual{position:absolute;inset:0;min-height:0;background:radial-gradient(ellipse at 80% 20%,#16856850,transparent 60%),var(--r-dark);border:0;z-index:-2}
body .cinematic .herovisual img,body .cinematic .herovideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus-x,50%) var(--focus-y,50%);opacity:1}
body .cinematic:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071f2aeb 0%,#071f2abf 42%,#071f2a30 100%),linear-gradient(0deg,#071f2a90,transparent 35%);pointer-events:none}
body .cinematic .herotext{width:min(900px,78%);padding:70px 6%;z-index:1}
body .hero-index{display:block;font:11px 'IBM Plex Mono',monospace;letter-spacing:3px;color:#d4e5df;margin-bottom:35px}
body .cinematic h1{font-size:clamp(42px,5.7vw,84px);line-height:1.04;letter-spacing:-2px;max-width:850px;text-wrap:balance;color:#fff!important;font-weight:600}
body .cinematic .kicker{font-size:11px;letter-spacing:2px;color:#e7d3aa}
body .cinematic p{max-width:510px;font-size:17px;line-height:1.7;color:#e1ebe8}
body .cinematic .primary{background:#168568;color:#fff;box-shadow:none}
body .cinematic .outline{background:#102d3850;border-color:#c0d1d0;color:#fff}
body .slidecontrol{padding:15px 5%;background:var(--r-dark);border-top:1px solid #ffffff20}
body .slidecontrol button{background:transparent;border:1px solid #7a949b;border-radius:0}
.capabilityrail{display:grid;grid-template-columns:repeat(4,1fr);padding:0 5%;background:#102d38;color:#fff}
.capabilityrail a{position:relative;display:flex;flex-direction:column;gap:10px;padding:30px 22px;border-top:1px solid #fff2;border-right:1px solid #fff2}
.capabilityrail a:first-child{border-left:1px solid #fff2}
.capabilityrail strong{font:500 21px Saira,sans-serif}.capabilityrail span{font-size:12px;color:#bdcecf}.capabilityrail .railnumber{font:11px 'IBM Plex Mono',monospace;color:#ddc495}.capabilityrail b{position:absolute;right:20px;top:28px;color:#ddc495}
body .section{padding:76px 6%}body .headrow{gap:45px;margin-bottom:38px}body .headrow h2{font-size:clamp(32px,3.6vw,52px);font-weight:500;max-width:700px;text-wrap:balance}body .headrow p{font-size:15px;max-width:380px}
body .division{background:#fff;padding:26px;border-top:2px solid var(--r-green);min-height:215px}
body .division p,body .producttile p,body .familygrid p,body .steps p{font-size:14px}
body .producttile{padding:26px;border:1px solid #102d3818;border-bottom:2px solid var(--r-green);box-shadow:none;transition:transform .25s,box-shadow .25s}
body .producttile:hover{transform:translateY(-5px);box-shadow:0 18px 45px #102d3814}
body .producttile h3{font-size:24px;line-height:1.25}body .productimage{height:240px;margin:-26px -26px 24px;background:radial-gradient(ellipse,#fff,#e5ece8)}
body .productimage img{padding:20px;transition:transform .4s}body .producttile:hover img{transform:scale(1.035)}
body .conceptlabel{border:0;font:500 clamp(22px,3vw,38px) Saira,sans-serif;letter-spacing:3px;color:var(--r-dark)}
body .portfolio{background:#e8eeea}body .darksection{background:var(--r-dark)}
body .familygrid>div{padding:28px}body .familygrid h3{font-size:22px}
body .clienttile{border:1px solid #102d3812;box-shadow:none;background:#fff;padding:22px;min-height:135px}
body .resourcecards>a{padding:28px;border-top:2px solid var(--r-green)}
body .ctastrip{padding:50px 6%;background:var(--r-dark)}body .ctastrip .primary{background:var(--r-green);color:#fff}
body .foot{padding:60px 6% 24px;background:#0b232d}body .foot .logo{background:transparent;padding:0}body .foot a,body .foot p{font-size:13px;line-height:1.7}body .foot h3{font-size:17px}
body .stickyhelp{border-radius:0;background:var(--r-green);box-shadow:0 5px 20px #0002}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c5a365;outline-offset:4px}
@media(prefers-reduced-motion:no-preference){body .cinematic .herotext{animation:rst-reveal .7s ease-out}@keyframes rst-reveal{from{opacity:.3;transform:translateY(15px)}to{opacity:1;transform:none}}}
@media(max-width:1000px){body .navlinks{gap:14px}.capabilityrail{grid-template-columns:repeat(2,1fr)}body .divisions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:750px){body .hero.cinematic{min-height:620px}body .cinematic .herotext{width:100%;padding:55px 6%}body .cinematic:after{background:linear-gradient(90deg,#071f2ae0,#071f2a80),linear-gradient(0deg,#071f2abc,transparent)}body .cinematic h1{font-size:clamp(40px,8.5vw,62px);letter-spacing:-1px}body .cinematic p{font-size:16px}body .section{padding:48px 6%}body .productimage{height:200px}.capabilityrail a{padding:23px 15px}.capabilityrail strong{font-size:18px}.capabilityrail b{right:12px;top:20px}body .siteheader .logo{width:145px;height:58px}}
@media(max-width:430px){body .cinematic h1{font-size:40px}body .hero.cinematic{min-height:650px}.capabilityrail span{font-size:11px}.capabilityrail strong{font-size:17px}body .divisions{grid-template-columns:1fr}body .producttile h3{font-size:23px}body .siteheader{gap:12px}.hero-index{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Quiet homepage: one hero, four essential sections, no repeated capability rail. */
body{background:var(--r-paper)}body .topbar,body .slidecontrol,body .ctastrip,body .darksection{background:var(--r-dark)}body .hero.cinematic{background:var(--r-dark);min-height:660px}body .cinematic .herotext{width:min(760px,65%);padding:72px 6%}body .cinematic h1{font-size:clamp(42px,4.8vw,68px);font-weight:500;line-height:1.12;letter-spacing:-1.4px}body .cinematic p{font-size:16px;max-width:430px}body .hero-index{margin-bottom:28px;color:var(--r-copper)}body .cinematic .kicker{color:#d4ddd9;letter-spacing:1.5px}body .primary,body .cinematic .primary,body .ctastrip .primary{background:var(--r-green);color:var(--r-button-text,#fff)}body .cinematic .herovisual{background:var(--r-dark)}body .foot{background:var(--r-dark)}body .section{padding:90px 6%}body .headrow h2{font-size:clamp(30px,3vw,44px)}body .divisions{gap:0}body .division{background:transparent;border-top:1px solid var(--r-line);border-right:1px solid var(--r-line);padding:28px;min-height:200px}body .division:last-child{border-right:0}body .division h3{font-size:23px}body .producttile{border-bottom:1px solid var(--r-line)}body .portfolio{background:var(--r-paper)}body .slidecontrol{font-size:10px;padding-top:10px;padding-bottom:10px}body .slidecontrol button{padding:6px 13px}body .clienttile{border:0}body .ctastrip .kicker{color:var(--r-copper)}body .stickyhelp{background:var(--r-green)}.sticky-header .siteheader{position:sticky;top:0}
.engineering-scene{display:none;position:absolute;right:6%;top:50%;width:340px;height:340px;transform:translateY(-50%);perspective:1100px;z-index:0;pointer-events:none}
.mode-engineering .engineering-scene{display:block}.mode-engineering .herovisual{display:none}.mode-engineering.cinematic:after{background:linear-gradient(90deg,#0002,transparent)}
.engineering-object{position:absolute;inset:30px;transform-style:preserve-3d;transform:rotateX(60deg) rotateZ(-35deg);animation:engineering-orbit 24s linear infinite}
.engineering-object i{position:absolute;inset:0;border:1px solid var(--r-copper);border-radius:16%;background:linear-gradient(135deg,#ffffff0a,#ffffff02);box-shadow:0 0 45px #16856815;transform:translateZ(-80px)}
.engineering-object i:nth-child(2){transform:translateZ(-40px)}.engineering-object i:nth-child(3){transform:translateZ(0)}.engineering-object i:nth-child(4){transform:translateZ(40px)}.engineering-object i:nth-child(5){transform:translateZ(80px)}
@keyframes engineering-orbit{from{transform:rotateX(60deg) rotateZ(-35deg)}to{transform:rotateX(60deg) rotateZ(325deg)}}
.mode-static .herovideo{display:none}.mode-static .herovisual{background-image:none}
body.motion-off *,body.motion-off *:before,body.motion-off *:after{animation:none!important;transition:none!important}
@media(max-width:1000px){.engineering-scene{width:270px;height:270px;right:4%}body .cinematic .herotext{width:70%}}
@media(max-width:750px){body .hero.cinematic{min-height:650px}body .cinematic .herotext{width:100%;padding:50px 6% 70px}body .mode-engineering .herotext{padding-bottom:225px}.engineering-scene{width:170px;height:170px;top:auto;bottom:35px;right:50%;transform:translateX(50%)}.engineering-object{inset:15px}body .section{padding:55px 6%}body .cinematic h1{font-size:43px}body .divisions{gap:15px}body .division{border-right:0;padding:22px 0}}
@media(prefers-reduced-motion:reduce){.engineering-object{animation:none!important}}
/* Reference-inspired structure with RST's approved palette. */
body .siteheader{background:var(--r-paper)}body .section-divisions{padding-top:42px;padding-bottom:48px}body .section-divisions .headrow{justify-content:center;text-align:center;margin-bottom:30px}body .section-divisions .headrow p{display:none}body .section-divisions .headrow h2{font-size:30px}body .section-divisions .divisions{gap:16px}body .section-divisions .division{padding:28px 22px;background:#fff;border:1px solid #102d3810;border-radius:8px;text-align:center;min-height:225px;box-shadow:0 5px 20px #102d3804}body .section-divisions .division h3{font-size:21px;margin:15px 0 10px}body .section-divisions .division p{font-size:13px;line-height:1.65}body .section-divisions .division>.kicker{display:none}.capability-icon{width:52px;height:52px;margin:0 auto;border:1px solid #16856830;border-radius:50%;display:grid;place-items:center;background:#16856808}.capability-icon img{width:24px;height:24px}
body .section-products{padding-top:45px;padding-bottom:70px}body .section-products .headrow{margin-bottom:30px}body .section-products .headrow h2{font-size:36px}body .producttile{padding:22px;border:1px solid #102d3812;border-radius:8px;overflow:hidden;background:#fff}body .productimage{height:270px;margin:-22px -22px 20px;background:linear-gradient(145deg,#e1e9e5,#f0f3ed)}body .producttile h3{font-size:23px}body .producttile p{font-size:13px}body .producttile .number{font-size:10px}body .textaction{color:var(--r-green);font-weight:600}body .section-process{background:#fff}body .section-process .steps{gap:35px}body .section-process .steps h3{font-size:21px}body .section-clients{padding-top:55px;padding-bottom:55px}body .section-clients .headrow{justify-content:center;text-align:center}body .section-clients .headrow h2{font-size:30px}body .section-clients .headrow p{max-width:400px}body .clientgrid{gap:10px}body .clienttile{background:transparent;min-height:110px}body .clienttile>span:last-child{font-size:10px}body .ctastrip{padding:55px 6%;border-top:1px solid #ffffff14}body .ctastrip h2{font-size:clamp(29px,3.5vw,46px);max-width:650px}body .footgrid{gap:40px}body .foot a{font-size:12px}body .foot h3{font-size:15px}
body .mode-media.cinematic .herotext{width:min(820px,78%)}body .mode-media.cinematic{min-height:clamp(580px,76svh,830px)}body .mode-media.cinematic:after{background:linear-gradient(90deg,#071f2aee,#071f2ab3 48%,#071f2a22),linear-gradient(0deg,#071f2a70,transparent 40%)}
@media(max-width:750px){body .section-divisions .division{padding:24px 16px}body .section-divisions .divisions{grid-template-columns:repeat(2,1fr)}body .mode-media.cinematic .herotext{width:100%}body .section-clients .headrow{align-items:center}body .productimage{height:230px}}
@media(max-width:430px){body .section-divisions .division h3{font-size:18px}body .section-divisions .division p{font-size:12px}body .section-divisions .division{padding:20px 12px}body .section-divisions .headrow h2{font-size:27px}}
/* Compact client carousel with pause, hover and reduced-motion support. */
body .section-clients{padding:30px 6% 24px;border-top:1px solid #102d3812}body .section-clients .headrow{margin-bottom:16px}body .section-clients .headrow h2{font-size:24px}body .section-clients .headrow .kicker{margin-bottom:8px}body .section-clients .headrow p{display:none}.client-window{overflow:hidden;max-width:1120px;margin:auto}.client-track{display:flex;width:max-content;animation:client-travel 45s linear infinite}.client-group{display:flex;flex:none;gap:14px;padding-right:14px;align-items:center}.client-logo{width:135px;height:90px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;border:1px solid #102d3812;border-radius:5px;background:#fff}.client-logo>span:last-child{font-size:9px;color:var(--r-muted);text-align:center;max-width:125px}.client-play{display:block!important;margin:12px auto 0;font-size:10px!important;padding:5px 12px!important;min-height:28px!important}.client-carousel:hover .client-track,.client-carousel:focus-within:not(.logos-playing) .client-track,.logos-paused .client-track{animation-play-state:paused}@keyframes client-travel{to{transform:translateX(-50%)}}
body .section-products{max-width:1140px;margin:0 auto;padding-left:30px;padding-right:30px}body .section-products .headrow h2{font-size:31px}body .section-products .productgrid{gap:16px}body .section-products .productimage{height:220px}body .section-products .producttile h3{font-size:21px}
.metrics-band{margin:0 auto 45px;max-width:1080px;padding:25px 20px;background:var(--r-dark);color:#fff;border-radius:8px}.metrics-band h2{font:11px 'IBM Plex Mono',monospace;letter-spacing:1.5px;text-align:center;margin-bottom:20px;color:#dce5e2}.metrics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.metrics-grid>div{display:grid;grid-template-columns:32px 1fr;gap:4px 12px;align-items:center;padding:10px;border-right:1px solid #ffffff15}.metrics-grid>div:last-child{border:0}.metrics-grid img{width:25px;height:25px;grid-row:span 2;filter:invert(85%)}.metrics-grid strong{font:500 26px Saira,sans-serif;color:var(--r-copper)}.metrics-grid span{font-size:10px;color:#e1e9e6}
.technical-art{height:155px;margin:-28px -22px 22px;position:relative;overflow:hidden;color:var(--r-copper);background:radial-gradient(ellipse at 65% 30%,#16856840,transparent 65%),var(--r-dark);border-radius:8px 8px 0 0}.technical-art svg{width:100%;height:100%;transform:perspective(650px) rotateY(-8deg);transition:transform .6s}.technical-art img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.division:hover .technical-art svg,.steps article:hover .technical-art svg{transform:perspective(650px) rotateY(7deg)}.division:hover .technical-art img,.steps article:hover .technical-art img{transform:scale(1.06)}.technical-art .signal{stroke-dasharray:30 12;animation:signal-move 4s linear infinite}.technical-art .art-float{animation:art-lift 5s ease-in-out infinite}.technical-art .beam{animation:beam-pulse 3s ease-in-out infinite}body .section-process .steps article{background:var(--r-paper);border:1px solid #102d3812;border-radius:8px;padding:22px;overflow:hidden}body .section-process .technical-art{margin:-22px -22px 22px;height:165px}body .section-process .steps{gap:18px}body .section-process .headrow h2{max-width:700px;font-size:36px}
@keyframes signal-move{to{stroke-dashoffset:-84}}@keyframes art-lift{50%{translate:0 -6px}}@keyframes beam-pulse{50%{opacity:.2}}
body .foot{position:relative;isolation:isolate;overflow:hidden;background:var(--r-dark);border-top:1px solid #c5a36540}body .foot:before{content:'';position:absolute;inset:-60% -20%;z-index:-2;background-image:linear-gradient(#c5a36514 1px,transparent 1px),linear-gradient(90deg,#16856824 1px,transparent 1px);background-size:65px 65px;transform:perspective(550px) rotateX(62deg) rotateZ(-8deg);animation:footer-grid 35s linear infinite;pointer-events:none}body .foot:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102d38f0,#102d38cc 55%,#102d3877),radial-gradient(ellipse at 90% 50%,#16856840,transparent 60%);pointer-events:none}body .footgrid{position:relative}body .footbottom{position:relative;border-top:1px solid #ffffff20}body .ctastrip{background:radial-gradient(ellipse at 90% 15%,#16856850,transparent 60%),var(--r-dark)}@keyframes footer-grid{to{background-position:65px 65px}}
@media(max-width:750px){.metrics-band{margin:0 5% 30px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metrics-grid>div:last-child{grid-column:1/-1;max-width:220px;margin:auto}.technical-art{height:130px}body .section-process .steps{grid-template-columns:repeat(2,1fr)}body .section-products{padding-left:5%;padding-right:5%}}
@media(max-width:430px){body .section-process .steps{grid-template-columns:1fr}.metrics-grid strong{font-size:22px}.metrics-grid>div{padding:5px;gap:4px 8px}.client-logo{width:120px}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none!important}.client-window{overflow-x:auto}.client-group[aria-hidden]{display:none}}
body.motion-off .client-window{overflow-x:auto}body.motion-off .client-group[aria-hidden]{display:none}

.technical-art svg{animation:schematic-depth 8s ease-in-out infinite}@keyframes schematic-depth{50%{transform:perspective(650px) rotateY(8deg)}}
/* Photo-first cards and explicit carousel playback. */
body .section-divisions .technical-art,body .section-process .technical-art{height:210px}body .section-divisions .capability-icon{display:none}body .section-divisions .division{padding-bottom:24px}body .section-divisions .division h3{margin-top:0}body .technical-art img{object-position:center;animation:photo-drift 18s ease-in-out infinite}.concept-caption{position:absolute;bottom:8px;right:9px;padding:3px 6px;background:#102d38c9;color:#fff;font:9px 'IBM Plex Sans',sans-serif;letter-spacing:.3px}@keyframes photo-drift{50%{transform:scale(1.04)}}
body .client-window,body.motion-off .client-window{overflow:hidden!important;scrollbar-width:none}body .client-window::-webkit-scrollbar{display:none}.client-group[aria-hidden="true"],body.motion-off .client-group[aria-hidden="true"]{display:flex!important}.client-carousel.logos-playing .client-track{animation:client-travel 45s linear infinite!important;animation-play-state:running!important}.client-carousel.logos-paused .client-track{animation-play-state:paused!important}
.contact-banner{position:relative;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.2fr) .5fr;gap:32px;padding:58px 5%;min-height:320px;background-color:var(--r-dark);background-position:center;background-size:cover;color:#fff;border-top:1px solid #c5a36540;border-bottom:1px solid #c5a36540}.contact-banner .kicker{color:var(--r-copper)}.contact-banner h2{font-size:clamp(29px,3vw,43px);font-weight:500;line-height:1.14;text-wrap:balance;max-width:470px}.contact-banner p{color:#e0e9e5;font-size:14px;max-width:380px}.banner-contact{align-self:center}.banner-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.banner-contact-cards>a,.banner-contact-cards>div{display:flex;gap:12px;align-items:center;padding:16px 13px;background:#102d386b;border:1px solid #d8e7df35;border-radius:3px}.banner-contact-cards>div{grid-column:1/-1}.banner-contact-cards img{width:23px;height:23px;filter:invert(90%);flex-shrink:0}.banner-contact-cards span{display:grid;gap:5px;min-width:0}.banner-contact-cards small{font:10px 'IBM Plex Mono',monospace;color:#d9c497;text-transform:uppercase}.banner-contact-cards strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.contact-banner .outline{color:#fff;border-color:#a9c1b6}.contact-banner .actions{margin-top:18px;gap:10px}.contact-banner .primary{padding:14px 17px}.contact-banner .outline{padding:13px 17px}
@media(max-width:1000px){.contact-banner{grid-template-columns:1fr 1.3fr;gap:24px;background-position:75% center}.contact-banner h2{font-size:34px}}
@media(max-width:750px){.contact-banner{grid-template-columns:1fr;background-position:80% center;padding:42px 6%;gap:15px}.contact-banner h2{font-size:34px;max-width:420px}.banner-contact{max-width:520px}.banner-contact-cards{background:#102d3840}body .section-divisions .technical-art,body .section-process .technical-art{height:175px}}
@media(max-width:430px){.banner-contact-cards{grid-template-columns:1fr}.contact-banner h2{font-size:31px}.banner-contact-cards>div{grid-column:auto}body .section-divisions .technical-art{height:150px}}
@media(prefers-reduced-motion:reduce){.technical-art img{animation:none!important}}
/* Scroll-triggered metrics and more visible, controlled image motion. */
.metric-count{font-variant-numeric:tabular-nums;min-width:3ch}body .technical-art img{animation:cinematic-photo 13s ease-in-out infinite;animation-play-state:paused;will-change:transform}body .technical-art.motion-visible img{animation-play-state:running}@keyframes cinematic-photo{0%,100%{transform:scale(1.025) translateX(-1%)}50%{transform:scale(1.09) translateX(1%)}}
.contact-banner{overflow:hidden;isolation:isolate}.contact-banner:before{content:'';position:absolute;inset:-12px;z-index:-1;background-image:inherit;background-position:inherit;background-size:cover;transform-origin:80% 50%;animation:banner-depth 18s ease-in-out infinite;animation-play-state:paused;pointer-events:none}.contact-banner.motion-visible:before{animation-play-state:running}@keyframes banner-depth{50%{transform:scale(1.055) translateX(-.8%)}}
@media(prefers-reduced-motion:reduce){body .technical-art img,.contact-banner:before{animation:none!important;will-change:auto}}body.motion-off .technical-art img,body.motion-off .contact-banner:before{animation:none!important;will-change:auto}
/* Integrated experience v10: legible motion, premium product/editorial layouts. */
body .siteheader .menu-toggle{display:none!important}body .navlinks{font-size:12px;flex-wrap:nowrap}body .siteheader{padding-left:4%;padding-right:4%}body .siteheader .logo{width:150px}body .siteheader>.primary{white-space:nowrap}body .stickyhelp.whatsapp-float{position:fixed!important;right:22px!important;bottom:calc(22px + env(safe-area-inset-bottom))!important;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;padding:0;z-index:9999;box-shadow:0 8px 28px #102d3850;transform:none!important}.whatsapp-float img{width:29px;height:29px;filter:invert(1)}
body .client-play{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);margin:0!important;border:0!important}body .client-play:focus-visible{position:static!important;width:auto!important;height:auto!important;padding:8px 12px!important;clip-path:none;overflow:visible!important;margin:10px auto!important}body .client-carousel.logos-playing:hover .client-track,body .client-carousel:focus-within .client-track{animation-play-state:paused!important}
.ambient-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:-2}.contact-banner.has-video:before{display:none}.contact-banner.has-video:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102d38eb,#102d38ba 65%,#102d381a);pointer-events:none;z-index:-1}body .foot>.ambient-video{opacity:.22}
body .producthero.product-cinema{position:relative;isolation:isolate;overflow:hidden;min-height:650px;padding:65px 6%;background:var(--r-dark);color:#fff;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.product-cinema:before,.about-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102d38f2,#102d38b8 55%,#102d3860);z-index:-1;pointer-events:none}body .product-cinema .pagebread{color:#d7e2dc;line-height:1.8}body .product-cinema .kicker{color:var(--r-copper)}body .product-cinema h1{font-size:clamp(35px,4.2vw,60px);line-height:1.13;color:#fff}.product-cinema .product-intro{font-size:16px;color:#e1ece6;max-width:600px}.product-cinema .outline{color:#fff}.product-cinema .badge{background:#168568;color:#fff}.product-visual{min-width:0}body .product-cinema .mainphoto{height:360px;padding:25px;border-radius:8px;background:#f5f4ef}.platform-identity{height:360px;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:35px;background:linear-gradient(135deg,#16856828,#102d38ad);border:1px solid #c5a36550;border-radius:12px;box-shadow:0 20px 70px #0003}.platform-identity strong{font:500 clamp(40px,6vw,75px) Saira,sans-serif;letter-spacing:4px;color:#ead7b2}.platform-identity span,.platform-identity small{font:11px 'IBM Plex Mono',monospace;letter-spacing:1px;color:#dde8e2}.product-cinema .configurator{color:var(--r-ink);background:#f5f4ef;border-radius:6px}.product-cinema .configurator strong{color:var(--r-ink)}.gallery button{border:1px solid #ffffff30;background:#fff;border-radius:4px;padding:5px;min-height:0}.gallery img{width:90px;height:65px}.overview-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}.product-overview h2{font-size:36px;margin-bottom:25px}.product-overview h3{margin-top:28px;margin-bottom:12px}.product-overview li{color:var(--r-muted);line-height:1.8}.overview-image{position:relative;isolation:isolate;background-size:cover;background-position:center;margin:0;overflow:hidden;border-radius:8px}.overview-image:before{content:'';position:absolute;inset:-20px;z-index:-1;background-image:inherit;background-size:cover;filter:blur(18px);opacity:.35}.overview-image img{display:block;width:100%;height:380px;object-fit:contain;padding:25px;backdrop-filter:blur(12px);background:#f5f4efbd}.overview-image figcaption{padding:14px 20px;background:var(--r-dark);color:#fff;font-size:12px}.technical-table{margin-top:40px}.product-demo{background:#e7ede8}.product-demo video,.page-demo{display:block;width:100%;max-width:1100px;max-height:620px;margin:0 auto;aspect-ratio:16/9;object-fit:contain;background:#102d38;border-radius:8px}.product-demo h2{font-size:34px}.platform-page .producthero-copy{max-width:650px}.platform-page .platform-identity{transform:perspective(1000px) rotateY(-7deg);transition:transform .6s}.platform-page .platform-identity:hover{transform:perspective(1000px) rotateY(0)}
body .about-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--r-dark);color:#fff;padding:75px 6%;min-height:370px}body .about-hero .kicker{color:var(--r-copper)}body .about-hero h1{font-size:64px}.about-hero p{color:#e1ece6;max-width:650px;font-size:19px}.story-image{margin:0}.story-image img,img.story-image{width:100%;border-radius:8px;max-height:450px;object-fit:cover}.story-image figcaption{font-size:10px;color:var(--r-muted);padding:10px 0}.about-values{background:#e7ede8}.location-map{width:100%;height:400px;border:0;border-radius:8px;background:#e7ede8}.location-section .outline{margin-top:18px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{background:#fff;border:1px solid #102d3815;border-radius:8px;overflow:hidden}.blog-card>img{width:100%;height:220px;object-fit:cover}.blog-card>div{padding:25px}.blog-card h2{font-size:25px;line-height:1.3}.blog-card p{font-size:14px}.blog-card>div>span:last-child{color:var(--r-green);font-size:12px}.editorial-hero{background:var(--r-dark);color:#fff}.editorial-hero p{color:#dde8e2}.article-page{max-width:960px;margin:0 auto;padding:65px 35px}.article-page header{margin-bottom:35px}.article-page h1{font-size:clamp(35px,4.5vw,56px);line-height:1.16}.article-lead{font-size:20px;line-height:1.6}.article-meta{font-size:12px}.article-cover{width:100%;max-height:450px;object-fit:cover;border-radius:8px;margin-bottom:35px}.article-page .prose{font-size:17px}.prose h2,.prose h3,.prose h4{margin:30px 0 16px}.prose p{margin:0 0 20px}
@media(prefers-reduced-motion:reduce){body.motion-policy-on:not(.motion-off) .technical-art img{animation:cinematic-photo 13s ease-in-out infinite!important;animation-play-state:paused!important}body.motion-policy-on:not(.motion-off) .technical-art.motion-visible img{animation-play-state:running!important}body.motion-policy-on:not(.motion-off) .contact-banner:not(.has-video):before{animation:banner-depth 18s ease-in-out infinite!important;animation-play-state:paused!important}body.motion-policy-on:not(.motion-off) .contact-banner.motion-visible:not(.has-video):before{animation-play-state:running!important}}
@media(max-width:1050px){body .siteheader .menu-toggle{display:inline-flex!important}body .siteheader{flex-wrap:wrap}body .siteheader .navlinks{display:none!important;width:100%;order:3;flex-wrap:wrap}body .siteheader .navlinks.open{display:flex!important}body .producthero.product-cinema{grid-template-columns:1fr;min-height:0;gap:35px}.product-visual{max-width:650px;width:100%;margin:auto}.overview-layout{grid-template-columns:1fr;gap:35px}.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}.article-page{padding:40px 6%}body .about-hero h1{font-size:44px}.product-cinema .configgrid{grid-template-columns:1fr}body .product-cinema .mainphoto,.platform-identity{height:280px}.location-map{height:320px}body .stickyhelp.whatsapp-float{width:52px;height:52px;right:15px!important;bottom:calc(15px + env(safe-area-inset-bottom))!important}.overview-image img{height:300px}.product-overview h2{font-size:30px}}
.overview-layout.text-only{display:block;max-width:900px;margin:auto}
body h1,body h2,body h3,.specrow strong{overflow-wrap:anywhere}.blog-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:35px}.motion-reveal{transition:opacity .65s ease,transform .65s ease;transition-delay:var(--reveal-delay,0ms)}.motion-reveal.is-pending{opacity:0;transform:translateY(18px)}
body .section-products{max-width:1200px;border-radius:12px;background:linear-gradient(135deg,var(--r-dark),#143e43);padding:45px 30px 50px;margin:20px auto 55px;color:#fff}body .section-products .headrow h2{color:#fff;font-size:35px}body .section-products .headrow .kicker{color:var(--r-copper)}body .section-products .headrow p{color:#d8e5df}body .section-products .producttile{color:var(--r-ink);border:0}body .section-products .conceptlabel{font:500 clamp(24px,3vw,38px) Saira,sans-serif;letter-spacing:2px;color:var(--r-dark)}body .section-products .productimage:has(.conceptlabel){background:radial-gradient(circle at 70% 20%,#c5a36530,transparent 60%),linear-gradient(135deg,#dce9e3,#f5f4ef)}
@media(max-width:750px){body .section-products{margin:15px 5% 35px;padding:32px 20px;max-width:90%}body .section-products .headrow h2{font-size:29px}}
/* v11: continuous full-bleed surfaces, media families and infographic narrative. */
body .section-products{max-width:none;margin:0;padding:64px max(5%,calc((100% - 1140px)/2));background:var(--section-bg,var(--r-dark));color:var(--section-ink,#f5f4ef);border-radius:0}body .section-products .headrow p{color:inherit;opacity:.8}body .section-products .producttile{color:var(--r-ink)}body .section-products .kicker{color:var(--r-copper)}
body .metrics-band{max-width:none;width:100%;margin:0;padding:56px max(5%,calc((100% - 1140px)/2));border-radius:0;background:radial-gradient(ellipse at 10% 0%,#16856845,transparent 65%),var(--r-dark);border-top:1px solid #c5a36535;border-bottom:1px solid #c5a36535}body .metrics-band h2{font:500 clamp(24px,3vw,38px) Saira,sans-serif;letter-spacing:0;color:#fff;text-align:left;margin:0 0 32px}body .metrics-grid strong{font-size:clamp(27px,3vw,42px)}body .metrics-grid span{font-size:12px}
body .section-clients{background:var(--section-bg,#e5efeb);color:var(--section-ink,var(--r-ink));padding:42px max(5%,calc((100% - 1140px)/2));border:0}body .section-clients .headrow h2{font-size:clamp(25px,3vw,34px)}body .section-clients .kicker{color:inherit;opacity:.75}
body .section:not(.section-products):not(.section-clients){background-color:var(--section-bg);color:var(--section-ink)}body .section[style*="--section-ink"] .headrow p,body .section[style*="--section-ink"] .kicker{color:inherit}
body.home-overlay .siteheader{position:absolute;inset:36px 0 auto;z-index:1000;width:100%;background:linear-gradient(180deg,#102d38e8,#102d3850);border-bottom:1px solid #ffffff20;color:#fff;box-shadow:none;transition:background .25s,box-shadow .25s}body.home-overlay .siteheader .navlinks>a,body.home-overlay .siteheader summary{color:#fff}body.home-overlay .siteheader .navlinks details>div{background:var(--r-dark);color:#fff}body.home-overlay .siteheader .navlinks details>div a{color:#fff}body.home-overlay .siteheader.is-scrolled{position:fixed;top:0;background:var(--r-dark);box-shadow:0 6px 24px #0003}body.home-overlay .cinematic .herotext{padding-top:155px}body.home-overlay .siteheader .menu-toggle{color:#fff;border-color:#ffffff65}.home-overlay .siteheader .logo{max-height:62px}
.familygrid .family-card{padding:0;overflow:hidden;border:1px solid #102d3820;background:var(--r-paper);border-radius:8px;box-shadow:0 12px 34px #102d380b}.family-card>a{display:block;height:100%;color:var(--r-ink)}.family-visual{height:230px;position:relative;overflow:hidden;background:var(--r-dark);isolation:isolate}.family-visual>img,.family-visual>.ambient-video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;z-index:0}.family-visual>img{transition:transform .8s}.family-card:hover .family-visual>img{transform:scale(1.04)}.family-copy{padding:25px}.family-copy h3{font-size:24px;margin:0 0 12px}.family-copy p{font-size:14px;color:var(--r-muted)}.family-placeholder{height:100%;display:grid;place-items:center;background:radial-gradient(ellipse at 30% 30%,#16856866,transparent 65%),var(--r-dark)}.family-placeholder img{width:64px;filter:invert(90%);opacity:.6}
.narrative-graphic{display:grid;grid-template-columns:80px 1fr;gap:28px;align-items:start}.narrative-mark{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--r-copper);border-radius:50%;background:var(--r-dark);color:var(--r-copper);font:500 25px Saira,sans-serif;box-shadow:0 0 0 10px #16856810}.narrative-body{border-left:1px solid #16856845;padding-left:25px}.narrative-body p{position:relative;margin:0 0 24px;padding:18px 22px;background:#fff;border:1px solid #102d3810;border-radius:5px;font-size:15px}.narrative-body p:before{content:'';position:absolute;left:-31px;top:26px;width:10px;height:10px;border-radius:50%;background:var(--r-green);box-shadow:0 0 0 4px var(--r-paper)}
.infographic-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;position:relative}.infographic-timeline article{position:relative;border-top:2px solid var(--r-copper);padding:30px 25px;background:var(--r-paper);border-radius:5px;color:var(--r-ink);box-shadow:0 10px 28px #102d380a}.milestone-node{width:48px;height:48px;border:1px solid var(--r-copper);border-radius:50%;display:grid;place-items:center;background:var(--r-dark);color:var(--r-copper);font:500 18px 'IBM Plex Mono',monospace;margin-bottom:24px}.infographic-timeline h3{font-size:23px;margin:12px 0}.infographic-timeline p{font-size:14px;line-height:1.75;color:var(--r-muted)}.infographic-timeline article>img{width:100%;height:170px;object-fit:cover;border-radius:4px;margin-top:16px}.journey-infographic{background:var(--r-dark)!important;color:#fff!important}.journey-infographic .headrow{display:block}.journey-infographic .kicker{color:var(--r-copper)}.about-values .principles article{border-left:3px solid var(--r-green);border-radius:6px;background:#fff;padding:28px;box-shadow:0 10px 30px #102d380b}
@media(max-width:1050px){body.home-overlay .siteheader .navlinks.open{background:var(--r-dark);color:#fff;max-height:70vh;overflow:auto}body.home-overlay .siteheader{padding:16px 5%}body.home-overlay .cinematic .herotext{padding-top:135px}}
@media(max-width:750px){body .section-products,body .section-clients,body .metrics-band{padding-left:6%;padding-right:6%}.infographic-timeline{grid-template-columns:1fr}.narrative-graphic{grid-template-columns:1fr;gap:25px}.narrative-mark{width:70px}.family-visual{height:190px}body .metrics-grid{gap:20px}.home-overlay .siteheader .logo{max-width:150px;max-height:50px}body.home-overlay .cinematic .herotext{padding-top:140px}}
@media(prefers-reduced-motion:reduce){.family-visual>img,body.home-overlay .siteheader{transition:none}}

body .section[style*="--section-ink"] .headrow h2{color:inherit}

/* v12: seamless topbar/menu join and compact full-width company metrics. */
body .topbar{margin:0;border:0;box-shadow:none}body.home-overlay .siteheader{top:var(--topbar-height,36px);border:0;box-shadow:none}body.home-overlay .siteheader.is-scrolled{top:0;border:0}
body .metrics-band{padding-top:24px;padding-bottom:24px;min-height:0;height:auto}body .metrics-band h2{font-size:clamp(22px,2vw,28px);line-height:1.2;margin-bottom:16px}body .metrics-grid{gap:12px}body .metrics-grid>div{padding:7px 10px;gap:5px 10px}body .metrics-grid strong{font-size:clamp(26px,2.3vw,34px);line-height:1.2}body .metrics-grid span{font-size:11px;line-height:1.4}body .metrics-grid img{width:23px;height:23px}
@media(max-width:750px){body .metrics-band{padding-top:22px;padding-bottom:22px}body .metrics-grid{gap:12px}body .metrics-grid>div{padding:5px 8px}body .metrics-grid strong{font-size:27px}body .metrics-band h2{margin-bottom:14px}}
/* v13: consistent editorial hierarchy, accessible controls and product media polish. */
.skip-link{position:fixed;top:10px;left:10px;transform:translateY(-160%);padding:12px 18px;background:var(--r-paper);color:var(--r-dark);z-index:20000;border:2px solid var(--r-green);border-radius:4px}.skip-link:focus{transform:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--r-copper);outline-offset:4px}
body .cinematic .slide-headline{font:500 clamp(42px,4.8vw,68px)/1.12 Saira,sans-serif;color:#fff!important;letter-spacing:-1.4px;margin:18px 0 22px;max-width:760px;text-wrap:balance}body .producttile{border-radius:7px;overflow:hidden;transition:transform .25s,box-shadow .25s}body .producttile:hover{transform:translateY(-4px);box-shadow:0 15px 40px #102d3820}body .productimage{aspect-ratio:4/3;height:auto;min-height:180px;background:#fff}body .productimage>img{height:100%;width:100%;object-fit:contain;padding:18px}body .producttile>h3,body .producttile>p,body .producttile>.number,body .producttile>.textaction{margin-left:22px;margin-right:22px}body .producttile>.number{display:block;margin-top:20px;font-size:10px;letter-spacing:.6px}body .producttile>h3{line-height:1.28;font-size:22px}body .producttile>p{line-height:1.75;font-size:13px}body .producttile>.textaction{display:block;margin-top:22px;margin-bottom:24px}
body .mainphoto{aspect-ratio:4/3;object-fit:contain;padding:20px;background:#ffffffed;border-radius:8px}body .product-visual .gallery button{border:1px solid #c5a36550;border-radius:4px;padding:4px;background:#fff;min-width:64px;min-height:48px}body .technical-table{border:1px solid #102d3815;border-radius:7px;overflow:hidden;padding:22px;background:#fff}body .specs th{font-weight:500}body .product-demo video{aspect-ratio:16/9;background:#102d38;object-fit:contain;border-radius:8px}
body .section .headrow h2{text-wrap:balance}body .prose p{line-height:1.85}body .contactlayout form{gap:20px}body .contactlayout input,body .contactlayout textarea,body .contactlayout select{border-radius:4px}body .navlinks summary{min-height:32px;display:flex;align-items:center;gap:6px}body .navlinks summary:after{content:'⌄';font-size:12px;opacity:.7}body .navlinks details[open]>summary:after{content:'⌃'}body .pagebread{display:flex;gap:10px;flex-wrap:wrap;line-height:1.6}body .footbottom{gap:20px;flex-wrap:wrap}
@media(max-width:750px){body .cinematic .slide-headline{font-size:clamp(34px,8vw,48px);letter-spacing:-.7px}body .producttile>h3{font-size:20px}body .mainphoto{max-height:360px}body .producthero.product-cinema{padding:42px 6%}body .product-demo video{min-height:0}body .hero.cinematic{min-height:620px}.siteheader>.primary{font-size:10px;padding:10px 12px}}
@media(max-width:430px){body.home-overlay .siteheader{gap:12px;padding:12px 5%}.home-overlay .siteheader .logo{width:115px;max-height:45px}body.home-overlay .siteheader>.primary{max-width:115px;white-space:normal;text-align:center}body .cinematic .herotext{width:100%}body .productgrid,body .familygrid{grid-template-columns:1fr}body .productimage{min-height:220px}body .section-products{padding-top:38px;padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){body .producttile{transition:none}body .producttile:hover{transform:none}}
.resource-dialog{width:min(620px,94vw);height:min(850px,90vh);padding:16px;border:1px solid #c5a36560;border-radius:12px;background:var(--r-paper);box-shadow:0 25px 100px #0004}.resource-dialog::backdrop{background:#102d38b0}.resource-dialog iframe{display:block;width:100%;height:calc(100% - 45px);border:0;border-radius:6px}.resource-close{display:block;margin:0 0 10px auto;padding:8px 14px;background:var(--r-dark);color:#fff;border-radius:5px}.document-gate{padding:18px;background:#f5f4ef}.document-gate .loginbox{max-width:550px;margin:auto;box-shadow:none;padding:22px}.document-gate .honeypot{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
