:root{--bg:#0a0a0b;--panel:#151517;--panel-2:#202024;--panel-hover:#202024;--band:#101012;--ink:#e9e9ed;--muted:#9397ab;--line:rgba(233,233,237,.12);--line-strong:rgba(233,233,237,.22);--c1:#97bce2;--c2:#7aa7e0;--c3:#66c2ad;--c4:#d795c9;--c5:#dcb37e;--c1-ink:#b4d2ef;--c2-ink:#a4c6f2;--c3-ink:#8ad9c5;--c4-ink:#eeb4e2;--c5-ink:#efcd9e;--accent:var(--c1);--accent-hover:#b4d2ef;--button-ink:#0a0a0b;--logo-filter:grayscale(1) brightness(0) invert(1);--mark-filter:brightness(0) invert(1);--font-body:'Inter',system-ui,sans-serif;--font-heading:'Inter',system-ui,sans-serif;color-scheme:dark}
html[data-theme=light]{--bg:#f8f9fc;--panel:#fff;--panel-2:#eef0f6;--panel-hover:#eef0f6;--band:#f1f2f7;--ink:#17181f;--muted:#5d6174;--line:rgba(23,24,31,.12);--line-strong:rgba(23,24,31,.22);--c1:#97bce2;--c2:#2d5f99;--c3:#216455;--c4:#854176;--c5:#7f5a1c;--c1-ink:#275781;--c2-ink:#244f80;--c3-ink:#1a5244;--c4-ink:#6f3562;--c5-ink:#674915;--accent-hover:#b4d2ef;--button-ink:#0a0a0b;--logo-filter:grayscale(1) brightness(0);--mark-filter:none;color-scheme:light}
body{background:var(--bg);color:var(--ink)}.brand img,.orbit-core img{filter:var(--mark-filter)}.brand-name{font-size:18px;letter-spacing:2px;font-weight:600;line-height:1.15}.brand-name small{display:block;font-size:8px;letter-spacing:1.1px;margin-top:6px;color:var(--muted);font-weight:400}.header-inner{gap:22px}.header nav{gap:20px;margin-left:auto}.header nav .nav-contact{margin-left:0;gap:12px}.preferences{display:flex;align-items:center;gap:9px;flex-shrink:0}.language-switch{display:flex;border:1px solid var(--line-strong);border-radius:6px;overflow:hidden}.language-switch button{border:0;padding:8px;background:transparent;color:var(--muted);font-size:11px;min-height:36px;min-width:34px}.language-switch button[aria-pressed=true]{background:var(--panel-2);color:var(--c1-ink)}.theme-toggle{width:38px;height:38px;display:grid;place-items:center;background:transparent;border:1px solid var(--line-strong);border-radius:6px;font-size:23px;line-height:1;color:var(--ink)}.theme-toggle:hover{background:var(--panel-2)}.reading-progress{position:absolute;bottom:-1px;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--c1);pointer-events:none}.hero h1{font-size:clamp(37px,4.1vw,58px);letter-spacing:-2px;max-width:18ch}.hero-copy>p{max-width:49ch}.hero-copy>.hero-detail{font-size:13px;margin-top:16px}.hero{gap:45px}.orbit-core{background:linear-gradient(145deg,var(--panel-2),var(--panel));border-color:var(--line-strong)}.node{background:var(--panel);border-color:var(--line-strong)}.node-code .node-icon{color:var(--c1-ink)}.node-auto .node-icon{color:var(--c2-ink)}.node-data .node-icon{color:var(--c4-ink)}.primary{background:var(--c1);color:var(--button-ink)}.hero-copy .eyebrow{color:var(--c1-ink)}.eyebrow{color:var(--muted)}.header nav>a{color:var(--muted)}.header nav>a:hover,.text-link:hover{color:var(--c1-ink)}.client-strip{padding:90px 0 76px;overflow:hidden;background:var(--band)}.carousel-heading{display:flex;align-items:center;justify-content:flex-start;gap:25px;text-align:left}.carousel-heading h2{font-size:clamp(32px,3.3vw,46px);font-weight:550;letter-spacing:-1.8px;margin-bottom:20px}.client-strip .carousel-heading p{text-align:left;letter-spacing:0;font-size:14px;line-height:1.8;text-transform:none;color:var(--muted);max-width:56ch;margin-inline:0}#process-play{display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:transparent;color:var(--muted);border-radius:5px;padding:8px 12px;font-size:11px;min-height:40px;flex-shrink:0}#process-play:hover{color:var(--ink);background:var(--panel-2)}.carousel-viewport{overflow:hidden;margin-top:46px;padding-block:14px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.carousel-track{display:flex;width:max-content;animation:client-scroll 50s linear infinite;will-change:transform}.client-logos{display:flex;align-items:center;gap:64px;margin:0;padding:0 64px 0 0;list-style:none;flex:none}.client-logos li{width:148px;display:flex;align-items:center;justify-content:center}.client-logos img{width:148px;height:50px;object-fit:contain;filter:var(--logo-filter);opacity:.6}.client-logos img:hover{filter:none;opacity:1}@keyframes client-scroll{to{transform:translateX(-50%)}}
.service-hint{font-size:12px;color:var(--muted);margin-bottom:22px}.service-list{border-top:1px solid var(--line-strong)}.service-detail{position:relative;border-bottom:1px solid var(--line);padding:25px 27px;--service-color:var(--c1);--service-ink:var(--c1-ink);border-left:3px solid transparent;transition:background .45s ease,border-color .45s ease}.service-1{--service-color:var(--c2);--service-ink:var(--c2-ink)}.service-2{--service-color:var(--c3);--service-ink:var(--c3-ink)}.service-3{--service-color:var(--c4);--service-ink:var(--c4-ink)}.service-4{--service-color:var(--c5);--service-ink:var(--c5-ink)}.service-detail summary{display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;min-height:44px}.service-detail summary::-webkit-details-marker{display:none}.service-detail summary h3{font-size:21px;font-weight:500;letter-spacing:-.5px}.service-detail summary .service-icon{color:var(--service-ink);width:42px;height:42px;border:1px solid var(--line-strong);display:grid;place-items:center;border-radius:7px;flex-shrink:0}.service-number{font-size:10px;color:var(--muted)}.expand-icon{margin-left:auto;color:var(--service-ink);font-size:24px;transition:transform .45s cubic-bezier(.22,1,.36,1)}.service-description{padding:10px 35px 0 84px;max-width:850px}.service-description p{font-size:14px;color:var(--muted)}.service-detail[open],.service-detail:hover{background:var(--panel);border-left-color:var(--service-color)}.service-detail.is-expanding .expand-icon{transform:rotate(45deg)}.service-expanded{padding:25px 0 5px 84px}.service-expanded .card-label{color:var(--service-ink)}.service-steps{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:0;gap:20px}.service-steps li{display:flex;flex-direction:column;gap:12px;font-size:12px;position:relative;line-height:1.55;color:var(--ink)}.step-number{width:28px;height:28px;border:1px solid var(--service-color);color:var(--service-ink);background:color-mix(in srgb,var(--service-color) 12%,var(--panel));border-radius:50%;display:grid;place-items:center;font-size:11px;position:relative;z-index:1}.service-steps li:not(:last-child):after{position:absolute;content:'';left:28px;right:-20px;height:1px;background:var(--line-strong);top:14px}.service-expanded .text-link{margin-top:25px;color:var(--service-ink)}.process-section{background:var(--band)}.process-board{background:var(--panel);border-color:var(--line-strong)}.process-tabs button{font-size:12px;gap:9px;min-width:0}.process-tabs b{font-weight:500}.process-tabs button[aria-selected=true]{color:var(--c2-ink);background:color-mix(in srgb,var(--c2) 10%,var(--panel));box-shadow:inset 0 -2px var(--c2)}.phase-copy .card-label,.phase-copy .text-link{color:var(--c2-ink)}.phase-copy h3{min-height:unset}.phase-copy>p{min-height:unset}.phase-copy .phase-meta{color:var(--c2-ink);font-size:11px;border-top:1px solid var(--line);padding-top:18px}.phase-panel{min-height:350px;gap:45px}.deliverable{background:color-mix(in srgb,var(--c2) 6%,var(--panel));border-color:var(--line-strong);transform:none}.deliverable li{color:var(--ink);font-size:12px;line-height:1.65}.deliverable li:before,.little-check{color:var(--c2-ink)}.process-bottom{align-items:center}.process-bottom #process-play{min-height:32px;font-size:10px}.industry-grid a>span:first-child{color:var(--c4-ink)}.industry-grid a>span:nth-child(2){font-size:12px;color:var(--ink)}.faq summary>span:first-child{font-size:14px;color:var(--ink)}.faq details[open] summary>span:first-child{transform:none;color:var(--c5-ink)}.faq details[open] summary>span:last-child{transform:rotate(45deg)}.cta{background:radial-gradient(ellipse at 90% 20%,color-mix(in srgb,var(--c1) 14%,transparent),transparent 60%),var(--panel);border-color:var(--line-strong)}.cta h2{max-width:22ch}.cta-bottom p{max-width:55ch;margin-right:35px}.cta .contact-email{font-size:13px;color:var(--c1-ink);margin-top:25px}.footer a:hover,.contact-email,.interior a{color:var(--c1-ink)}.contact-form #form-status{background:var(--panel-2);color:var(--ink)}.legal-language-note{padding:16px;border:1px solid var(--line-strong);border-radius:6px;margin-bottom:30px;color:var(--muted);font-size:13px}.interior .completar{background:color-mix(in srgb,var(--c5) 12%,transparent);color:var(--c5-ink);border-color:var(--c5)}.interior .legal .destacado{background:var(--panel-2);border-color:var(--c1)}
.button [data-i18n],.text-link [data-i18n]{font-size:inherit}.service-detail .service-title{flex:1;min-width:0}.service-detail .service-description{padding:0;margin-top:10px;max-width:76ch}.service-detail summary{align-items:center}.service-detail .service-description p{font-size:13px;line-height:1.75}.service-detail summary .expand-icon{flex-shrink:0}.reveal-ready [data-reveal]{opacity:0;translate:0 16px;transition:opacity .6s ease,translate .6s ease}.reveal-ready [data-reveal].is-visible{opacity:1;translate:0 0}
@media(max-width:1150px){.header nav{gap:12px;font-size:12px}.header-inner{gap:15px}.header nav .nav-contact{padding:9px 12px}.brand-name{font-size:16px;letter-spacing:1px}}
@media(max-width:1000px){.header nav{display:none;position:absolute;left:0;right:0;top:86px;background:var(--panel);padding:20px 28px;border-bottom:1px solid var(--line);box-shadow:0 18px 30px #0002}.header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:0}.header nav>a{padding:12px;font-size:15px}.header nav .nav-contact{margin-top:8px;justify-content:space-between}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:40px;height:40px;border:1px solid var(--line-strong);background:transparent;border-radius:6px;padding:9px}.menu-toggle span{height:1px;width:20px;background:var(--ink)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.preferences{margin-left:auto}.hero{gap:25px}.process-tabs button{padding:18px 12px}}
@media(max-width:760px){.header nav{top:72px}.brand-name{font-size:15px}.brand-name small{font-size:6px;letter-spacing:.6px}.brand{gap:7px}.brand img{width:24px}.header-inner{gap:10px}.preferences{gap:6px}.language-switch button{min-width:29px;padding:7px 6px;min-height:38px;font-size:10px}.theme-toggle{width:35px}.menu-toggle{width:36px;padding:7px}.hero h1{font-size:clamp(34px,8.6vw,50px);letter-spacing:-1.6px;max-width:20ch}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.hero-copy>.hero-detail{font-size:12px}.client-strip{padding:60px 0 48px}.carousel-heading{align-items:flex-start;gap:20px}.carousel-heading h2{font-size:34px;letter-spacing:-1.4px;margin-bottom:16px}.client-strip .carousel-heading p{font-size:13px;max-width:32ch}.carousel-viewport{margin-top:30px;padding-block:12px}.client-logos{gap:36px;padding-right:36px}.client-logos li,.client-logos img{width:125px}.client-logos img{height:44px}.service-detail{padding:19px 14px}.service-detail summary{gap:10px}.service-detail summary h3{font-size:17px;line-height:1.35}.service-number{display:none}.service-detail summary .service-icon{width:36px;height:36px;font-size:21px}.service-description{padding:12px 0 0;font-size:13px}.service-expanded{padding:22px 0 0}.service-steps{grid-template-columns:1fr;gap:16px}.service-steps li{flex-direction:row;align-items:center;gap:12px;font-size:12px}.service-steps li:not(:last-child):after{left:14px;top:28px;bottom:-16px;right:auto;height:auto;width:1px}.step-number{flex-shrink:0}.process-tabs button{min-height:68px;font-size:11px}.process-tabs button>i{display:none}.phase-panel{min-height:unset;gap:20px}.phase-copy h3{font-size:25px}.phase-copy>p{min-height:unset}.process-bottom>span{font-size:9px}.process-bottom #process-play{display:flex!important}.industry-grid a{gap:10px}.industry-grid a>span:nth-child(2){font-size:11px}.cta-bottom p{margin-right:0}.faq summary>span:first-child{font-size:13px}}
@media(max-width:360px){.header .wrap{width:calc(100% - 24px)}.brand-name{font-size:13px}.brand-name small{font-size:5px}.brand img{width:20px}.preferences{gap:4px}.header-inner{gap:5px}.hero h1{font-size:34px}.carousel-heading{flex-direction:column}.process-tabs button{padding:13px 10px}}
@media(prefers-reduced-motion:reduce){.carousel-track{animation:none!important;transform:none!important}.carousel-viewport{overflow-x:auto;mask-image:none}.carousel-track>.client-logos[aria-hidden=true]{display:none}.reveal-ready [data-reveal]{opacity:1;translate:none;transition:none}.node{animation:none!important}}
/* Font Awesome is shared by every page through styles.css. */
.footer-top h2,.footer-top h3{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--ink);margin-bottom:19px}.phase-copy h3{font-size:clamp(30px,3vw,38px);font-weight:600;letter-spacing:-1.2px}.deliverable-heading{margin-bottom:16px}.deliverable-heading h4{font-size:18px;font-weight:600;letter-spacing:-.3px;color:var(--ink);margin:0}.fa-solid{font-style:normal;line-height:1}.node-icon>.fa-solid,.service-icon>.fa-solid{font-size:inherit}.industry-grid .fa-solid{width:1em;text-align:center}.contact-info>.fa-solid{width:1em;text-align:center}.faq summary .fa-plus{font-size:18px}.theme-toggle>span{font-size:0}.theme-toggle>span::before{font-family:'Font Awesome 6 Free';font-weight:900;font-size:17px;content:'\f185'}html[data-theme=light] .theme-toggle>span::before{content:'\f186'}
:root{--font-body:'Sora',system-ui,sans-serif;--font-heading:'Sora',system-ui,sans-serif}
.phase-copy .card-label{font-size:13px;line-height:1.4;letter-spacing:1.4px;font-weight:650;margin-bottom:12px}.phase-copy h3{margin-top:0}
/* Enlaces de contacto y redes en el footer. */
.footer-top>div>a.social-link{display:flex;align-items:center;gap:9px}.social-link>span{min-width:0;overflow-wrap:anywhere}.social-icon{width:15px;height:15px;flex:none}
.contact-email{display:inline-flex;align-items:center;gap:10px}.contact-email .social-icon{width:1em;height:1em}
.fa-brands{font-style:normal;line-height:1}.contact-info>.fa-brands{width:1em;text-align:center}
/* Tracking en em y algo más de interlineado: en inglés los títulos son más largos y se apretaban. */
h2,h3{text-wrap:balance}h2{line-height:1.22;letter-spacing:-.03em}.carousel-heading h2,.cta h2{letter-spacing:-.03em}.cta h2{line-height:1.2}.phase-copy h3{letter-spacing:-.025em;line-height:1.25}.interior h1,.contact-intro h1{letter-spacing:-.03em;line-height:1.18}
