
.intro-track{background:var(--aqua)}
.intro{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:auto 1fr auto;gap:24px 5%;background:var(--aqua);padding:60px 7% 90px;min-height:800px;isolation:isolate}
.intro-small{grid-column:1/-1;position:relative;z-index:3}.intro h2{grid-column:1;grid-row:2;align-self:center;position:relative;z-index:3;font-size:clamp(54px,6.1vw,100px);line-height:.98}.intro h2 b{display:block;font-weight:700;will-change:transform}.intro h2 span{color:white}.intro-copy{grid-column:1;grid-row:3;max-width:470px;font-size:15px;position:relative;z-index:3}.intro-window{grid-column:2;grid-row:2/4;margin:0;align-self:center;aspect-ratio:1.1;background:var(--paper);clip-path:polygon(0 0,85% 0,100% 15%,100% 100%,15% 100%,0 85%);display:flex;flex-direction:column;justify-content:center;padding:30px 0;position:relative;z-index:2;will-change:transform,clip-path}.intro-window img{width:100%;height:75%;object-fit:contain}.intro-window figcaption{padding:10px 30px;font-size:11px}.intro-wave{width:850px;height:850px;right:-430px;top:-360px;background:var(--navy);opacity:.19;z-index:0}.intro-water-word{font:700 clamp(200px,28vw,430px)/1 var(--display);position:absolute;bottom:-45px;left:-1%;color:transparent;-webkit-text-stroke:1px #1f2a4430;z-index:0;white-space:nowrap;will-change:transform}.intro .pipe-bridge{z-index:1;bottom:-130px}.intro .bridge-water{background:var(--yellow)}
.full-motion .intro-track{height:170svh}.full-motion .intro{position:sticky;top:0;height:100svh;min-height:700px}
.technologies{position:relative;isolation:isolate;overflow:clip;padding:50px 7% 55px;background:var(--paper)}.technology-track{background:var(--paper)}.technologies .section-heading{position:relative;z-index:2;margin-bottom:35px;flex-shrink:0}.technologies .section-heading h2{font-size:clamp(46px,5.3vw,80px)}.technologies .section-heading p{max-width:250px}.technology-wave{width:650px;height:650px;left:-430px;top:35%;opacity:.1;z-index:-1}.technology-pipe{inset:auto;width:90%;height:340px;right:-45%;top:-210px;background:var(--cyan);opacity:.35;z-index:-1}.tech-grid{gap:7%;flex:1;min-height:0;align-items:center}.tech-image{min-height:0;height:100%;max-height:620px;padding-bottom:50px;isolation:isolate}.tech-photo-frame{height:100%;overflow:clip;clip-path:polygon(0 0,88% 0,100% 12%,100% 100%,12% 100%,0 88%);background:var(--navy);will-change:clip-path}.tech-photo-frame img{height:100%;width:100%;object-fit:cover;border-radius:0;will-change:transform,filter}.tech-image #tech-caption{bottom:90px;left:22px;z-index:2}.tech-verb{position:absolute;bottom:0;left:20px;font:700 clamp(65px,9vw,138px)/.95 var(--display);color:var(--cyan);text-shadow:2px 2px 0 var(--paper);z-index:3;pointer-events:none;white-space:nowrap;will-change:transform}.tech-progress{position:absolute;height:3px;left:0;right:0;bottom:-12px;background:#1f2a4420}.tech-progress i{display:block;height:100%;background:var(--cyan);transform:scaleX(0);transform-origin:left}.tech-list{align-self:center;position:relative;z-index:3}.tech-list details{padding:16px 0;transition:border-color .3s}.tech-list details[open]{border-color:var(--cyan)}.tech-list summary{font-size:clamp(27px,2.65vw,39px)}.tech-list details p{font-size:13px;line-height:1.6}.tech-list details a{font-size:12px}.full-motion .technology-track{height:360svh}.full-motion .technologies{position:sticky;top:0;height:100svh;min-height:740px;display:flex;flex-direction:column}
.applications{background:var(--navy);color:var(--paper);padding:50px 7% 30px;position:relative;isolation:isolate;overflow:clip}.application-track{background:var(--navy)}.applications .section-heading{position:relative;z-index:3;margin-bottom:35px;flex-shrink:0}.applications .section-heading h2{font-size:clamp(48px,5.2vw,79px);color:var(--aqua)}.applications .section-heading p{font-size:13px;max-width:240px}.application-pipe{inset:auto;width:120%;height:550px;left:-20%;top:-90px;background:var(--aqua);opacity:.08;z-index:-1}.application-wave{width:800px;height:800px;right:-480px;bottom:-330px;background:var(--yellow);opacity:.12;z-index:-1}.application-viewport{position:relative}.application-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.application-grid article{position:relative;min-height:460px;overflow:clip;isolation:isolate;padding:32px;display:flex;flex-direction:column;justify-content:end;clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%);background:#102435}.application-grid article::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0a162410 10%,#0a162422 35%,#0a1624e8 100%);z-index:-1}.application-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;border-radius:0;will-change:transform}.application-grid article h3{font-size:clamp(40px,5.6vw,84px);margin:0 0 14px;max-width:75%;color:var(--yellow);will-change:transform}.application-grid article p{font-size:14px;max-width:410px;margin:0;color:#fff}.application-tabs{display:flex;gap:25px;position:relative;z-index:2;margin-top:25px;border-top:1px solid #ffffff35;flex-shrink:0}.application-tabs button{padding:18px 0;background:none;border:0;border-top:3px solid transparent;color:#b8cbd4;font-size:12px}.application-tabs button[aria-current]{border-color:var(--yellow);color:var(--yellow)}.application-tabs button:hover{color:white}.full-motion .application-track{height:290svh}.full-motion .applications{position:sticky;top:0;height:100svh;min-height:720px;display:flex;flex-direction:column}.full-motion .application-viewport{flex:1;min-height:0}.full-motion .application-grid{height:100%;display:flex;width:max-content;gap:28px;will-change:transform}.full-motion .application-grid article{width:76vw;height:100%;min-height:0;flex-shrink:0;padding:40px 50px}.full-motion .application-grid article h3{font-size:clamp(60px,7.2vw,110px)}
.contact-track{background:var(--cyan)}.contact{display:flex;flex-direction:column;justify-content:center;padding:65px 7% 60px;min-height:800px}.contact>p:not(.address){font-size:11px;margin-bottom:35px;position:relative;z-index:3}.contact h2{font-size:clamp(96px,13.5vw,210px);line-height:.95;position:relative;z-index:3;will-change:transform}.contact-line{display:block;font-weight:700;will-change:transform}.contact-row{position:relative;z-index:3}.contact-row a{font-size:17px;background:var(--navy);border:0;border-radius:3px;padding:19px 23px;transition:background .2s,transform .2s}.contact-row a:hover{background:#142035;transform:translateY(-3px)}.address{z-index:3}.contact-wave{width:1000px;height:1000px;right:-500px;top:-380px;opacity:.18;z-index:0}.contact-wave-small{width:500px;height:500px;left:-300px;bottom:-260px;background:white;opacity:.13;z-index:0}.contact-pipe-base,.contact-pipe-fill{inset:auto;width:150%;height:490px;right:-20%;bottom:-210px;mask-image:url('assets/brand/pipe-flow.svg');-webkit-mask-image:url('assets/brand/pipe-flow.svg');z-index:1}.contact-pipe-base{background:var(--navy);opacity:.14}.contact-pipe-fill{background:var(--yellow);clip-path:inset(0 100% 0 0)}.full-motion .contact-track{height:155svh}.full-motion .contact{position:sticky;top:0;height:100svh;min-height:740px}footer{position:relative;padding-top:48px;background:var(--paper);overflow:clip}.footer-flow{position:absolute;inset:0 0 auto;height:5px;background:var(--aqua)}.footer-flow i{display:block;width:100%;height:100%;background:var(--navy);transform-origin:left;transform:scaleX(0)}
@media(max-width:800px){
 .intro{padding:40px 6% 95px;min-height:860px;grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto;gap:23px}.full-motion .intro-track{height:160svh}.full-motion .intro{height:100svh;min-height:830px}.intro-small{margin:0;grid-column:1;grid-row:1;font-size:11px}.intro h2{font-size:clamp(48px,10.8vw,76px);grid-row:2;margin:0;line-height:1}.intro-window{grid-column:1;grid-row:3;width:83%;justify-self:end;aspect-ratio:1.85;padding:5px 0;max-height:250px}.intro-window img{height:75%;max-height:180px}.intro-window figcaption{font-size:9px;padding:8px 18px}.intro-copy{grid-column:1;grid-row:4;font-size:12px;max-width:100%;margin:0}.intro-water-word{font-size:180px;bottom:-5px}.intro-wave{width:550px;height:550px;right:-350px;top:-220px}.intro .pipe-bridge{bottom:-75px;height:180px}
 .technologies{padding:35px 6% 35px}.technologies .section-heading{margin-bottom:24px}.technologies .section-heading h2{font-size:clamp(43px,10vw,66px)}.technologies .section-heading p{font-size:11px;margin-top:13px;max-width:100%}.full-motion .technology-track{height:350svh}.full-motion .technologies{height:100svh;min-height:960px}.tech-grid{grid-template-columns:1fr;gap:15px;display:grid;grid-template-rows:230px 1fr}.tech-image{height:225px;width:88%;max-height:none;justify-self:end;padding-bottom:35px}.tech-verb{font-size:67px;left:-28px;bottom:2px}.tech-image #tech-caption{left:12px;bottom:59px;padding:7px 12px;font-size:9px}.tech-progress{bottom:-3px}.tech-list details{padding:12px 0}.tech-list summary{font-size:27px}.tech-list details p{font-size:12px;line-height:1.6;padding-top:11px}.tech-list details a{font-size:11px}.technology-wave{width:400px;height:400px;left:-260px;top:20%}.technology-pipe{height:240px;top:-170px;width:150%;right:-85%}
 .applications{padding:35px 6% 22px}.applications .section-heading{margin-bottom:25px}.applications .section-heading h2{font-size:clamp(40px,10vw,67px)}.applications .section-heading p{font-size:11px;margin-top:15px}.full-motion .application-track{height:270svh}.full-motion .applications{min-height:760px}.full-motion .application-grid{gap:16px}.full-motion .application-grid article{width:86vw;padding:25px 23px 30px}.full-motion .application-grid article h3{font-size:clamp(45px,11.5vw,72px);max-width:95%}.application-grid article p{font-size:12px;max-width:270px}.application-tabs{gap:18px;margin-top:17px}.application-tabs button{font-size:9px;padding:14px 0}.application-wave{width:550px;height:550px;right:-370px}.application-pipe{height:360px}
 .contact{padding:45px 6% 85px;min-height:800px}.full-motion .contact-track{height:145svh}.full-motion .contact{min-height:780px}.contact>p:not(.address){font-size:9px;max-width:245px;margin-bottom:35px}.contact h2{font-size:clamp(83px,19vw,135px)}.contact-row{gap:14px;margin-top:35px}.contact-row a{padding:17px 19px;font-size:14px;min-width:0}.address{font-size:10px;margin-top:24px;max-width:290px}.contact-wave{width:650px;height:650px;right:-410px;top:-220px}.contact-pipe-base,.contact-pipe-fill{width:240%;height:340px;right:-50%;bottom:-155px}.contact-wave-small{width:400px;height:400px;left:-300px;bottom:-200px}
}

@media(max-width:800px) and (max-height:730px){.full-motion .technology-track{height:auto}.full-motion .technologies{position:relative;height:auto;min-height:960px}}
@media(prefers-reduced-motion:reduce){.intro-track,.technology-track,.application-track,.contact-track{height:auto!important}.intro,.technologies,.applications,.contact{position:relative!important;height:auto!important;min-height:0!important}.intro{padding-top:65px;padding-bottom:130px}.intro-window{transform:none!important;clip-path:polygon(0 0,85% 0,100% 15%,100% 100%,15% 100%,0 85%)!important}.intro h2 b,.intro-water-word,.tech-verb,.tech-photo-frame img,.application-grid,.application-grid article img,.application-grid article h3,.contact-line,.brand-wave,.brand-pipe{transform:none!important}.application-grid{display:grid!important;width:auto!important;grid-template-columns:1fr;gap:30px!important}.application-grid article{width:auto!important;min-height:440px!important}.application-tabs{display:none}.tech-progress i,.footer-flow i{transform:scaleX(1)!important}.contact{padding-top:90px;padding-bottom:140px}.bridge-water,.contact-pipe-fill{clip-path:none!important}}:where(html.ligero) .intro-track,:where(html.ligero) .technology-track,:where(html.ligero) .application-track,:where(html.ligero) .contact-track{height:auto!important}:where(html.ligero) .intro,:where(html.ligero) .technologies,:where(html.ligero) .applications,:where(html.ligero) .contact{position:relative!important;height:auto!important;min-height:0!important}:where(html.ligero) .intro{padding-top:65px;padding-bottom:130px}:where(html.ligero) .intro-window{transform:none!important;clip-path:polygon(0 0,85% 0,100% 15%,100% 100%,15% 100%,0 85%)!important}:where(html.ligero) .intro h2 b,:where(html.ligero) .intro-water-word,:where(html.ligero) .tech-verb,:where(html.ligero) .tech-photo-frame img,:where(html.ligero) .application-grid,:where(html.ligero) .application-grid article img,:where(html.ligero) .application-grid article h3,:where(html.ligero) .contact-line,:where(html.ligero) .brand-wave,:where(html.ligero) .brand-pipe{transform:none!important}:where(html.ligero) .application-grid{display:grid!important;width:auto!important;grid-template-columns:1fr;gap:30px!important}:where(html.ligero) .application-grid article{width:auto!important;min-height:440px!important}:where(html.ligero) .application-tabs{display:none}:where(html.ligero) .tech-progress i,:where(html.ligero) .footer-flow i{transform:scaleX(1)!important}:where(html.ligero) .contact{padding-top:90px;padding-bottom:140px}:where(html.ligero) .bridge-water,:where(html.ligero) .contact-pipe-fill{clip-path:none!important}

.tech-image #tech-caption{top:18px;bottom:auto;max-width:calc(100% - 44px)}
.contact-pipe-base,.contact-pipe-fill{right:-20%;bottom:-150px;mask-image:url('assets/brand/pipe-flow.svg');-webkit-mask-image:url('assets/brand/pipe-flow.svg')}
@media(max-width:800px){.full-motion .technologies{min-height:800px}.tech-grid{grid-template-rows:190px 1fr;gap:14px}.tech-image{height:185px;padding-bottom:30px}.tech-verb{font-size:58px}.tech-image #tech-caption{top:12px;bottom:auto}.tech-list details{padding:10px 0}.tech-list summary{font-size:25px}.tech-list details p{font-size:11px}.contact-pipe-base,.contact-pipe-fill{bottom:-95px}}
@media(max-width:800px) and (max-height:730px){.full-motion .technologies{min-height:850px}.full-motion .applications{min-height:700px}}
.intro-window{padding:0;overflow:clip;background:var(--navy)}.intro-window img{position:absolute;inset:0;height:100%;max-height:none;object-fit:cover}.intro-window figcaption{position:absolute;bottom:30px;left:24px;right:24px;color:white;font-size:12px;z-index:2;padding:0}
@media(max-width:800px){.intro-window{aspect-ratio:1.55;max-height:280px}.intro-window img{height:100%;max-height:none}.intro-window figcaption{font-size:10px;bottom:22px;left:20px}}
.intro-window img{filter:brightness(1.2)}.intro-window figcaption{left:18%;right:8%;bottom:11%}


.hero-piping,.intro .pipe-bridge,.manifesto-pipe,.technology-pipe,.application-pipe,.contact-pipe-base,.contact-pipe-fill{height:auto;aspect-ratio:4/1}
.hero-piping{bottom:-130px;mask-image:linear-gradient(to right,transparent 32%,#000 48%);-webkit-mask-image:linear-gradient(to right,transparent 32%,#000 48%)}
.intro .pipe-bridge{bottom:-245px}
.pipe-upper{top:-140px}
.pipe-lower{bottom:-160px}
.technology-pipe{top:-150px}
.application-pipe{top:-110px}
.contact-pipe-base,.contact-pipe-fill{bottom:-260px}
@media(max-width:800px){
 .hero-piping{bottom:-50px;mask-image:linear-gradient(to right,transparent 45%,#000 60%);-webkit-mask-image:linear-gradient(to right,transparent 45%,#000 60%)}
 .intro .pipe-bridge{bottom:-100px}
 .pipe-upper{top:-60px}
 .pipe-lower{bottom:-80px}
 .technology-pipe{top:-75px}
 .application-pipe{width:200%;left:-40%;top:-75px}
 .contact-pipe-base,.contact-pipe-fill{bottom:-130px}
}


.journey{height:auto}
.journey .journey-sticky{position:relative;height:100svh;min-height:720px}
.manifesto-track{height:auto}
.manifesto-track .manifesto{position:relative;height:auto;min-height:850px;padding:210px 5% 150px}
.manifesto .pipe-upper{clip-path:none;transform:none;top:-175px}
.manifesto .wave-right{right:-420px;bottom:-410px;opacity:.2}
.manifesto .kinetic-line{transform:none;will-change:auto}
.manifesto.is-visible h2{animation:manifesto-enter .8s ease-out both}
@keyframes manifesto-enter{from{opacity:.35;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){
 .journey .journey-sticky{height:100svh;min-height:780px}
 .manifesto-track .manifesto{min-height:680px;padding:145px 6% 130px}
 .manifesto .pipe-upper{top:-65px}
 .manifesto .wave-right{right:-290px;bottom:-220px}
}


.hero-image{transform:none!important;will-change:auto}
.application-track,.full-motion .application-track{height:auto}
.applications,.full-motion .applications{position:relative;height:auto;min-height:0;padding-top:65px;padding-bottom:35px}
.application-viewport,.full-motion .application-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--aqua) transparent;cursor:grab;position:relative}
.application-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.application-grid,.full-motion .application-grid{display:flex!important;width:max-content!important;height:auto;gap:28px!important;transform:none!important}
.application-grid article,.full-motion .application-grid article{width:76vw!important;height:clamp(430px,60svh,660px);min-height:0!important;scroll-snap-align:start;flex-shrink:0;padding:40px 50px}
.application-grid article img{pointer-events:none;-webkit-user-drag:none}
.application-tabs{flex-wrap:wrap;row-gap:0}
.application-tabs .application-play{margin-left:auto;color:var(--aqua)}
@media(max-width:800px){
 .applications,.full-motion .applications{padding-top:40px}
 .application-grid,.full-motion .application-grid{gap:16px!important}
 .application-grid article,.full-motion .application-grid article{width:80vw!important;height:470px;padding:25px 23px}
 .application-tabs{gap:0 18px}
 .application-tabs .application-play{margin-left:0}
}
@media(prefers-reduced-motion:reduce){.application-tabs{display:flex}.application-play{display:none}}:where(html.ligero) .application-tabs{display:flex}:where(html.ligero) .application-play{display:none}


.intro .pipe-bridge{inset:14% auto auto -70px;width:140px;height:auto;aspect-ratio:1/4}
.intro .bridge-water,.contact-pipe-base,.contact-pipe-fill{mask-image:url('assets/brand/pipe-vertical.svg');-webkit-mask-image:url('assets/brand/pipe-vertical.svg')}
.intro .bridge-water{background:var(--navy);opacity:.16}
.contact-pipe-base,.contact-pipe-fill{inset:8% -25px auto auto;width:200px;height:auto;aspect-ratio:1/4}
.contact-pipe-base{opacity:.1}
.contact-pipe-fill{background:var(--yellow);opacity:.75}
.manifesto-track .manifesto{padding:165px 5% 125px;min-height:780px}
.manifesto .pipe-upper{width:65%;left:-10%;top:-100px;opacity:.85}
.manifesto .wave-right{width:540px;height:540px;right:-370px;bottom:-330px;opacity:.13}
.tech-verb{font-size:clamp(48px,5.5vw,80px);text-shadow:none;left:0}
.tech-image{padding-bottom:65px}
@media(max-width:800px){
 .intro .pipe-bridge{inset:18% auto auto -70px;width:100px;height:auto}
 .contact-pipe-base,.contact-pipe-fill{inset:12% -56px auto auto;width:105px;height:auto}
 .manifesto-track .manifesto{padding:140px 6% 120px;min-height:660px}
 .manifesto .pipe-upper{width:145%;left:-40%;top:-48px}
 .manifesto .wave-right{width:360px;height:360px;right:-260px;bottom:-205px}
 .tech-verb{font-size:45px;left:0}
 .tech-image{padding-bottom:38px}
}


.intro-window{overflow:visible;clip-path:none!important;background:transparent;aspect-ratio:1.1;padding:0}
.intro-stack{position:absolute;inset:5% 5% 15%;isolation:isolate}
.intro-window .intro-shot{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;border:7px solid var(--paper);border-radius:3px;box-shadow:0 12px 28px #1f2a4420;opacity:0;transform:rotate(var(--tilt));filter:none}
.intro-window .intro-shot.is-shown{opacity:1}
.intro-window figcaption{inset:auto 5% 0;display:flex;gap:12px;align-items:center;justify-content:space-between;color:var(--navy);font-size:11px}
.intro-motion{font:inherit;color:inherit;background:transparent;border:0;padding:8px 0;white-space:nowrap}
@media(max-width:800px){.intro-window{width:86%;justify-self:center;aspect-ratio:1.3;max-height:300px}.intro-stack{inset:3% 3% 17%}.intro-window .intro-shot{border-width:5px}.intro-window figcaption{left:3%;right:3%;font-size:9px}}
@media(prefers-reduced-motion:reduce){.intro-motion{display:none}.intro-window .intro-shot{transform:none!important}.intro-window .intro-shot:not(:first-child){display:none}}:where(html.ligero) .intro-motion{display:none}:where(html.ligero) .intro-window .intro-shot{transform:none!important}:where(html.ligero) .intro-window .intro-shot:not(:first-child){display:none}

@media(prefers-reduced-motion:reduce){.intro-window .intro-shot:first-child{opacity:1}}:where(html.ligero) .intro-window .intro-shot:first-child{opacity:1}


.hero-type{width:42%;max-width:680px}
@media(max-width:800px){.hero-type{width:78%;max-width:430px}}


.intro .pipe-bridge{inset:0 auto 0 0;width:clamp(26px,6vw,90px);height:100%;aspect-ratio:auto}
.intro .bridge-base{background:var(--navy);opacity:.15}
.intro .bridge-water{opacity:.28}
.contact-pipe-base,.contact-pipe-fill{inset:0 0 0 auto;width:clamp(26px,6vw,90px);height:100%;aspect-ratio:auto}
.contact-pipe-base{background:var(--navy);opacity:.22}
.contact-pipe-fill{opacity:.8}


.intro-track,.full-motion .intro-track,.technology-track,.full-motion .technology-track{height:auto}
.intro,.full-motion .intro{position:relative;height:auto;min-height:800px}
.technologies,.full-motion .technologies{position:relative;height:auto;min-height:0;padding-top:80px;padding-bottom:80px}
.technologies .tech-image{height:clamp(360px,58svh,600px);max-height:none}
.intro h2 b{will-change:auto}
.intro .bridge-water{clip-path:inset(0)}
.intro-entered h2 b{animation:intro-line-in .9s cubic-bezier(.2,.75,.25,1) both}
.intro-entered h2 b:nth-child(2){animation-delay:.14s}
.intro-entered h2 b:nth-child(3){animation-delay:.28s}
.intro-entered .bridge-water{animation:intro-pipe-in 1.5s ease-out both}
@keyframes intro-line-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes intro-pipe-in{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
@media(max-width:800px){
 .technologies,.full-motion .technologies{padding-top:50px;padding-bottom:50px}
 .technologies .tech-grid{grid-template-rows:auto auto;gap:25px}
 .technologies .tech-image{height:230px}
}


.service-band{padding:70px 7%;display:grid;grid-template-columns:repeat(3,1fr);gap:6%;background:var(--paper)}
.service-band article{border-top:1px solid #1f2a4430;padding-top:23px}.service-band span,.eyebrow{font-size:10px;letter-spacing:.09em}.service-band h3{font-size:38px;margin:20px 0 15px}.service-band p{font-size:13px;max-width:330px}
.clients{background:white;padding:65px 0 70px;overflow:hidden}.clients-heading{padding:0 7%;display:flex;align-items:end;justify-content:space-between;gap:30px}.clients h2{font-size:clamp(40px,4.3vw,64px);margin-top:19px}.clients-motion{border:0;background:none;font:11px var(--font);color:var(--navy);padding:12px 0;white-space:nowrap}
.clients-viewport{overflow-x:auto;scrollbar-width:none;margin-top:45px}.clients-viewport::-webkit-scrollbar{display:none}.clients-track{display:flex;width:max-content;animation:client-flow 90s linear infinite}.clients-group{list-style:none;display:flex;align-items:center;gap:45px;padding:0 45px 0 0;margin:0;flex-shrink:0}.clients-group li{width:130px;height:75px;display:grid;place-items:center;flex-shrink:0}.clients-group img{width:auto;height:auto;max-width:120px;max-height:64px;object-fit:contain}.clients:hover .clients-track,.clients:focus-within .clients-track,.clients.is-paused .clients-track{animation-play-state:paused}
@keyframes client-flow{to{transform:translateX(-50%)}}
@media(max-width:800px){.service-band{grid-template-columns:1fr;padding:50px 6%;gap:30px}.service-band h3{font-size:33px;margin:14px 0 10px}.clients{padding:45px 0 50px}.clients-heading{padding:0 6%;gap:20px}.clients h2{font-size:38px}.clients-heading .eyebrow{font-size:8px}.clients-motion{font-size:9px}.clients-group{gap:25px;padding-right:25px}.clients-group li{width:110px}.clients-group img{max-width:100px;max-height:55px}.application-tabs{gap:0 18px}}
@media(prefers-reduced-motion:reduce){.clients-track{animation:none;transform:none}.clients-group[aria-hidden]{display:none}.clients-motion{display:none}}:where(html.ligero) .clients-track{animation:none;transform:none}:where(html.ligero) .clients-group[aria-hidden]{display:none}:where(html.ligero) .clients-motion{display:none}


.stage-layout{grid-template-columns:minmax(0,32%) minmax(0,1fr);column-gap:clamp(32px,5vw,90px)}
.stage-copy{padding-right:12px}
.model-area #model{inset:0 -4vw 0 0}
@media(max-width:800px){.stage-copy{padding-right:0;padding-bottom:18px}.model-area #model{inset:0 -5vw}}

.application-grid article.is-trailer img{object-position:center 60%}
.application-grid article.is-trailer p{max-width:520px}
.application-grid article small{display:block;margin-top:12px;font-size:10px;color:#ffffffb0;max-width:420px}
.application-grid article.is-trailer::after{background:linear-gradient(90deg,#0a1624f5 0%,#0a1624eb 45%,#0a162470 68%,#0a162400 85%)}
@media(max-width:800px){.application-grid article.is-trailer::after{background:linear-gradient(180deg,#0a162420 0%,#0a1624b0 40%,#0a1624f2 70%)}}



.manifesto-track .manifesto{padding-top:210px}
.band-pipe{position:absolute;top:36px;left:50%;width:max(100%,1100px);aspect-ratio:9/1;transform:translateX(-50%)!important;background:var(--navy);
  -webkit-mask:url('assets/brand/pipe-band.svg') center/100% 100% no-repeat;mask:url('assets/brand/pipe-band.svg') center/100% 100% no-repeat;pointer-events:none;z-index:1}
.band-pipe--flow{background:repeating-linear-gradient(90deg,transparent 0 70px,var(--aqua) 70px 120px,#fff 120px 128px,transparent 128px 190px);background-size:190px 100%;animation:band-flow 2.4s linear infinite;opacity:.95}
@keyframes band-flow{to{background-position-x:190px}}
@media(max-width:800px){.manifesto-track .manifesto{padding-top:170px}.band-pipe{top:28px}}

.contact-pipe-fill{clip-path:none!important;background:repeating-linear-gradient(180deg,var(--yellow) 0 46px,transparent 46px 120px)!important;background-size:100% 120px!important;animation:contact-flow 2.2s linear infinite}
@keyframes contact-flow{to{background-position-y:120px}}

.applications{isolation:isolate}
.application-grid article,.full-motion .application-grid article{clip-path:none;border-radius:34px 34px 34px 8px;transition:transform .7s cubic-bezier(.2,.75,.25,1),opacity .7s}
.application-grid article:not(.is-active){transform:scale(.95)!important;opacity:.55}
.application-grid article img{transition:filter .7s}
.application-grid article:not(.is-active) img{filter:saturate(.6) brightness(.75)}
.application-grid article.is-active img{animation:card-float 9s ease-in-out infinite}
@keyframes card-float{0%,100%{transform:scale(1.04) translate(0,0)}50%{transform:scale(1.07) translate(-1%,-1.2%)}}
.application-grid article>h3,.application-grid article>p,.application-grid article>small{position:relative;z-index:1}

.application-tabs{position:relative;align-items:center}
.application-tabs button[data-application]{border-top-color:transparent!important;position:relative}
.application-tabs button[data-application][aria-current]{color:var(--aqua)}
.application-flow{position:absolute;top:-2px;left:0;width:100px;height:4px;border-radius:4px;transform-origin:left;background:linear-gradient(90deg,var(--cyan),var(--aqua),#fff,var(--aqua));background-size:200% 100%;animation:flow-shine 1.8s linear infinite;transition:transform .6s cubic-bezier(.2,.75,.25,1)}
@keyframes flow-shine{to{background-position:-200% 0}}
.application-tabs button[data-application]::after{content:'';position:absolute;left:0;right:0;bottom:8px;height:2px;background:#64ccc9;transform:scaleX(0);transform-origin:left;opacity:.7}
.application-tabs button.is-timing::after{animation:tab-fill 5s linear forwards}
@keyframes tab-fill{to{transform:scaleX(1)}}
.application-arrows{margin-left:auto;display:flex;gap:10px}
.application-tabs .application-play{margin-left:18px}
.application-step{width:44px;height:44px;padding:0!important;border-radius:50% 50% 50% 12%!important;border:1px solid #64ccc980!important;background:#64ccc914!important;color:var(--aqua)!important;font-size:16px!important;display:grid;place-items:center;transition:background .25s,transform .25s}
.application-step:hover{background:var(--aqua)!important;color:var(--navy)!important;transform:translateY(-2px)}
@media(max-width:800px){.application-arrows{margin-left:0;order:9;width:100%;justify-content:flex-end;padding-bottom:8px}.application-grid article,.full-motion .application-grid article{border-radius:26px 26px 26px 6px}}
@media(prefers-reduced-motion:reduce){.band-pipe--flow,.contact-pipe-fill,.application-grid article.is-active img,.application-flow{animation:none!important}}:where(html.ligero) .band-pipe--flow,:where(html.ligero) .contact-pipe-fill,:where(html.ligero) .application-grid article.is-active img,:where(html.ligero) .application-flow{animation:none!important}



.application-grid article :is(img,.card-video){object-position:var(--pos,50%) center}
.application-grid .card-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:0;pointer-events:none;transition:opacity .6s,filter .7s}
.application-grid .card-video.is-playing{opacity:1}
.application-grid article:not(.is-active) .card-video{filter:saturate(.6) brightness(.75)}
.application-grid article:has(.card-video) img{animation:none!important}

.tech-photo-frame{position:relative}
.tech-photo-frame #tech-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .5s}
.tech-photo-frame #tech-video.is-playing{opacity:1}
.tech-image #tech-caption{top:14px;left:14px;bottom:auto;padding:5px 11px;font-size:9px;letter-spacing:.02em;background:#f5f9fce0;color:var(--navy);z-index:2}

.service-figure{position:relative;height:clamp(250px,23vw,330px);margin:0 0 24px;display:flex;align-items:flex-end;justify-content:center}
.service-figure::before{content:'';position:absolute;inset:24% 0 0;border-radius:26px 26px 26px 6px;background:linear-gradient(160deg,var(--aqua),var(--cyan))}
.service-figure img{position:relative;height:100%;width:auto;max-width:100%;object-fit:contain;object-position:bottom}
.service-figure--pipe{justify-content:flex-end}
.service-band .ai-note{grid-column:1/-1;margin:34px 0 0;max-width:none;font-size:10px;color:#1f2a44a6}

.contact-figure{position:absolute;right:clamp(110px,10vw,170px);bottom:0;margin:0;width:clamp(280px,29vw,450px);z-index:2;pointer-events:none}
.contact-figure img{display:block;width:100%;height:auto}
.contact-figure figcaption{position:absolute;right:calc(100% + 14px);bottom:22px;white-space:nowrap;font-size:9px;color:#ffffffc7}
@media(max-width:800px){
 .service-figure{height:300px}
 .contact-figure{right:44px;width:min(44vw,210px)}
 .contact-figure figcaption{right:calc(100% + 8px);bottom:16px;width:104px;white-space:normal;text-align:right;line-height:1.35}
}



.technologies .tech-image{height:auto;max-height:none;width:min(100%,clamp(300px,34vw,490px))}
.technologies .tech-photo-frame{height:auto;aspect-ratio:4/5}
@media(max-width:800px){.technologies .tech-grid{grid-template-rows:auto auto}.technologies .tech-image{height:auto;width:min(88%,330px)}}

footer.site-footer{display:block;padding:0;font-size:14px;color:var(--navy)}
.foot-grid{display:grid;grid-template-columns:1.2fr 2fr 1fr;gap:40px;padding:58px 7% 34px;align-items:flex-start}
.foot-logo{width:220px;height:auto;margin-bottom:18px;display:block}
.foot-brand address{font-style:normal;line-height:1.7;font-size:14px}
.site-footer a{transition:color .2s}
.site-footer a:hover{color:var(--cyan)}
.foot-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.foot-nav ul{list-style:none;padding:0;margin:0}
.foot-nav li{margin-bottom:16px}
.foot-nav a{font-family:var(--font);font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:15px;line-height:1.15}
.foot-extra{display:flex;flex-direction:column;align-items:flex-end;gap:18px}
.foot-extra .footer-priv{font-size:14px;cursor:pointer}
.foot-social{display:flex;gap:14px}
.foot-social a{width:34px;height:34px;border-radius:50%;border:1.5px solid #1f2a4466;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s}
.foot-social a:hover{background:var(--aqua);border-color:var(--aqua);color:var(--navy)}
.foot-social svg{width:16px;height:16px;fill:currentColor}
.foot-bottom{padding:18px 7%;border-top:1px solid #1f2a441f;color:#1f2a4499}
.foot-bottom-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.foot-copy,.foot-dev-credit{font-size:12px;margin:0}
.foot-bottom a{color:var(--navy)}
.foot-dev-credit a{font-weight:600;border-bottom:1px dotted #00a9ce80;padding-bottom:1px}
@media(max-width:880px){.foot-grid{grid-template-columns:1fr 1fr;gap:30px}.foot-extra{align-items:flex-start;grid-column:1/-1}}
@media(max-width:640px){.foot-bottom-inner{flex-direction:column;gap:8px;text-align:center}}
@media(max-width:540px){.foot-grid{grid-template-columns:1fr;padding:44px 6% 28px}}

.privacy-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}
.privacy-modal[hidden]{display:none}
.privacy-modal__backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(100,204,201,.45),rgba(31,42,68,.85));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .35s ease}
.privacy-modal.is-open .privacy-modal__backdrop{opacity:1}
.privacy-modal__card{position:relative;background:#fff;border-radius:22px;width:100%;max-width:720px;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 32px 80px rgba(0,0,0,.4);opacity:0;transform:translateY(20px) scale(.96);transition:opacity .4s ease,transform .4s cubic-bezier(.2,.75,.25,1)}
.privacy-modal.is-open .privacy-modal__card{opacity:1;transform:translateY(0) scale(1)}
.privacy-modal__head{position:relative;padding:32px 64px 22px 36px;background:linear-gradient(135deg,var(--navy),var(--cyan));color:#fff}
.privacy-modal__title{font-family:var(--display);font-weight:700;font-size:1.6rem;margin:0 0 6px;letter-spacing:.6px;text-transform:uppercase;color:#fff}
.privacy-modal__subtitle{margin:0;font-size:.78rem;opacity:.92;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.privacy-modal__close{position:absolute;top:18px;right:18px;width:38px;height:38px;border:none;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .25s}
.privacy-modal__close:hover{background:rgba(255,255,255,.32);transform:rotate(90deg)}
.privacy-modal__close:focus-visible{outline:2px solid #fff;outline-offset:2px}
.privacy-modal__body{padding:28px 36px 32px;overflow-y:auto;font-size:.92rem;line-height:1.6;color:var(--navy)}
.privacy-modal__body h3{font-family:var(--display);font-weight:700;font-size:1.05rem;margin:24px 0 10px;color:var(--navy);text-transform:uppercase;letter-spacing:.8px}
.privacy-modal__body h3 .muted{font-weight:500;opacity:.7;font-size:.85em;color:#57637a}
.privacy-modal__body h3:first-child{margin-top:0}
.privacy-modal__body p{margin:0 0 12px}
.privacy-modal__body ul{margin:0 0 14px;padding-left:20px}
.privacy-modal__body ul li{margin:0 0 6px}
.privacy-modal__body ul li::marker{color:var(--cyan)}
.privacy-modal__body a{color:var(--cyan);text-decoration:underline}
.privacy-modal__date{margin-top:18px;font-size:.82rem;color:#57637a}
@media(max-width:540px){.privacy-modal__head{padding:24px 56px 18px 24px}.privacy-modal__title{font-size:1.3rem}.privacy-modal__body{padding:22px 24px 24px}}

.hero{background:#16afd7}
.hero-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;z-index:-3;pointer-events:none}
.hero .hero-shade{background:linear-gradient(0deg,#062a3cb3 0%,#062a3c40 18%,transparent 34%)}
.hero-bottom .hero-captions{display:flex;flex-direction:column;gap:7px;padding-left:16px;border-left:3px solid var(--yellow)}
.cap{display:block;font:700 clamp(14px,1.15vw,18px)/1.2 var(--font);letter-spacing:.03em;text-transform:uppercase;color:#fff;opacity:0;transform:translateY(12px);animation:cap-in .7s cubic-bezier(.2,.75,.25,1) forwards}
.cap b{color:var(--yellow);font-weight:700}
.cap-1{animation-delay:1.2s}.cap-2{animation-delay:3.2s}.cap-3{animation-delay:5.3s}
@keyframes cap-in{to{opacity:1;transform:none}}

@media(max-aspect-ratio:3/4){.hero-scene{object-fit:cover;object-position:50% 70%;animation:none;transform:none}}
.topbar{position:fixed;inset:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;padding:22px 5%;z-index:100;transition:transform .25s ease,background .25s ease}
.topbar.is-scrolled{background:#1f2a44f2;backdrop-filter:blur(14px)}
.topbar.is-hidden:not(:focus-within){transform:translateY(-105%)}
.topbar .nav-brand{grid-column:2;grid-row:1;justify-self:center}
.topbar .logo{width:249px;height:auto;display:block}
.topbar nav{grid-column:1;grid-row:1;justify-self:start;display:flex;gap:26px}
.topbar .nav-project{grid-column:3;grid-row:1;justify-self:end;white-space:nowrap}
html{scroll-padding-top:110px}
.intro-window{width:100%;aspect-ratio:1.08;max-height:none;align-self:center}
.intro-window .intro-production{position:absolute;inset:0 0 8%;width:100%;height:92%;object-fit:contain;filter:none}
.intro-window .intro-production:not([src]){visibility:hidden}
.intro-window figcaption{inset:auto 0 0;justify-content:center;text-align:center}
.foot-grid{grid-template-columns:1fr;justify-items:center;text-align:center;gap:32px}
.foot-logo{margin:0 auto 20px}.foot-brand address{text-align:center}
.foot-nav{grid-template-columns:1fr;gap:0}.foot-nav ul{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 30px}
.foot-nav li{margin:0 0 14px}.foot-extra{align-items:center}.foot-social{justify-content:center}
.foot-bottom-inner{flex-direction:column;justify-content:center;text-align:center;gap:8px}
footer.site-footer{background:#fff}
@media(max-width:800px){.topbar{padding:17px 5%;gap:8px}.topbar .logo{width:180px}.topbar .nav-project{font-size:10px;padding:10px;gap:5px}.topbar .nav-project span{display:none}.intro-window{width:100%;aspect-ratio:1.08;max-height:none;margin:18px auto 0}.foot-nav ul{gap:10px 22px}}
@media(max-width:360px){.topbar .logo{width:144px}.topbar .nav-project{font-size:9px;padding:8px 6px}}

@media(prefers-reduced-motion:reduce){.hero-captions .cap{animation:cap-in .7s cubic-bezier(.2,.75,.25,1) forwards!important}.hero-captions .cap-1{animation-delay:1.2s!important}.hero-captions .cap-2{animation-delay:3.2s!important}.hero-captions .cap-3{animation-delay:5.3s!important}}:where(html.ligero) .hero-captions .cap{animation:cap-in .7s cubic-bezier(.2,.75,.25,1) forwards!important}:where(html.ligero) .hero-captions .cap-1{animation-delay:1.2s!important}:where(html.ligero) .hero-captions .cap-2{animation-delay:3.2s!important}:where(html.ligero) .hero-captions .cap-3{animation-delay:5.3s!important}
.hero-track .hero{height:100svh;min-height:760px}
@media(min-width:600px) and (max-aspect-ratio:3/4){.hero-type{top:12%}.hero-scene{object-position:50% 100%}}
@media(min-aspect-ratio:751/1000) and (max-aspect-ratio:16/9){.hero{background:#0893c4}.hero-scene{object-fit:contain;object-position:50% 100%}}


.intro-track{background:#0893c4}
.intro-track .intro{display:block;position:relative;isolation:isolate;overflow:hidden;padding:0;min-height:max(820px,66.6667vw)!important;height:auto;background:#0893c4;color:white}
.intro .intro-small{position:absolute;left:5%;top:6%;margin:0;font-size:13px;line-height:1.65;z-index:3}
.intro h2{position:absolute;left:5%;top:clamp(115px,10vw,192px);margin:0;max-width:62%;font-size:clamp(64px,6vw,112px);line-height:1;z-index:3}
.intro h2 span{color:#ffd100}
.intro .intro-copy{position:absolute;left:auto;right:6%;top:26%;bottom:auto;width:27%;max-width:460px;margin:0;font-size:clamp(13px,1.08vw,17px);line-height:1.7;z-index:3}
.intro .pipe-bridge{display:none}
.intro-world{position:absolute;inset:auto 0 0;margin:0;width:100%;aspect-ratio:3/2;z-index:1;pointer-events:none}
.intro-world picture{display:contents}
.intro-world .intro-production{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;filter:none}
.intro-world .intro-production:not([src]){visibility:hidden}
.intro-world figcaption{position:absolute;bottom:2.4%;left:5%;font-size:11px;color:#b9dfdf}
.distribution-label{position:absolute;transform:translateX(-50%);font:600 clamp(10px,.83vw,15px)/1.2 var(--font);color:#fff;white-space:nowrap;text-shadow:0 1px 8px #123e5190}
.label-factory{left:18%;top:66%}.label-wholesale{left:48.2%;top:48.7%}.label-retail{left:69%;top:53.8%}.label-grocery{left:83.3%;top:63%}.label-business{left:47%;top:75.5%}.label-customer{left:95%;top:69%}
@media(max-width:800px){
 .intro-track .intro{min-height:calc(231.4815vw + 210px)!important;background:#082f42}
 .intro .intro-small{top:42px;left:6%;font-size:11px}
 .intro h2{top:115px;left:6%;max-width:90%;font-size:clamp(46px,10.8vw,76px);line-height:1.02}
 .intro .intro-copy{top:auto;bottom:32px;left:6%;right:6%;width:auto;max-width:none;font-size:13px;line-height:1.75}
 .intro-world{top:0;bottom:auto;aspect-ratio:1080/2500}
 .intro-world figcaption{bottom:-34px;left:6%;font-size:10px}
 .distribution-label{font-size:clamp(10px,2vw,15px)}
 .label-factory{left:36%;top:35.1%}.label-wholesale{left:68%;top:51%}.label-retail{left:73%;top:66.4%}.label-grocery{left:70%;top:80.7%}.label-business{left:25%;top:76.3%}.label-customer{left:85%;top:96%}
}
@media(min-width:600px) and (max-width:800px){.intro h2{top:150px}.intro .intro-small{top:75px}.intro .intro-copy{max-width:630px;font-size:15px}}

.label-factory{left:22.9%;top:46.6%}.label-wholesale{left:52.6%;top:48.9%}.label-retail{left:83.3%;top:53.1%}.label-grocery{left:65.1%;top:75.8%}.label-business{left:23.4%;top:76.2%}.label-customer{left:88.5%;top:75.3%}
@media(max-width:800px){
 .intro-track .intro{min-height:calc(329.6296vw + 210px)!important}
 .intro-world{aspect-ratio:1080/3560}
 .label-factory{left:50%;top:19.7%}.label-wholesale{left:50%;top:48.1%}.label-retail{left:50%;top:61.2%}.label-grocery{left:25.9%;top:72.2%}.label-business{left:50%;top:80.4%}.label-customer{left:83.3%;top:72.75%}
}

@media(min-width:801px){
 .topbar{grid-template-columns:auto minmax(0,1fr) auto}
 .topbar .nav-brand{grid-column:1;justify-self:start}
 .topbar .logo{width:200px}
 .topbar nav{grid-column:2;justify-self:end;margin-right:10px;gap:30px}
 .topbar .nav-project{grid-column:3}
 .foot-grid{grid-template-columns:1.2fr 2fr 1fr;justify-items:stretch;text-align:left;gap:40px}
 .foot-logo{margin:0 0 18px}.foot-brand address{text-align:left}
 .foot-nav{grid-template-columns:repeat(2,1fr);gap:20px}.foot-nav ul{display:block}
 .foot-nav li{margin:0 0 16px}.foot-extra{align-items:flex-end}.foot-social{justify-content:flex-start}
 .foot-bottom-inner{flex-direction:row;justify-content:space-between;text-align:left;gap:12px}
}

.label-gov{left:12.8%;top:63.4%}.label-factory{left:36.5%;top:57.2%}.label-office{left:55.5%;top:46.25%}.label-business{left:70.5%;top:64.2%}.label-apartments{left:84.9%;top:51.25%}.label-home{left:97%;top:62.5%;transform:translateX(-100%)}
@media(max-width:800px){
 .intro-track .intro{min-height:calc(329.6296vw + 210px)!important}
 .intro-world{aspect-ratio:1080/3560}
 .label-gov{left:50%;top:23.7%}.label-factory{left:50%;top:35.4%}.label-office{left:22.2%;top:50.1%}.label-apartments{left:72.6%;top:52.9%}.label-business{left:50%;top:71.9%}.label-home{left:50%;top:83%;transform:translateX(-50%)}
}

.circle-link{transform:none!important}
.circle-link{animation:arrow-nudge 2.4s ease-in-out infinite}
@keyframes arrow-nudge{0%,60%,100%{translate:0 0}30%{translate:0 6px}}
@media(prefers-reduced-motion:reduce){.circle-link{animation:none}}:where(html.ligero) .circle-link{animation:none}

.manifesto-label{font-size:clamp(13px,1vw,16px)!important;letter-spacing:.08em;line-height:1.5}
.eyebrow,.service-band span{font-size:13px!important;letter-spacing:.08em}
.contact>p:not(.address){font-size:14px!important;letter-spacing:.06em}
.contact .address{font-size:15px!important}
.intro .intro-small{font-size:15px!important;line-height:1.55}
.section-heading p{font-size:16px!important;line-height:1.6}
.tech-list details p{font-size:16px!important;line-height:1.65}
.application-grid article p{font-size:16px!important;line-height:1.55}
.application-grid article small{font-size:13px!important}
.application-tabs button{font-size:15px!important}
.service-band p{font-size:16px!important;line-height:1.6}
.pill,.dark-pill{font-size:15px}
.distribution-label{font-size:clamp(13px,.95vw,17px)!important}
.intro-world figcaption{font:600 clamp(18px,1.6vw,28px)/1.25 var(--font)!important;color:#ffffff!important;letter-spacing:.01em}
.foot-copy,.foot-dev-credit{font-size:13px!important}
.topbar nav{font-size:15px}
@media(max-width:800px){
 .manifesto-label{font-size:13px!important;max-width:30ch}
 .intro .intro-small{font-size:15px!important}
 .intro .intro-copy{font-size:16px!important;line-height:1.7}
 .section-heading p{font-size:16px!important}
 .tech-list details p,.application-grid article p,.service-band p{font-size:16px!important}
 .application-tabs button{font-size:14px!important}
 .contact-row a{font-size:16px!important}
 .hero-captions .cap{font-size:15px!important}
 .topbar .nav-project{font-size:12px!important;padding:10px 12px!important}
 .distribution-label{font-size:13px!important}
 .intro-world figcaption{font-size:18px!important;bottom:-44px!important}
 .foot-copy,.foot-dev-credit{font-size:13px!important}
}


.sector-strip{position:relative;z-index:3;margin-top:34px;padding-top:26px;border-top:1px solid #64ccc933}
.sector-strip-title{margin:0 0 14px;font:700 13px/1.2 var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--aqua)}
.sector-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.sector-chips li{padding:8px 15px;border:1.5px solid #64ccc966;border-radius:99px;color:#fff;font:500 15px/1.2 var(--font);background:#64ccc914}

@media(min-width:1101px){.service-band{grid-template-columns:repeat(4,1fr)!important;gap:3.5%!important}}
.service-figure--parts{align-items:center}
.service-figure--parts img{height:auto!important;width:96%!important;max-width:none!important;margin-bottom:6%}
@media(max-width:1100px) and (min-width:801px){.service-band{grid-template-columns:repeat(2,1fr)!important;row-gap:48px!important}}

.catalog{background:#ffffff;padding:80px 7% 86px;color:var(--navy)}
.catalog-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}
.catalog h2{font-size:clamp(40px,4.4vw,66px);margin-top:16px}
.catalog-lead{max-width:360px;margin:0;font-size:17px;line-height:1.6}
.catalog-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.catalog-card{background:var(--paper);border:1px solid #1f2a441a;border-radius:24px 24px 24px 6px;padding:26px 26px 28px;transition:transform .25s,box-shadow .25s}
.catalog-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #1f2a4414}
.catalog-icon{display:block;width:120px;height:90px;margin-bottom:14px}
.catalog-card h3{font-size:28px;margin:0 0 10px}
.catalog-card p{margin:0;font-size:16px;line-height:1.6}
.catalog-cta{margin-top:34px}
@media(max-width:800px){
 .sector-chips li{font-size:14px;padding:7px 13px}
 .catalog{padding:56px 6% 60px}
 .catalog-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:28px}
 .catalog h2{font-size:clamp(38px,10vw,56px)}
 .catalog-lead{font-size:16px}
 .catalog-grid{grid-template-columns:1fr;gap:14px}
 .catalog-card{display:grid;grid-template-columns:96px 1fr;column-gap:16px;align-items:start;padding:18px}
 .catalog-icon{width:96px;height:72px;margin:0;grid-row:span 2}
 .catalog-card h3{font-size:24px;margin:2px 0 6px}
}
@media(min-width:801px) and (max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,1fr)}}

.application-grid article>.card-link{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:11px 18px;border-radius:99px;background:var(--yellow);color:var(--navy);font:600 15px/1 var(--font);pointer-events:auto;align-self:flex-start;transition:transform .2s}
.application-grid article>.card-link:hover{transform:translateY(-2px)}
.application-grid article:not(.is-active)>.card-link{pointer-events:none}

@media(max-width:800px){.hero-type{left:0!important;right:0!important;margin:0 auto!important;width:78%!important;max-width:430px!important;text-align:center}.hero-type h1{display:flex;justify-content:center}.hero-logo{margin:0 auto}}

@media(max-width:800px){.topbar{padding-left:4%;padding-right:4%;gap:6px}.topbar .logo{width:clamp(130px,40vw,180px)}.topbar .nav-project{padding:10px!important}}
@media(max-width:360px){.topbar .nav-project{padding:9px 8px!important}}
@media(max-width:340px){.topbar .logo{width:116px}.topbar .nav-project{padding:8px 6px!important}}

.tech-list details p{max-width:620px}
.tech-points{list-style:none;margin:14px 0 4px;padding:0;display:grid;gap:9px;max-width:620px}
.tech-points li{position:relative;padding-left:18px;font-size:16px;line-height:1.55}
.tech-points li::before{content:'';position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--cyan)}
.tech-points b{font-weight:700}

.sector-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.sector-track{display:flex;width:max-content;animation:sector-flow 70s linear infinite}
.sector-marquee:hover .sector-track,.sector-marquee:focus-within .sector-track{animation-play-state:paused}
.sector-track .sector-chips{flex-wrap:nowrap;gap:12px;padding-right:12px;flex-shrink:0}
.sector-track .sector-chips li{white-space:nowrap;font-size:16px;padding:10px 18px}
@keyframes sector-flow{to{transform:translateX(-50%)}}
@media(max-width:800px){.sector-track{animation-duration:55s}.sector-track .sector-chips li{font-size:15px;padding:9px 15px}}


.wa-btn{position:fixed;bottom:24px;right:24px;z-index:9000;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .35s,transform .35s}
.wa-btn.is-ready{opacity:1;transform:none;pointer-events:auto}
.wa-trigger{width:60px;height:60px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 28px rgba(37,211,102,.55);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;border:0;position:relative;z-index:2;padding:0}
.wa-trigger:hover{transform:scale(1.1);box-shadow:0 12px 40px rgba(37,211,102,.65)}
.wa-trigger:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.wa-pulse{position:absolute;inset:-6px;border-radius:50%;border:2px solid #25D366;animation:waPulse 2.6s ease-out infinite;pointer-events:none}
@keyframes waPulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.6);opacity:0}}
.wa-form{position:absolute;bottom:74px;right:0;width:340px;background:#fff;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.22);overflow:hidden;transform:scale(.8) translateY(20px);transform-origin:bottom right;opacity:0;visibility:hidden;pointer-events:none;transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .35s ease,visibility 0s .35s;font-family:var(--font);color:var(--navy);text-align:left}
.wa-form.open{transform:scale(1) translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .35s ease,visibility 0s}
.wa-form-header{background:linear-gradient(135deg,var(--navy),#0b7fa0);padding:18px 46px 14px 18px;display:flex;align-items:center;gap:12px;position:relative;color:#fff}
.wa-avatar{width:46px;height:46px;min-width:46px;background:rgba(100,204,201,.22);border:1.5px solid rgba(100,204,201,.5);border-radius:50%;display:flex;align-items:center;justify-content:center}
.wa-agent-name{color:#fff;font-weight:700;font-size:16px;letter-spacing:.2px}
.wa-agent-tagline{color:rgba(255,255,255,.8);font-size:13px;margin-top:2px}
.wa-close{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.18);border:0;border-radius:50%;width:30px;height:30px;color:#fff;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .25s}
.wa-close:hover{background:rgba(255,255,255,.32);transform:rotate(90deg)}
.wa-form-body{padding:16px 18px 16px}
.wa-bubble{background:rgba(0,169,206,.07);border:1px solid rgba(0,169,206,.16);border-radius:12px 12px 12px 4px;padding:11px 14px;font-size:15px;line-height:1.5;margin-bottom:14px}
.wa-bubble strong{font-weight:700}
.wa-form-body label{display:block;font-size:13px;font-weight:700;margin:12px 0 6px;text-transform:uppercase;letter-spacing:1px}
.wa-form-body label:first-of-type{margin-top:0}
.wa-form-body .req{color:#0b7fa0;margin-left:2px}
.wa-form-body .opt{text-transform:none;letter-spacing:0;font-weight:500;color:#5b6577}
.wa-form-body input{width:100%;padding:12px 13px;border:1.5px solid rgba(31,42,68,.18);border-radius:8px;font:16px var(--font);color:var(--navy);background:#fafafa;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.wa-form-body input:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(100,204,201,.25);background:#fff}
.wa-form-body input.field-warn{border-color:#d93c3c;background:#fff6f6}
.wa-send-btn{margin-top:16px;width:100%;padding:13px;background:linear-gradient(135deg,var(--navy),#0b7fa0);color:#fff;border:0;border-radius:10px;font:700 16px var(--font);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s,box-shadow .25s}
.wa-send-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px -8px rgba(0,169,206,.5)}
.wa-legal{margin:10px 0 0;font-size:13px;line-height:1.45;color:#5b6577}
.wa-legal button{background:none;border:0;padding:0;font:inherit;color:#0b7fa0;text-decoration:underline;cursor:pointer}
@media(max-width:600px){.wa-btn{bottom:18px;right:16px}.wa-btn.has-review-bar{right:70px}.wa-form{position:fixed;left:16px;right:16px;bottom:92px;width:auto;transform-origin:bottom center}}
@media(prefers-reduced-motion:reduce){.wa-pulse{animation:none;opacity:0}}:where(html.ligero) .wa-pulse{animation:none;opacity:0}

@media(max-width:800px){.catalog-card{align-items:center}.catalog-icon{align-self:center}}


.hero-cta{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:14px 24px;border-radius:99px;background:var(--yellow);color:var(--navy);font:700 17px/1 var(--font);text-decoration:none;pointer-events:auto;box-shadow:0 10px 26px #1f2a4433;transition:transform .2s,box-shadow .2s}
.hero-cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px #1f2a4444}
.hero-cta:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
@media(max-width:800px){.hero-cta{font-size:16px;padding:13px 22px;margin-top:18px}}

.contact-track,.full-motion .contact-track{height:auto!important}
.contact,.full-motion .contact{position:relative!important;height:auto!important;min-height:0!important;padding-bottom:90px}
.contact-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:48px;align-items:start;margin-top:10px}
.contact-info .contact-row{margin-top:0}
.contact .contact-figure{z-index:1}
.diag-form{background:#fff;color:var(--navy);border-radius:28px 28px 28px 8px;padding:30px 30px 26px;box-shadow:0 24px 60px #1f2a4433;position:relative;z-index:3}
.diag-eyebrow{margin:0 0 8px;font:700 13px/1.3 var(--font);letter-spacing:.08em;text-transform:uppercase;color:#0b7fa0}
.diag-form h3{margin:0 0 20px;font:700 clamp(30px,2.6vw,40px)/1 var(--display);color:var(--navy)}
.diag-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.diag-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.diag-field>span{font:700 13px/1.2 var(--font);letter-spacing:.04em;text-transform:uppercase}
.diag-field i{font-style:normal;color:#0b7fa0}
.diag-field input,.diag-field select,.diag-field textarea{width:100%;padding:12px 13px;border:1.5px solid #1f2a442e;border-radius:10px;font:16px var(--font);color:var(--navy);background:#f7fafb;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.diag-field textarea{resize:vertical;min-height:84px}
.diag-field input:focus,.diag-field select:focus,.diag-field textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px #64ccc940;background:#fff}
.diag-field .field-warn,.diag-check.field-warn{border-color:#d93c3c;background:#fff6f6}
.diag-full{margin-bottom:6px}
.diag-more{border:1.5px dashed #1f2a4433;border-radius:14px;margin:4px 0 16px}
.diag-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;font:700 15px/1.2 var(--font)}
.diag-more summary::-webkit-details-marker{display:none}
.diag-more summary em{font-style:normal;font-weight:500;color:#5b6577}
.diag-more summary svg{transition:transform .25s;flex-shrink:0}
.diag-more[open] summary svg{transform:rotate(180deg)}
.diag-more-body{padding:4px 16px 14px}
.diag-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;margin:4px 0 18px;border:1.5px solid transparent;border-radius:10px;padding:4px}
.diag-check input{width:20px;height:20px;margin:1px 0 0;flex-shrink:0;accent-color:#0b7fa0}
.diag-check button{background:none;border:0;padding:0;font:inherit;color:#0b7fa0;text-decoration:underline;cursor:pointer}
.diag-submit{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 20px;border:0;border-radius:99px;background:var(--navy);color:#fff;font:700 17px/1 var(--font);cursor:pointer;transition:transform .2s,background .2s}
.diag-submit:hover{background:#0b7fa0;transform:translateY(-2px)}
.diag-submit:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.diag-msg{margin:12px 0 0;font-size:15px;line-height:1.45;min-height:1px}
.diag-msg.is-error{color:#b42323}
.diag-msg.is-ok{color:#0b6b52}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr;gap:30px}.diag-form{max-width:640px}}
@media(max-width:800px){.diag-form{padding:22px 18px 20px;border-radius:22px 22px 22px 6px}.diag-row{grid-template-columns:1fr;gap:12px;margin-bottom:12px}.contact .contact-figure{position:relative;right:auto;bottom:auto;margin:26px 0 -90px auto;width:min(58vw,240px)}}

.tech-list summary .tech-toggle{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;border:1.5px solid #1f2a4440;color:var(--navy);transition:transform .35s cubic-bezier(.2,.75,.25,1),background .25s,border-color .25s,color .25s}
.tech-list summary .tech-toggle svg path{transition:d .3s}
.tech-list summary:hover .tech-toggle{border-color:var(--cyan);color:#00728c}
.tech-list details[open] summary .tech-toggle{transform:rotate(135deg);background:var(--cyan);border-color:var(--cyan);color:#fff}
@media(max-width:800px){.tech-list summary .tech-toggle{width:34px;height:34px}}


.distribution-labels{pointer-events:none}
.soy-chip{pointer-events:auto;cursor:pointer;display:inline-flex;flex-direction:column;align-items:center;gap:4px;padding:8px 13px 9px;border:1px solid #ffffff66;border-radius:14px;background:#0a2b3b5c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;text-shadow:none;transition:background .25s,border-color .25s,box-shadow .25s}
.soy-chip b{font:700 clamp(14px,1vw,17px)/1.1 var(--font)}
.soy-chip span{font:700 13px/1 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--yellow)}
.soy-chip::before{content:'';position:absolute;inset:-5px;border-radius:18px;border:1.5px solid #ffd10099;opacity:0;animation:soy-ping 3.6s ease-out infinite;pointer-events:none}
.soy-chip:nth-child(2)::before{animation-delay:.6s}.soy-chip:nth-child(3)::before{animation-delay:1.2s}.soy-chip:nth-child(4)::before{animation-delay:1.8s}.soy-chip:nth-child(5)::before{animation-delay:2.4s}.soy-chip:nth-child(6)::before{animation-delay:3s}
@keyframes soy-ping{0%{opacity:.9;transform:scale(.96)}60%,100%{opacity:0;transform:scale(1.12)}}
.soy-chip:hover,.soy-chip.is-on{background:#0a2b3bc7;border-color:var(--yellow);box-shadow:0 8px 24px #0a2b3b55}
.soy-chip.is-on::before{animation:none}
.soy-chip:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.soy-pop{position:absolute;z-index:6;pointer-events:auto;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--navy);border-radius:20px 20px 20px 6px;padding:18px 18px 16px;box-shadow:0 20px 50px #0a2b3b66;opacity:0;transform:translateY(8px) scale(.98);transition:opacity .25s,transform .25s;text-align:left}
.soy-pop.is-open{opacity:1;transform:none}
.soy-x{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:0;background:#1f2a4414;color:var(--navy);cursor:pointer;font-size:14px}
.soy-kicker{margin:0 36px 6px 0;font:700 13px/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:#0b7fa0}
.soy-q{margin:0 0 12px;font:700 19px/1.25 var(--font)}
.soy-opts{display:flex;flex-wrap:wrap;gap:8px}
.soy-opt{border:1.5px solid #1f2a4433;background:#fff;border-radius:99px;padding:10px 14px;font:600 15px/1.2 var(--font);color:var(--navy);cursor:pointer;text-align:left;transition:background .2s,border-color .2s}
.soy-opt:hover,.soy-opt:focus-visible{border-color:var(--cyan);background:#00a9ce14}
.soy-otro{border-style:dashed}
.soy-other{display:flex;gap:8px;margin-top:10px}
.soy-other[hidden]{display:none}
.soy-other input{flex:1;min-width:0;padding:10px 12px;border:1.5px solid #1f2a4433;border-radius:10px;font:16px var(--font);color:var(--navy)}
.soy-other button{border:0;border-radius:10px;background:var(--navy);color:#fff;font:700 15px var(--font);padding:0 14px;cursor:pointer}
.soy-sum{margin:0 0 14px;font-size:15px;line-height:1.5;color:#3b4660}
.soy-cta{display:flex;flex-wrap:wrap;gap:8px}
.soy-go{display:inline-flex;align-items:center;background:var(--navy);color:#fff;border-radius:99px;padding:11px 16px;font:700 15px/1 var(--font);text-decoration:none}
.soy-wa{background:#25D366;color:var(--navy);border:0;border-radius:99px;padding:11px 16px;font:700 15px/1 var(--font);cursor:pointer}
.soy-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:800px){.soy-chip{padding:7px 11px 8px}.soy-chip b{font-size:14px}.soy-pop{padding:16px}.soy-q{font-size:18px}}
@media(prefers-reduced-motion:reduce){.soy-chip::before{animation:none}}:where(html.ligero) .soy-chip::before{animation:none}


.faq{position:relative;z-index:2;background:var(--navy);color:#fff;padding:90px 7% 96px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.faq-aside{position:sticky;top:110px}
.faq .eyebrow{color:var(--aqua)}
.faq h2{font-size:clamp(42px,4.6vw,72px);color:var(--aqua);margin:14px 0 18px;line-height:.95}
.faq-lead{font-size:17px;line-height:1.6;max-width:360px;margin:0 0 26px;color:#dbe7ee}
.faq-meter{display:flex;align-items:center;gap:18px;margin-bottom:28px}
.faq-drop{width:84px;height:112px;flex-shrink:0;--fill:0}
.faq-water{transform:translateY(calc((1 - var(--fill)) * 100%));transform-box:fill-box;transition:transform .9s cubic-bezier(.2,.75,.25,1)}
.faq-shine{animation:faq-shine 4.5s ease-in-out infinite}
@keyframes faq-shine{0%,40%{transform:translateX(0)}70%,100%{transform:translateX(200px)}}
.faq-count{margin:0;font-size:15px;line-height:1.45;color:#dbe7ee;max-width:220px}
.faq-cta{display:inline-flex}
.faq-list{display:grid;gap:12px}
.faq-item{border:1px solid #64ccc933;border-radius:20px 20px 20px 6px;background:#ffffff08;opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.75,.25,1),background .3s,border-color .3s;transition-delay:calc(var(--i) * 70ms)}
.faq.is-in .faq-item{opacity:1;transform:none}
.faq-item[open]{background:#ffffff12;border-color:#64ccc999}
.faq-item summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px 22px;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-n{font:700 15px/1 var(--font);color:var(--yellow);letter-spacing:.06em}
.faq-q{font:600 clamp(18px,1.35vw,21px)/1.35 var(--font)}
.faq-toggle{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1.5px solid #64ccc966;color:var(--aqua);transition:transform .35s cubic-bezier(.2,.75,.25,1),background .25s,color .25s}
.faq-item[open] .faq-toggle{transform:rotate(135deg);background:var(--aqua);color:var(--navy);border-color:var(--aqua)}
.faq-a{overflow:hidden}
.faq-a p{margin:0;padding:0 22px 22px 60px;font-size:17px;line-height:1.65;color:#dbe7ee;max-width:760px}
@media(max-width:900px){.faq{grid-template-columns:1fr;gap:34px;padding:64px 6% 70px}.faq-aside{position:relative;top:auto}.faq-a p{padding:0 18px 20px 18px;font-size:16px}.faq-item summary{padding:18px;gap:12px}.faq-q{font-size:17px}}
@media(prefers-reduced-motion:reduce){.faq-item{opacity:1;transform:none;transition:none}.faq-shine{animation:none}}:where(html.ligero) .faq-item{opacity:1;transform:none;transition:none}:where(html.ligero) .faq-shine{animation:none}

.catalog-card{cursor:default}
.catalog-icon.ci{overflow:visible;transition:transform .5s cubic-bezier(.2,.75,.25,1),filter .5s}
.ci *{transform-box:fill-box}
.catalog-card:is(:hover,:focus-within,.is-play) .ci{transform:translateY(-4px) scale(1.04);filter:drop-shadow(0 12px 14px #00a9ce30)}
.ci-flow{stroke-dasharray:6 8;opacity:0;transition:opacity .35s}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-flow{opacity:1;animation:ci-flow .7s linear infinite}
.ci-up{animation-direction:reverse}
@keyframes ci-flow{to{stroke-dashoffset:-28}}
.ci-water{transform:translateY(100%);transition:transform 1.4s cubic-bezier(.2,.75,.25,1)}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-water{transform:translateY(0)}
.ci-drop{opacity:0}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-drop{animation:ci-drop-x 1.2s ease-in infinite}
@keyframes ci-drop-x{0%{opacity:0;transform:translate(0,0)}20%{opacity:1}100%{opacity:0;transform:translate(10px,18px)}}
.ci-fall{stroke-dasharray:5 12;opacity:0;transition:opacity .35s}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-fall{opacity:.9;animation:ci-fall 1s linear infinite}
@keyframes ci-fall{to{stroke-dashoffset:-34}}
.ci-bead{transform-origin:center}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-bead{animation:ci-bead 1.4s ease-in-out infinite}
@keyframes ci-bead{0%,100%{transform:scale(1);filter:none}50%{transform:scale(1.18);filter:brightness(1.25)}}
.ci-glow{opacity:.25;transition:opacity .4s}
.ci-lamp{transition:fill .3s}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-glow{animation:ci-glow 1.6s ease-in-out infinite}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-lamp{fill:#f4efff}
@keyframes ci-glow{0%,100%{opacity:.6}50%{opacity:1}}
.ci-bug{transition:opacity .8s,transform .8s}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-bug{opacity:0;transform:scale(.4)}
.ci-led,.ci-led2{transition:opacity .3s}
.catalog-card:is(:hover,:focus-within,.is-play) :is(.ci-led,.ci-led2){animation:ci-glow 1s ease-in-out infinite}
.ci-spin{transform-origin:center;transform-box:fill-box}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-spin{animation:ci-spin .9s linear infinite}
@keyframes ci-spin{to{transform:rotate(360deg)}}
.ci-handle{transform-origin:50% 50%;transform:rotate(90deg);transition:transform .7s cubic-bezier(.2,.75,.25,1)}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-handle{transform:rotate(0deg)}
.ci-glassw{transform:translateY(100%);transition:transform 2.2s ease-out}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-glassw{transform:translateY(25%)}
.ci-drop2{opacity:0}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-drop2{animation:ci-drip .9s ease-in infinite}
@keyframes ci-drip{0%{opacity:0;transform:translateY(0)}15%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
.ci-liquid{transition:transform .6s}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-liquid{animation:ci-slosh 2.4s ease-in-out infinite}
@keyframes ci-slosh{0%,100%{transform:translateX(0)}50%{transform:translateX(-16px)}}
.ci-dose{opacity:0}
.catalog-card:is(:hover,:focus-within,.is-play) .ci-dose{animation:ci-drip 1.2s ease-in infinite}
@media(prefers-reduced-motion:reduce){.catalog-card:is(:hover,:focus-within,.is-play) .ci *{animation-duration:2.4s!important}}:where(html.ligero) .catalog-card:is(:hover,:focus-within,.is-play) .ci *{animation-duration:2.4s!important}

@media(max-width:800px){.contact .contact-figure{margin:30px auto -90px!important;left:auto;right:auto}}


.manifesto-water{width:min(360px,72vw);margin:-14px auto 30px;position:relative;z-index:2}
.manifesto-water svg{display:block;width:100%;height:auto;overflow:visible}
.manifesto-water *{transform-box:fill-box}
.mw-front{transform-origin:left center;transform:scaleX(0);animation:mw-clean 7s cubic-bezier(.55,0,.25,1) infinite}
.mw-edge{animation:mw-edge 7s cubic-bezier(.55,0,.25,1) infinite}
.mw-particles{animation:mw-drift 7s ease-in-out infinite alternate}
.mw-flow{stroke-dasharray:14 18;animation:mw-flow 1.2s linear infinite}
@keyframes mw-clean{0%,12%{transform:scaleX(0);opacity:1}55%,86%{transform:scaleX(1);opacity:1}95%{transform:scaleX(1);opacity:0}100%{transform:scaleX(0);opacity:0}}
@keyframes mw-edge{0%,12%{transform:translateX(0);opacity:0}16%{opacity:.85}55%{transform:translateX(426px);opacity:.85}58%,100%{transform:translateX(426px);opacity:0}}
@keyframes mw-drift{to{transform:translateX(12px)}}
@keyframes mw-flow{to{stroke-dashoffset:-32}}
@media(max-width:800px){.manifesto-water{width:min(270px,76vw);margin:-14px auto 26px}}

#diagnostico{scroll-margin-top:84px}
@media(min-width:1101px){
 .contact,.full-motion .contact{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,540px);column-gap:56px;align-items:start;justify-content:stretch;padding:70px 7% 90px!important}
 .contact>p:not(.address){grid-column:1;margin-bottom:22px}
 .contact h2{grid-column:1;font-size:clamp(80px,9.4vw,168px)!important}
 .contact-grid{display:contents}
 .contact-info{grid-column:1;margin-top:28px}
 .contact .diag-form{grid-column:2;grid-row:1 / span 4;align-self:start;max-width:none}
 .contact .contact-figure{grid-column:1;position:relative!important;right:auto!important;bottom:auto!important;width:clamp(230px,19vw,320px)!important;margin:26px 0 -90px!important;align-self:end}
 #diagnostico{scroll-margin-top:70px}
}


.manifesto-water{width:min(400px,78vw);margin:14px auto 30px}
.mw2-drop{transform-box:fill-box;transform-origin:50% 100%;animation:mw2-drop 8s ease-in-out infinite}
@keyframes mw2-drop{0%,70%,100%{transform:scale(1)}76%{transform:scale(1.18)}82%{transform:scale(1)}}
.manifesto-water svg{overflow:visible}
.mw2-p{animation:mw2-p linear infinite}
@keyframes mw2-p{0%{transform:translate(0,0);opacity:0}12%{opacity:1}82%{opacity:1}100%{transform:translate(var(--dx),var(--dy));opacity:0}}
.mw2-cloud{animation:mw2-cloud 6s ease-in-out infinite alternate}
@keyframes mw2-cloud{from{transform:translateX(-24px)}to{transform:translateX(30px)}}
.mw2-streak{stroke-dasharray:22 26;animation:mw2-streak linear infinite}
@keyframes mw2-streak{to{stroke-dashoffset:-48}}
.mw2-shine{animation:mw2-shine 3.6s cubic-bezier(.5,0,.3,1) infinite}
@keyframes mw2-shine{0%,30%{transform:translateX(-80px)}75%,100%{transform:translateX(260px)}}
.mw2-caught{transform-box:fill-box;transform-origin:right center;animation:mw2-caught 8s ease-in infinite}
@keyframes mw2-caught{0%{opacity:0;transform:scaleX(.3)}70%{opacity:1;transform:scaleX(1)}82%,100%{opacity:0;transform:scaleX(1)}}
.mw2-glow{animation:mw2-glow 8s ease-in-out infinite}
@keyframes mw2-glow{0%,72%{opacity:0}78%{opacity:.85}90%,100%{opacity:0}}
.mw2-mesh{animation:mw2-mesh 1.8s ease-in-out infinite alternate}
@keyframes mw2-mesh{from{opacity:.65}to{opacity:1}}


.iso-seal{width:100%;height:100%;display:block}
.cert-band{display:flex;align-items:center;gap:22px;margin:44px 6% 0;padding:24px 28px;border-radius:24px 24px 24px 6px;background:var(--navy);color:#fff;max-width:760px}
.cert-seal{width:64px;height:64px;flex-shrink:0;color:var(--aqua)}
.cert-kicker{margin:0 0 4px;font:700 13px/1.2 var(--font);letter-spacing:.1em;color:var(--aqua)}
.cert-title{margin:0;font:700 clamp(30px,3vw,42px)/1 var(--display);color:#fff}
.cert-text{margin:8px 0 0;font-size:16px;line-height:1.55;color:#dbe7ee;max-width:560px}
.foot-iso{display:flex;align-items:center;gap:10px;margin:0 0 16px;font:600 15px/1.25 var(--font)}
.foot-iso .iso-seal{width:34px;height:34px;flex-shrink:0;color:var(--cyan)}
.foot-iso small{font-weight:500;font-size:13px;opacity:.85}
@media(max-width:800px){.cert-band{margin:34px 6% 0;padding:20px;gap:16px}.cert-seal{width:52px;height:52px}}


.diag-req{margin:-10px 0 18px;font-size:13px;color:#5b6577}
.diag-req i,.diag-field label i,.diag-check i{font-style:normal;color:#d0312d;font-weight:700}
.diag-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.diag-field>label{font:700 13px/1.2 var(--font);letter-spacing:.04em;text-transform:uppercase;color:var(--navy)}
.diag-field>label .opt{text-transform:none;letter-spacing:0;font-weight:500;color:#5b6577}
.diag-input{position:relative}
.diag-input input,.diag-input select,.diag-input textarea{width:100%;padding:13px 40px 13px 14px;border:1.5px solid #1f2a442e;border-radius:12px;font:16px var(--font);color:var(--navy);background:#f7fafb;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-webkit-appearance:none}
.diag-input select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%231f2a44' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px;cursor:pointer}
.diag-input textarea{resize:vertical;min-height:88px;padding-right:14px}
.diag-input input:focus,.diag-input select:focus,.diag-input textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 4px #64ccc940;background:#fff}
.diag-ok{position:absolute;right:12px;top:50%;transform:translateY(-50%) scale(.6);color:#1f9d6b;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none;display:grid}
.diag-field.is-valid .diag-ok{opacity:1;transform:translateY(-50%) scale(1)}
.diag-field.is-valid .diag-input :is(input,select){border-color:#1f9d6b66}
.diag-field.is-invalid .diag-input :is(input,select,textarea){border-color:#d0312d;background:#fff7f7}
.diag-err{display:none;margin:0;font-size:13px;line-height:1.35;color:#b42323}
.diag-field.is-invalid .diag-err{display:block}
.diag-suggest{align-self:flex-start;margin-top:2px;border:0;background:none;padding:2px 0;color:#0b7fa0;font:600 13px var(--font);text-decoration:underline;cursor:pointer}
.diag-suggest[hidden]{display:none}
.diag-field--check{margin:6px 0 16px}
.diag-check{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;cursor:pointer}
.diag-check input{position:absolute;opacity:0;width:1px;height:1px}
.diag-box{flex-shrink:0;width:22px;height:22px;margin-top:1px;border:1.8px solid #1f2a4466;border-radius:6px;display:grid;place-items:center;color:transparent;background:#fff;transition:background .2s,border-color .2s,color .2s}
.diag-check input:checked+.diag-box{background:#0b7fa0;border-color:#0b7fa0;color:#fff}
.diag-check input:focus-visible+.diag-box{outline:3px solid var(--aqua);outline-offset:2px}
.diag-field--check.is-invalid .diag-box{border-color:#d0312d;background:#fff7f7}
.diag-submit[disabled]{opacity:.65;cursor:progress}
.diag-trust{display:flex;align-items:center;gap:10px;margin:16px 0 0;font-size:14px;line-height:1.4;color:#3b4660}
.diag-trust .iso-seal{width:30px;height:30px;flex-shrink:0;color:#0b7fa0}
.diag-field--check>label{font:400 14px/1.5 var(--font);text-transform:none;letter-spacing:0;color:var(--navy)}


.cert-band{justify-content:space-between;gap:28px;max-width:860px}
.cert-card{flex-shrink:0;background:#fff;border-radius:14px;padding:10px 12px;display:block}
.iso-official{display:block;width:260px;max-width:100%;height:auto}
.foot-iso{margin:0 0 16px}
.foot-iso .iso-official{width:220px;border-radius:8px;box-shadow:0 0 0 1px #1f2a4414}
@media(max-width:800px){.cert-band{flex-direction:column;align-items:flex-start}.cert-card{align-self:stretch;display:flex;justify-content:center}.iso-official{width:240px}}


.iso-wrap{position:relative;display:inline-block}
.iso-btn{display:block;border:0;background:none;padding:0;cursor:pointer;text-align:center;font:inherit}
.iso-btn:focus-visible{outline:3px solid var(--cyan);outline-offset:4px;border-radius:8px}
.iso-hint{display:block;margin-top:8px;font:600 13px/1.2 var(--font);color:#0b7fa0;text-decoration:underline;text-underline-offset:3px}
.iso-tip{position:absolute;z-index:20;bottom:calc(100% + 12px);right:0;width:300px;padding:16px 18px;border-radius:16px 16px 4px 16px;background:#fff;color:var(--navy);box-shadow:0 18px 44px #1f2a4433;font:400 14px/1.55 var(--font);text-align:left}
.iso-tip b{display:block;margin-bottom:4px;font:700 15px/1.3 var(--font)}
.iso-more{display:block;margin-top:10px;padding-top:10px;border-top:1px solid #1f2a441a}
.iso-tip a{color:#0b7fa0;font-weight:700}
.iso-tip[hidden]{display:none}
.cert-card .iso-hint{color:#0b7fa0}
.foot-iso .iso-tip{right:auto;left:0}
@media(max-width:800px){.iso-tip{position:fixed;left:16px!important;right:16px!important;bottom:96px;width:auto}}

.wa-form{display:flex;flex-direction:column;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px)}
.wa-form-header{flex-shrink:0}
.wa-form-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.wa-suggest{display:block;margin:6px 0 0;border:0;background:none;padding:2px 0;color:#0b7fa0;font:600 13px var(--font);text-decoration:underline;cursor:pointer;text-align:left}
.wa-suggest[hidden]{display:none}
.wa-err{margin:12px 0 0;font-size:13px;line-height:1.4;font-weight:600;color:#c0392b}
.wa-err:empty{display:none}
@media(max-width:600px){.wa-form{max-height:calc(100vh - 108px);max-height:calc(100dvh - 108px)}.wa-form-body{padding:14px 16px}.wa-bubble{font-size:14px;padding:9px 12px;margin-bottom:12px}.wa-form-body label{margin:10px 0 5px}.wa-form-body input{padding:11px 12px}}
.wa-legal a{color:#0b7fa0;text-decoration:underline;text-underline-offset:2px}

.application-grid article :is(img,.card-video){object-position:var(--pos,50%) var(--posy,center)}

.application-viewport,.full-motion .application-viewport{scrollbar-width:none}
.application-viewport::-webkit-scrollbar{display:none}

.tech-deck,.svc-steps{display:none}
.svc-track{display:contents}
.tech-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media(max-width:800px){
 
 .technologies.has-deck .tech-grid{display:none}
 .technologies.has-deck .tech-deck{display:block}
 .tech-deck-bar{display:flex;align-items:center;gap:12px;margin:0 0 20px}
 .tech-deck-count{display:flex;align-items:baseline;gap:6px;min-width:86px;margin:0;font:700 38px/1 var(--display);color:var(--cyan)}
 .tech-deck-count span{font-size:17px;color:var(--navy);opacity:.5}
 .tech-deck-steps{flex:1;display:flex;gap:4px}
 .tech-deck-steps i{flex:1;height:3px;border-radius:3px;background:#1f2a441f;transition:background .35s}
 .tech-deck-steps i.is-done{background:#1f2a4459}
 .tech-deck-steps i.is-on{background:var(--cyan)}
 .tech-deck-btn{flex:0 0 44px;width:44px;height:44px;padding:0;display:grid;place-items:center;border-radius:50%;border:1.5px solid #1f2a4440;background:transparent;color:var(--navy);cursor:pointer;transition:opacity .25s}
 .tech-deck-btn[data-dir="-1"] svg{transform:scaleX(-1)}
 .tech-deck-btn[data-dir="1"]{background:var(--cyan);border-color:var(--cyan);color:#fff}
 .tech-deck-btn:disabled{opacity:.28;cursor:default}
 .tech-deck-track{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:6vw;margin:0 -6vw;padding:0 12vw 4px 6vw;scrollbar-width:none}
 .tech-deck-track::-webkit-scrollbar{display:none}
 .tech-card{flex:0 0 82vw;scroll-snap-align:start;scroll-snap-stop:always;transition:opacity .4s}
 .tech-card:not(.is-active){opacity:.45}
 .tech-card-top{position:relative;padding-bottom:28px}
 .tech-card-media{position:relative;aspect-ratio:4/3.4;overflow:hidden;clip-path:polygon(0 0,86% 0,100% 14%,100% 100%,14% 100%,0 86%);background:var(--navy)}
 .tech-card-media img,.tech-card-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 .tech-card-media video{opacity:0;transition:opacity .5s}
 .tech-card-media video.is-playing{opacity:1}
 .tech-card-verb{position:absolute;left:-2px;bottom:0;font:700 54px/.9 var(--display);color:var(--cyan);text-shadow:2px 2px 0 var(--paper);white-space:nowrap;pointer-events:none}
 .tech-card h3{margin:16px 0 10px;font:700 30px/1 var(--display);color:var(--navy)}
 .tech-card>p{margin:0;font-size:16px;line-height:1.62}
 
 .service-band{display:block;padding:44px 6% 50px}
 .svc-steps{display:flex;position:relative;margin:0 0 24px}
 .svc-line{position:absolute;left:12.5%;right:12.5%;top:21px;height:2px;border-radius:2px;background:#1f2a4424;overflow:hidden}
 .svc-line i{position:absolute;inset:0;background:linear-gradient(90deg,var(--aqua),var(--cyan));transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.2,.75,.25,1)}
 .svc-node{flex:1;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:9px;min-height:44px;margin:0;padding:12px 0 0;border:0;background:none;color:var(--navy);font:600 10px/1.2 var(--font);letter-spacing:.1em;cursor:pointer;-webkit-tap-highlight-color:transparent}
 .svc-node i{width:20px;height:20px;box-sizing:border-box;border-radius:50%;border:2px solid #1f2a4433;background:var(--paper);transition:border .3s,background .3s,box-shadow .3s}
 .svc-node.is-done i{border-color:var(--cyan);background:var(--cyan)}
 .svc-node[aria-current] i{border:6px solid var(--cyan);background:#fff;box-shadow:0 0 0 5px #00a9ce26}
 .svc-node span{opacity:.55;transition:opacity .3s}
 .svc-node[aria-current] span{opacity:1;font-weight:700;color:#00728c}
 .svc-track{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;margin:0 -6vw;scrollbar-width:none}
 .svc-track::-webkit-scrollbar{display:none}
 .svc-track>article{flex:0 0 100%;box-sizing:border-box;padding:0 6vw;border-top:0;scroll-snap-align:center;scroll-snap-stop:always}
 .svc-track .service-figure{height:320px;margin-bottom:22px}
 .svc-track .service-figure img{z-index:1;transition:transform .6s cubic-bezier(.2,.75,.25,1),opacity .6s}
 .svc-track>article:not(.is-active) .service-figure img{transform:translateY(16px) scale(.95);opacity:.5}
 .svc-track>article>:not(figure){transition:opacity .5s .1s,transform .5s .1s}
 .svc-track>article:not(.is-active)>:not(figure){opacity:0;transform:translateY(8px)}
}
@media(prefers-reduced-motion:reduce){.tech-card,.tech-card-media video,.tech-deck-steps i,.svc-line i,.svc-node i,.svc-node span,.svc-track .service-figure img,.svc-track>article>:not(figure){transition:none!important}.svc-track>article:not(.is-active) .service-figure img,.svc-track>article:not(.is-active)>:not(figure){transform:none!important;opacity:1!important}}:where(html.ligero) .tech-card,:where(html.ligero) .tech-card-media video,:where(html.ligero) .tech-deck-steps i,:where(html.ligero) .svc-line i,:where(html.ligero) .svc-node i,:where(html.ligero) .svc-node span,:where(html.ligero) .svc-track .service-figure img,:where(html.ligero) .svc-track>article>:not(figure){transition:none!important}:where(html.ligero) .svc-track>article:not(.is-active) .service-figure img,:where(html.ligero) .svc-track>article:not(.is-active)>:not(figure){transform:none!important;opacity:1!important}

html.ligero .card-video,html.ligero #tech-video,html.ligero .tech-card-media video{display:none!important}


.intro h2 .intro-sub{display:block;font-size:.4em;line-height:1.05;margin-top:.55em;color:#fff;font-weight:700;letter-spacing:0}
.intro h2 .intro-sub span{color:var(--yellow);white-space:nowrap}
.intro h2 b{white-space:nowrap}
@media(max-width:800px){.intro h2 .intro-sub{font-size:.46em}}

.design-track{background:var(--cyan)}
.design-cover{position:relative;overflow:hidden;isolation:isolate;background:var(--cyan);color:#fff;min-height:min(92svh,900px);display:flex;flex-direction:column;justify-content:center;padding:clamp(100px,10vw,150px) 7% clamp(70px,8vw,120px)}
.design-grid{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.16;background-image:linear-gradient(#ffffff80 1px,transparent 1px),linear-gradient(90deg,#ffffff80 1px,transparent 1px);background-size:clamp(60px,7vw,110px) clamp(60px,7vw,110px);-webkit-mask-image:radial-gradient(ellipse 90% 70% at 22% 40%,#000 10%,transparent 78%);mask-image:radial-gradient(ellipse 90% 70% at 22% 40%,#000 10%,transparent 78%)}
.design-eyebrow{font:600 clamp(13px,1vw,15px)/1.45 var(--font);letter-spacing:.2em;text-transform:uppercase;color:#ffffffd1;margin-bottom:clamp(16px,2.4vh,28px)}
.design-cover h2{font-size:clamp(72px,10.5vw,170px);line-height:.92;color:#fff}
.design-cover h2 span{display:block}
.design-cover h2 b,.design-cover h2 i{font-weight:700;color:inherit}
.design-pill{margin-top:clamp(28px,3.4vw,46px);background:transparent;color:#fff;border:1.5px solid #fff;transition:background .25s,color .25s}
.design-pill:hover{background:#fff;color:var(--cyan)}
@media(max-width:800px){.design-cover{min-height:0;padding:96px 6% 80px}.design-cover h2{font-size:clamp(56px,16vw,104px)}}

.trailer-picture{display:contents}
.application-grid article.is-trailer img{object-position:center center}
@media(max-width:800px){.application-grid article.is-trailer img{object-position:center top}}

.catalog-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px 16px 16px 4px;margin:0 0 18px;background:#eef3f6;transition:transform .5s cubic-bezier(.2,.75,.25,1)}
.catalog-card:is(:hover,:focus-within) .catalog-photo{transform:translateY(-3px)}
@media(max-width:800px){.catalog-photo{width:112px;aspect-ratio:4/3;margin:0;grid-row:span 2;align-self:center;border-radius:10px}.catalog-card{grid-template-columns:112px 1fr}}

.intro-track .intro{background:#2371b2}
.intro-world .intro-fondo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%}
@media(max-width:800px){
 .intro-track .intro{background:#082f42}
 .intro-world .intro-fondo{inset:0 0 auto;height:auto;aspect-ratio:1080/1110;object-position:50% 100%}
}

@media(min-width:801px){
 .intro-world .intro-fondo{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 10%);mask-image:linear-gradient(to bottom,transparent 0,#000 10%)}
 .intro .intro-copy,.intro .intro-small{text-shadow:0 1px 14px rgba(10,45,85,.55)}
}

.hero{background:#3178b6}
.hero-fondo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;z-index:-4;pointer-events:none}
@media(max-aspect-ratio:3/4){.hero{background:#01448c}.hero-fondo{object-position:50% 70%}}
@media(min-width:600px) and (max-aspect-ratio:3/4){.hero-fondo{object-position:50% 100%}}
@media(min-aspect-ratio:751/1000) and (max-aspect-ratio:16/9){.hero{background:#3178b6}.hero-fondo{object-fit:contain;object-position:50% 100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 8%);mask-image:linear-gradient(to bottom,transparent 0,#000 8%)}}

.clients:hover .clients-track,.clients:focus-within .clients-track{animation-play-state:running}
.clients:has(.clients-viewport:focus-visible) .clients-track,.clients.is-paused .clients-track{animation-play-state:paused}

.hero-3d{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;z-index:-3;pointer-events:none;opacity:0;transition:opacity .7s ease}
.hero-3d.listo{opacity:1}
.hero-scene.oculta-3d{opacity:0;transition:opacity .3s}
@media(max-aspect-ratio:3/4){.hero-3d{object-position:50% 70%}}
@media(min-width:600px) and (max-aspect-ratio:3/4){.hero-3d{object-position:50% 100%}}
@media(min-aspect-ratio:751/1000) and (max-aspect-ratio:16/9){.hero-3d{object-fit:contain;object-position:50% 100%}}

.hero .hero-photo,.hero .hero-video{object-fit:cover!important;object-position:50% 50%!important;animation:none!important;transform:none}
.hero .hero-video{opacity:0;transition:opacity .9s ease}
.hero .hero-video.is-playing{opacity:1}
.hero .hero-shade{background:radial-gradient(ellipse 58% 52% at 16% 28%,#062a3c8c,transparent 72%),linear-gradient(0deg,#062a3cc4 0%,#062a3c4d 22%,transparent 40%)}
@media(max-aspect-ratio:3/4){.hero .hero-photo,.hero .hero-video{object-position:50% 65%!important}}


@media (max-height:759px){
 .hero-track .hero{min-height:100svh!important}
}
@media (orientation:landscape) and (max-height:500px){
 .hero-track .hero{min-height:100svh!important}
 .hero-type{left:5%!important;right:auto!important;margin:0!important;top:20%!important;width:30%!important;max-width:240px!important;text-align:left}
 .hero-type h1{justify-content:flex-start}
 .hero-logo{margin:0}
 .hero-cta{font-size:14px;padding:10px 16px;margin-top:10px}
 .hero-bottom{bottom:14px}
 .hero-captions .cap{font-size:12px!important}
 .circle-link{width:44px;height:44px;font-size:20px}
}
@media (max-width:340px){
 .topbar{padding-left:4%;padding-right:4%;gap:8px}
 .topbar .logo{width:118px}
 .topbar .nav-project{font-size:10.5px!important;padding:8px 9px!important}
 .catalog-grid{grid-template-columns:minmax(0,1fr)!important}
 .catalog-card{grid-template-columns:80px minmax(0,1fr)!important;column-gap:12px}
 .catalog-card h3{overflow-wrap:anywhere}
}

.intro-world:has(.soy-pop.is-open){z-index:40}
