/* Continuous / OurenCode. Layers: art 0, content 1, sticky scenes 2, nav 4, skip 5.
   Radii: 28px surfaces, 12px fields, pills on interactive controls. */
:root{color-scheme:dark;--surface:#080c0e;--raised:#11191c;--text:#edf3f2;--secondary:#a3afb2;--quiet:#66777d;--accent:#67e6df;--button-text:#072b2b;--line:rgb(195 227 229 / .12);--header:rgb(13 21 24 / .84);--ease:cubic-bezier(.22,1,.36,1)}
:root[data-theme=light]{color-scheme:light;--surface:#eaf0ef;--raised:#f6f9f8;--text:#10272b;--secondary:#4b6469;--quiet:#657b7f;--accent:#007e82;--button-text:#e9fcfa;--line:rgb(34 69 73 / .14);--header:rgb(235 243 242 / .91)}
html{scroll-padding-top:7rem}body{background:var(--surface);color:var(--text);-webkit-font-smoothing:antialiased}.wrap{width:min(100% - 7rem,84rem)}.section{padding-block:clamp(6rem,11vw,11rem)}
.language-updating{overflow-anchor:none;scroll-behavior:auto!important}
.dark,.services,.proof,.partnership{background:transparent;color:var(--text)}
.dark p,.service-list p,.steps p,.faq p,.proof span,.about dd,.footer p,.footer-grid a,.dark .form-note,label span{color:var(--secondary)}
h1,h2,h3{font-weight:550;letter-spacing:-.065em}h1{font-size:clamp(4rem,6.6vw,7.5rem);line-height:1.01;max-width:12ch}h1 em,h2 em{font-style:normal;color:var(--accent)}h1 em{display:block}h2{font-size:clamp(2.7rem,5.2vw,5.4rem);line-height:1.06;max-width:23ch}h3{letter-spacing:-.04em}.eyebrow{font-size:.65rem;letter-spacing:.13em}
.header{position:fixed;top:24px;left:0;right:0;background:none;border:0;z-index:4;color:var(--text)}
.nav{min-height:70px;width:min(100% - 4rem,88rem);padding:10px 14px 10px 25px;border-radius:999px;background:var(--header);box-shadow:inset 0 1px 0 rgb(210 236 237 / .13),0 14px 55px rgb(0 7 10 / .08);gap:1.1rem;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.brand img{width:10.2rem}.brand .logo-on-light{display:none}:root[data-theme=light] .brand .logo-on-dark{display:none}:root[data-theme=light] .brand .logo-on-light{display:block}
#nav-links{gap:1.65rem;font-size:.78rem}#nav-links a{position:relative;color:var(--secondary);transition:color .3s}#nav-links a:hover,#nav-links a:focus-visible{color:var(--text)}#nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:.4rem;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}#nav-links a:hover::after,#nav-links a:focus-visible::after{transform:scaleX(1)}
.language-switch{border:0;gap:.1rem}.language-switch a{min-width:1.7rem;min-height:2.4rem;font-size:.65rem;color:var(--secondary);border-radius:50%}.language-switch a[aria-current=page]{color:var(--text);background:rgb(129 167 171 / .13)}
.theme-control{border:0;background:transparent;color:var(--secondary);font-size:1.2rem;width:32px;height:40px;padding:0;cursor:pointer}
.theme-menu{position:absolute;top:80px;right:18%;min-width:160px;padding:8px;background:var(--raised);color:var(--text);border-radius:16px;box-shadow:0 12px 35px rgb(0 10 15 / .18),inset 0 1px 0 var(--line)}.theme-menu button{display:block;text-align:left;width:100%;border:0;border-radius:10px;padding:11px 15px;background:transparent;color:var(--secondary);font-size:.82rem}.theme-menu button:hover,.theme-menu button[aria-pressed=true]{background:var(--line);color:var(--text)}
@media(max-width:767px){.theme-menu{top:74px;right:1rem}}
.button{border-radius:999px;min-height:3.5rem;background:var(--accent);color:var(--button-text);padding:.5rem .55rem .5rem 1.4rem;gap:1.5rem;font-size:.85rem;box-shadow:inset 0 1px 0 rgb(230 255 251 / .35);white-space:nowrap;transition:transform .5s var(--ease),background .4s,color .4s}.button:hover{background:var(--text);color:var(--surface);transform:translateY(-3px)}.button:active{transform:scale(.97)}
.button .button-orbit{display:grid;place-items:center;flex:0 0 2.5rem;width:2.5rem;height:2.5rem;border-radius:50%;background:rgb(8 37 38 / .12);transition:transform .5s var(--ease)}.button:hover .button-orbit{transform:rotate(45deg)}
.button.compact{min-height:3rem;font-size:.76rem;padding:.35rem .4rem .35rem 1.2rem;gap:1.2rem}.button.compact .button-orbit{width:2.15rem;height:2.15rem;flex-basis:2.15rem}.button.ink{background:var(--text);color:var(--surface);padding-right:1.4rem}
.text-link{font-size:.85rem;font-weight:500;text-decoration:none;position:relative;gap:1.4rem}.text-link::after{content:"";position:absolute;bottom:.3rem;left:0;right:0;height:1px;background:currentColor;opacity:.35;transform-origin:left;transition:transform .5s var(--ease)}.text-link:hover::after{transform:scaleX(.55)}.dark .text-link:hover,.text-link:hover{color:var(--accent)}
.hero{position:relative;isolation:isolate;overflow:clip;min-height:min(950px,100dvh);padding-top:150px}.hero::before{content:"";position:absolute;width:80%;height:100%;right:-15%;top:0;background:radial-gradient(ellipse at 50% 55%,rgb(68 114 116 / .15),transparent 65%);pointer-events:none;z-index:-1}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;position:relative;padding-block:5.5rem 8rem;min-height:670px;gap:0}.hero-copy{position:relative;z-index:1;pointer-events:none}.hero-copy a{pointer-events:auto}.hero .eyebrow{color:var(--secondary);margin-bottom:2rem;white-space:nowrap}.hero-copy h1{position:relative;width:125%;max-width:13.5ch}.hero-copy h1 em{color:var(--text)}.intro{font-size:1.05rem;line-height:1.7;max-width:38ch;margin-top:2rem}.actions{margin-top:2rem;gap:1rem 1.8rem;align-items:center}.actions .text-link{font-size:.8rem}
.hero-art{position:absolute;right:-9%;top:0;width:66%;height:100%;min-height:650px;z-index:0}.sculpture-stage{position:absolute;inset:0;display:grid;place-items:center}#brand-sculpture,.sculpture-poster{position:absolute;width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}#brand-sculpture{opacity:0;transition:opacity 1s var(--ease)}#brand-sculpture.rendered{opacity:1}.sculpture-stage:has(.rendered) .sculpture-poster{visibility:hidden}
.motion-control{position:absolute;right:18%;bottom:3.2rem;color:var(--secondary);font-size:.65rem;letter-spacing:.03em;border:0;background:rgb(99 136 143 / .1);border-radius:999px;padding:.7rem 1rem;cursor:pointer;z-index:1}.motion-control::before{content:"Ⅱ";margin-right:.6rem}.motion-control[aria-pressed=true]::before{content:"▷"}
.proof{border:0;padding-bottom:2rem}.proof-grid{display:flex;justify-content:space-between;gap:2rem;align-items:flex-start}.proof-grid div,.proof-grid div:last-child{border:0;padding:0;max-width:28ch}.proof strong{font-size:.87rem;font-weight:500;margin-bottom:.4rem}.proof span{font-size:.75rem;line-height:1.5}
.vision{position:relative;overflow:clip;min-height:150vh;margin-block:2rem 1rem;view-timeline-name:--vision;view-timeline-axis:block}.vision-sticky{position:sticky;top:15vh;min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding-block:4rem;isolation:isolate}.vision-caption{font-size:.85rem;color:var(--secondary);margin-bottom:2.5rem}.vision h2{font-size:clamp(3.5rem,8vw,8rem);line-height:1.06;letter-spacing:-.065em;max-width:none}.vision h2 span{color:var(--accent)}.vision-body{max-width:43ch;font-size:1rem;line-height:1.7;margin-top:2.2rem;color:var(--secondary)}
.vision-orbit{position:absolute;inset:-20% 0;display:grid;place-items:center;z-index:-1;pointer-events:none;overflow:hidden;opacity:.35}.vision-orbit div{position:absolute;width:80%;aspect-ratio:1.6;border:1px solid rgb(100 201 200 / .15);border-radius:50%;transform:rotate(-25deg)}.vision-orbit div:nth-child(2){width:95%}.vision-orbit div:nth-child(3){width:110%}
.services{position:relative}.services>.wrap>.eyebrow{color:var(--secondary);margin-bottom:1.3rem}.services h2{max-width:none;margin-bottom:3.5rem}.services h2 em{color:var(--secondary)}
.service-list{margin-top:2rem;border:0}.service-list article{display:block;padding:2.5rem;border:0;background:var(--raised);border-radius:28px;position:relative;overflow:hidden;margin-bottom:1.5rem}.service-list article h3{font-size:2.4rem;margin-bottom:1rem;max-width:18ch}.service-list p{max-width:44ch;font-size:.98rem;line-height:1.7}.service-list .text-link{margin-top:1rem}
.service-stage{display:grid;grid-template-columns:.85fr 1.45fr;gap:3rem;align-items:stretch}.service-tabs{display:flex;flex-direction:column;justify-content:center;gap:.5rem}.service-tab{display:grid;grid-template-columns:1.8rem 1fr 1.5rem;gap:1.1rem;align-items:center;border:0;text-align:left;background:transparent;color:var(--secondary);padding:1.25rem 1.1rem;border-radius:15px;font-size:1.15rem;line-height:1.3;transition:background .4s,color .4s;cursor:pointer}.tab-number{font-size:.65rem;color:var(--quiet)}.tab-arrow{opacity:0;transform:translate(-5px,5px);transition:opacity .4s,transform .5s var(--ease)}.service-tab[aria-selected=true]{background:rgb(96 159 164 / .1);color:var(--text)}.service-tab[aria-selected=true] .tab-number{color:var(--accent)}.service-tab[aria-selected=true] .tab-arrow{opacity:1;transform:none;color:var(--accent)}.service-tab:hover{color:var(--text)}
.service-stage article{grid-column:2;grid-row:1;margin:0;min-height:580px;padding:17rem 3rem 2.5rem;isolation:isolate;background:radial-gradient(ellipse at 80% 10%,rgb(73 135 138 / .22),transparent 65%),var(--raised);box-shadow:inset 0 1px 0 rgb(218 246 247 / .1),inset 1px 0 0 rgb(218 246 247 / .05)}.service-stage article::after{content:"";position:absolute;inset:7px;border:1px solid rgb(195 227 229 / .045);border-radius:22px;pointer-events:none;z-index:-1}
.capability-art{position:absolute;top:1rem;right:0;left:0;height:15rem;display:grid;place-items:center;pointer-events:none;perspective:600px}.capability-art span{font-size:10rem;line-height:1;font-weight:550;letter-spacing:-.09em;background:linear-gradient(135deg,#eefcfa 2%,#6e969a 30%,#34535b 48%,#b8fff2 58%,#567e86 78%);background-clip:text;-webkit-background-clip:text;color:transparent;transform:rotate(-12deg) rotateY(-18deg)}.capability-art-1 span{font-size:7.5rem;letter-spacing:-.1em;transform:rotate(-10deg) rotateY(-25deg)}.capability-art-2 span{font-size:12rem;transform:rotate(-5deg) rotateY(25deg)}.capability-art-3 span{font-size:14rem;transform:rotate(-12deg) rotateY(-25deg)}.capability-art-4 span{font-size:10rem;transform:rotate(-10deg) rotateY(-20deg)}
#nosotros{position:relative;overflow:hidden}.about{grid-template-columns:1.1fr .7fr;gap:10rem;align-items:start}.about .eyebrow{display:none}.about h2{font-size:clamp(2.8rem,5vw,5rem);max-width:16ch}.about p{font-size:.95rem;line-height:1.85;max-width:51ch;margin-top:2rem}.about dl{padding-top:1rem}.about dt{border:0;padding:0;font-size:1rem;font-weight:550;color:var(--text)}.about dd{margin:.6rem 0 2.5rem;font-size:.9rem;line-height:1.8}
.markets{background:none;border:0;padding:3.5rem 0 0;margin-top:3rem;max-width:none;display:flex;align-items:center;gap:3rem}.markets .eyebrow{font-size:.65rem;color:var(--quiet);margin:0;min-width:12rem}.markets ul{display:flex;gap:3rem;flex-wrap:wrap}.markets li{border:0;font-size:.9rem;letter-spacing:0;gap:.7rem;padding:0;color:var(--secondary)}.markets li span{font-size:.55rem;color:var(--quiet)}.markets-note{display:none}
#proceso{position:relative;padding-block:5rem 8rem}.steps{gap:1.5rem}.steps li{background:var(--raised);border-radius:25px;border:0;padding:2rem;box-shadow:inset 0 1px 0 rgb(224 252 252 / .08)}.steps li::before{font-size:3rem;font-weight:450;letter-spacing:-.07em;line-height:1;color:var(--accent);margin-bottom:4rem}.steps h3{font-size:1.4rem;line-height:1.15}.steps p{font-size:.9rem;line-height:1.7}
.process-cinematic{height:250vh;view-timeline-name:--process;view-timeline-axis:block}.process-sticky{position:sticky;top:6rem;padding-top:1rem}.process-viewport{overflow:hidden;padding:1px}.process-cinematic .steps{display:flex;gap:24px;margin-top:3.5rem;counter-reset:step}.process-cinematic .steps li{flex:0 0 53%;min-height:340px;padding:2.6rem 3rem}.process-cinematic .steps li.reveal-pending{opacity:1;transform:none}.process-cinematic .steps li::before{font-size:5rem;margin-bottom:3rem}.process-cinematic .steps h3{font-size:2rem;max-width:20ch}.process-cinematic .steps p{max-width:40ch}
.partnership{width:min(100% - 4rem,90rem);margin:3rem auto;border-radius:36px;overflow:hidden;position:relative;isolation:isolate;background:radial-gradient(ellipse at 90% 100%,rgb(62 134 139 / .28),transparent 60%),var(--raised);box-shadow:inset 0 1px 0 rgb(209 246 246 / .14)}.partnership .wrap{padding-block:7rem;position:relative}.partnership .eyebrow{color:var(--secondary);margin-bottom:2rem}.partnership h2{max-width:23ch;font-size:clamp(2.8rem,5.7vw,6.2rem)}.partnership h2 em{color:var(--accent)}.partnership p{max-width:52ch;margin-top:2rem;line-height:1.8;font-size:.95rem}.partnership .button{margin-top:2rem}.partnership::after{content:"{ }";position:absolute;right:1%;bottom:-6%;font-size:clamp(15rem,40vw,36rem);font-weight:450;letter-spacing:-.08em;line-height:1;transform:rotate(-15deg);color:rgb(113 184 189 / .055);z-index:-1}
.faq{grid-template-columns:.8fr 1.2fr;gap:8rem;align-items:start}.faq h2{font-size:clamp(2.5rem,4.5vw,4.7rem)}.faq details,.faq details:last-child{border:0;border-bottom:1px solid var(--line)}.faq summary{padding:1.3rem 0;font-size:.93rem;font-weight:500;gap:1.5rem}.faq summary::after{color:var(--accent);font-weight:400}.faq details p{font-size:.9rem;line-height:1.8;padding-bottom:1.4rem}
#contacto{position:relative;padding-top:6rem}.contact{grid-template-columns:1fr 1fr;gap:7rem;align-items:start}.contact .eyebrow{display:none}.contact h2{font-size:clamp(3rem,5.4vw,5.8rem);max-width:none}.contact p{font-size:.95rem;line-height:1.8;max-width:40ch}.contact-links{gap:1.3rem;margin-top:2rem}.contact-links .button{padding-right:1.4rem;font-size:.8rem}
form{background:var(--raised);border:0;border-radius:28px;padding:2.5rem;box-shadow:inset 0 1px 0 rgb(218 246 247 / .12);position:relative}label{font-size:.76rem;font-weight:500;margin-bottom:1.3rem}input,select,textarea{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;font-size:.9rem;margin-top:.5rem}input:focus,select:focus,textarea:focus{border-color:var(--accent)}form .button{padding-right:1.4rem;min-height:3rem}.dark .form-note{font-size:.75rem;line-height:1.7;max-width:none}
.footer{border-top:1px solid var(--line);padding-top:4rem}.footer-grid{grid-template-columns:1.3fr .8fr 1fr 1fr;gap:3rem}.footer h2{font-size:.75rem;letter-spacing:0;font-weight:550;color:var(--text)}.footer p,.footer-grid a{font-size:.77rem}.footer-grid .brand img{width:11rem}.footer a:hover{color:var(--accent)}.legal{border-color:var(--line);margin-top:4rem}.legal p{font-size:.65rem;max-width:95ch;color:var(--quiet)}.skip{background:var(--accent);color:var(--surface);border-radius:8px}:focus-visible,.dark :focus-visible,.header :focus-visible{outline:2px solid var(--accent);outline-offset:6px}
@media(prefers-reduced-transparency:reduce){.nav{background:var(--raised);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:no-preference){
 .hero-copy .eyebrow{animation:rise-in 1.1s var(--ease) both}.hero-copy h1{animation:hero-mask 1.4s var(--ease) .08s both}.hero-copy .intro{animation:rise-in 1.3s var(--ease) .25s both}.hero-copy .actions{animation:rise-in 1.3s var(--ease) .4s both}.hero-art{animation:sculpture-in 1.8s var(--ease) .05s both}
 .reveal-pending{opacity:0;transform:translateY(40px)}.reveal-ready{transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.reveal-visible{opacity:1;transform:none}.service-stage article:not([hidden]){animation:panel-enter .7s var(--ease) both}.service-stage article:not([hidden]) .capability-art{animation:art-enter 1.1s var(--ease) both}
 @supports(animation-timeline:view()){
  .vision h2{animation:vision-reveal both;animation-timeline:--vision;animation-range:entry 35% exit 50%}.vision-body{animation:vision-copy both;animation-timeline:--vision;animation-range:entry 50% exit 50%}.vision-orbit{animation:orbit-pass both;animation-timeline:--vision;animation-range:entry 0% exit 100%}.process-cinematic .steps{animation:process-pan both;animation-timeline:--process;animation-range:contain 0% contain 100%}
 }
 @keyframes rise-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes hero-mask{from{opacity:0;transform:translateY(65px)}to{opacity:1;transform:none}}@keyframes sculpture-in{from{opacity:0;transform:translate(50px,30px) scale(.88)}to{opacity:1;transform:none}}@keyframes panel-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes art-enter{from{opacity:0;transform:translateY(25px) rotate(-8deg)}to{opacity:1;transform:none}}
 @keyframes vision-reveal{0%{opacity:.15;transform:scale(.9) translateY(40px)}40%,75%{opacity:1;transform:none}100%{opacity:.5;transform:scale(1.05) translateY(-30px)}}@keyframes vision-copy{0%,10%{opacity:0;transform:translateY(25px)}45%,100%{opacity:1;transform:none}}@keyframes orbit-pass{from{transform:rotate(-20deg) scale(.8)}to{transform:rotate(25deg) scale(1.2)}}@keyframes process-pan{from{transform:translateX(0)}to{transform:translateX(var(--travel,0px))}}
}
@media(min-width:1600px){.hero-grid{min-height:760px}.hero{min-height:940px}.hero-art{width:68%;right:-8%}}
@media(max-width:1150px){.wrap{width:calc(100% - 4rem)}.nav{gap:.6rem;padding-left:18px}#nav-links{gap:1rem;font-size:.7rem}.brand img{width:8.5rem}.hero-grid{padding-block:4.5rem 6rem;min-height:620px}.hero-art{right:-14%;width:73%}h1{font-size:clamp(3.9rem,7.3vw,6rem)}.about{gap:5rem}.faq,.contact{gap:4rem}.service-stage{gap:2rem;grid-template-columns:.85fr 1.3fr}.service-stage article{padding-inline:2rem}.service-tab{font-size:1rem;gap:.7rem;padding-inline:.8rem}.footer-grid{gap:2rem}}
@media(max-width:62rem){.nav{border-radius:30px;min-height:64px;flex-wrap:wrap;padding:10px 15px;gap:.5rem}.menu{border:0;border-radius:999px;background:rgb(112 153 162 / .12);color:var(--text);padding:.6rem .85rem;font-size:.75rem}#nav-links{order:5;width:100%;padding:.5rem;gap:1rem;font-size:.85rem}#nav-links[data-collapsed=true]{display:none}.hero-grid{grid-template-columns:1fr}.hero-copy{width:70%}.hero-art{width:75%;right:-23%;opacity:.9}.hero-copy h1{width:110%;max-width:13ch}.service-stage{grid-template-columns:1fr 1.25fr;gap:1.2rem}.service-stage article{padding-inline:1.7rem}.service-list article h3{font-size:2rem}.steps{grid-template-columns:1fr 1fr}}
@media(max-width:767px){
 .wrap{width:calc(100% - 2.5rem)}.section{padding-block:5rem}.header{top:15px}.nav{width:calc(100% - 1.5rem);gap:.4rem}.nav .brand img{width:8.5rem}.nav .brand{margin-right:auto}.theme-control{width:28px}.language-switch{gap:0}.language-switch a{min-width:1.6rem;min-height:2rem;font-size:.6rem}.nav .button.compact{display:none}#nav-links{font-size:.85rem;gap:.3rem .8rem;justify-content:space-between}#nav-links a{padding:.75rem .25rem}
 .hero{padding-top:120px;min-height:auto}.hero-grid{width:calc(100% - 2.5rem);padding-block:1.7rem 0;min-height:920px;display:flex;flex-direction:column;align-items:flex-start}.hero-copy{width:100%;pointer-events:auto}.hero .eyebrow{font-size:.55rem;letter-spacing:.12em;margin-bottom:1.5rem;white-space:normal}.hero-copy h1{width:100%;max-width:none;font-size:clamp(3.2rem,10vw,5.2rem);line-height:1.06;letter-spacing:-.065em}.intro{font-size:.95rem;line-height:1.7;max-width:35ch;margin-top:1.4rem}.actions{margin-top:1.5rem;gap:.6rem 1rem;max-width:100%}.actions .button{font-size:.75rem;min-height:3.2rem;padding-left:1.1rem;gap:.8rem}.actions .text-link{font-size:.72rem;gap:.7rem}.button .button-orbit{width:2.2rem;height:2.2rem;flex-basis:2.2rem}
 .hero-art{position:relative;top:auto;right:auto;width:calc(100% + 4rem);height:440px;min-height:0;margin-left:-2rem;margin-top:-1rem;opacity:1;flex:0 0 440px}.motion-control{bottom:0;right:50%;transform:translateX(50%);white-space:nowrap;font-size:.6rem}.hero::before{width:150%;height:60%;right:-40%;top:35%}
 .proof{padding-block:2rem 1rem}.proof-grid{display:grid;grid-template-columns:1fr;gap:1.3rem}.proof-grid div,.proof-grid div:last-child{padding:0;border:0;max-width:none;display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.proof strong{font-size:.75rem;margin:0;flex:0 0 40%}.proof span{font-size:.65rem;max-width:21ch;text-align:right}
 .vision{min-height:auto;margin-block:2rem}.vision-sticky{position:relative;top:auto;min-height:600px;padding-block:6rem}.vision-caption{font-size:.73rem;max-width:25ch;line-height:1.6;margin-bottom:1.7rem}.vision h2{font-size:clamp(2.75rem,10.3vw,5rem)}.vision-body{font-size:.85rem;max-width:32ch;margin-top:1.7rem}.vision-orbit{inset:0 -100%;opacity:.3}
 .services>.wrap>.eyebrow{font-size:.58rem}.services h2{font-size:clamp(2.4rem,8vw,4rem);margin-bottom:2.5rem}.service-stage{display:flex;flex-direction:column;gap:1.7rem}.service-tabs{display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x proximity;gap:.5rem;padding:6px 4px 15px;margin-inline:-4px;scrollbar-width:thin;scrollbar-color:var(--quiet) transparent}.service-tab{flex:0 0 72%;scroll-snap-align:start;font-size:1rem;padding:1rem .9rem;min-height:76px;background:var(--raised);border-radius:15px;grid-template-columns:1.5rem 1fr 1rem;gap:.6rem}.service-tab[aria-selected=true]{background:rgb(96 159 164 / .19)}.service-stage article{min-height:570px;padding:16rem 1.7rem 2rem}.service-list article h3{font-size:2rem;max-width:18ch}.service-list p{font-size:.9rem;line-height:1.8}.service-list .text-link{font-size:.78rem}
 .about,.faq,.contact{grid-template-columns:1fr;gap:3rem}.about h2{font-size:clamp(2.7rem,8.5vw,4rem);max-width:15ch}.about p{font-size:.9rem;line-height:1.85}.about dl{padding:0}.about dt{font-size:1rem}.about dd{font-size:.85rem;margin-bottom:1.8rem}.markets{display:block;margin-top:0;padding-top:1rem}.markets .eyebrow{margin-bottom:1.3rem}.markets ul{gap:1rem 1.6rem}.markets li{font-size:.8rem}.markets li span{display:none}
 #proceso{padding-block:4rem}.process-cinematic{height:auto}.process-sticky{position:static;padding-top:0}#proceso h2{font-size:2.6rem}.process-viewport{overflow:visible}.process-cinematic .steps,.steps{display:grid;grid-template-columns:1fr;gap:1rem;transform:none!important;margin-top:2.5rem}.process-cinematic .steps li,.steps li{min-height:240px;padding:2rem;max-width:none}.process-cinematic .steps li::before,.steps li::before{font-size:3.5rem;margin-bottom:2rem}.process-cinematic .steps h3,.steps h3{font-size:1.7rem;max-width:20ch}.process-cinematic .steps p,.steps p{font-size:.85rem}
 .partnership{width:calc(100% - 1.5rem);margin-block:3rem;border-radius:28px}.partnership .wrap{width:calc(100% - 3rem);padding-block:4rem}.partnership .eyebrow{font-size:.55rem;margin-bottom:1.5rem}.partnership h2{font-size:clamp(2.2rem,8vw,4rem)}.partnership p{font-size:.85rem;line-height:1.8;margin-top:1.5rem}.partnership .button{font-size:.75rem;gap:.6rem;padding:1rem 1.25rem;min-height:0;white-space:normal}.partnership::after{font-size:22rem;right:-10%;bottom:0}
 .faq h2{font-size:2.6rem;max-width:15ch}.faq summary{font-size:.85rem;padding:1.2rem 0}.faq details p{font-size:.82rem}#contacto{padding-block:4rem 5rem}.contact h2{font-size:clamp(2.9rem,10vw,4.5rem)}.contact p{font-size:.85rem;line-height:1.8}.contact-links{gap:1rem;margin-top:1.5rem}.contact-links .button{font-size:.75rem;padding:1rem 1.2rem;min-height:0;white-space:normal}form{padding:1.5rem;border-radius:24px}.fields{grid-template-columns:1fr;gap:0}
 .footer{padding-top:3rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid .brand img{width:11rem}.footer p,.footer-grid a{font-size:.75rem}.legal{margin-top:3rem}.legal p{font-size:.65rem}
}
@media(max-width:360px){.wrap,.hero-grid{width:calc(100% - 2rem)}.nav{padding-inline:10px}.nav .brand img{width:6.5rem}.menu{font-size:.65rem;padding:.6rem .7rem}.theme-control{width:20px}.language-switch a{min-width:1.4rem}.hero-copy h1{font-size:2.8rem}.hero-grid{min-height:900px}.actions .text-link{font-size:.68rem}.actions{gap:.5rem}.hero-art{height:410px;flex-basis:410px}.vision h2{font-size:2.5rem}.service-stage article{padding-inline:1.3rem}.service-list article h3{font-size:1.8rem}.footer-grid{gap:2rem 1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-pending{opacity:1;transform:none}.vision{min-height:auto}.vision-sticky{position:relative;top:auto;min-height:70vh}.process-cinematic{height:auto}.process-sticky{position:static}.process-cinematic .steps{display:grid;grid-template-columns:1fr 1fr;transform:none}.process-cinematic .steps li{min-height:300px}.process-viewport{overflow:visible}.button:hover,.button:active{transform:none}}
@media(max-width:767px) and (prefers-reduced-motion:reduce){.process-cinematic .steps{grid-template-columns:1fr}}

/* Vision: one viewport, no pinning. Three material layers cross at different
   speeds while the two headline lines pull apart. */
.vision{min-height:clamp(660px,95svh,980px);margin-block:1rem;isolation:isolate}
.vision-sticky{position:relative;top:auto;min-height:inherit;padding-block:5rem}
.vision h2{position:relative;z-index:1;animation:none;opacity:1}
.vision h2 span{display:inline-block}
.vision-caption,.vision-body{position:relative;z-index:1;animation:none;opacity:1}
.vision-orbit{inset:0 -6%;opacity:1;overflow:visible;animation:none}
.vision-orbit div{width:43%;aspect-ratio:1;border:0;padding:26px;background:conic-gradient(from 15deg,#0b222a,#66999f 50deg,#e6fff7 85deg,#659299 110deg,#17333d 145deg,#30666e 210deg,#a0e9e0 255deg,#345964 285deg,#0b222a);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;box-shadow:none;transform:rotateX(62deg) rotateZ(-35deg);left:-22%;top:-4%;border-radius:50%}
.vision-orbit div:nth-child(2){width:49%;left:auto;right:-22%;top:auto;bottom:-8%;padding:34px;transform:rotateX(58deg) rotateZ(35deg)}
.vision-orbit div:nth-child(3){width:7%;aspect-ratio:1;left:auto;right:17%;top:16%;border:0;padding:0;mask:none;-webkit-mask:none;box-shadow:inset -12px -14px 22px rgb(1 19 25 / .8),inset 3px 3px 8px rgb(233 255 250 / .4);background:radial-gradient(circle at 28% 23%,#c8f6ee 0%,#67aaa9 22%,#234c57 52%,#091b23 80%);transform:none}
@media(prefers-reduced-motion:no-preference){
 @supports(animation-timeline:view()){
  .vision h2{animation:vision-title-drift both;animation-timeline:--vision;animation-range:entry 0% exit 100%}
  .vision h2 span{animation:vision-line-drift both;animation-timeline:--vision;animation-range:entry 0% exit 100%}
  .vision-body{animation:vision-body-drift both;animation-timeline:--vision;animation-range:entry 0% exit 100%}
  .vision-orbit div{animation:vision-ring-near both;animation-timeline:--vision;animation-range:entry 0% exit 100%}
  .vision-orbit div:nth-child(2){animation-name:vision-ring-far}
  .vision-orbit div:nth-child(3){animation-name:vision-sphere}
 }
 @keyframes vision-title-drift{from{transform:translate3d(-55px,55px,0)}to{transform:translate3d(55px,-55px,0)}}
 @keyframes vision-line-drift{from{transform:translateX(110px)}to{transform:translateX(-110px)}}
 @keyframes vision-body-drift{from{transform:translateY(60px)}to{transform:translateY(-45px)}}
 @keyframes vision-ring-near{from{transform:translate3d(-70px,-160px,0) rotateX(62deg) rotateZ(-65deg) scale(.85)}to{transform:translate3d(130px,250px,0) rotateX(40deg) rotateZ(75deg) scale(1.15)}}
 @keyframes vision-ring-far{from{transform:translate3d(80px,220px,0) rotateX(56deg) rotateZ(65deg)}to{transform:translate3d(-100px,-220px,0) rotateX(68deg) rotateZ(-65deg)}}
 @keyframes vision-sphere{from{transform:translate3d(0,130px,0) scale(.8)}to{transform:translate3d(-120px,-210px,0) scale(1.2)}}
}
@media(max-width:767px){
 .vision{min-height:640px;margin-block:0}
 .vision-sticky{min-height:640px;padding-block:5rem}
 .vision-orbit{inset:0 -6%}
 .vision-orbit div{width:70%;left:-60%;top:0;padding:20px}
 .vision-orbit div:nth-child(2){width:80%;right:-60%;bottom:0;padding:24px}
 .vision-orbit div:nth-child(3){width:11%;right:10%;top:14%}
 @keyframes vision-title-drift{from{transform:translate3d(-15px,35px,0)}to{transform:translate3d(15px,-35px,0)}}
 @keyframes vision-line-drift{from{transform:translateX(30px)}to{transform:translateX(-30px)}}
 @keyframes vision-ring-near{from{transform:translate3d(-35px,-100px,0) rotateX(62deg) rotateZ(-65deg)}to{transform:translate3d(55px,150px,0) rotateX(40deg) rotateZ(75deg)}}
 @keyframes vision-ring-far{from{transform:translate3d(35px,140px,0) rotateX(56deg) rotateZ(65deg)}to{transform:translate3d(-55px,-140px,0) rotateX(68deg) rotateZ(-65deg)}}
 @keyframes vision-sphere{from{transform:translate3d(0,80px,0)}to{transform:translate3d(-30px,-100px,0)}}
}
@media(prefers-reduced-motion:reduce){.vision{min-height:580px}.vision-sticky{min-height:580px}.vision h2,.vision h2 span,.vision-body{transform:none}.vision-orbit div{transform:rotateX(62deg) rotateZ(-35deg)}.vision-orbit div:nth-child(2){transform:rotateX(58deg) rotateZ(35deg)}.vision-orbit div:nth-child(3){transform:none}}

/* In light mode, protect the moving letterforms from the dark metal behind
   them. The soft outline follows both independently moving text layers. */
:root[data-theme=light] .vision h2,
:root[data-theme=light] .vision-caption,
:root[data-theme=light] .vision-body{text-shadow:0 0 3px var(--surface),0 0 8px var(--surface),0 0 16px var(--surface)}
:root[data-theme=light] .vision h2,
:root[data-theme=light] .vision h2 span{paint-order:stroke fill;-webkit-text-stroke:5px var(--surface)}
:root[data-theme=light] .vision-orbit{opacity:.55}
@media(max-width:767px){:root[data-theme=light] .vision h2,:root[data-theme=light] .vision h2 span{-webkit-text-stroke:3px var(--surface)}}
.tab-number,.markets .eyebrow,.markets li span,.legal p{color:var(--secondary)}
