:root {
  --ink: #050505;
  --carbon: #101114;
  --paper: #f2f1ec;
  --paper-2: #e7e5df;
  --blue: #39c8ff;
  --blue-deep: #0071e3;
  --clay: #c87050;
  --white: #f8f8f6;
  --muted: #96999f;
  --line-dark: rgba(255, 255, 255, 0.16);
  --line-light: rgba(5, 5, 5, 0.18);
  --content-max: 88rem;
  --pad: max(clamp(1.5rem, 7vw, 8rem), calc((100vw - var(--content-max)) / 2));
  --scene-space: clamp(7.5rem, 12vh, 10rem);
  --radius: 1.75rem;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  color-scheme: dark;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; min-width: 320px; overflow-x: clip; background: var(--ink); color: var(--white); }
body.is-loading { overflow: hidden; }
body.menu-open { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { color: inherit; }
::selection { background: var(--blue); color: var(--ink); }

.skip-link { position: fixed; top: 1rem; left: 1rem; z-index: 2000; padding: .75rem 1rem; background: var(--paper); color: var(--ink); transform: translateY(-160%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }

.loader { position: fixed; inset: 0; z-index: 1900; display: grid; place-items: center; background: var(--ink); }
.loader__inner { width: min(82vw, 36rem); display: grid; grid-template-columns: 1fr auto; gap: 1.25rem; align-items: end; }
.loader__word { grid-column: 1 / -1; font-size: clamp(2.3rem, 7vw, 6rem); font-weight: 720; letter-spacing: -.07em; }
.loader__word span { color: var(--blue); font-weight: 330; }
.loader__line { height: 1px; background: rgba(255,255,255,.18); overflow: hidden; }
.loader__line i { display: block; width: 0; height: 100%; background: var(--blue); }
.loader__value { color: var(--blue); font: 600 .75rem/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .12em; }

.cursor { position: fixed; width: 2.8rem; height: 2.8rem; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; z-index: 1800; pointer-events: none; transform: translate(-50%,-50%); mix-blend-mode: difference; opacity: 0; transition: width .25s, height .25s, opacity .25s; }
.cursor span { position: absolute; width: .25rem; height: .25rem; background: #fff; border-radius: 50%; inset: 50% auto auto 50%; transform: translate(-50%,-50%); }
.cursor.is-active { width: 4.5rem; height: 4.5rem; }
.scroll-progress { position: fixed; left: 0; top: 0; width: 100%; height: 2px; z-index: 1700; background: transparent; }
.scroll-progress i { display: block; height: 100%; width: 100%; background: var(--blue); transform: scaleX(0); transform-origin: left; }

.site-header { position: fixed; z-index: 1000; left: var(--pad); right: var(--pad); top: 1.1rem; height: 4.4rem; padding: 0 .5rem 0 1.15rem; display: grid; grid-template-columns: auto 1fr auto; gap: 2rem; align-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; background: rgba(8,8,9,.28); backdrop-filter: blur(18px) saturate(130%); transition: top .4s var(--ease), background .4s, border-color .4s, transform .4s var(--ease); }
.site-header.is-scrolled { top: .55rem; background: rgba(8,8,9,.78); border-color: rgba(255,255,255,.2); }
.site-header.is-hidden { transform: none; }
.brand { display: inline-flex; align-items: center; }
.brand img { width: clamp(10.5rem, 14vw, 13.25rem); height: auto; }
.desktop-nav { justify-self: center; display: flex; gap: clamp(1rem, 1.6vw, 2rem); }
.desktop-nav a { position: relative; padding: .85rem 0; font-size: .68rem; font-weight: 680; text-transform: uppercase; letter-spacing: .14em; color: rgba(255,255,255,.72); cursor: pointer; transition: color .25s; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; bottom: .3rem; width: 100%; height: 1px; background: var(--blue); transform: scaleX(0); transform-origin: right; transition: transform .35s var(--ease); }
.desktop-nav a:hover { color: #fff; }
.desktop-nav a:hover::after { transform: scaleX(1); transform-origin: left; }
.header-actions { display: flex; align-items: center; gap: .45rem; }
.header-contact, .header-whatsapp { min-height: 2.7rem; padding: 0 1.25rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; text-transform: uppercase; letter-spacing: .11em; font-weight: 740; font-size: .62rem; border: 1px solid rgba(255,255,255,.26); background: transparent; cursor: pointer; }
.header-whatsapp { gap: .55rem; background: var(--blue); border-color: var(--blue); color: var(--ink); }
.header-whatsapp svg { width: 1rem; height: 1rem; fill: currentColor; }
.menu-toggle { display: none; width: 3.3rem; height: 3.3rem; border: 1px solid rgba(255,255,255,.25); background: transparent; border-radius: 50%; place-items: center; cursor: pointer; }
.menu-toggle span { position: absolute; width: 1rem; height: 1px; background: #fff; transition: transform .3s; }
.menu-toggle span:first-child { transform: translateY(-3px); }
.menu-toggle span:last-child { transform: translateY(3px); }
.menu-toggle[aria-expanded="true"] span:first-child { transform: rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:last-child { transform: rotate(-45deg); }

.mobile-menu { position: fixed; inset: 0; z-index: 900; padding: 8rem var(--pad) 2.5rem; display: flex; flex-direction: column; justify-content: space-between; background: var(--ink); transform: translateY(-102%); visibility: hidden; transition: transform .65s var(--ease), visibility .65s; }
.mobile-menu.is-open { transform: translateY(0); visibility: visible; }
.mobile-menu nav { display: flex; flex-direction: column; }
.mobile-menu nav a { padding: .28em 0; border-bottom: 1px solid var(--line-dark); font-size: clamp(2.6rem, 11vw, 5rem); letter-spacing: -.065em; }
.mobile-menu > button { width: 100%; padding: 1rem 1.2rem; display: flex; justify-content: space-between; border: 0; background: var(--blue); color: var(--ink); font-weight: 740; cursor: pointer; }

.scene { position: relative; isolation: isolate; overflow: clip; }
main > .scene:not(.hero) { box-shadow: inset 0 1px rgba(128, 132, 138, .22); }
section[id] { scroll-margin-top: 5.5rem; }
.scene--dark { background: var(--ink); color: var(--white); }
.scene--paper { background: var(--paper); color: var(--ink); }
.scene--clay { background: var(--clay); color: var(--ink); }
.scene--blue { background: var(--blue); color: var(--ink); }
.eyebrow { margin: 0; display: flex; align-items: center; gap: 1rem; font: 650 .858rem/.792rem ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .17em; text-transform: uppercase; color: rgba(255,255,255,.63); }
.eyebrow span { color: var(--blue); }
.eyebrow--dark { color: rgba(5,5,5,.62); }
.eyebrow--dark span { color: var(--ink); }
.section-index { position: absolute; top: clamp(2rem, 5vw, 5rem); right: var(--pad); font: 650 .845rem/.65rem ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; }

.hero { min-height: max(100svh, 48rem); padding: clamp(7rem, 11vh, 8.5rem) var(--pad) clamp(3rem, 6vh, 4.5rem); display: grid; align-content: stretch; background: radial-gradient(circle at 74% 47%, #15202a 0, #080a0d 30%, #050505 64%); }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .23; background-image: radial-gradient(rgba(255,255,255,.5) .55px, transparent .6px); background-size: 5px 5px; mask-image: linear-gradient(to bottom, transparent, #000 28%, #000 75%, transparent); }
.hero-glow { position: absolute; z-index: -1; width: 58vw; height: 58vw; top: 2vh; right: -10vw; border: 1px solid rgba(57,200,255,.2); border-radius: 50%; box-shadow: inset 0 0 12rem rgba(57,200,255,.07), 0 0 10rem rgba(57,200,255,.04); }
.hero-glow::before, .hero-glow::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.07); border-radius: 50%; }
.hero-glow::before { inset: 13%; }.hero-glow::after { inset: 29%; }
.hero-grid { width: 100%; max-width: var(--content-max); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(27rem, .98fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.hero-copy { position: relative; z-index: 3; padding-top: 2rem; }
.hero-eyebrow { margin-bottom: clamp(2rem, 4vh, 3rem); }
.hero h1 { margin: 0; font-size: clamp(3.8rem, 6vw, 7.4rem); line-height: .84; letter-spacing: -.07em; font-weight: 730; text-transform: uppercase; transform: scale(.85); transform-origin: left top; }
.hero-line { display: block; white-space: nowrap; }
.hero-line--outline { color: transparent; -webkit-text-stroke: 1.2px rgba(255,255,255,.7); font-weight: 450; }
.hero-lead { width: min(35rem, 88%); margin: clamp(2rem, 4vh, 3rem) 0 0; font-size: clamp(1rem, 1.25vw, 1.35rem); line-height: 1.55; color: rgba(255,255,255,.7); }
.hero-ctas { margin-top: 2rem; display: flex; align-items: center; gap: 1.6rem; flex-wrap: wrap; }
.button { min-height: 3.7rem; padding: 0 1.45rem; display: inline-flex; align-items: center; justify-content: space-between; gap: 2.5rem; border: 1px solid transparent; border-radius: 999px; text-transform: uppercase; letter-spacing: .1em; font-size: .7rem; font-weight: 760; cursor: pointer; transition: background .3s, color .3s, border-color .3s; }
.button i { font-style: normal; font-size: 1rem; }
.button--primary { background: var(--blue); color: var(--ink); }
.button--dark { background: var(--ink); color: var(--white); }
.button--outline { border-color: rgba(255,255,255,.4); color: #fff; }
.button:hover { background: var(--white); color: var(--ink); border-color: var(--white); }
.hero-ctas .button--primary { min-height:2.59rem; }
.hero-ctas .button--primary i { display:inline-block; transform-origin:center; will-change:transform,opacity; animation:heroCtaArrowNudge 1.45s cubic-bezier(.4,0,.2,1) infinite; }
@keyframes heroCtaArrowNudge { 0%,18%{opacity:.55;transform:translate(0,0)} 48%{opacity:1;transform:translate(.24rem,-.24rem)} 72%,100%{opacity:.55;transform:translate(0,0)} }
.text-link { display: inline-flex; align-items: center; gap: .7rem; padding-bottom: .3rem; border-bottom: 1px solid rgba(255,255,255,.35); font-size: .78rem; letter-spacing: .05em; }
.text-link span { color: var(--blue); }
.text-link--dark { border-color: rgba(5,5,5,.35); }
.text-link--dark span { color: var(--ink); }

.hero-product { position: relative; height: min(62vh, 42rem); min-height: 33rem; display: grid; place-items: center; perspective: 1200px; }
.product-halo { position: absolute; z-index: 2; width: min(39vw, 38rem); aspect-ratio: 1; border: 1px solid rgba(57,200,255,.2); border-radius: 50%; transform: rotateX(68deg) rotateZ(-8deg); pointer-events:none; }
.product-halo i { position: absolute; inset: 12%; border: 1px solid rgba(255,255,255,.09); border-radius: 50%; }
.product-halo i:nth-child(2) { inset: 29%; }.product-halo i:nth-child(3) { inset: 45%; background: rgba(57,200,255,.1); border: 0; }
.hero-kiosk-stage { position:relative; z-index:1; width:min(78%,27.5rem); height:calc(100% - 2.5rem); margin:0; display:grid; place-items:center; transform-style:preserve-3d; transform:translateY(-.75rem) rotateY(-4deg) rotateX(1deg) translateZ(0); }
.hero-kiosk-stage::before { content:""; position:absolute; z-index:-1; width:82%; aspect-ratio:1; border-radius:50%; background:rgba(57,200,255,.18); filter:blur(4rem); opacity:.75; }
.hero-kiosk-slides { position:absolute; inset:0; }
.hero-kiosk-slide { position:absolute; inset:0; z-index:1; margin:0; opacity:0; pointer-events:none; transform:translateX(1.6rem) rotateY(-4deg) scale(.97); transition:opacity .36s ease,transform .46s cubic-bezier(.22,.61,.36,1); }
.hero-kiosk-slide.is-active { z-index:2; opacity:1; transform:translateX(0) rotateY(0) scale(1); }
.hero-product.is-reversing .hero-kiosk-slide:not(.is-active) { transform:translateX(-1.6rem) rotateY(4deg) scale(.97); }
.hero-kiosk-photo { position:absolute; inset:0; display:block; width:100%; height:100%; min-width:0; min-height:0; object-fit:contain; object-position:center; filter:drop-shadow(0 2.6rem 2.2rem rgba(0,0,0,.55)); }
.hero-kiosk-photo--catalog { user-select:none; }
.hero-kiosk-meta { position:absolute; z-index:8; left:50%; bottom:-4.25rem; width:max-content; max-width:100%; display:grid; justify-items:center; gap:.4rem; transform:translateX(-50%); }
.hero-kiosk-name { margin:0; padding:.4rem .7rem; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(5,5,5,.58); backdrop-filter:blur(10px); color:rgba(255,255,255,.94); font:650 .56rem/1 ui-monospace,monospace; letter-spacing:.09em; text-align:center; text-transform:uppercase; }
.hero-kiosk-name span { color:var(--blue); }
.hero-kiosk-controls { display:flex; align-items:center; justify-content:center; gap:.4rem; }
.hero-kiosk-controls button { width:2.25rem; height:2.25rem; padding:0; display:grid; place-items:center; border:1px solid rgba(255,255,255,.34); border-radius:50%; background:rgba(5,5,5,.64); color:#fff; font-size:1rem; line-height:1; backdrop-filter:blur(10px); cursor:pointer; transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease; }
.hero-kiosk-controls button:hover,.hero-kiosk-controls button:focus-visible { border-color:var(--blue); background:var(--blue); color:var(--ink); transform:translateY(-2px); }
.hero-kiosk-controls button:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.hero-kiosk-controls .hero-kiosk-pause { width:1.8rem; height:1.8rem; border-color:rgba(255,255,255,.2); font-size:.62rem; }
.hero-kiosk-count { min-width:3.7rem; color:rgba(255,255,255,.58); font:650 .55rem/1 ui-monospace,monospace; letter-spacing:.12em; text-align:center; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.product-label { position: absolute; z-index:4; padding: .65rem .8rem; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; background: rgba(10,11,13,.48); backdrop-filter: blur(10px); color: rgba(255,255,255,.72); font: 600 .58rem/1 ui-monospace,monospace; letter-spacing: .1em; text-transform: uppercase; }
.product-label::before { content:""; display:inline-block; width:.38rem; height:.38rem; margin-right:.5rem; border-radius:50%; background:var(--blue); box-shadow:0 0 .7rem var(--blue); }
.product-label--one { top: 14%; right: 4%; }.product-label--two { bottom: 32%; left: 2%; }.product-label--three { bottom: 14%; right: 8%; }
.hero-bottom { max-width: var(--content-max); width: 100%; margin: 5.75rem auto 0; display: grid; grid-template-columns: repeat(3, minmax(8rem, 12rem)) 1fr; border-top: 1px solid var(--line-dark); }
.hero-bottom > div { padding: 1rem .75rem 0; display: grid; justify-items: center; gap: .25rem; border-right: 1px solid var(--line-dark); text-align: center; }
.hero-bottom b { font-size: .95rem; color: var(--blue); }.hero-bottom span { font-size: .62rem; color: rgba(255,255,255,.48); text-transform: uppercase; letter-spacing: .1em; }
.hero-bottom > p { align-self: end; justify-self: end; margin: 0; display:flex; align-items:flex-start; gap:.65rem; overflow:visible; font: 600 .62rem/1 ui-monospace,monospace; text-transform: uppercase; letter-spacing: .1em; color: rgba(255,255,255,.55); }
.hero-scroll-arrow { position:relative; flex:0 0 auto; display:inline-block; width:.72rem; height:1.35rem; margin-top:-.16rem; color:var(--blue); filter:drop-shadow(0 0 .32rem rgba(57,200,255,.65)); animation:heroScrollDrop 1.55s cubic-bezier(.45,0,.2,1) infinite; }
.hero-scroll-arrow::before { content:""; position:absolute; top:0; left:50%; width:1.5px; height:.98rem; background:linear-gradient(to bottom,transparent 0%,currentColor 34%,currentColor 100%); transform:translateX(-50%); }
.hero-scroll-arrow::after { content:""; position:absolute; left:50%; bottom:.05rem; width:.42rem; height:.42rem; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateX(-50%) rotate(45deg); }
@keyframes heroScrollDrop { 0%{opacity:.18;transform:translateY(-.18rem)} 34%{opacity:1} 72%{opacity:1;transform:translateY(.24rem)} 100%{opacity:0;transform:translateY(.42rem)} }
@keyframes screenSheen { 0%,55%{transform:translateX(-45%)} 85%,100%{transform:translateX(45%)} }

.signal-strip { position: relative; z-index: 2; overflow: hidden; border-block: 1px solid rgba(5,5,5,.25); background: var(--blue); color: var(--ink); }
.signal-track { --signal-shift:0px; --signal-duration:24s; width:max-content; display:flex; align-items:center; padding:.82rem 0; animation:marquee var(--signal-duration) linear infinite; will-change:transform; }
.signal-sequence { flex:none; display:flex; align-items:center; gap:clamp(2rem,2.8vw,3.5rem); padding-right:clamp(2rem,2.8vw,3.5rem); }
.signal-track span { font-size: .72rem; font-weight: 780; letter-spacing: .14em; }.signal-track i { font-style: normal; font-size: .7rem; }
@keyframes marquee { to { transform:translate3d(calc(var(--signal-shift) * -1),0,0); } }

.anatomy { min-height: 390svh; }
.anatomy#anatomia { scroll-margin-top:0; }
.anatomy-sticky { position: sticky; top: 0; height: 100svh; min-height: 44rem; padding: clamp(6.5rem, 10vh, 8rem) var(--pad) 3rem; display: grid; grid-template-columns: .85fr 1fr .8fr; align-items: center; gap: clamp(2rem,4vw,4rem); overflow: hidden; }
.anatomy-sticky::before { content:""; position:absolute; inset:0; opacity:.28; background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.1) 50%,transparent 50.1%),linear-gradient(0deg,transparent 49.9%,rgba(255,255,255,.08) 50%,transparent 50.1%); background-size:8rem 8rem; mask-image:radial-gradient(circle at center,#000,transparent 72%); }
.anatomy-head { position: relative; z-index: 3; align-self: center; }
.anatomy-head h2 { margin: 1.6rem 0 0; font-size: clamp(3rem,4.5vw,5.5rem); line-height: .9; letter-spacing: -.065em; text-transform: uppercase; }
.anatomy-product { position: relative; height: 68vh; min-height: 32rem; display: grid; place-items: center; perspective: 1200px; isolation:isolate; }
.anatomy-ring { position:absolute; width:30rem; aspect-ratio:1; border:1px solid rgba(57,200,255,.2); border-radius:50%; box-shadow:0 0 6rem rgba(57,200,255,.06); }
.anatomy-kiosk-real { position:relative; z-index:2; width:min(92%,31rem); height:100%; display:grid; place-items:center; transform-style:preserve-3d; }
.anatomy-kiosk-real::before { content:""; position:absolute; z-index:-1; width:70%; aspect-ratio:1; border-radius:50%; background:rgba(57,200,255,.14); filter:blur(3.5rem); }
.anatomy-model { --render-area-scale:1.16; position:absolute; left:50%; top:50%; width:calc(100% * var(--render-area-scale)); height:calc(100% * var(--render-area-scale)); transform:translate(-50%,-50%); opacity:0; --poster-color:transparent; background:transparent; filter:drop-shadow(0 2rem 1.8rem rgba(0,0,0,.48)); }
.anatomy-model.is-ready { opacity:1; }
.anatomy-model::part(default-progress-bar) { height:2px; background-color:var(--blue); }
.anatomy-product-logo { position:absolute; left:50%; bottom:2.4rem; width:8.5rem!important; height:auto!important; transform:translateX(-50%) translateZ(2rem); filter:none!important; opacity:.82; }
.anatomy-kiosk-label { position:absolute; z-index:1; left:50%; bottom:-3.5rem; width:max-content; max-width:calc(100% - 2rem); margin:0; padding:.4rem .7rem; border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(5,5,5,.88); color:rgba(255,255,255,.94); font:650 .56rem/1 ui-monospace,monospace; letter-spacing:.09em; text-align:center; text-transform:uppercase; transform:translateX(-50%); }
.anatomy-kiosk-label strong { font-weight:inherit; }
.anatomy-kiosk-label span { color:var(--blue); }
.scan-line { position:absolute; width:25rem; height:2px; background:linear-gradient(90deg,transparent,var(--blue),transparent); box-shadow:0 0 1.5rem var(--blue); top:20%; }
.anatomy-steps { position: relative; z-index: 3; display: grid; }
.anatomy-step { grid-area: 1/1; align-self: center; opacity: 0; transform: translateY(2rem); pointer-events: none; }
.anatomy-step.is-active { opacity: 1; transform: none; }
.anatomy-step > span { display:block; margin-bottom:2rem; color:var(--blue); font:600 .68rem/1 ui-monospace,monospace; letter-spacing:.14em; }
.anatomy-step h3 { margin:0; font-size:clamp(2.2rem,3.2vw,4rem); line-height:.94; letter-spacing:-.055em; text-transform:uppercase; }
.anatomy-step p { max-width:28rem; margin:1.5rem 0 0; font-size:1.05rem; line-height:1.55; color:rgba(255,255,255,.6); }
.anatomy-meter { position:absolute; right:var(--pad); bottom:2rem; display:flex; align-items:center; gap:.6rem; font:600 .65rem/1 ui-monospace,monospace; color:var(--blue); }
.anatomy-meter i { width:8rem; height:1px; background:var(--line-dark); overflow:hidden; }
.anatomy-meter i::after { content:""; display:block; width:100%; height:100%; background:var(--blue); transform:scaleX(var(--step, .2)); transform-origin:left; transition:transform .35s var(--ease); }
.anatomy-meter em { color:rgba(255,255,255,.38); font-style:normal; }

.missions { height:100svh; min-height:100svh; padding-top:clamp(5rem,9vh,6.5rem); display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; }
.missions#soluciones { scroll-margin-top:0; }
.missions-intro { width:calc(100% - (2 * var(--pad)));max-width:var(--content-max);margin:0 auto;padding:0 0 clamp(1.75rem,3.5vh,2.75rem);display:grid;grid-template-columns:1.2fr .8fr;column-gap:clamp(2rem,5vw,5rem);row-gap:clamp(.8rem,1.5vh,1.25rem);align-items:end; }
.missions-intro .eyebrow { grid-column:1/-1; }
.missions-intro h2 { margin:0; max-width:47rem; font-size:clamp(3rem,3.8vw,4.5rem); line-height:.92; letter-spacing:-.06em; text-transform:uppercase; }
.missions-intro > p:last-child { max-width:18rem; justify-self:end; color:rgba(5,5,5,.56); line-height:1.6; }
.missions-viewport { min-height:0; height:100%; overflow:hidden; perspective:1400px; }
.missions-track { width:max-content; height:100%; display:flex; align-items:stretch; padding:0 max(var(--pad), calc((100vw - var(--content-max)) / 2)) clamp(1.75rem,4vh,3rem); transform-style:preserve-3d; }
.mission { --mission-fg:var(--ink); --mission-bg:var(--blue); --mission-line:rgba(5,5,5,.2); --mission-glow:rgba(255,255,255,.34); --mission-proximity:.25; --mission-opacity:.56; --mission-scale:.925; --mission-z:10px; --mission-grid-opacity:.12; --mission-glow-opacity:.22; --mission-grid-x:0px; --mission-grid-y:0px; --mission-glow-x:0px; --mission-glow-y:0px; --mission-viz-x:0px; --mission-viz-y:0px; --mission-rotate-x:0deg; --mission-rotate-y:0deg; --mission-title-x:0px; position:relative; width:min(54vw,38rem); height:100%; min-height:0; padding:clamp(1.5rem,2.15vw,2.35rem); display:grid; grid-template-columns:1fr auto; grid-template-rows:auto auto minmax(8.5rem,1fr) auto; color:var(--mission-fg); background:var(--mission-bg); border-right:1px solid var(--mission-line); overflow:hidden; isolation:isolate; transform-style:preserve-3d; }
.mission::before { content:""; position:absolute; inset:-18%; z-index:-2; background:linear-gradient(var(--mission-line) 1px,transparent 1px),linear-gradient(90deg,var(--mission-line) 1px,transparent 1px); background-size:2.6rem 2.6rem; opacity:var(--mission-grid-opacity); transform:translate3d(var(--mission-grid-x),var(--mission-grid-y),0) rotate(-4deg); transition:opacity .45s var(--ease); }
.mission::after { content:""; position:absolute; z-index:-1; width:26rem; aspect-ratio:1; right:-8rem; top:24%; border-radius:50%; background:radial-gradient(circle,var(--mission-glow),transparent 68%); filter:blur(1.5rem); opacity:var(--mission-glow-opacity); transform:translate3d(var(--mission-glow-x),var(--mission-glow-y),0); transition:opacity .45s var(--ease); }
.mission--black { --mission-fg:var(--white); --mission-bg:#070809; --mission-line:rgba(255,255,255,.12); --mission-glow:rgba(57,200,255,.3); }
.mission--blue { --mission-fg:var(--ink); --mission-bg:var(--blue); }
.mission--paper { --mission-fg:var(--ink); --mission-bg:#faf9f5; --mission-glow:rgba(57,200,255,.42); }
.mission--clay { --mission-fg:var(--ink); --mission-bg:var(--clay); --mission-glow:rgba(255,225,198,.42); }
.mission--black .mission-viz { color:var(--blue); }
.mission--paper .mission-viz { color:#087da8; }
.mission-no { justify-self:end; font:650 .62rem/1 ui-monospace,monospace; letter-spacing:.13em; opacity:.58; }
.mission-tag { grid-row:1; margin:0; font:650 .62rem/1 ui-monospace,monospace; letter-spacing:.16em; text-transform:uppercase; opacity:.62; }
.mission h3 { grid-column:1/-1; max-width:100%; margin:clamp(1.1rem,2vh,1.8rem) 0 0; font-size:clamp(2.45rem,3.55vw,3.7rem); line-height:.88; letter-spacing:-.065em; text-transform:uppercase; transform:translate3d(var(--mission-title-x),0,0); transition:letter-spacing .7s var(--ease),transform .5s var(--ease); }
.mission.is-active h3 { letter-spacing:-.045em; }
.mission--core { box-shadow:inset 0 0 0 1px rgba(5,5,5,.45); }
.mission--core .mission-tag::after { content:" · ORIGEN"; font-weight:800; }
.mission-viz { position:relative; grid-column:1/-1; align-self:center; width:100%; min-height:clamp(9rem,23vh,15rem); color:currentColor; opacity:var(--mission-opacity); transform:translate3d(var(--mission-viz-x),var(--mission-viz-y),var(--mission-z)) rotateX(var(--mission-rotate-x)) rotateY(var(--mission-rotate-y)) scale(var(--mission-scale)); transform-origin:center; transition:opacity .4s var(--ease); will-change:transform; }
.mission-viz::before { content:""; position:absolute; inset:8% 5%; border:1px solid var(--mission-line); border-radius:50%; transform:scaleX(.78) rotate(-7deg); opacity:.62; }
.mission-viz__hud { position:absolute; top:1rem; left:0; z-index:2; display:flex; align-items:center; gap:.6rem; font:650 .48rem/1 ui-monospace,monospace; letter-spacing:.14em; opacity:.55; }
.mission-viz__hud::before { content:""; width:.35rem; aspect-ratio:1; border-radius:50%; background:currentColor; box-shadow:0 0 .9rem currentColor; animation:missionBlink 1.8s steps(2,end) infinite; }
.mission-viz svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; filter:drop-shadow(0 .8rem 1.4rem rgba(0,0,0,.08)); }
.mission-viz svg path,.mission-viz svg circle,.mission-viz svg rect { fill:none; stroke:currentColor; stroke-width:1.35; vector-effect:non-scaling-stroke; }
.mission-viz svg text { fill:currentColor; stroke:none; font:700 18px/1 ui-monospace,monospace; text-anchor:middle; }
.mission-viz .mission-flow,.mission-viz .mission-route,.mission-viz .mission-wave { stroke-dasharray:7 9; animation:missionDash 2.8s linear infinite; }
.mission-viz .mission-pulse { transform-box:fill-box; transform-origin:center; animation:missionPulse 2.2s var(--ease) infinite; }
.mission-viz .mission-orbit { transform-box:fill-box; transform-origin:center; animation:missionOrbit 13s linear infinite; }
.mission-viz .mission-arrow,.mission-viz .mission-check { stroke-width:2.4; }
.mission-viz--self .mission-nodes circle:not(.mission-pulse) { fill:currentColor; stroke:none; }
.mission-viz--pay .mission-receipt { transform-box:fill-box; transform-origin:center; animation:missionFloat 3.8s ease-in-out infinite; }
.mission-viz--pay .mission-check { animation:missionCheck 2.2s var(--ease) infinite; transform-box:fill-box; transform-origin:center; }
.mission-ticket { transform-box:fill-box; transform-origin:center; }
.mission-ticket--one,.mission-ticket--three { opacity:.38; animation:missionTicket 3s var(--ease) infinite; }
.mission-ticket--two { animation:missionTicket 3s var(--ease) -1.5s infinite; }
.mission-viz--id .mission-data circle { fill:currentColor; stroke:none; }
.mission-viz--id .mission-scan { stroke-width:2; filter:drop-shadow(0 0 6px currentColor); animation:missionScan 2.7s var(--ease) infinite; transform-box:fill-box; transform-origin:center; }
.mission-viz--map .mission-map-grid { opacity:.22; }
.mission-viz--map .mission-route { stroke-width:2.5; stroke-dasharray:8 8; }
.mission-viz--map .mission-pin { fill:var(--mission-bg); stroke-width:1.8; animation:missionFloat 3.2s ease-in-out infinite; transform-box:fill-box; transform-origin:center; }
.mission-viz--ai .mission-neural path { opacity:.38; stroke-dasharray:3 7; animation:missionDash 4s linear infinite reverse; }
.mission-viz--ai .mission-neural circle { fill:var(--mission-bg); }
.mission-viz--ai .mission-wave { stroke-width:2.2; filter:drop-shadow(0 0 5px currentColor); }
.mission-bottom { grid-column:1/-1; display:grid; align-self:end; gap:.85rem; position:relative; z-index:3; }
.mission-bottom p { max-width:23rem; margin:0; font-size:.86rem; line-height:1.48; opacity:.68; }
.mission-bottom a { width:max-content; padding-bottom:.25rem; border-bottom:1px solid currentColor; font-size:.75rem; transition:opacity .25s,transform .35s var(--ease); }
.mission-bottom a:hover { opacity:.62; transform:translateX(.35rem); }
.mission:not(.is-active) .mission-viz * { animation-play-state:paused; }
@keyframes missionBlink { 50%{opacity:.25} }
@keyframes missionDash { to{stroke-dashoffset:-64} }
@keyframes missionPulse { 0%,100%{transform:scale(.65);opacity:.3} 48%{transform:scale(1.35);opacity:1} }
@keyframes missionOrbit { to{transform:rotate(360deg)} }
@keyframes missionFloat { 0%,100%{transform:translateY(-4px)} 50%{transform:translateY(7px)} }
@keyframes missionCheck { 0%,24%{transform:scale(.7);opacity:.2} 44%,100%{transform:scale(1);opacity:1} }
@keyframes missionTicket { 0%,100%{transform:translateY(6px);opacity:.38} 50%{transform:translateY(-7px);opacity:1} }
@keyframes missionScan { 0%,100%{transform:translateY(-54px);opacity:.2} 50%{transform:translateY(54px);opacity:1} }

.architecture { min-height: max(130svh, 58rem); padding: var(--scene-space) var(--pad); display:grid; grid-template-columns:1fr 1fr; gap:clamp(3rem,6vw,6rem); align-items:center; }
.architecture::before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 69% 42%,rgba(57,200,255,.14),transparent 34%);z-index:-1 }
.architecture-copy { align-self:start; position:sticky; top:10rem; }
.architecture-copy h2 { margin:1.6rem 0 2rem; font-size:clamp(3.5rem,5.7vw,7rem);line-height:.89;letter-spacing:-.068em;text-transform:uppercase}.architecture-copy h2 em{color:var(--blue);font-style:normal}.architecture-copy>p:last-child{max-width:29rem;color:rgba(255,255,255,.58);font-size:1.05rem;line-height:1.65}
.architecture-orbit { position:absolute;right:-7vw;top:18%;width:min(57vw,55rem);aspect-ratio:1;display:grid;place-items:center; }
.orbit-core { width:9rem;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--blue);color:var(--ink);box-shadow:0 0 6rem rgba(57,200,255,.3);transform-origin:50% 50%;will-change:transform,box-shadow;animation:orbitCoreSweep 7.8s cubic-bezier(.6,.02,.4,.98) infinite}.orbit-core span{font-weight:800;letter-spacing:.05em}.orbit-core b{font:600 .5rem/1 ui-monospace,monospace;letter-spacing:.14em;margin-top:.4rem}
.orbit{position:absolute;border:1px solid rgba(255,255,255,.14);border-radius:50%;animation:orbitSpin 26s linear infinite}.orbit span{position:absolute;padding:.55rem .7rem;background:var(--ink);border:1px solid rgba(255,255,255,.2);border-radius:999px;font:600 .5rem/1 ui-monospace,monospace;letter-spacing:.1em}.orbit span:nth-child(1){left:50%;top:-.9rem}.orbit span:nth-child(2){right:-1rem;top:50%}.orbit span:nth-child(3){left:5%;bottom:12%}.orbit--one{inset:29%}.orbit--two{inset:16%;animation-duration:34s;animation-direction:reverse}.orbit--three{inset:2%;animation-duration:42s}.orbit--two span{border-color:rgba(57,200,255,.35);color:var(--blue)}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
@keyframes orbitCoreSweep{0%,8%{transform:rotate(-60deg) scale(1);box-shadow:0 0 5rem rgba(57,200,255,.28)}45%,55%{transform:rotate(90deg) scale(1.045);box-shadow:0 0 7.5rem rgba(57,200,255,.46)}92%,100%{transform:rotate(-60deg) scale(1);box-shadow:0 0 5rem rgba(57,200,255,.28)}}
.architecture-list { grid-column:2; position:relative; z-index:2; margin-top:48vh; border-top:1px solid var(--line-dark); }
.architecture-list div{padding:1.7rem 0;display:grid;grid-template-columns:3rem 7rem 1fr;gap:1rem;align-items:start;border-bottom:1px solid var(--line-dark)}.architecture-list span{color:var(--blue);font:600 .62rem/1 ui-monospace,monospace}.architecture-list p{margin:0;color:rgba(255,255,255,.45);font-size:.78rem}.architecture-list b{font-size:clamp(1.2rem,1.7vw,1.8rem);font-weight:500;letter-spacing:-.03em}

.factory { height:100svh; min-height:42rem; padding:clamp(5.4rem,9vh,6.7rem) 0 0; overflow:hidden; }
.factory::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(rgba(5,5,5,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(5,5,5,.07) 1px,transparent 1px); background-size:4rem 4rem; mask-image:linear-gradient(to bottom,transparent 5%,#000 35%,#000 100%); opacity:.48; transform:translate3d(0,var(--factory-grid-y,0),0); }
.factory-frame { width:100%; height:100%; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr); }
.factory-title-wrap { position:relative; z-index:4; width:calc(100% - (2 * var(--pad))); max-width:var(--content-max); margin:0 auto; transform-origin:left top; will-change:transform; }
.factory-title-wrap h2 { max-width:68rem; margin:1.2rem 0 0; font-size:clamp(3.4rem,4.7vw,5.8rem); line-height:.82; letter-spacing:-.072em; text-transform:uppercase; }
.factory-stage { position:relative; min-width:0; min-height:0; margin-top:clamp(1rem,2.5vh,2rem); }
.factory-stage::before { content:"PROCESO INTEGRAL / 01—05"; position:absolute; z-index:5; top:.25rem; left:var(--pad); font:650 .5rem/1 ui-monospace,monospace; letter-spacing:.16em; opacity:.55; }
.factory-viewport { width:100%; height:100%; overflow:hidden; perspective:1300px; }
.factory-path { width:max-content; height:100%; display:flex; align-items:stretch; gap:.8rem; padding:1.7rem max(var(--pad),calc(50vw - min(19.5vw,15.5rem))) clamp(1.8rem,3.5vh,2.7rem); transform-style:preserve-3d; will-change:transform; }
.factory-card { --factory-card-bg:#f3f0e8; --factory-card-fg:var(--ink); --factory-card-line:rgba(5,5,5,.2); --factory-scale:.94; --factory-y:1rem; --factory-z:0px; --factory-opacity:.62; position:relative; flex:none; width:min(39vw,31rem); height:100%; min-height:18rem; padding:clamp(1.35rem,2vw,2rem); display:grid; grid-template-rows:auto auto 1fr auto; color:var(--factory-card-fg); background:var(--factory-card-bg); border:1px solid var(--factory-card-line); overflow:hidden; opacity:var(--factory-opacity); transform:translate3d(0,var(--factory-y),var(--factory-z)) scale(var(--factory-scale)); transform-origin:center; transition:opacity .35s var(--ease),border-color .35s,box-shadow .45s var(--ease); will-change:transform; }
.factory-card::before { content:attr(data-factory-index); position:absolute; right:-.04em; bottom:-.23em; z-index:0; font-size:clamp(8rem,13vw,14rem); line-height:1; font-weight:800; letter-spacing:-.1em; color:transparent; -webkit-text-stroke:1px var(--factory-card-line); opacity:.65; }
.factory-card::after { content:""; position:absolute; right:1.4rem; top:1.45rem; width:.42rem; aspect-ratio:1; border-radius:50%; background:currentColor; box-shadow:0 0 0 .45rem transparent,0 0 1rem currentColor; opacity:.45; }
.factory-card--paper { --factory-card-bg:#f5f3ed; }
.factory-card--clay { --factory-card-bg:#d98562; }
.factory-card--black { --factory-card-bg:#090a0c; --factory-card-fg:var(--white); --factory-card-line:rgba(255,255,255,.16); }
.factory-card--blue { --factory-card-bg:var(--blue); }
.factory-card.is-active { --factory-opacity:1; border-color:currentColor; box-shadow:0 1.8rem 4rem rgba(61,28,17,.18); }
.factory-card__meta { position:relative; z-index:2; display:flex; justify-content:space-between; padding-right:1.5rem; font:650 .58rem/1 ui-monospace,monospace; letter-spacing:.14em; }
.factory-card__meta small { font:inherit; opacity:.52; }
.factory-card h3 { position:relative; z-index:2; margin:clamp(1rem,2vh,1.6rem) 0 0; font-size:clamp(2rem,3vw,3.25rem); line-height:.9; letter-spacing:-.06em; text-transform:uppercase; }
.factory-card > p { position:relative; z-index:2; max-width:25rem; margin:1rem 0 0; font-size:.82rem; line-height:1.5; opacity:.66; }
.factory-card { --media-x:0px; --media-y:0px; --media-scroll-y:0px; --media-scale:1.025; }
.factory-card__visual { position:relative; z-index:2; align-self:stretch; width:calc(100% + (2 * clamp(1.35rem,2vw,2rem))); height:auto; min-height:0; margin:.9rem calc(-1 * clamp(1.35rem,2vw,2rem)) .15rem; overflow:hidden; isolation:isolate; background:#071017; border-block:1px solid rgba(57,200,255,.32); box-shadow:inset 0 0 3rem rgba(57,200,255,.09); }
.factory-card__visual::before { content:""; position:absolute; inset:0; z-index:3; pointer-events:none; background:linear-gradient(180deg,rgba(4,10,15,.03) 42%,rgba(4,10,15,.82) 100%),repeating-linear-gradient(180deg,transparent 0,transparent 3px,rgba(255,255,255,.028) 4px); mix-blend-mode:multiply; }
.factory-card__visual::after { content:""; position:absolute; inset:.45rem; z-index:5; border:1px solid rgba(255,255,255,.14); clip-path:polygon(0 0,20% 0,20% 1px,80% 1px,80% 0,100% 0,100% 100%,82% 100%,82% calc(100% - 1px),18% calc(100% - 1px),18% 100%,0 100%); pointer-events:none; }
.factory-card__visual img { position:absolute; inset:-4%; z-index:1; width:108%; height:108%; object-fit:cover; object-position:center; filter:saturate(.82) contrast(1.06) brightness(.9); transform:translate3d(var(--media-x),calc(var(--media-y) + var(--media-scroll-y)),0) scale(var(--media-scale)); transition:transform .65s var(--ease),filter .8s var(--ease); will-change:transform,filter; }
.factory-card__visual--deployment img { object-position:center 10%; }
.factory-card.is-active .factory-card__visual img { filter:saturate(1.08) contrast(1.03) brightness(1); }
.factory-card__visual > span { position:absolute; display:block; z-index:4; pointer-events:none; }
.factory-media__scan { left:-36%; top:0; width:24%; height:100%; opacity:0; background:linear-gradient(90deg,transparent,rgba(57,200,255,.28),rgba(255,255,255,.16),transparent); transform:skewX(-12deg); }
.factory-card.is-active .factory-media__scan { animation:factoryImageScan 4.8s cubic-bezier(.45,0,.25,1) infinite; }
.factory-media__glow { width:9rem; aspect-ratio:1; left:50%; top:56%; border-radius:50%; background:radial-gradient(circle,rgba(57,200,255,.4),rgba(57,200,255,.08) 38%,transparent 70%); transform:translate(-50%,-50%); mix-blend-mode:screen; animation:factoryScreenPulse 2.7s var(--ease) infinite; }
.factory-media__trace { inset:12% 9%; border:1px solid rgba(57,200,255,.58); clip-path:polygon(0 0,0 0,0 0,0 100%,0 100%); animation:factoryTrace 4.2s var(--ease) infinite; }
.factory-card__visual--diagnosis .factory-media__trace { inset:18% 28% 12%; border-radius:50%; border-style:dashed; }
.factory-card__visual--design .factory-media__trace { inset:12% 8% 11% 44%; transform:skewY(-5deg); }
.factory-media__arc { left:64%; top:51%; width:5.5rem; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#fff 0 3%,#4cdaff 6%,rgba(57,200,255,.35) 18%,transparent 68%); transform:translate(-50%,-50%); mix-blend-mode:screen; animation:factoryWeldArc 1.3s steps(2,end) infinite; }
.factory-media__sparks { left:65%; top:52%; width:.2rem; height:.2rem; border-radius:50%; color:#ff9f43; background:currentColor; box-shadow:1.2rem -.7rem 0 -.04rem currentColor,2.4rem -1.5rem 0 -.06rem #ffd28a,3.6rem -.3rem 0 -.05rem currentColor,1.8rem 1.2rem 0 -.06rem #fff,4.2rem 2rem 0 -.04rem currentColor,2.8rem 3.1rem 0 -.07rem #ffd28a,5.5rem 1rem 0 -.07rem currentColor,.8rem 2.2rem 0 -.05rem #fff; transform-origin:left center; animation:factorySparks 1.15s ease-out infinite; }
.factory-media__data { width:4.2rem; height:2.3rem; border:1px solid rgba(57,200,255,.7); background:linear-gradient(90deg,rgba(57,200,255,.48) 1px,transparent 1px),linear-gradient(rgba(57,200,255,.38) 1px,transparent 1px); background-size:.7rem .7rem; box-shadow:0 0 1.5rem rgba(57,200,255,.18); animation:factoryDataFloat 3.4s var(--ease) infinite; }
.factory-media__data--one { left:8%; top:12%; }.factory-media__data--two { right:8%; bottom:12%; animation-delay:-1.7s; }
.factory-media__halo { left:53%; bottom:7%; width:52%; height:18%; border:1px solid rgba(57,200,255,.78); border-radius:50%; transform:translateX(-50%) rotateX(68deg); box-shadow:0 0 2rem rgba(57,200,255,.25),inset 0 0 1.2rem rgba(57,200,255,.16); animation:factoryFloorHalo 3s var(--ease) infinite; }
.factory-media__ping { left:55%; top:42%; width:.65rem; aspect-ratio:1; border:1px solid var(--blue); border-radius:50%; box-shadow:0 0 0 0 rgba(57,200,255,.45); animation:factoryPing 2.4s ease-out infinite; }
.factory-beam { position:absolute; z-index:6; left:0; right:0; top:52%; height:1px; background:rgba(5,5,5,.18); pointer-events:none; }
.factory-beam i { display:block; width:18vw; height:100%; background:linear-gradient(90deg,transparent,var(--blue),transparent); box-shadow:0 0 1rem var(--blue); transform:translate3d(var(--factory-beam-x,-20vw),0,0); }
.factory-meter { position:absolute; z-index:7; right:max(var(--pad),calc((100vw - var(--content-max))/2)); bottom:.7rem; display:flex; align-items:center; gap:.65rem; font:650 .56rem/1 ui-monospace,monospace; letter-spacing:.1em; }
.factory-meter i { width:8rem; height:1px; background:rgba(5,5,5,.22); overflow:hidden; }.factory-meter i b { display:block; width:100%; height:100%; background:var(--ink); transform:scaleX(var(--factory-progress,.01)); transform-origin:left; }.factory-meter em { font-style:normal; opacity:.45; }
.factory-card:not(.is-active) .factory-card__visual * { animation-play-state:paused; }
@keyframes factoryImageScan { 0%,14%{left:-36%;opacity:0} 24%{opacity:.85} 58%{left:115%;opacity:.35} 59%,100%{left:115%;opacity:0} }
@keyframes factoryScreenPulse { 0%,100%{opacity:.32;transform:translate(-50%,-50%) scale(.78)} 50%{opacity:1;transform:translate(-50%,-50%) scale(1.18)} }
@keyframes factoryTrace { 0%,14%{opacity:0;clip-path:polygon(0 0,0 0,0 0,0 100%,0 100%)} 44%,70%{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 100%)} 100%{opacity:0;clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%,100% 100%)} }
@keyframes factoryWeldArc { 0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(.72)} 24%{opacity:1;transform:translate(-50%,-50%) scale(1.18)} 52%{opacity:.68;transform:translate(-50%,-50%) scale(.92)} 74%{opacity:1;transform:translate(-50%,-50%) scale(1.3)} }
@keyframes factorySparks { 0%{opacity:0;transform:translate3d(-.2rem,-.1rem,0) rotate(-7deg) scale(.1)} 20%{opacity:1} 100%{opacity:0;transform:translate3d(3rem,1.7rem,0) rotate(12deg) scale(1.1)} }
@keyframes factoryDataFloat { 0%,100%{opacity:.28;transform:translate3d(0,.7rem,0)} 50%{opacity:.9;transform:translate3d(0,-.7rem,0)} }
@keyframes factoryFloorHalo { 0%,100%{opacity:.25;transform:translateX(-50%) rotateX(68deg) scale(.75)} 50%{opacity:.9;transform:translateX(-50%) rotateX(68deg) scale(1.12)} }
@keyframes factoryPing { 0%{opacity:1;box-shadow:0 0 0 0 rgba(57,200,255,.5)} 80%,100%{opacity:0;box-shadow:0 0 0 2.8rem rgba(57,200,255,0)} }

.cases{height:700svh;background:#d9dedb;color:#0a0b0d;overflow:visible}.cases#casos{scroll-margin-top:0}.cases-sticky{position:sticky;top:0;height:100svh;min-height:46rem;padding:clamp(6.25rem,9.5vh,7.6rem) var(--pad) clamp(2.2rem,4vh,3.25rem);overflow:hidden;isolation:isolate}.cases-sticky::before{content:"";position:absolute;z-index:1;inset:0;opacity:.18;background-image:radial-gradient(currentColor .55px,transparent .65px);background-size:5px 5px;mask-image:linear-gradient(to bottom,transparent 4%,#000 24%,#000 83%,transparent);pointer-events:none}.cases-sticky::after{content:"";position:absolute;z-index:2;left:50%;bottom:10%;width:min(46vw,42rem);height:10%;border-radius:50%;background:rgba(0,0,0,.38);filter:blur(2.5rem);transform:translateX(-50%);opacity:.55;pointer-events:none}.cases-atmospheres,.case-atmosphere{position:absolute;inset:0}.cases-atmospheres{z-index:-2;background:#090a0b}.case-atmosphere{display:block;opacity:0;transform:scale(1.06);will-change:opacity,transform}.case-atmosphere.is-active{opacity:1}.case-atmosphere::before,.case-atmosphere::after{content:"";position:absolute;border-radius:50%;filter:blur(5rem);opacity:.65}.case-atmosphere::before{width:50vw;height:50vw;left:-12vw;top:24%}.case-atmosphere::after{width:42vw;height:42vw;right:-8vw;bottom:-15%}.case-atmosphere--homecenter{background:linear-gradient(128deg,#f2f1eb 0%,#c8d2d0 47%,#7f969b 100%)}.case-atmosphere--homecenter::before{background:#ffffff}.case-atmosphere--homecenter::after{background:#3a7584}.case-atmosphere--coomeva{background:linear-gradient(125deg,#020b0b 0%,#07352f 54%,#0a7467 100%)}.case-atmosphere--coomeva::before{background:#05211d}.case-atmosphere--coomeva::after{background:#22c7a9}.case-atmosphere--farmatodo{background:linear-gradient(130deg,#061019 0%,#063c62 55%,#28a8d3 100%)}.case-atmosphere--farmatodo::before{background:#081c31}.case-atmosphere--farmatodo::after{background:#61d2f5}.case-atmosphere--enel{background:linear-gradient(128deg,#090507 0%,#52101e 54%,#ee3153 100%)}.case-atmosphere--enel::before{background:#1f060b}.case-atmosphere--enel::after{background:#ff4765}.case-atmosphere--claro{background:linear-gradient(130deg,#f4f1eb 0%,#e9d9d2 48%,#c9182b 100%)}.case-atmosphere--claro::before{background:#ffffff}.case-atmosphere--claro::after{background:#ff334a}.case-atmosphere--fundonal{background:linear-gradient(132deg,#16072d 0%,#6921ad 52%,#ee7e49 100%)}.case-atmosphere--fundonal::before{background:#311063}.case-atmosphere--fundonal::after{background:#ff9a5d}
.cases-chapter{position:relative;z-index:6;width:100%;max-width:var(--content-max);margin:0 auto;padding-bottom:1rem;display:grid;grid-template-columns:1fr auto auto;gap:clamp(1rem,2.5vw,2.4rem);align-items:center;border-bottom:1px solid rgba(255,255,255,.28);color:#fff;transition:color .55s var(--ease),border-color .55s}.cases-chapter .eyebrow{color:currentColor}.cases-chapter .eyebrow span{color:currentColor}.cases-chapter__statement h2{margin:0;font-size:clamp(.72rem,.9vw,.9rem);font-weight:650;letter-spacing:.08em;text-transform:uppercase}.cases-chapter__statement p{margin:.35rem 0 0;font-size:.64rem;letter-spacing:.04em;opacity:.56}.cases-more{min-height:2.65rem;padding:0 1.05rem;display:inline-flex;align-items:center;gap:2rem;border:1px solid currentColor;border-radius:999px;font-size:.62rem;font-weight:740;letter-spacing:.11em;text-transform:uppercase;transition:background .3s,color .3s}.cases-more i{font-style:normal;font-size:.9rem}.cases-more:hover{background:currentColor;color:#08090b}.cases.is-light .cases-chapter{color:#090a0b;border-color:rgba(5,5,5,.25)}.cases.is-light .cases-more:hover{color:#fff}
.case-theater{position:relative;z-index:4;width:100%;max-width:var(--content-max);height:calc(100% - 5rem);margin:0 auto}.case-scene{--scene-fg:#fff;--scene-muted:rgba(255,255,255,.65);--scene-accent:#39c8ff;position:absolute;inset:0;display:grid;grid-template-columns:minmax(12rem,.78fr) minmax(22rem,.92fr) minmax(13rem,.78fr);gap:clamp(1.8rem,4vw,4.8rem);align-items:center;color:var(--scene-fg);opacity:0;visibility:hidden;pointer-events:none;will-change:opacity,transform}.case-scene.is-active{opacity:1;visibility:visible;pointer-events:auto}.case-scene:first-child,.case-scene:nth-child(5){--scene-fg:#08090b;--scene-muted:rgba(5,5,5,.62);--scene-accent:#006d8f}.case-story{position:relative;z-index:2}.case-story>span{display:block;margin-bottom:1.35rem;color:var(--scene-accent);font:700 .62rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase}.case-story h3{margin:0;font-size:clamp(3rem,4.25vw,5.35rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}.case-story--left p{margin:clamp(2rem,5vh,3.8rem) 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.5rem,2.3vw,2.85rem);line-height:1.03;letter-spacing:-.045em;color:var(--scene-muted)}.case-story--right{align-self:end;margin-bottom:clamp(5rem,12vh,8rem)}.case-story--right h4{max-width:21rem;margin:0;font-size:clamp(1.7rem,2.25vw,2.7rem);line-height:1.02;letter-spacing:-.045em}.case-story--right p{max-width:24rem;margin:1.5rem 0 0;color:var(--scene-muted);font-size:.94rem;line-height:1.6}.case-portrait{position:relative;justify-self:center;width:min(24vw,24rem);height:min(54vh,36rem);margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.35);border-radius:clamp(1.2rem,2vw,2rem);background:#111;box-shadow:0 2.2rem 5rem rgba(0,0,0,.32);transform-origin:center center;will-change:clip-path,transform,opacity}.case-scene:nth-child(2n) .case-portrait{border-radius:12rem 12rem 1.75rem 1.75rem}.case-scene:nth-child(3n) .case-portrait{clip-path:polygon(8% 0,100% 0,100% 92%,92% 100%,0 100%,0 8%)}.case-portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.14),transparent 24%,transparent 70%,rgba(0,0,0,.55));pointer-events:none}.case-portrait img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .8s;filter:saturate(.82) contrast(1.05)}.case-scene.is-active .case-portrait:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.02)}.case-portrait__index,.case-portrait figcaption{position:absolute;z-index:2;left:1rem;right:1rem;color:#fff;font:680 .58rem/1.25 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 1rem rgba(0,0,0,.45)}.case-portrait__index{top:1rem}.case-portrait figcaption{bottom:1rem}.case-progress{position:absolute;z-index:7;left:50%;bottom:1.55rem;width:min(88vw,80rem,calc(100% - (2 * var(--pad))));display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem;transform:translateX(-50%)}.case-progress button{min-width:0;padding:1.1rem .5rem;border:0;background:transparent;color:#fff;display:grid;grid-template-columns:1fr auto;gap:.9rem;align-items:center;opacity:.4;cursor:pointer;transition:opacity .3s,color .5s}.case-progress button i{display:block;height:2px;background:currentColor;transform:scaleX(.28);transform-origin:left;transition:transform .55s var(--ease)}.case-progress button span{font:650 1.08rem/1 ui-monospace,monospace}.case-progress button.is-active{opacity:1}.case-progress button.is-active i{transform:scaleX(1)}.cases.is-light .case-progress button{color:#08090b}.cases-scroll-cue{position:absolute;z-index:7;right:var(--pad);bottom:5.55rem;margin:0;display:flex;gap:1.5rem;align-items:center;color:#fff;font:650 1.12rem/1 ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;transition:color .5s}.cases-scroll-cue i{font-style:normal;color:var(--blue);animation:caseCue 1.6s var(--ease) infinite}.cases.is-light .cases-scroll-cue{color:#08090b}.cases.is-light .cases-scroll-cue i{color:#006d8f}@keyframes caseCue{0%,100%{transform:translateY(-4px)}50%{transform:translateY(10px)}}
.cases-more{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 0 0 0 color-mix(in srgb,currentColor 0%,transparent);animation:casesMoreBreath 2.8s var(--ease) infinite}.cases-more::before{content:"";position:absolute;z-index:-1;inset:-35% -55%;background:linear-gradient(110deg,transparent 38%,currentColor 50%,transparent 62%);opacity:.14;transform:translateX(-75%);animation:casesMoreSweep 3.6s var(--ease) infinite}.cases-more span,.cases-more i{position:relative;z-index:1}.cases-more i{animation:casesMoreArrow 1.55s var(--ease) infinite}.cases-more:hover{animation-play-state:paused}.cases-more:hover::before{animation-duration:.75s}.cases-more:hover i{animation:none;transform:translate(3px,-3px)}
@keyframes casesMoreBreath{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,currentColor 0%,transparent),0 0 0 transparent}50%{box-shadow:0 0 0 .42rem color-mix(in srgb,currentColor 10%,transparent),0 0 1.45rem color-mix(in srgb,currentColor 22%,transparent)}}
@keyframes casesMoreSweep{0%,28%{transform:translateX(-75%)}62%,100%{transform:translateX(75%)}}
@keyframes casesMoreArrow{0%,100%{transform:translate(0,0)}45%{transform:translate(3px,-3px)}}

@media (min-width:821px){
  .case-story h3{font-size:clamp(2.5rem,3.4vw,4.3rem)}
  .case-story--left{align-self:center;height:13.8125rem}
  .case-story--right{align-self:center;height:14.75rem;margin-bottom:0;top:.45rem}
  .case-story--right h4{min-height:8.25rem}
  .case-theater .case-scene .case-portrait{border-radius:clamp(1.2rem,2vw,2rem);clip-path:none}
}

.models { min-height:max(115svh, 58rem);padding:var(--scene-space) var(--pad); }
.models-head{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,6vw,6rem);align-items:end}.models-head h2{margin:1.6rem 0 0;font-size:clamp(3.5rem,5.7vw,7rem);line-height:.88;letter-spacing:-.07em;text-transform:uppercase}.models-head>p{max-width:29rem;color:rgba(5,5,5,.58);font-size:1rem;line-height:1.65}
.model-selector{max-width:var(--content-max);margin:clamp(3.5rem,6vh,5rem) auto 0;display:flex;border-block:1px solid var(--line-light);overflow-x:auto}.model-selector button{flex:1;min-width:9rem;padding:1.1rem .75rem;border:0;border-right:1px solid var(--line-light);background:transparent;color:rgba(5,5,5,.45);font-size:.68rem;font-weight:720;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.model-selector button.is-active{background:var(--ink);color:var(--white)}
.model-stage{max-width:var(--content-max);min-height:41rem;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;background:#deddd7}.model-visual{position:relative;min-height:41rem;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at center,#fff 0,#e8e7e1 48%,#d3d1ca 75%)}.model-visual::before{content:"";position:absolute;width:40rem;aspect-ratio:1;border:1px solid rgba(5,5,5,.12);border-radius:50%;box-shadow:0 0 0 7rem rgba(255,255,255,.18),0 0 0 14rem rgba(5,5,5,.03)}
.mini-kiosk{position:relative;width:12rem;height:30rem;filter:drop-shadow(0 2rem 1.5rem rgba(0,0,0,.25));transform:perspective(700px) rotateY(-14deg)}.mini-kiosk i{position:absolute;z-index:2;top:0;left:50%;width:12rem;height:10rem;transform:translateX(-50%);border:.75rem solid #16181b;border-radius:.45rem;background:radial-gradient(circle at 70% 20%,rgba(57,200,255,.5),transparent 40%),#071119;box-shadow:inset 0 0 0 2px #798087}.mini-kiosk b{position:absolute;left:50%;top:9.5rem;width:6.5rem;height:17rem;transform:translateX(-50%);background:linear-gradient(90deg,#858b8f,#f4f3ee 45%,#747a7e);clip-path:polygon(8% 0,92% 0,82% 100%,18% 100%)}.mini-kiosk span{position:absolute;z-index:3;bottom:1.5rem;left:50%;width:15rem;height:3rem;border-radius:50%;transform:translateX(-50%) rotateX(60deg);background:linear-gradient(#fff,#6e7478)}
.model-visual[data-model-visual="counter"] .mini-kiosk{height:20rem;transform:perspective(700px) rotateY(-12deg) rotateX(8deg)}.model-visual[data-model-visual="counter"] .mini-kiosk b{height:8rem}.model-visual[data-model-visual="accessible"] .mini-kiosk{transform:perspective(700px) rotateY(-10deg) rotateZ(4deg)}.model-visual[data-model-visual="accessible"] .mini-kiosk i{top:7rem;left:28%;}.model-visual[data-model-visual="accessible"] .mini-kiosk b{width:12rem;top:16rem;height:5rem;transform:translateX(-48%) rotate(0)}.model-visual[data-model-visual="wall"] .mini-kiosk b,.model-visual[data-model-visual="wall"] .mini-kiosk span{display:none}.model-visual[data-model-visual="wall"] .mini-kiosk i{top:8rem;width:15rem;height:13rem}.model-visual[data-model-visual="custom"] .mini-kiosk i{border-radius:3rem 3rem .5rem .5rem;border-color:#222}.model-visual[data-model-visual="custom"] .mini-kiosk b{background:linear-gradient(90deg,#111,#45484b 55%,#080808)}
.model-specs{padding:clamp(2.75rem,4vw,4rem);display:flex;flex-direction:column;background:#fff}.model-type{font:650 .62rem/1 ui-monospace,monospace;letter-spacing:.14em;color:rgba(5,5,5,.5)}.model-specs h3{margin:auto 0 1.5rem;font-size:clamp(2.7rem,4vw,4.8rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}.model-specs>p{max-width:28rem;color:rgba(5,5,5,.58);line-height:1.65}.model-specs dl{margin:2.25rem 0;display:grid;border-top:1px solid var(--line-light)}.model-specs dl div{padding:.9rem 0;display:flex;justify-content:space-between;border-bottom:1px solid var(--line-light)}.model-specs dt{font-size:.72rem;color:rgba(5,5,5,.5)}.model-specs dd{margin:0;font-size:.72rem;font-weight:700}.model-specs .button{align-self:flex-start}

.clients { --clients-header-space:5.5rem;--clients-edge-space:2rem;min-height:max(112svh, 54rem);padding:calc(var(--clients-header-space) + var(--clients-edge-space)) 0 var(--clients-edge-space);display:flex;flex-direction:column;justify-content:center; }
.clients-content { width:100%;padding-top:3.25rem;display:flex;flex-direction:column;transform:translateY(5rem); }
.clients#clientes { scroll-margin-top:0; }
.clients-head{position:relative;width:calc(100% - (2 * var(--pad)));max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:1fr;align-items:start;transform:translateY(-4.25rem)}.clients-head>.eyebrow{position:absolute;left:0;top:-3.25rem;margin:0}.clients-head h2{width:75%;margin:0;font-size:clamp(3.3rem,5.3vw,6.5rem);line-height:.9;letter-spacing:-.065em;text-transform:uppercase}
.clients-cta{--clients-cta-accent:#71efc5;position:absolute;right:0;bottom:.5rem;min-height:2.65rem;padding:0 1.05rem;display:inline-flex;align-items:center;gap:1.8rem;isolation:isolate;overflow:hidden;border:1px solid color-mix(in srgb,var(--clients-cta-accent) 72%,#fff);border-radius:999px;color:#fff;font-size:.62rem;font-weight:740;letter-spacing:.11em;text-transform:uppercase;box-shadow:0 0 0 0 rgba(113,239,197,0);animation:clientsCtaBreath 2.8s var(--ease) infinite;transition:background .3s,color .3s,border-color .3s}
.clients-cta::before{content:"";position:absolute;z-index:-1;inset:-40% -55%;background:linear-gradient(110deg,transparent 36%,rgba(113,239,197,.85) 50%,transparent 64%);opacity:.22;transform:translateX(-75%);animation:clientsCtaSweep 3.6s var(--ease) infinite}.clients-cta span,.clients-cta i{position:relative;z-index:1}.clients-cta i{color:var(--clients-cta-accent);font-style:normal;font-size:.95rem;animation:clientsCtaArrow 1.55s var(--ease) infinite}.clients-cta:hover{background:var(--clients-cta-accent);border-color:var(--clients-cta-accent);color:#06110d;animation-play-state:paused}.clients-cta:hover::before{animation-duration:.75s}.clients-cta:hover i{color:currentColor;animation:none;transform:translate(3px,-3px)}
@keyframes clientsCtaBreath{0%,100%{box-shadow:0 0 0 0 rgba(113,239,197,0),0 0 0 rgba(113,239,197,0)}50%{box-shadow:0 0 0 .42rem rgba(113,239,197,.09),0 0 1.45rem rgba(113,239,197,.2)}}
@keyframes clientsCtaSweep{0%,28%{transform:translateX(-75%)}62%,100%{transform:translateX(75%)}}
@keyframes clientsCtaArrow{0%,100%{transform:translate(0,0)}45%{transform:translate(3px,-3px)}}
.client-marquee{margin-top:clamp(4rem,9vh,7rem);display:flex;overflow:hidden;border-block:1px solid var(--line-dark)}.client-marquee>div{flex-shrink:0;width:max-content;display:flex;animation:clientForward 42s linear infinite}.client-marquee span{padding:1.2rem 2rem;border-right:1px solid var(--line-dark);font-size:clamp(1.2rem,2.2vw,2.4rem);font-weight:670;letter-spacing:-.04em;color:rgba(255,255,255,.7)}.client-marquee--reverse{margin-top:-1px}.client-marquee--reverse>div{animation-name:clientReverse;animation-duration:46s}.client-marquee--reverse span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}
@keyframes clientForward{to{transform:translateX(-100%)}}@keyframes clientReverse{from{transform:translateX(-100%)}to{transform:translateX(0)}}
.clients-note{width:calc(100% - (2 * var(--pad)));max-width:var(--content-max);padding:0;margin:2rem auto 0;color:rgba(255,255,255,.56);font-size:.7rem;transform:translateY(-1.5rem)}

.insights { min-height:max(105svh, 52rem);padding:var(--scene-space) var(--pad); }
.insights-head{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:end}.insights-head .eyebrow{grid-column:1/-1;margin-bottom:1.6rem}.insights-head h2{margin:0;font-size:clamp(2.6775rem,4.284vw,5.202rem);line-height:.89;letter-spacing:-.068em;text-transform:uppercase}
.insight-list{max-width:var(--content-max);margin:clamp(4rem,7vh,5.5rem) auto 0;border-top:1px solid var(--line-light)}.insight-list a{min-height:8.5rem;padding:1.5rem 0;display:grid;grid-template-columns:10rem 1fr auto;gap:2rem;align-items:center;border-bottom:1px solid var(--line-light);transition:padding .4s var(--ease),background .4s}.insight-list a:hover{padding-inline:1.5rem;background:#fff}.insight-list span{font:650 .62rem/1 ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:rgba(5,5,5,.5)}.insight-list h3{margin:0;max-width:55rem;font-size:clamp(1.18575rem,1.79775vw,2.142rem);line-height:1.08;letter-spacing:-.04em;font-weight:560}.insight-list i{font-style:normal;font-size:1.8rem}

.faq-preview { height:max(100svh, 54rem);min-height:54rem;padding:var(--scene-space) var(--pad);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(4rem,7vw,7rem);align-items:center }
.faq-intro{position:relative;top:auto}.faq-intro h2{margin:1.6rem 0 2rem;font-size:clamp(2.805rem,4.25vw,5.1rem);line-height:.9;letter-spacing:-.065em;text-transform:uppercase}.faq-intro>p:not(.eyebrow){max-width:26rem;color:rgba(255,255,255,.52);line-height:1.65}.faq-intro .button{margin-top:2rem}
.accordion{border-top:1px solid var(--line-dark)}.accordion details{border-bottom:1px solid var(--line-dark)}.accordion summary{list-style:none;min-height:6.25rem;padding:1.25rem 0;display:grid;grid-template-columns:3rem 1fr auto;gap:1rem;align-items:center;cursor:pointer;font-size:clamp(.935rem,1.4025vw,1.4025rem);letter-spacing:-.025em}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font:600 .62rem/1 ui-monospace,monospace;color:var(--blue)}.accordion summary i{font-style:normal;font-weight:300;font-size:1.7rem;transition:transform .3s}.accordion details[open] summary i{transform:rotate(45deg)}.accordion details p{max-width:42rem;margin:-.25rem 0 1.75rem 4rem;color:rgba(255,255,255,.55);line-height:1.65}

.contact { min-height:max(115svh, 58rem);padding:var(--scene-space) var(--pad);display:grid;grid-template-columns:minmax(0,32rem) minmax(0,37.5rem);gap:clamp(4rem,6vw,5rem);align-items:center;justify-content:center }
.contact::before{content:"";position:absolute;inset:auto -12vw -28vw auto;width:70vw;aspect-ratio:1;border:1px solid rgba(5,5,5,.22);border-radius:50%;box-shadow:0 0 0 8vw rgba(5,5,5,.035),0 0 0 16vw rgba(5,5,5,.035);z-index:-1}
.contact-copy{position:relative;top:auto;align-self:center}.contact-copy h2{margin:1.6rem 0 2rem;font-size:clamp(3.3rem,5vw,6rem);line-height:.9;letter-spacing:-.065em;text-transform:uppercase}.contact-copy>p:not(.eyebrow){max-width:28rem;font-size:1rem;line-height:1.65;color:rgba(5,5,5,.65)}.contact-direct{margin-top:3rem;display:grid;gap:.6rem}.contact-direct a{width:max-content;border-bottom:1px solid rgba(5,5,5,.4);font-size:.9rem}.contact-direct span{font-size:.8rem;color:rgba(5,5,5,.74)}
.project-form{position:relative;width:100%;justify-self:center;padding:clamp(2rem,2.8vw,3.2rem);background:var(--paper);color:var(--ink)}.project-form fieldset{margin:0 0 2.25rem;padding:0;border:0}.project-form legend{margin-bottom:1.1rem;font-size:clamp(1.35rem,1.75vw,1.8rem);font-weight:620;letter-spacing:-.035em}.choice-grid{display:flex;flex-wrap:wrap;gap:.52rem}.choice-grid input{position:absolute;opacity:0}.choice-grid span{display:block;padding:.68rem .9rem;border:1px solid rgba(5,5,5,.25);border-radius:999px;font-size:.74rem;cursor:pointer;transition:.25s}.choice-grid input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.choice-grid input:focus-visible+span{outline:2px solid var(--blue-deep);outline-offset:3px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.35rem}.project-form label:not(.consent):not(.choice-grid label){display:grid;gap:.5rem;margin-bottom:1.6rem}.project-form label>span{font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.project-form input:not([type="radio"]):not([type="checkbox"]),.project-form textarea{width:100%;padding:.62rem 0;border:0;border-bottom:1px solid rgba(5,5,5,.35);border-radius:0;background:transparent;color:var(--ink);outline:0;resize:vertical}.project-form input:focus,.project-form textarea:focus{border-color:var(--ink)}.project-form textarea::placeholder{color:rgba(5,5,5,.35)}.consent{display:flex;gap:.8rem;align-items:flex-start;margin:.75rem 0 1.6rem}.consent input{margin-top:.1rem;accent-color:var(--ink)}.consent span{font-size:.65rem!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important;font-weight:400!important;color:rgba(5,5,5,.6)}.consent a{text-decoration:underline}.honeypot{position:absolute!important;left:-9999px!important}.form-bottom{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.form-status{margin:0;max-width:25rem;font-size:.75rem;line-height:1.45}.form-status.is-success{color:#0b6d43}.form-status.is-error{color:#9b1c1c}
.project-form button:disabled{cursor:wait;opacity:.58}

.site-footer{position:relative;padding:var(--scene-space) var(--pad) 2.5rem;background:var(--ink);color:var(--white);overflow:hidden;box-shadow:inset 0 1px rgba(128,132,138,.22)}.site-footer::before{content:"KIOSKOPRO";position:absolute;left:-.04em;bottom:-.16em;font-size:clamp(7rem,18vw,24rem);line-height:.7;font-weight:800;letter-spacing:-.095em;color:rgba(255,255,255,.025);pointer-events:none}.site-footer>div{width:100%;max-width:var(--content-max);margin-inline:auto}.footer-top{position:relative;z-index:1;min-height:15rem;padding-bottom:3.5rem;display:grid;grid-template-columns:.7fr 1fr auto;gap:clamp(3rem,5vw,5rem);align-items:start;border-bottom:1px solid var(--line-dark)}.footer-brand img{width:clamp(12rem,17vw,17rem);height:auto}.footer-top p{max-width:34rem;margin:0;color:rgba(255,255,255,.5);font-size:1rem;line-height:1.65}.footer-top p a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}.footer-up{width:3.6rem;aspect-ratio:1;border:1px solid var(--line-dark);border-radius:50%;display:grid;place-items:center;font-size:1.35rem}.footer-nav{position:relative;z-index:1;padding:3.5rem 0 5.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:3rem}.footer-nav>div{display:flex;flex-direction:column;gap:.75rem}.footer-nav span{margin-bottom:.8rem;font:650 .62rem/1 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.footer-nav a,.footer-nav button,.footer-nav p{width:max-content;max-width:100%;margin:0;padding:0;border:0;background:transparent;color:rgba(255,255,255,.55);font-size:.8rem;line-height:1.5;text-align:left;cursor:pointer}.footer-nav a:hover,.footer-nav button:hover{color:#fff}.footer-bottom{position:relative;z-index:1;padding-top:1.3rem;display:flex;justify-content:space-between;border-top:1px solid var(--line-dark);font:600 .56rem/1.3 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.56)}

.whatsapp-dialog{width:min(92vw,36rem);padding:clamp(2rem,5vw,4rem);border:0;border-radius:1.5rem;background:var(--paper);color:var(--ink);box-shadow:0 3rem 8rem rgba(0,0,0,.55)}.whatsapp-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}.whatsapp-dialog h2{margin:1.5rem 0 1rem;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.88;letter-spacing:-.065em;text-transform:uppercase}.whatsapp-dialog>p:not(.eyebrow){color:rgba(5,5,5,.6);line-height:1.5}.dialog-close{position:absolute;right:1rem;top:1rem;width:2.6rem;aspect-ratio:1;border:1px solid rgba(5,5,5,.2);border-radius:50%;background:transparent;color:var(--ink);font-size:1.6rem;cursor:pointer}.wa-actions{margin:2rem 0;display:grid;border-top:1px solid var(--line-light)}.wa-actions a,.wa-actions button{padding:1rem 0;display:flex;justify-content:space-between;border:0;border-bottom:1px solid var(--line-light);background:transparent;color:var(--ink);font-weight:650;text-align:left;cursor:pointer}.whatsapp-dialog small{color:rgba(5,5,5,.5)}

@media (min-width:821px){.site-footer>.footer-nav{width:100%;max-width:64rem}}

@media (hover:hover) and (pointer:fine){body{cursor:default}a,button,summary,label{cursor:pointer}.cursor{opacity:1}}
@media (max-width:1180px){
  .desktop-nav{display:none}.menu-toggle{display:grid}.header-contact{display:none}
  .hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(3.6rem,6vw,5.4rem)}
  .anatomy-sticky{grid-template-columns:.8fr 1.1fr .8fr}.anatomy-ring{width:24rem}.kiosk--anatomy{transform:scale(.75)}
}

@media (min-width:821px) and (min-height:761px){
  .missions.scene--paper{padding-top:clamp(7.25rem,13vh,8rem)!important}
  .missions-intro{padding-bottom:clamp(1.45rem,2.6vh,2.1rem)}
  .missions-track{align-items:center;padding-bottom:clamp(1.4rem,3vh,2.25rem)}
  .mission{width:min(48.6vw,34.2rem);height:93%;padding:clamp(1.35rem,1.95vw,2.1rem);grid-template-rows:auto auto minmax(7.65rem,1fr) auto}
  .mission-viz{min-height:clamp(8.1rem,20.7vh,13.5rem)}
  .mission-bottom{gap:.75rem}
}

@media (max-width:820px){
  :root{--pad:clamp(1.25rem,5vw,2rem);--scene-space:clamp(6rem,12vh,7.5rem)}
  .site-header{left:.75rem;right:.75rem;height:3.9rem;top:.65rem;padding-left:1rem;gap:.5rem}.brand img{width:10.5rem}.header-whatsapp{width:3rem;height:3rem;min-height:0;padding:0}.header-whatsapp span{display:none}.menu-toggle{width:3rem;height:3rem}
  .hero{min-height:auto;padding-top:7rem;padding-bottom:3rem}.hero-grid{grid-template-columns:1fr;gap:1rem}.hero-copy{width:calc(100vw - (2 * var(--pad)));min-width:0;max-width:100%;padding-top:0}.hero h1{max-width:100%;font-size:clamp(3rem,11.5vw,4.8rem)}.hero-line{max-width:100%;white-space:normal}.hero-line--outline{font-size:.78em;letter-spacing:-.055em}.hero-eyebrow{max-width:100%;gap:.6rem;letter-spacing:.12em}.hero-lead{width:100%;max-width:22rem;font-size:.96rem}.hero-ctas{flex-direction:column;align-items:flex-start;gap:1.2rem}.hero-product{height:34rem;min-height:34rem;margin-top:0}.hero-kiosk-stage{width:min(82%,24rem);height:calc(100% - 2rem);transform:translateY(-.5rem) rotateY(-3deg)}.product-halo{width:24rem}.product-label--one{top:12%;right:2rem}.product-label--two{left:0;bottom:25%}.product-label--three{right:2rem;bottom:8%}.hero-bottom{margin-top:5.25rem;grid-template-columns:repeat(3,1fr)}.hero-bottom>div{padding:.8rem .5rem 0}.hero-bottom b{font-size:.8rem}.hero-bottom>p{display:none}
  .product-label{display:none}
  .anatomy{min-height:auto}.anatomy-sticky{height:auto;min-height:auto;padding:var(--scene-space) var(--pad);grid-template-columns:1fr}.anatomy-product{height:34rem;min-height:34rem;order:2}.anatomy-head{order:1}.anatomy-head h2{font-size:clamp(2.8rem,10.5vw,4.5rem)}.anatomy-steps{order:3;gap:0}.anatomy-step{grid-area:auto;opacity:1!important;transform:none!important;padding:2rem 0;border-top:1px solid var(--line-dark)}.anatomy-step h3{font-size:2.15rem}.anatomy-meter{display:none}
  .missions{height:auto;min-height:auto;padding-top:var(--scene-space)}.missions-intro{grid-template-columns:1fr;padding-bottom:3.5rem}.missions-intro h2{font-size:clamp(3rem,11.5vw,4.8rem)}.missions-intro>p:last-child{justify-self:start}.missions-viewport{height:auto;overflow:visible}.missions-track{width:auto;height:auto;padding:0 var(--pad) var(--scene-space);display:grid}.mission{width:100%;height:auto;min-height:38rem;grid-template-rows:auto auto minmax(12rem,1fr) auto;padding:1.75rem}.mission-viz{min-height:13rem}.mission h3{font-size:clamp(2.35rem,10vw,3.4rem)}.mission-bottom p{font-size:.84rem}
  .architecture{min-height:auto;padding-block:var(--scene-space);grid-template-columns:1fr}.architecture-copy{position:relative;top:auto}.architecture-copy h2{font-size:clamp(3rem,11.5vw,4.8rem)}.architecture-orbit{position:relative;right:auto;top:auto;width:100%;margin:3rem auto}.architecture-list{grid-column:1;margin-top:1rem}.architecture-list div{grid-template-columns:2rem 5rem 1fr}.architecture-list b{font-size:1.2rem}
  .factory{height:auto;min-height:auto;padding:var(--scene-space) 0}.factory-frame{height:auto;display:block}.factory-title-wrap h2{font-size:clamp(3rem,11.25vw,4.8rem)}.factory-stage{margin-top:3.5rem}.factory-stage::before{left:var(--pad)}.factory-viewport{height:auto;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.factory-viewport::-webkit-scrollbar{display:none}.factory-path{height:auto;padding:1.7rem var(--pad) 3.5rem;transform:none!important}.factory-card{width:min(84vw,28rem);height:auto;min-height:34rem;scroll-snap-align:center;opacity:1;transform:none}.factory-meter{display:none}.factory-beam{top:50%}
  .cases{height:auto;min-height:auto;background:#08090b;color:#fff;overflow:hidden}.cases-sticky{position:relative;height:auto;min-height:0;padding:var(--scene-space) 0}.cases-sticky::after{display:none}.cases-atmospheres{position:absolute}.case-atmosphere{display:none}.case-atmosphere--coomeva{display:block!important;opacity:1!important;transform:none!important;background:linear-gradient(155deg,#050708,#082e2b 52%,#10202a 100%)}.cases-chapter{width:calc(100% - (2 * var(--pad)));grid-template-columns:1fr auto;color:#fff!important;border-color:rgba(255,255,255,.2)!important}.cases-chapter__statement{grid-column:1/-1;grid-row:2}.cases-more{grid-column:2;grid-row:1/3;gap:1rem}.case-theater{height:auto;margin-top:3rem;padding:0 var(--pad);display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);scrollbar-width:none}.case-theater::-webkit-scrollbar{display:none}.case-scene{position:relative;inset:auto;flex:0 0 min(86vw,31rem);min-height:43rem;padding:1.25rem;display:grid;grid-template-columns:1fr;grid-template-rows:auto 21rem 1fr;gap:1.2rem;align-items:start;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto;color:#fff!important;border:1px solid rgba(255,255,255,.18);border-radius:1.4rem;background:rgba(4,7,8,.58);backdrop-filter:blur(16px);scroll-snap-align:center}.case-story{transform:none!important;opacity:1!important}.case-story>span{margin-bottom:.65rem;color:var(--blue)}.case-story h3{font-size:clamp(2.7rem,12vw,4.4rem);line-height:.84}.case-story--left p{display:none}.case-portrait{grid-row:2;width:100%;height:21rem;border-radius:1rem!important;clip-path:none!important;transform:none!important;opacity:1!important}.case-story--right{align-self:start;margin:0}.case-story--right h4{font-size:1.75rem}.case-story--right p{margin-top:1rem;color:rgba(255,255,255,.62)}.case-progress{display:none}.cases-scroll-cue{position:relative;right:auto;bottom:auto;width:calc(100% - (2 * var(--pad)));margin:1.5rem auto 0;justify-content:flex-end;color:#fff!important}
  .models{min-height:auto;padding-block:var(--scene-space)}.models-head{grid-template-columns:1fr;gap:2rem}.models-head h2{font-size:clamp(3rem,11.5vw,4.8rem)}.model-stage{grid-template-columns:1fr;min-height:auto}.model-visual{min-height:31rem}.model-specs{min-height:30rem}.model-selector button{min-width:8rem}
  .clients{--clients-header-space:4.6rem;--clients-edge-space:1.5rem;min-height:100svh}.clients-content{padding-top:0;transform:none}.clients-head{grid-template-columns:1fr;gap:2rem;transform:none}.clients-head>.eyebrow{position:relative;left:auto;top:auto}.clients-head h2{width:100%;min-width:0;overflow-wrap:anywhere;font-size:clamp(2.9rem,11vw,4.6rem)}.clients-cta{position:relative;right:auto;bottom:auto;justify-self:start;margin-top:.25rem;gap:1.25rem}
  .insights{min-height:auto;padding-block:var(--scene-space)}.insights-head{grid-template-columns:1fr;gap:2rem}.insights-head h2{font-size:clamp(2.295rem,8.415vw,3.519rem)}.insight-list{margin-top:3.5rem}.insight-list a{grid-template-columns:1fr auto;gap:1rem}.insight-list span{grid-column:1/-1}.insight-list h3{font-size:1.26225rem}
  .faq-preview{height:auto;min-height:auto;padding-block:var(--scene-space);grid-template-columns:1fr;gap:4rem}.faq-intro{position:relative;top:auto}.faq-intro h2{font-size:clamp(2.55rem,9.35vw,3.91rem)}.accordion summary{min-height:6rem}.accordion details p{margin-left:0}
  .contact{min-height:auto;padding-block:var(--scene-space);grid-template-columns:1fr}.contact-copy{position:relative;top:auto}.contact-copy h2{font-size:clamp(3rem,11vw,4.6rem)}.project-form{padding:2rem 1.25rem}.field-row{grid-template-columns:1fr;gap:0}
  .footer-top{min-height:auto;grid-template-columns:1fr;gap:2.5rem}.footer-up{position:absolute;right:0;top:0}.footer-nav{grid-template-columns:1fr 1fr;gap:3rem 1rem}.footer-bottom{gap:2rem}
}

@media (max-width:480px){
  .header-whatsapp{display:none}.site-header{grid-template-columns:1fr auto}.hero-eyebrow{max-width:100%;gap:.3rem;font-size:.66rem;line-height:1.5;letter-spacing:0}.hero-product{height:31rem;min-height:31rem}.hero-kiosk-stage{width:min(84%,22rem);height:calc(100% - 2rem);transform:translateY(-.5rem) rotateY(-2deg)}.product-label{font-size:.48rem}.hero-bottom span{font-size:.48rem}.button{gap:1.4rem}.anatomy-product{height:32rem;min-height:32rem}.anatomy-ring{width:21rem}.anatomy-kiosk-real{width:min(96%,24rem);transform:scale(.9)}.mission{min-height:34rem}.architecture-list div{grid-template-columns:2rem 1fr}.architecture-list p{display:none}.case-scene{flex-basis:88vw;min-height:41rem}.case-portrait{height:19rem}.model-visual{min-height:30rem}.mini-kiosk{transform:scale(.78) rotateY(-14deg)}.footer-nav{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.form-bottom .button{width:100%}
}

@media (max-height:760px) and (min-width:821px){
  .site-header{height:3.8rem}.hero{min-height:46rem;padding-top:6.5rem}.hero h1{font-size:clamp(3.5rem,5.6vw,5.2rem)}.hero-product{height:33rem;min-height:33rem}.hero-kiosk-stage{width:min(76%,23.5rem);height:calc(100% - 2rem);transform:translateY(-.5rem) rotateY(-3deg)}.anatomy-sticky{min-height:46rem;padding-top:6.5rem}.anatomy-kiosk-real{transform:scale(.84)}.missions{padding-top:5.8rem!important}.missions-intro{padding-bottom:1.2rem;row-gap:.6rem}.missions-intro h2{font-size:clamp(2.6rem,3.25vw,3.6rem)}.missions-track{align-items:center;padding-bottom:1.35rem}.mission{width:min(48.6vw,34.2rem);height:91%;padding:1.2rem 1.62rem;grid-template-rows:auto auto minmax(7rem,1fr) auto}.mission h3{margin-top:.8rem;font-size:clamp(2.3rem,3.4vw,3.45rem)}.mission-viz{min-height:7rem}.mission-bottom{gap:.5rem}.mission-bottom p{font-size:.78rem;line-height:1.42}.factory{padding-top:4.75rem}.factory-title-wrap h2{font-size:clamp(2.8rem,4vw,4.25rem)}.factory-stage{margin-top:.8rem}.factory-card{padding:1.2rem 1.5rem}.factory-card h3{margin-top:.75rem;font-size:clamp(2rem,2.5vw,2.75rem)}.factory-card__visual{height:6rem}.factory-card>p{font-size:.76rem}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.cursor{display:none}.loader{display:none}.anatomy{min-height:auto}.anatomy-sticky{height:auto;min-height:auto;position:relative}.anatomy-steps{gap:1rem}.anatomy-step{grid-area:auto;opacity:1;transform:none;padding:1rem 0;border-top:1px solid var(--line-dark)}.missions{height:auto;min-height:auto;overflow:visible}.missions-viewport,.missions-track{height:auto}.missions-track{width:auto;flex-wrap:wrap}.mission{width:calc(50vw - var(--pad));height:auto;min-height:32rem}.factory{height:auto;min-height:auto;padding:var(--scene-space) var(--pad)}.factory-frame{height:auto}.factory-stage{margin-top:3rem}.factory-viewport{height:auto;overflow:visible}.factory-path{width:auto;height:auto;padding:0;display:grid;grid-template-columns:repeat(2,1fr);transform:none!important}.factory-card{width:auto;height:auto;min-height:28rem;opacity:1;transform:none}.factory-meter,.factory-beam{display:none}.cases{height:auto;min-height:auto;background:#08090b;color:#fff}.cases-sticky{position:relative;height:auto;min-height:auto;padding:var(--scene-space) var(--pad)}.cases-chapter{color:#fff!important}.case-theater{height:auto;margin-top:3rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;overflow:visible}.case-scene{position:relative;inset:auto;min-height:44rem;padding:1.5rem;display:grid;grid-template-columns:1fr;grid-template-rows:auto 22rem 1fr;gap:1.25rem;opacity:1!important;visibility:visible!important;transform:none!important;color:#fff!important;border:1px solid rgba(255,255,255,.18);border-radius:1.4rem;background:rgba(5,8,9,.78)}.case-story>span{color:var(--blue)}.case-story h3{font-size:clamp(2.7rem,6vw,4.4rem)}.case-story--left p{display:none}.case-portrait{grid-row:2;width:100%;height:22rem;border-radius:1rem!important;clip-path:none!important}.case-story--right{margin:0;align-self:start}.case-story--right h4{font-size:1.8rem}.case-progress{display:none}.architecture-copy,.faq-intro,.contact-copy{position:relative;top:auto}
}
