@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/playfair-display-latin-500-normal-DIxvyhka.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-normal-CuDiGg7c.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-400-italic-LeeEXsx5.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-brand: #5d72ff;--color-brand-light: #8b9bff;--color-brand-dark: #4356d6;--color-accent-solid: #465eff;--color-accent-solid-hover: #3a53ff;--color-cream: #f4f3ec;--color-cream-deep: #eae8dc;--color-sage: #6d8450;--color-sage-soft: #cfe0b4;--color-sage-deep: #566b3d;--color-forest: #243026;--color-forest-hover: #31402f;--color-ink-950: #07090f;--color-ink-900: #0d1018;--color-ink-800: #161b2a;--color-ink-700: #212843;--color-node-amber: #b8741f;--color-gray-300: #b9bec9;--color-gray-500: #7a8093;--color-gray-700: #444a5a;--color-paper: #fafafa;--color-bg: var(--color-cream);--color-surface: #fbfaf5;--color-surface-raised: #ffffff;--color-text: #1d2820;--color-text-muted: #5a665d;--color-text-faint: #7b867d;--color-border: color-mix(in srgb, #1d2820 14%, transparent);--color-border-strong: color-mix(in srgb, #1d2820 32%, transparent);--color-accent: var(--color-brand-dark);--color-emphasis: var(--color-sage);--color-focus: var(--color-brand-dark);--color-btn-bg: var(--color-forest);--color-btn-bg-hover: var(--color-forest-hover);--color-btn-text: #f7f6ee;--color-pill-bg: color-mix(in srgb, #ffffff 82%, transparent);--color-hotspot-dot: var(--color-sage-soft);--color-node-line: color-mix(in srgb, var(--color-brand-dark) 55%, transparent);--color-node-dot: var(--color-cream);--color-shadow: color-mix(in srgb, #1d2820 18%, transparent);--color-veil: color-mix(in srgb, var(--color-cream-deep) 70%, transparent);--color-scene-dark-bg: var(--color-ink-950);--color-scene-light-bg: var(--color-cream);--color-scene-light-node: var(--color-brand);--color-scene-light-link: #8d97b8;--color-scene-light-pulse: var(--color-brand-dark);--color-scene-light-highlight: var(--color-brand-light);--font-display: "Playfair Display", "Iowan Old Style", Georgia, serif;--font-heading: "Bricolage Grotesque", "Arial Narrow", Arial, sans-serif;--font-body: "Inter", "Helvetica Neue", Arial, sans-serif;--step--2: clamp(.68rem, .66rem + .1vw, .75rem);--step--1: clamp(.8rem, .77rem + .15vw, .9rem);--step-0: clamp(1rem, .96rem + .2vw, 1.125rem);--step-1: clamp(1.25rem, 1.18rem + .35vw, 1.5rem);--step-2: clamp(1.6rem, 1.45rem + .75vw, 2.1rem);--step-3: clamp(2.1rem, 1.8rem + 1.5vw, 3rem);--step-4: clamp(2.75rem, 2.2rem + 2.75vw, 4.5rem);--step-5: clamp(3.2rem, 2.2rem + 5vw, 6.25rem);--space-2xs: clamp(.5rem, .47rem + .15vw, .625rem);--space-xs: clamp(.75rem, .7rem + .25vw, .9375rem);--space-sm: clamp(1rem, .93rem + .35vw, 1.25rem);--space-md: clamp(1.5rem, 1.35rem + .75vw, 2rem);--space-lg: clamp(2.25rem, 1.95rem + 1.5vw, 3.25rem);--space-xl: clamp(3.5rem, 2.9rem + 3vw, 5.5rem);--space-2xl: clamp(5rem, 3.9rem + 5.5vw, 8.5rem);--content-max: 80rem;--content-padding: clamp(1.25rem, 4vw, 3rem);--header-h: 4.5rem;--gutter: max(var(--content-padding), calc((100vw - var(--content-max)) / 2 + var(--content-padding)));--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .2s;--duration-base: .4s;--duration-slow: 1.2s;--radius-sm: .375rem;--radius-md: .75rem;--radius-lg: 1.25rem;--radius-full: 999px;color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--color-bg: var(--color-ink-950);--color-surface: var(--color-ink-900);--color-surface-raised: var(--color-ink-800);--color-text: #f1f3ea;--color-text-muted: color-mix(in srgb, #f1f3ea 70%, transparent);--color-text-faint: color-mix(in srgb, #f1f3ea 50%, transparent);--color-border: color-mix(in srgb, #f1f3ea 16%, transparent);--color-border-strong: color-mix(in srgb, #f1f3ea 36%, transparent);--color-accent: var(--color-brand-light);--color-emphasis: #a9c288;--color-focus: var(--color-brand-light);--color-btn-bg: var(--color-accent-solid);--color-btn-bg-hover: var(--color-accent-solid-hover);--color-btn-text: #ffffff;--color-pill-bg: color-mix(in srgb, var(--color-ink-800) 82%, transparent);--color-hotspot-dot: #8fae6d;--color-node-line: color-mix(in srgb, var(--color-brand-light) 60%, transparent);--color-node-dot: var(--color-ink-800);--color-shadow: color-mix(in srgb, #000 40%, transparent);--color-veil: color-mix(in srgb, var(--color-ink-950) 55%, transparent);--color-node-amber: #f5a35a}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%;scroll-behavior:auto}body{min-height:100svh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--step-0);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video,canvas{display:block;max-width:100%}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:500;letter-spacing:-.035em;line-height:1.04;text-wrap:balance}p{text-wrap:pretty}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}ul,ol{list-style:none;padding:0}::selection{background:var(--color-sage-soft);color:var(--color-forest)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:var(--radius-sm)}.skip-link{position:fixed;z-index:100;top:var(--space-sm);left:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--color-forest);color:var(--color-btn-text);border-radius:var(--radius-sm);font-weight:600;transform:translateY(-150%);transition:transform var(--duration-fast) var(--ease-out)}.skip-link:focus-visible{transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}:is(h1,h2,h3) em{font-family:var(--font-display);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--color-emphasis)}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--content-padding)}#node-scene{position:fixed;top:0;left:0;width:100%;height:100vh;height:100lvh;z-index:-1;pointer-events:none}.node-scene-fallback,.node-scene__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.node-scene-fallback{object-fit:cover;opacity:.5;transition:opacity var(--duration-slow) var(--ease-out)}#node-scene.is-ready .node-scene-fallback{opacity:0}.site-header{position:sticky;top:0;z-index:40;height:var(--header-h);display:flex;align-items:center;background:linear-gradient(to bottom,var(--color-bg) 0%,var(--color-bg) 66%,transparent 100%)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.site-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;flex-shrink:0;color:var(--color-text)}.site-logo__mark{width:clamp(1.6rem,1.5rem + .4vw,2rem);height:auto;color:var(--color-text-muted)}.site-logo__mark .nm-nodes{fill:var(--color-brand)}.site-logo__mark .nm-links{stroke:currentColor}.site-logo__word{font-family:var(--font-heading);font-size:var(--step-1);font-weight:600;letter-spacing:-.04em;line-height:1;white-space:nowrap}.site-logo__word sup{font-size:.45em;font-weight:500;margin-left:.1em;vertical-align:super;letter-spacing:0}.nav-toggle{display:none}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--color-text);border-color:var(--color-border-strong)}.theme-toggle__icon{width:1.1rem;height:1.1rem}.theme-toggle__icon--moon{display:none}:root[data-theme=light] .theme-toggle__icon--sun,:root:not([data-theme]) .theme-toggle__icon--sun{display:none}:root[data-theme=light] .theme-toggle__icon--moon,:root:not([data-theme]) .theme-toggle__icon--moon{display:block}.site-nav{display:flex;align-items:center;gap:var(--space-md)}.site-nav ul{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--step--1)}.site-nav a:not(.btn){position:relative;white-space:nowrap;text-decoration:none;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out)}.site-nav ul a:after{content:"";position:absolute;left:0;right:0;bottom:-.3rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--duration-base) var(--ease-out)}.site-nav a:not(.btn):hover,.site-nav a:not(.btn):focus-visible,.site-nav a[aria-current=page]{color:var(--color-text)}.site-nav ul a:hover:after,.site-nav ul a[aria-current=page]:after{transform:scaleX(1)}@media (max-width: 79.9375rem){.nav-toggle{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);border:1px solid var(--color-border);cursor:pointer;color:var(--color-text)}.nav-toggle__bars{position:relative;width:1.05rem;height:2px;background:currentColor}.nav-toggle__bars:before,.nav-toggle__bars:after{content:"";position:absolute;left:0;width:100%;height:2px;background:currentColor;transition:transform var(--duration-fast) var(--ease-out)}.nav-toggle__bars:before{top:-6px}.nav-toggle__bars:after{top:6px}.nav-toggle-input:focus-visible~.nav-toggle{outline:2px solid var(--color-focus);outline-offset:3px}.site-nav{position:fixed;inset:calc(var(--header-h) - .25rem) var(--content-padding) auto;flex-direction:column;align-items:stretch;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 1.5rem 3rem -1rem var(--color-shadow);transform:translateY(-.5rem);opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),visibility var(--duration-fast)}.site-nav ul{flex-direction:column;align-items:flex-start;gap:var(--space-sm);font-size:var(--step-0)}.site-nav .theme-toggle{align-self:flex-start}.nav-toggle-input:checked~.site-nav{opacity:1;visibility:visible;transform:translateY(0)}}.site-footer{position:relative;padding-block:var(--space-xl) var(--space-lg);border-top:1px solid var(--color-border);background:var(--color-surface)}.site-footer__grid{display:grid;gap:var(--space-lg);grid-template-columns:1.5fr repeat(2,1fr)}.site-footer__brand p{margin-top:var(--space-xs);max-width:30ch;color:var(--color-text-muted)}.site-footer__title{font-size:var(--step--2);font-family:var(--font-body);font-weight:600;letter-spacing:.16em;color:var(--color-text-faint);text-transform:uppercase;margin-bottom:var(--space-sm)}.site-footer ul{display:grid;gap:var(--space-xs)}.site-footer a:not(.site-logo){text-decoration:none;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out)}.site-footer a:not(.site-logo):hover,.site-footer a:not(.site-logo):focus-visible{color:var(--color-text)}.site-footer__bottom{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:space-between;font-size:var(--step--1);color:var(--color-text-faint)}@media (max-width: 47.9375rem){.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__brand{grid-column:1 / -1}}main{position:relative;display:block}.section{padding-block:var(--space-2xl);position:relative}.section--veil:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-veil);z-index:-1}.section__head{max-width:44rem;margin-bottom:var(--space-xl)}.section__head h2{font-size:var(--step-4)}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-size:var(--step--2);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--space-sm)}.eyebrow:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--color-sage)}.hero__lead{font-size:var(--step-1);max-width:40ch;color:var(--color-text-muted);margin-bottom:var(--space-lg)}.grid-2{display:grid;gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:start}@media (max-width: 55rem){.grid-2{grid-template-columns:1fr}}.page-hero{padding-block:var(--space-xl) var(--space-lg)}.page-hero h1{font-size:clamp(2.8rem,1.4rem + 4.2vw,5.2rem);max-width:16ch;margin-bottom:var(--space-md)}.page-hero p:not(.eyebrow,.story__meta){font-size:var(--step-1);max-width:42ch;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:.85em 1.5em;border-radius:var(--radius-full);font-weight:500;font-size:var(--step--1);text-decoration:none;border:1px solid transparent;white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.btn__arrow{display:inline-block;font-size:1.1em;transition:transform var(--duration-base) var(--ease-out)}.btn:hover .btn__arrow,.btn:focus-visible .btn__arrow{transform:translate(2px,-2px)}.btn--accent{background:var(--color-btn-bg);color:var(--color-btn-text);border-radius:var(--radius-sm)}.btn--accent:hover,.btn--accent:focus-visible{background:var(--color-btn-bg-hover)}.btn--outline{background:color-mix(in srgb,var(--color-surface-raised) 55%,transparent);color:var(--color-text);border-color:var(--color-border-strong);padding:.95em 1.6em}.btn--outline:hover,.btn--outline:focus-visible{background:var(--color-surface-raised);border-color:var(--color-text)}.btn--ghost{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn--ghost:hover,.btn--ghost:focus-visible{border-color:var(--color-text)}.btn--lg{padding:1.05em 1.6em;font-size:var(--step-0)}.text-link{color:var(--color-text);text-decoration-color:var(--color-border-strong);text-underline-offset:.3em;transition:text-decoration-color var(--duration-fast) var(--ease-out)}.text-link:hover,.text-link:focus-visible{text-decoration-color:currentColor}.service-grid{display:grid;gap:var(--space-md);grid-template-columns:repeat(2,1fr)}.service-card{padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:border-color var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.service-card:hover,.service-card:focus-within{border-color:var(--color-border-strong);box-shadow:0 1.5rem 2.5rem -1.75rem var(--color-shadow)}.service-card__index{font-family:var(--font-display);font-style:italic;font-size:var(--step-2);color:var(--color-emphasis);margin-bottom:var(--space-sm)}.service-card h2,.service-card h3{font-size:var(--step-2);margin-bottom:var(--space-xs)}.service-card p{color:var(--color-text-muted)}.service-card p+p{margin-top:var(--space-xs)}@media (max-width: 55rem){.service-grid{grid-template-columns:1fr}}.badge{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:.35em .9em;border-radius:var(--radius-full);font-size:var(--step--1);font-weight:600;border:1px solid var(--color-border);color:var(--color-text-muted)}.badge:before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:currentColor}.badge--abierta{color:var(--color-sage-deep);background:color-mix(in srgb,var(--color-sage-soft) 55%,transparent);border-color:color-mix(in srgb,var(--color-sage) 45%,transparent)}:root[data-theme=dark] .badge--abierta{color:var(--color-emphasis);background:color-mix(in srgb,var(--color-sage) 22%,transparent)}.badge--proximamente{color:var(--color-text-muted)}.badge--cerrada{color:var(--color-text-faint)}.pricing-path{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.pricing-stage{position:relative;padding:var(--space-lg) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.pricing-stage[data-estado=abierta]{background:var(--color-surface-raised);border-color:color-mix(in srgb,var(--color-sage) 60%,transparent);box-shadow:0 1.5rem 3rem -1.75rem color-mix(in srgb,var(--color-sage) 70%,transparent)}.pricing-stage[data-estado=proximamente]>*{opacity:.8}.pricing-stage__node{display:block;width:.85rem;height:.85rem;border-radius:50%;background:var(--color-border-strong);margin-bottom:var(--space-md)}.pricing-stage[data-estado=abierta] .pricing-stage__node{background:var(--color-brand);box-shadow:0 0 0 5px color-mix(in srgb,var(--color-brand) 20%,transparent)}.pricing-stage .badge{margin-bottom:var(--space-md)}.pricing-stage__name{font-size:var(--step-1);margin-bottom:var(--space-2xs)}.pricing-stage__condicion{font-size:var(--step--1);color:var(--color-text-muted);margin-bottom:var(--space-sm)}.pricing-stage__precio{font-family:var(--font-heading);font-size:var(--step-2);letter-spacing:-.03em;margin-bottom:var(--space-2xs)}.pricing-stage__mensualidad{font-size:var(--step--1);color:var(--color-text-muted);margin-bottom:var(--space-md)}.pricing-stage__cupo{font-size:var(--step--1);color:var(--color-accent)}.pricing-stage__cupo:empty{display:none}@media (max-width: 63.9375rem){.pricing-path{grid-template-columns:1fr}}.faq-list{display:grid;gap:var(--space-sm);max-width:48rem}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding-inline:var(--space-md);background:var(--color-surface);transition:border-color var(--duration-base) var(--ease-out)}.faq-item[open]{border-color:var(--color-border-strong)}.faq-item summary{padding-block:var(--space-sm);cursor:pointer;font-weight:600;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--font-heading);font-size:var(--step-1);color:var(--color-emphasis);flex-shrink:0}.faq-item[open] summary:after{content:"–"}.faq-item p{padding-bottom:var(--space-md);color:var(--color-text-muted)}.form-field{display:grid;gap:var(--space-2xs);margin-bottom:var(--space-md)}.form-field label{font-size:var(--step--1);font-weight:600}.form-field input,.form-field textarea{padding:var(--space-sm);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text)}.form-field input:focus-visible,.form-field textarea:focus-visible{border-color:var(--color-text);outline-offset:1px}.portfolio-showcase{max-width:34rem;margin-inline:auto}.grid_portafolio{display:grid;grid-auto-flow:column}@media (max-width: 980px){.grid_portafolio{display:block}}.portfolio-showcase__stage{position:relative;aspect-ratio:16 / 10;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border)}.portfolio-showcase__shot{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.portfolio-showcase__stage.is-3d .portfolio-showcase__shot{display:none}.portfolio-showcase__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none;cursor:grab}.portfolio-showcase__css3d{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.portfolio-showcase__canvas:active{cursor:grabbing}.portfolio-showcase__caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-sm);font-size:var(--step--1);color:var(--color-text-muted)}.portfolio-showcase__controls{display:flex;gap:var(--space-2xs)}.portfolio-showcase__controls button{font:inherit;font-size:inherit;padding:.4em .9em;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:inherit;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.portfolio-showcase__controls button:hover,.portfolio-showcase__controls button:focus-visible{border-color:var(--color-text)}.portfolio-showcase__controls button[aria-pressed=true]{background:var(--color-btn-bg);border-color:var(--color-btn-bg);color:var(--color-btn-text)}.piloto-callout{display:grid;gap:var(--space-md);padding:var(--space-xl);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);text-align:center;justify-items:center;max-width:40rem;margin-inline:auto}.piloto-callout .hero__lead{margin-bottom:0}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:hidden}.lenis [data-lenis-prevent]{overscroll-behavior:contain}@media (prefers-reduced-motion: no-preference){.js [data-split]{visibility:hidden}.js [data-reveal],.js [data-stagger]>*{opacity:0;transform:translateY(1.5rem)}}.split-line-mask{padding-block:.14em;margin-block:-.14em}main:focus{outline:none}main{position:relative}.node-line{position:absolute;top:0;left:max(.3rem,calc((100% - var(--content-max)) / 2 + var(--content-padding) - 2.1rem));width:14px;height:100%;overflow:visible;pointer-events:none;z-index:0}.node-line path{fill:none;stroke:var(--color-node-line);stroke-width:1;stroke-linejoin:round}.node-line circle{fill:var(--color-node-dot);stroke:var(--color-border-strong);stroke-width:1;transition:fill .5s var(--ease-out),stroke .5s var(--ease-out),filter .5s var(--ease-out)}.node-line circle.is-lit{fill:var(--color-brand);stroke:var(--color-brand);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--color-brand) 70%,transparent))}.story__stage{display:flex;flex-direction:column;padding-block:var(--space-md) var(--space-xl)}.story__panel{width:min(42rem,100%);padding-block:var(--space-xl);border-top:1px solid var(--color-border)}.story__panel:first-child{border-top:0;padding-top:var(--space-lg)}.story__panel{display:flex;flex-direction:column;align-items:flex-start}:is(.story__meta,.story__stepper,.story__hint,.story__tagline,.hotspot){display:none}.story__toggle3d{display:none;order:-1;align-self:flex-start;margin:0 var(--gutter) var(--space-xs);padding:0 0 .15rem;border:0;border-bottom:1px solid var(--color-border-strong);background:transparent;font-size:var(--step--2);color:var(--color-text-muted);cursor:pointer}.js .story__toggle3d{display:inline-block}.story__toggle3d:hover,.story__toggle3d:focus-visible{color:var(--color-text);border-color:var(--color-text)}.story__title{font-size:min(clamp(2.8rem,1.2rem + 4.8vw,5.9rem),12.5svh);letter-spacing:-.045em;line-height:.98;margin-bottom:var(--space-md)}.story__title--sm{font-size:min(clamp(2.4rem,1rem + 3.7vw,4.4rem),9svh)}.story__title em{display:inline-block;padding-right:.06em}.story__lead{font-size:var(--step-0);line-height:1.7;color:var(--color-text-muted);max-width:30rem;margin-bottom:var(--space-md)}.story__note{margin-top:var(--space-sm);font-size:var(--step--1);color:var(--color-text-muted)}.story__kicker{margin-top:.2rem;font-size:var(--step--2);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-faint)}.story__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-md)}.story__services{width:min(28rem,100%);border-top:1px solid var(--color-border);margin-top:var(--space-xs)}.story__services a{display:grid;grid-template-columns:1.6rem 1fr auto;align-items:center;gap:var(--space-xs);padding-block:clamp(.45rem,1.3svh,.8rem);border-bottom:1px solid var(--color-border);text-decoration:none;color:var(--color-text);transition:padding var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.story__services .n{font-size:var(--step--2);color:var(--color-text-faint);letter-spacing:.05em}.story__services strong{display:block;font-weight:500;font-size:var(--step-0);line-height:1.25}.story__services small{display:block;font-size:var(--step--1);color:var(--color-text-faint);line-height:1.35}.story__services .go{color:var(--color-text-muted);transition:transform var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.story__services a:hover,.story__services a:focus-visible,.story__services a.is-active{padding-left:.5rem;background:linear-gradient(to right,color-mix(in srgb,var(--color-sage-soft) 55%,transparent),transparent)}:root[data-theme=dark] .story__services a:hover,:root[data-theme=dark] .story__services a:focus-visible,:root[data-theme=dark] .story__services a.is-active{background:linear-gradient(to right,color-mix(in srgb,var(--color-sage) 30%,transparent),transparent)}.story__services a:hover .go,.story__services a:focus-visible .go,.story__services a.is-active .go{transform:translate(2px,-2px);color:var(--color-text)}.story__detail{width:min(28rem,100%);min-height:3.2em;margin-top:var(--space-xs);font-size:var(--step--1);line-height:1.5;color:var(--color-text-muted)}.story__aside{display:flex;align-items:flex-start;gap:var(--space-xs);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-border);width:min(28rem,100%);font-size:var(--step--1);color:var(--color-text-muted)}.story__aside svg{flex:none;width:1.7rem;height:1.7rem;color:var(--color-sage)}.story__aside strong{display:block;color:var(--color-text);font-weight:500}.story-3d .story{position:relative;height:calc(100svh - var(--header-h) + 260svh)}.story-3d .story__stage{position:sticky;top:var(--header-h);display:block;height:calc(100svh - var(--header-h));min-height:34rem;padding:0;overflow:clip}.story-3d .story__stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,var(--color-bg) 0%,color-mix(in srgb,var(--color-bg) 88%,transparent) 26%,transparent 56%);pointer-events:none}.story-3d .story__panels{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-items:center;pointer-events:none;padding-bottom:4.8rem}.story-3d .story__panel{grid-area:1 / 1;width:min(34rem,100%);padding-block:0;border-top:0;visibility:hidden;transition:visibility 0s linear .5s}.story-3d .story__panel.is-active{visibility:visible;pointer-events:auto;transition-delay:0s}.story-3d .story__panel>*{opacity:0;transform:translateY(1.1rem);transition:opacity .45s var(--ease-out),transform .7s var(--ease-out)}.story-3d .story__panel.is-active>*{opacity:1;transform:none}.story-3d .story__panel.is-active>:nth-child(1){transition-delay:.12s}.story-3d .story__panel.is-active>:nth-child(2){transition-delay:.2s}.story-3d .story__panel.is-active>:nth-child(3){transition-delay:.3s}.story-3d .story__panel.is-active>:nth-child(4){transition-delay:.4s}.story-3d .story__panel.is-active>:nth-child(5){transition-delay:.48s}.story-3d .story__panel.is-active>:nth-child(6){transition-delay:.56s}.story-3d .story__meta{position:absolute;top:1rem;right:var(--gutter);display:flex;align-items:center;gap:.9rem;font-size:var(--step--2);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);pointer-events:none}.story__meta:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--color-sage)}.story__rule{width:3.5rem;height:1px;background:var(--color-border-strong)}.story-3d .story__stepper{position:absolute;left:50%;bottom:1.25rem;transform:translate(-50%);display:flex;align-items:center;gap:.6rem;padding:.55rem 1.1rem .55rem .6rem;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-pill-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1rem 2rem -1.5rem var(--color-shadow)}.story__stepper li{display:contents}.story__stepper li+li:before{content:"";width:1.8rem;height:1px;background:var(--color-border-strong)}.story__step{display:inline-flex;align-items:center;gap:.55rem;padding:.15rem .5rem .15rem .15rem;border:0;border-radius:var(--radius-full);background:transparent;font-size:var(--step--1);white-space:nowrap;color:var(--color-text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.story__step span{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:color-mix(in srgb,var(--color-text) 7%,transparent);font-size:var(--step--2);color:var(--color-text-faint);transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.story__step:hover,.story__step[aria-current=step]{color:var(--color-text)}.story__step[aria-current=step] span{background:var(--color-sage-soft);color:var(--color-forest)}.story-3d :is(.story__hint,.story__tagline){position:absolute;bottom:1.6rem;display:block;font-size:var(--step--2);letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-faint);pointer-events:none}.story-3d .story__hint{left:var(--gutter);display:flex;align-items:center;gap:.7rem}.story__hint span{font-size:1.1rem;letter-spacing:0}.story-3d .story__tagline{right:var(--gutter)}.story-3d .story__toggle3d{position:absolute;z-index:2;display:block;order:0;right:var(--gutter);bottom:3.9rem;margin:0}.story-3d .hotspot{position:fixed;top:0;left:0;z-index:5;display:block;padding:0;border:0;background:none;color:inherit;text-decoration:none;opacity:0;pointer-events:none;will-change:transform;transition:opacity .45s var(--ease-out)}.story-3d .hotspot.is-visible{opacity:1;pointer-events:auto}.hotspot__pill{display:inline-flex;align-items:center;gap:.55rem;padding:.32rem .95rem .32rem .32rem;border-radius:var(--radius-full);background:var(--color-pill-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 .6rem 1.4rem -.6rem var(--color-shadow),0 0 0 1px color-mix(in srgb,var(--color-text) 6%,transparent);font-size:var(--step--1);font-weight:500;color:var(--color-text);white-space:nowrap;transform:translate(-50%,-100%);transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.hotspot__dot{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--color-hotspot-dot);color:var(--color-forest);font-size:.8rem;line-height:1;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.hotspot.is-visible .hotspot__dot{animation:hotspot-pulse 2.6s ease-out infinite}@keyframes hotspot-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--color-brand) 45%,transparent)}70%,to{box-shadow:0 0 0 .7rem transparent}}.hotspot:hover .hotspot__pill,.hotspot:focus-visible .hotspot__pill,.hotspot.is-active .hotspot__pill{transform:translate(-50%,-100%) scale(1.06);box-shadow:0 .9rem 1.8rem -.6rem var(--color-shadow),0 0 0 1px color-mix(in srgb,var(--color-brand) 55%,transparent)}.hotspot:hover .hotspot__dot,.hotspot:focus-visible .hotspot__dot,.hotspot.is-active .hotspot__dot{background:var(--color-accent-solid);color:#fff}.hotspot:focus-visible{outline:none}.hotspot:focus-visible .hotspot__pill{outline:2px solid var(--color-focus);outline-offset:2px}@media (max-width: 55rem){.story-3d .story__stage:before{background:linear-gradient(to bottom,var(--color-bg) 0%,color-mix(in srgb,var(--color-bg) 86%,transparent) 30%,transparent 50%)}.story-3d .story__panels{align-items:start;padding-top:.75rem;padding-bottom:0}.story-3d .story__panel{width:min(26rem,100%)}.story-3d .story__title{font-size:clamp(2.3rem,9.5vw,3.4rem);margin-bottom:var(--space-xs)}.story-3d .story__title--sm{font-size:clamp(2rem,8vw,2.9rem)}.story-3d .story__lead{font-size:var(--step--1);line-height:1.55;margin-bottom:var(--space-sm)}.story-3d .story__panel .eyebrow{margin-bottom:var(--space-2xs)}.story-3d .hotspot__pill{gap:.4rem;padding:.22rem .65rem .22rem .22rem;font-size:var(--step--2)}.story-3d .hotspot__dot{width:1.3rem;height:1.3rem;font-size:.7rem}.story-3d :is(.story__services,.story__aside,.story__note,.story__kicker,.story__hint,.story__tagline,.story__meta){display:none}.story-3d .story__toggle3d{right:var(--gutter);bottom:3.6rem}.story-3d .story__stepper{bottom:.9rem;gap:.3rem;padding-inline:.4rem .7rem}.story__stepper li+li:before{width:.8rem}.story__step{font-size:var(--step--2);gap:.35rem}}@media (max-width: 30rem){.story__step{padding-right:.2rem}.story__step:not([aria-current=step]){font-size:0;gap:0}}.room-ui .story__toggle3d{order:0;display:inline-block;margin:var(--space-sm) 0 0}.room-ui .story__meta,.room-ui .hotspot,.room-link{display:none}.story-3d .page-hero--room{position:relative;min-height:calc(100svh - var(--header-h));display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding-block:var(--space-sm) 5rem}.story-3d .page-hero--room:before{content:"";position:absolute;top:0;bottom:-8rem;left:calc(50% - 50vw);right:calc(50% - 50vw);background:linear-gradient(to bottom,var(--color-bg) 0%,color-mix(in srgb,var(--color-bg) 86%,transparent) 30%,transparent 52%);pointer-events:none}.story-3d .page-hero--room>*{position:relative}.story-3d .page-hero--room h1{font-size:clamp(2.2rem,9vw,3.2rem);max-width:12ch}.story-3d .page-hero--room p:not(.eyebrow){max-width:30rem;font-size:var(--step--1);line-height:1.55}.story-3d .room-ui{position:absolute;top:calc(100svh - var(--header-h) - 3.2rem);left:var(--gutter);right:var(--gutter);z-index:3}.story-3d .room-ui .story__toggle3d{position:absolute;right:0;margin:0}.story-3d .room-ui .hotspot{position:fixed;top:0;left:0;z-index:5;display:block;padding:0;border:0;background:none;color:inherit;text-decoration:none;opacity:0;pointer-events:none;will-change:transform;transition:opacity .45s var(--ease-out)}.story-3d .room-ui .hotspot.is-visible{opacity:1;pointer-events:auto}.story-3d .room-panel{position:relative}.story-3d .room-panel:before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);background:linear-gradient(to bottom,transparent 0,color-mix(in srgb,var(--color-bg) 96%,transparent) 8rem);z-index:-1;pointer-events:none}@media (min-width: 62rem){.story-3d main[data-room]:not([data-page=inicio]){height:calc(100svh - var(--header-h));min-height:34rem;overflow:clip}.story-3d main[data-room]:not([data-page=inicio]):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,var(--color-bg) 0%,color-mix(in srgb,var(--color-bg) 88%,transparent) 20%,transparent 40%);pointer-events:none;z-index:1}.story-3d .page-hero--room{position:absolute;z-index:2;inset:0 auto 0 0;width:calc(var(--gutter) + min(24rem,27vw));max-width:none;min-height:0;margin:0;padding:0 1rem 4.5rem var(--gutter);justify-content:center}.story-3d .page-hero--room:before{display:none}.story-3d .page-hero--room h1{font-size:min(clamp(2rem,.8rem + 2.5vw,3.6rem),9.5svh);max-width:none}.story-3d .page-hero--room p:not(.eyebrow){font-size:var(--step-0);line-height:1.65}.story-3d .room-ui{bottom:0;top:0;left:0;right:0;pointer-events:none}.story-3d .room-ui .story__meta{position:absolute;top:.5rem;right:var(--gutter);z-index:4;display:flex;align-items:center;gap:.9rem;font-size:var(--step--2);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted)}.story-3d .room-ui .story__meta:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--color-sage)}.story-3d .room-ui .story__toggle3d{left:var(--gutter);right:auto;bottom:1.4rem;top:auto;pointer-events:auto;z-index:4}.story-3d .room-link{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0;transition:opacity .5s var(--ease-out)}.story-3d .room-link line{stroke:var(--color-brand);stroke-width:1.5;stroke-dasharray:5 5;opacity:.8}.story-3d .room-link circle{fill:var(--color-bg);stroke:var(--color-brand);stroke-width:2}.story-3d .room-panel{position:absolute;z-index:3;top:2.4rem;bottom:.9rem;right:var(--gutter);width:clamp(22rem,29vw,31rem);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface-raised) 95%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 2rem 4rem -2rem var(--color-shadow);scrollbar-width:thin}.story-3d .room-panel:before{display:none}.story-3d .room-panel:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.story-3d .room-panel .section{padding:var(--space-md)}.story-3d .room-panel .section.container{max-width:none;padding-inline:var(--space-md)}.story-3d .room-panel .section--veil:before{display:none}.story-3d .room-panel .section+.section{border-top:1px solid var(--color-border)}.story-3d .room-panel :is(.service-grid,.pricing-path,.grid-2){grid-template-columns:1fr;gap:var(--space-sm)}.story-3d .room-panel .section__head{margin-bottom:var(--space-md)}.story-3d .room-panel .section__head h2{font-size:var(--step-2)}.story-3d .room-panel :is(.service-card,.pricing-stage){padding:var(--space-md)}.story-3d .room-panel .service-card h2,.story-3d .room-panel .pricing-stage__name{font-size:var(--step-1)}.story-3d .room-panel .hero__lead{font-size:var(--step-0);margin-bottom:var(--space-md)}.story-3d .room-panel .piloto-callout{padding:var(--space-md)}.story-3d .room-panel .portfolio-showcase{max-width:none}.story-3d .room-panel .grid_portafolio{display:block}.story-3d .room-ui .hotspot{display:none}.story-3d .room-panel .btn--lg{font-size:var(--step--1);padding:.9em 1.3em}.story-3d .room-panel [data-split]{visibility:visible!important}.story-3d .room-panel [data-reveal],.story-3d .room-panel [data-stagger]>*{opacity:1!important;transform:none!important}}
