/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.hidden{display:none}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--verde:#215c50;--verde-700:#17453b;--verde-900:#0e2f28;--coral:#ff6d4d;--coral-600:#e8552f;--coral-700:#cc3f1c;--tinta:#141414;--mute:#5c5c57;--papel:#fff;--crema:#fbf7f2;--linea:#215c5024;--linea-oscura:#ffffff29;--linea-coral:#ff6d4d66;--verde-04:var(--verde)}@supports (color:color-mix(in lab, red, red)){:root{--verde-04:color-mix(in srgb, var(--verde) 4%, var(--papel))}}:root{--verde-08:var(--verde)}@supports (color:color-mix(in lab, red, red)){:root{--verde-08:color-mix(in srgb, var(--verde) 8%, var(--papel))}}:root{--verde-12:var(--verde)}@supports (color:color-mix(in lab, red, red)){:root{--verde-12:color-mix(in srgb, var(--verde) 12%, var(--papel))}}:root{--crema-verde:var(--verde)}@supports (color:color-mix(in lab, red, red)){:root{--crema-verde:color-mix(in srgb, var(--verde) 5%, var(--crema))}}:root{--coral-12:var(--coral)}@supports (color:color-mix(in lab, red, red)){:root{--coral-12:color-mix(in srgb, var(--coral) 12%, var(--papel))}}:root{--coral-20:var(--coral)}@supports (color:color-mix(in lab, red, red)){:root{--coral-20:color-mix(in srgb, var(--coral) 20%, var(--papel))}}:root{--verde-88:var(--verde)}@supports (color:color-mix(in lab, red, red)){:root{--verde-88:color-mix(in srgb, var(--verde) 88%, var(--verde-900))}}:root{--fuente:"Montserrat Variable", "Montserrat", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--t-display:clamp(3.25rem, 9.2vw, 8.5rem);--t-h1:clamp(2.5rem, 5.2vw, 4.5rem);--t-h2:clamp(1.5rem, 2.4vw, 2rem);--t-h3:clamp(1.125rem, 1.5vw, 1.375rem);--t-lead:clamp(1.0625rem, 1.35vw, 1.3125rem);--t-body:1.0625rem;--t-small:.875rem;--t-label:.6875rem;--track-display:-.045em;--track-tight:-.02em;--track-label:.24em;--lh-display:.86;--lh-title:1.02;--lh-body:1.65;--max-text:62ch;--r-xs:8px;--r-sm:14px;--r-md:22px;--r-lg:34px;--r-xl:52px;--r-panel:clamp(40px, 12vw, 180px);--r-full:999px;--r-stage:clamp(48px, 7vw, 104px);--rim:clamp(10px, 1.1vw, 18px);--rim-tight:5px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-6:24px;--s-8:32px;--s-12:48px;--s-16:64px;--s-24:96px;--s-32:128px;--s-40:160px;--seccion:clamp(80px, 10vw, 160px);--ancho:1440px;--margen:clamp(20px, 5vw, 80px);--gutter:clamp(16px, 2vw, 32px);--panel:clamp(320px, 34vw, 40.5%);--rail:3.25rem;--topbar:4.5rem;--e-out:cubic-bezier(.16, 1, .3, 1);--e-inout:cubic-bezier(.65, 0, .35, 1);--d-1:.16s;--d-2:.24s;--d-3:.42s;--d-4:.72s;--d-5:1.1s;--stagger:55ms;--reveal-y:18px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}@font-face{font-family:Montserrat Variable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-latin-wght.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html{font-family:var(--fuente);background:var(--papel);color:var(--tinta);scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:0}body{font-size:var(--t-body);line-height:var(--lh-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}::selection{background:var(--coral);color:var(--tinta)}[hidden]{display:none!important}h1,h2,h3{font-weight:800;line-height:var(--lh-title);letter-spacing:var(--track-tight);text-wrap:balance;overflow-wrap:break-word}p{text-wrap:pretty}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit}.icon{flex:none}:focus-visible{outline:2px solid var(--coral-700);outline-offset:3px;border-radius:2px}.on-dark :focus-visible,.panel :focus-visible{outline-color:var(--papel)}.on-coral :focus-visible,.act--contact :focus-visible,.footer :focus-visible{outline-color:var(--verde-900)}.skip{z-index:200;padding:var(--s-3) var(--s-6);background:var(--verde);color:var(--papel);font-size:var(--t-label);letter-spacing:var(--track-label);text-transform:uppercase;transition:transform var(--d-2) var(--e-out);font-weight:700;text-decoration:none;position:fixed;inset-block-start:var(--s-4);inset-inline-start:var(--s-4);transform:translateY(-200%)}.skip:focus-visible{outline:2px solid var(--papel);outline-offset:2px;box-shadow:0 0 0 5px var(--coral-700);transform:translateY(0)}main:focus,.act:focus{outline:none}.label{font-size:var(--t-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--mute);font-weight:700;line-height:1.2}.label--on-dark{color:var(--papel);opacity:.72}.mono{font-family:var(--mono);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);line-height:1.3}.wrap{width:100%;max-width:var(--ancho);padding-inline:var(--margen);margin-inline:auto}.act{min-height:100svh;padding-block:var(--seccion);position:relative}.act--criterion{overflow-x:clip}.act--trajectory{background:var(--crema)}.act--craft{padding-block:clamp(44px,4.6vw,64px)}.panel{border-radius:var(--r-panel);color:var(--papel);position:relative}.panel__rim,.panel__fill{border-radius:inherit;pointer-events:none;position:absolute}.panel__rim{inset:calc(-1 * var(--rim)) 0 0 0;background:var(--coral)}.panel__fill{background:var(--verde);inset:0}.panel--verde-900 .panel__fill{background:var(--verde-900)}.panel__inner{z-index:1;height:100%;position:relative}.panel--hero{border-radius:var(--r-panel) var(--r-panel) 0 0;flex-direction:column;display:flex}.panel--hero .panel__inner{flex:1}.disc{border-radius:var(--r-full);background:var(--coral-700);width:44px;height:44px;color:var(--papel);font-family:var(--mono);letter-spacing:.02em;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex}.shead{container-type:inline-size}.shead__meta{align-items:flex-start;gap:var(--s-3);flex-direction:column;display:flex;position:relative}.shead__kicker{color:var(--coral-700)}.shead__title{margin-top:var(--s-6);letter-spacing:-.032em;max-width:21ch;color:var(--verde);font-size:clamp(2rem,3.6vw,3.25rem);font-weight:800;line-height:1.02}@media (width>=1200px){.shead__meta{display:block}.shead__meta .disc{position:absolute;top:50%;left:-60px;transform:translateY(-50%)}}.btn{--btn-fill:var(--verde);cursor:pointer;--btn-ink:var(--papel);--btn-rim:var(--coral);isolation:isolate;border-radius:var(--r-full);color:var(--btn-ink);letter-spacing:.02em;white-space:nowrap;transition:transform .12s var(--e-out);justify-content:center;align-items:center;gap:10px;padding:14px 22px;font-size:.875rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex;position:relative}.btn:before,.btn:after{content:"";border-radius:inherit;z-index:-1;position:absolute;inset:0}.btn:before{background:var(--btn-rim);transition:transform var(--d-1) var(--e-out)}.btn:after{background:var(--btn-fill)}.btn--outline{--btn-fill:var(--papel);--btn-ink:var(--verde)}.btn--outline:after{border:1px solid var(--verde)}@supports (color:color-mix(in lab, red, red)){.btn--outline:after{border:1px solid color-mix(in srgb, var(--verde) 42%, var(--papel))}}.btn--cream{--btn-fill:var(--crema);--btn-ink:var(--tinta);--btn-rim:var(--verde-900)}.btn--lg{gap:14px;padding:20px 30px;font-size:1rem}.btn:active{transform:translateY(1px)}.btn .icon{transition:transform var(--d-1) var(--e-out)}@media (hover:hover) and (pointer:fine){.btn:hover:before{transform:translateY(-3px)}.btn:hover .icon{transform:translate(3px)}}.circles{aspect-ratio:1;pointer-events:none;width:clamp(160px,16vw,250px);position:absolute}.circles span{border-radius:var(--r-full);position:absolute}.circles__back{background:var(--coral);inset:0}.circles__front{background:var(--verde);width:82%;height:82%;top:0;right:0}.hero{background:var(--papel);flex-direction:column;min-height:100svh;padding-top:clamp(24px,3.4vw,48px);display:flex;position:relative;overflow:clip}.hero__body{z-index:1;flex:1;grid-template-columns:min(40.5%,720px) minmax(0,1fr);display:grid;position:relative}.hero__panel{align-self:stretch}.hero__panel .panel__inner{flex-direction:column;justify-content:flex-end;height:100%;padding:clamp(24px,3.4vw,56px);display:flex}.hero__panel-label{align-items:center;gap:8px;display:flex}.hero__panel-label:before{content:"";background:var(--coral);width:14px;height:2px}.hero__tesis{max-width:24ch;margin-top:var(--s-6);color:var(--papel);letter-spacing:-.01em;font-size:clamp(1.05rem,1.5vw,1.4rem);font-weight:500;line-height:1.35}.hero__panel-foot{padding-top:var(--s-4);border-top:1px solid var(--linea-oscura);margin-top:clamp(24px,3.4vw,44px)}.hero__langs{margin-top:var(--s-2);color:var(--papel);font-size:var(--t-small);flex-direction:column;gap:4px;line-height:1.45;display:flex}.hero__langs li{justify-content:space-between;gap:2px var(--s-4);flex-wrap:wrap;max-width:30ch;display:flex}.hero__langs span:last-child{opacity:.74}.hero__main{min-width:0;padding:clamp(18px, 2.6vw, 34px) var(--margen) clamp(24px, 3vw, 40px) clamp(24px, 3.5vw, 56px);display:flex}.hero__copy{flex-direction:column;width:100%;display:flex;container-type:inline-size}.hero__kicker{justify-content:space-between;align-items:center;gap:var(--s-4);border-bottom:1px solid var(--linea);color:var(--coral-700);padding-bottom:14px;display:flex}.hero__name{color:var(--verde);font-size:clamp(38px,15.9cqw,9.5rem);font-weight:800;line-height:var(--lh-display);letter-spacing:var(--track-display);text-transform:uppercase;margin-top:clamp(20px,3vw,40px)}.hero__name .line{display:block}.hero__name .line__inner{white-space:nowrap;display:block}.hero__name .line--accent .line__inner{color:var(--coral-700)}.hero__role{max-width:60ch;color:var(--verde-700);letter-spacing:.18em;text-transform:uppercase;white-space:pre-line;margin-top:clamp(16px,2vw,26px);font-size:clamp(.6875rem,.95vw,.8125rem);font-weight:700;line-height:1.5}.hero__headline{max-width:23ch;color:var(--verde);letter-spacing:-.018em;text-wrap:balance;margin-top:clamp(18px,2.8vw,36px);font-size:clamp(1.25rem,2vw,1.75rem);font-weight:500;line-height:1.24}.hero__support{max-width:48ch;margin-top:var(--s-4);color:var(--mute);font-size:var(--t-body);line-height:1.6}.hero__actions{align-items:center;gap:var(--s-3);flex-wrap:wrap;margin-top:clamp(24px,3.2vw,40px);display:flex}.hero__meta{color:var(--mute);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px 8px;margin-top:auto;padding-top:clamp(24px,4vw,56px);display:flex}.hero__meta-tz{white-space:nowrap}.hero__circles{z-index:0;top:clamp(-64px,-4.4vw,-40px);right:clamp(-40px,-2vw,-16px)}.criterion{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.criterion__copy{grid-column:1/span 6;min-width:0}.criterion__body{max-width:54ch;color:var(--tinta);font-size:var(--t-lead);margin-top:clamp(24px,3vw,40px);line-height:1.6}.criterion__stats{gap:var(--gutter);padding-top:var(--s-6);border-top:1px solid var(--linea);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(32px,4.2vw,56px);display:grid}.criterion__stats li{flex-direction:column;gap:6px;display:flex}.stat__value{color:var(--verde);letter-spacing:-.035em;overflow-wrap:break-word;font-size:clamp(1.6rem,2.4vw,2.25rem);font-weight:800;line-height:1}.stat__label{max-width:15ch;color:var(--mute);font-size:var(--t-small);overflow-wrap:break-word;line-height:1.35}.criterion__stage{grid-column:8/span 5;align-self:stretch;min-height:clamp(420px,42vw,600px);position:relative}.layer{border-radius:var(--r-stage);position:absolute;inset:0}.layer--coral{background:var(--coral);transform:translateY(-6px)}.layer--green{background:var(--verde);color:var(--papel);flex-direction:column;justify-content:space-between;padding:clamp(26px,3vw,44px);display:flex}.layer__label{color:var(--papel);opacity:.72;align-items:center;gap:8px;display:flex}.layer__label:before{content:"";background:var(--coral);width:14px;height:2px}.layer__quote{letter-spacing:-.01em;max-width:20ch;font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:500;line-height:1.35}.trajectory{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.trajectory__side{grid-column:1/span 4;min-width:0}.trajectory__sticky{position:sticky;top:clamp(72px,11vh,128px)}.trajectory__counter{align-items:baseline;gap:var(--s-2);margin-top:clamp(32px,4vw,56px);display:flex}.trajectory__current{color:var(--verde);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800;line-height:.9}.trajectory__total{color:var(--mute)}.trajectory__hint{margin-top:var(--s-3);color:var(--coral-700)}.timeline{grid-column:6/span 7;min-width:0;padding-left:clamp(32px,4vw,56px);position:relative}.timeline__line{background:var(--linea);width:1px;position:absolute;top:8px;bottom:8px;left:0}.timeline__progress{background:var(--coral-700);transform-origin:top;width:100%;height:100%;display:block;transform:scaleY(0)}.milestone{position:relative}.milestone+.milestone{margin-top:clamp(30px,3.6vw,48px)}.milestone:before{content:"";border:2px solid var(--crema);border-radius:var(--r-full);background:var(--coral-600);width:7px;height:7px;position:absolute;top:4px;left:calc(-1*clamp(32px,4vw,56px) - 3.5px)}.milestone__meta{color:var(--mute);flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.milestone__index{color:var(--coral-700)}.milestone__when{color:var(--verde-700);overflow-wrap:break-word;margin-left:auto}.milestone__title{max-width:30ch;margin-top:var(--s-2);color:var(--verde);letter-spacing:-.022em;font-size:clamp(1.25rem,1.7vw,1.5rem);font-weight:800;line-height:1.15}.milestone__org{color:var(--verde-700);font-size:var(--t-small);margin-top:4px;font-weight:600}.milestone__points{margin-top:var(--s-4)}.milestone__points li{color:var(--tinta);font-size:var(--t-body);overflow-wrap:break-word;padding-left:18px;line-height:1.55;position:relative}.milestone__points li+li{margin-top:6px}.milestone__points li:before{content:"";background:var(--coral-700);width:8px;height:1px;position:absolute;top:.72em;left:0}.milestone--exp{border-bottom:1px solid var(--linea);padding-bottom:clamp(28px,3.4vw,44px)}.craft__head{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.craft__head .shead{grid-column:1/span 7}.craft__line{max-width:40ch;color:var(--mute);font-size:var(--t-body);text-wrap:pretty;grid-column:1/span 7;margin-top:clamp(12px,1.4vw,18px);line-height:1.5}.craft__groups{border-top:1px solid var(--linea);margin-top:clamp(24px,3vw,40px)}.skills{gap:var(--gutter);border-bottom:1px solid var(--linea);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;padding-block:clamp(10px,1.2vw,14px);display:grid}.skills__label{color:var(--coral-700);grid-column:1/span 2}.skills__list{flex-wrap:wrap;grid-column:3/span 10;gap:6px;display:flex}.chip{isolation:isolate;overflow-wrap:break-word;border-radius:var(--r-full);max-width:100%;color:var(--verde);align-items:center;padding:6px 12px;font-size:.8125rem;font-weight:500;line-height:1.1;display:inline-flex;position:relative}.chip:before,.chip:after{content:"";border-radius:inherit;z-index:-1;position:absolute;inset:0}.chip:before{background:var(--coral);opacity:0;transition:opacity var(--d-1) var(--e-out), transform var(--d-1) var(--e-out);transform:translateY(0)scaleX(.94)}.chip:after{background:var(--papel);border:1px solid var(--linea)}@media (hover:hover) and (pointer:fine){.chip:hover:before{opacity:1;transform:translateY(-3px)scaleX(1)}}.work__head{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.work__head .shead{grid-column:1/span 7}.work__intro{max-width:52ch;color:var(--mute);font-size:var(--t-body);grid-column:1/span 7;margin-top:clamp(20px,2.4vw,28px);line-height:1.6}.feature{border-top:1px solid var(--linea);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(24px,3.2vw,48px);margin-top:clamp(40px,5vw,72px);padding-top:clamp(24px,3vw,40px);display:grid}.feature--reverse{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.feature--reverse .feature__media{grid-area:1/2}.feature--reverse .feature__body{grid-area:1/1}.feature__media{border:1px solid var(--linea);border-radius:var(--r-lg);background:var(--crema);overflow:hidden}.feature__shot{width:100%;height:auto;display:block}.feature__body{gap:var(--s-3);flex-direction:column;min-width:0;display:flex}.feature__brand{align-items:center;gap:var(--s-3);margin-top:var(--s-2);display:flex}.feature__brand>div{min-width:0}.feature__logo{border:1px solid var(--linea);border-radius:var(--r-sm);background:var(--papel);object-fit:cover;flex:none;width:56px;height:56px}.feature__logo--wide{object-fit:contain;background:0 0;border:0;border-radius:0;width:120px;height:auto;display:block}.feature__title--logo{line-height:0}.feature__title{color:var(--verde);letter-spacing:-.03em;font-size:clamp(1.75rem,2.4vw,2.25rem);font-weight:800;line-height:1.02}.feature__tagline{color:var(--verde-700);font-size:var(--t-small);margin-top:3px;line-height:1.4}.feature__note{margin-top:calc(-1 * var(--s-1));color:var(--coral-700)}.feature__summary{color:var(--mute);font-size:var(--t-small);line-height:1.6}.feature__facts{gap:var(--s-4);margin-top:var(--s-1);padding-top:var(--s-3);border-top:1px solid var(--linea);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.feature__facts li{flex-direction:column;gap:3px;min-width:0;display:flex}.feature__fact-value{color:var(--coral-700);letter-spacing:-.035em;overflow-wrap:break-word;font-size:clamp(1.35rem,1.8vw,1.7rem);font-weight:800;line-height:1}.feature__fact-label{color:var(--mute);font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;overflow-wrap:break-word;font-weight:700;line-height:1.25}.feature__links{align-items:center;gap:var(--s-4);margin-top:var(--s-1);flex-wrap:wrap;display:flex}.cases{gap:clamp(40px, 5vw, 72px) var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));margin-top:clamp(48px,6vw,88px);display:grid}.case{flex-direction:column;align-self:start;gap:clamp(16px,2vw,24px);min-width:0;display:flex}.case--03{grid-column:1/span 7}.case--04{grid-column:9/span 4;margin-top:clamp(56px,8vw,112px)}.case--05{grid-column:1/span 4}.case--06{grid-column:5/span 4;margin-top:clamp(24px,3vw,56px)}.case__cover{border-radius:var(--r-lg);position:relative}.case__cover:before{content:"";border-radius:inherit;background:var(--coral);transition:transform var(--d-3) var(--e-out);position:absolute;inset:0}.case:hover .case__cover:before,.case:focus-within .case__cover:before{transform:translateY(-8px)}.case__cover--image{background:var(--verde-04)}.case__image{z-index:1;border-radius:var(--r-lg);width:100%;height:auto;display:block;position:relative}.case__body{gap:var(--s-2);flex-direction:column;display:flex}.case__meta{justify-content:space-between;align-items:center;gap:4px var(--s-4);color:var(--mute);flex-wrap:wrap;display:flex}.case__meta>span:first-child{overflow-wrap:break-word;min-width:0}.case__status{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.case__status:before{content:"";border:1px solid var(--mute);border-radius:var(--r-full);width:6px;height:6px}.case__status.is-prod{color:var(--verde-700)}.case__status.is-prod:before{border-color:var(--verde);background:var(--verde)}.case__title{color:var(--verde);letter-spacing:-.025em;font-size:clamp(1.35rem,1.9vw,1.6rem);font-weight:800;line-height:1.1}.case__note{color:var(--mute);font-size:var(--t-small)}.case__summary{color:var(--mute);font-size:var(--t-small);margin-top:2px;line-height:1.55}.case__stack{color:var(--verde-700);font-size:var(--t-small);flex-wrap:wrap;gap:4px 14px;margin-top:2px;display:flex}.case__stack li{align-items:center;gap:6px;display:flex}.case__stack li:before{content:"";border-radius:var(--r-full);background:var(--coral-600);width:4px;height:4px}.case__cta{overflow-wrap:break-word;max-width:100%;margin-top:var(--s-2);color:var(--coral-700);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;align-items:center;gap:8px;padding-bottom:4px;font-size:.8125rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.case__cta:after{content:"";background:var(--coral-700);transform-origin:0;height:1px;transition:transform var(--d-2) var(--e-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.case__cta:hover:after,.case__cta:focus-visible:after{transform:scaleX(1)}.case__cta .icon{transition:transform var(--d-2) var(--e-out)}.case__cta:hover .icon{transform:translate(3px)}.cover{z-index:1;aspect-ratio:16/10;border-radius:var(--r-lg);background:var(--verde-04);position:relative;overflow:hidden}.cover span{position:absolute}.cover--iot .cover__a{aspect-ratio:1;border:1.5px solid var(--coral);border-radius:var(--r-full);width:54%;top:16%;left:8%}.cover--iot .cover__b{aspect-ratio:1;border:1px solid var(--verde);border-radius:var(--r-full);width:38%;top:26%;left:16%}.cover--iot .cover__c{aspect-ratio:1;border-radius:var(--r-full);background:var(--verde);width:12%;top:39%;left:29%}.cover--iot:before{content:"";background:var(--linea);width:40%;height:1px;position:absolute;top:46%;left:35%;transform:rotate(-16deg)}.cover--iot:after{content:"";aspect-ratio:1;background:var(--coral);border-radius:2px;width:9%;position:absolute;top:20%;right:9%}.act--contact{padding-block:var(--seccion);background:var(--coral);color:var(--tinta)}.contact__head{container-type:inline-size}.contact__kicker{color:var(--tinta);align-items:center;gap:8px;display:flex}.contact__kicker:before{content:"";background:var(--verde-900);width:14px;height:2px}.contact__title{margin-top:var(--s-6);color:var(--verde-900);font-size:clamp(46px,16.7cqw,13.5rem);font-weight:800;line-height:var(--lh-display);letter-spacing:-.055em;text-transform:uppercase}.contact__word{white-space:nowrap;display:block}.contact__row{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;margin-top:clamp(24px,4vw,48px);display:grid}.contact__line{max-width:36ch;color:var(--tinta);font-size:var(--t-lead);grid-column:1/span 5;line-height:1.5}.contact__action{align-items:flex-end;gap:var(--s-3);flex-direction:column;grid-column:8/span 5;display:flex}.contact__action .btn{white-space:normal}.contact__action .btn__label{overflow-wrap:anywhere}.contact__status{min-height:1.2em;color:var(--tinta);font-family:var(--mono);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase}.contact__meta{padding-top:var(--s-4);border-top:1px solid var(--tinta);flex-wrap:wrap;justify-content:flex-start;gap:6px 12px;margin-top:clamp(40px,5vw,72px);display:flex}@supports (color:color-mix(in lab, red, red)){.contact__meta{border-top:1px solid color-mix(in srgb, var(--tinta) 22%, var(--coral))}}.contact__meta{color:var(--tinta);font-family:var(--mono);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;line-height:1.5}.contact__sep{opacity:.55}.contact__handle{text-transform:none}.contact__site{color:var(--tinta);text-transform:none;text-underline-offset:3px;text-decoration:underline 1px;-webkit-text-decoration-color:var(--tinta);-webkit-text-decoration-color:var(--tinta);text-decoration-color:var(--tinta)}@supports (color:color-mix(in lab, red, red)){.contact__site{-webkit-text-decoration-color:color-mix(in srgb, var(--tinta) 55%, var(--coral));-webkit-text-decoration-color:color-mix(in srgb, var(--tinta) 55%, var(--coral));text-decoration-color:color-mix(in srgb, var(--tinta) 55%, var(--coral))}}@media (width<=380px){.contact__action .btn--lg{gap:10px;padding-inline:16px;font-size:.9375rem}}.footer{padding-block:var(--s-6) var(--s-8);border-top:1px solid var(--tinta)}@supports (color:color-mix(in lab, red, red)){.footer{border-top:1px solid color-mix(in srgb, var(--tinta) 22%, var(--coral))}}.footer{background:var(--coral);color:var(--tinta)}.footer__inner{gap:var(--s-3) var(--gutter);font-size:var(--t-small);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;line-height:1.45;display:grid}.footer__made{grid-column:1/span 4}.footer__system{grid-column:5/span 5}.footer__end{justify-content:flex-end;align-items:center;gap:6px var(--s-4);flex-wrap:wrap;grid-column:10/span 3;display:flex}.footer__top{text-underline-offset:3px;transition:transform var(--d-1) var(--e-out);align-items:center;gap:6px;font-weight:600;text-decoration:underline 1px;display:inline-flex}.footer__top:hover{transform:translateY(-2px)}.rail{z-index:60;position:fixed;top:50%;right:clamp(10px,1.2vw,18px);transform:translateY(-50%)}.rail__list{flex-direction:column;gap:10px;padding-left:16px;display:flex;position:relative}.rail__track{background:var(--linea);width:1px;position:absolute;top:4px;bottom:4px;left:4px}.rail__fill{background:var(--coral-700);transform-origin:top;width:100%;height:100%;display:block;transform:scaleY(0)}.rail__link{min-width:24px;min-height:24px;color:var(--mute);font-family:var(--mono);letter-spacing:.06em;align-items:center;gap:6px;font-size:10px;line-height:1;text-decoration:none;display:flex;position:relative}.rail__dot{border-radius:var(--r-full);background:var(--verde-12);width:7px;height:7px;position:absolute;top:50%;left:-15.5px;transform:translateY(-50%)}.rail__num{font-variant-numeric:tabular-nums}.rail__label{border:1px solid var(--linea);background:var(--papel);color:var(--verde);font-family:var(--fuente);letter-spacing:.06em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--d-1) var(--e-out), transform var(--d-1) var(--e-out);border-radius:4px;padding:7px 10px;font-size:10px;font-weight:600;position:absolute;top:50%;right:calc(100% + 10px);transform:translate(6px,-50%)}.rail__link:hover .rail__label,.rail__link:focus-visible .rail__label{opacity:1;transform:translateY(-50%)}.rail__link:hover .rail__dot,.rail__link:focus-visible .rail__dot{background:var(--coral-600)}.rail__link[aria-current=true] .rail__num{color:var(--coral-700);font-weight:700}.rail__link[aria-current=true] .rail__dot{background:var(--coral-600)}.rail--on-coral .rail__link{color:var(--tinta)}.rail--on-coral .rail__link[aria-current=true] .rail__num{color:var(--verde-900)}.rail--on-coral .rail__dot{background:var(--tinta)}.rail--on-coral .rail__link[aria-current=true] .rail__dot{background:var(--verde-900)}.rail--on-coral .rail__track{background:var(--tinta)}@supports (color:color-mix(in lab, red, red)){.rail--on-coral .rail__track{background:color-mix(in srgb, var(--tinta) 22%, var(--coral))}}.rail--on-coral .rail__fill{background:var(--verde-900)}.rail--on-coral .rail__link:focus-visible{outline-color:var(--verde-900)}@media (width<=1199px){.rail{display:none}}@media (width<=1024px){.criterion{grid-template-columns:minmax(0,1fr);gap:clamp(32px,5vw,56px)}.criterion__copy,.criterion__stage{grid-column:1/-1}.criterion__stage{min-height:clamp(380px,56vw,520px)}.trajectory{grid-template-columns:minmax(0,1fr);gap:clamp(32px,5vw,56px)}.trajectory__side,.timeline{grid-column:1/-1}.trajectory__side{position:static}.trajectory__sticky{gap:var(--s-6);grid-template-columns:1fr auto;align-items:end;display:grid;position:static}.trajectory__sticky .shead{grid-column:1}.trajectory__counter{grid-column:2;margin-top:0}.trajectory__hint{display:none}}@media (width<=960px){.hero{min-height:100svh;padding-top:12px}.hero__body{flex-direction:column;flex:0 auto;display:flex}.hero__panel{min-height:clamp(200px,27svh,280px)}.hero__panel .panel__inner{padding:clamp(20px,5vw,32px)}.hero__tesis{max-width:34ch;margin-top:var(--s-3);font-size:1rem}.hero__panel-foot{justify-content:space-between;align-items:flex-end;gap:var(--s-6);margin-top:var(--s-4);display:flex}.hero__langs{text-align:right;margin-top:0;font-size:.8125rem}.hero__langs li{justify-content:flex-end;gap:var(--s-4)}.hero__main{padding:var(--s-6) var(--margen) var(--s-12)}.hero__name{margin-top:var(--s-6);font-size:clamp(38px,15.9cqw,8rem)}.hero__headline{max-width:26ch;margin-top:var(--s-4)}.hero__meta{margin-top:var(--s-8);padding-top:0}.hero__circles{display:none}.craft__head{gap:var(--s-6);grid-template-columns:1fr;align-items:start}.craft__head .shead,.craft__line{grid-column:1/-1}.craft__line{max-width:40ch}.work__head{gap:var(--s-6);grid-template-columns:1fr;align-items:start}.work__head .shead,.work__intro{grid-column:1/-1}.work__intro{max-width:52ch}.feature,.feature--reverse{gap:var(--s-6);grid-template-columns:minmax(0,1fr)}.feature--reverse .feature__media,.feature--reverse .feature__body{grid-area:auto/1}.cases{grid-template-columns:1fr;gap:clamp(40px,7vw,64px)}.case--03,.case--04,.case--05,.case--06{grid-column:1/-1;margin-top:0}.contact__row{gap:var(--s-8);grid-template-columns:1fr;align-items:start}.contact__line,.contact__action{grid-column:1/-1}.contact__action{align-items:flex-start}.footer__inner{gap:var(--s-2);grid-template-columns:1fr}.footer__made,.footer__system,.footer__end{grid-column:1/-1}.footer__end{margin-top:var(--s-2);justify-content:flex-start}}@media (width<=640px){.hero__panel-foot{display:block}.hero__langs{margin-top:var(--s-2);text-align:left}.hero__langs li{justify-content:flex-start}.hero__actions{gap:var(--s-2)}.hero__meta{display:block}.criterion__stats{gap:var(--s-4)}.stat__label{font-size:.8125rem}.trajectory__sticky{display:block}.trajectory__counter{margin-top:var(--s-6)}.skills{gap:var(--s-3);grid-template-columns:1fr;align-items:start}.skills__label,.skills__list{grid-column:1/-1}.milestone__when{margin-left:0}.contact__action .btn{width:100%}.contact__meta{display:block}}@media (prefers-reduced-motion:no-preference){.hero__name .line__inner{animation:line-in var(--d-4) var(--e-out) both}.hero__name .line:nth-child(2) .line__inner{animation-delay:90ms}.hero__kicker,.hero__role,.hero__headline,.hero__support,.hero__actions,.hero__meta,.hero__panel .panel__inner{animation:fade-up var(--d-3) var(--e-out) both}.hero__kicker{animation-delay:40ms}.hero__role{animation-delay:.2s}.hero__headline{animation-delay:.26s}.hero__support{animation-delay:.3s}.hero__actions{animation-delay:.36s}.hero__meta{animation-delay:.42s}.hero__panel .panel__inner{animation-delay:.22s}.hero__circles{animation:fade-in var(--d-5) var(--e-out) .24s both}}@keyframes line-in{0%{clip-path:inset(100% -6% -12%)}to{clip-path:inset(-26% -6% -12%)}}@keyframes fade-up{0%{opacity:0;transform:translateY(var(--reveal-y))}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.timeline__progress{transform:scaleY(1)}}@media (width<=480px){.craft__groups{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.skills{border-bottom:0;padding-block:0;display:block}.skills__label{margin-bottom:6px}.skills__list{grid-column:auto;gap:4px}.chip{padding:4px 8px;font-size:.75rem}}@media (width<=360px){.hero__role{letter-spacing:.14em;font-size:.625rem}.hero__support{font-size:.875rem;line-height:1.5}.hero__cta{gap:8px}.hero__meta{margin-top:16px}}.feature .case__meta>span:first-child,.case .case__meta>span:first-child{overflow-wrap:anywhere;min-width:0}.work-stage{position:relative}.work-stage__side,.work-stage__deck{min-width:0}.work-stage__panel{display:block}.work-stage__panel+.work-stage__panel{margin-top:clamp(40px,6vw,72px)}.work-stage__meter,.work-stage__dots,.work-stage__nav{display:none}.motion .work-stage{height:calc(100svh + 5 * var(--stage-step,55svh))}.motion .work-stage__sticky{gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-content:center;align-items:start;min-height:100svh;padding-block:clamp(24px,3vw,48px);display:grid;position:sticky;top:0}.motion .work-stage__side{grid-column:1/span 4}.motion .work-stage__deck{grid-column:6/span 7}.motion .work-stage__panel{display:none}.motion .work-stage__panel+.work-stage__panel{margin-top:0}.motion .work-stage__panel.is-active,.motion .work-stage__side .work__head{display:block}.motion .work-stage__side .work__head .shead,.motion .work-stage__side .work__intro{grid-column:auto}.motion .work-stage__side .work__intro{margin-top:clamp(14px,1.6vw,20px)}.motion .work-stage__meter{align-items:center;gap:var(--s-3);margin-top:clamp(16px,2vw,24px);display:flex}.work-stage__count{color:var(--verde);font-size:var(--t-small);white-space:nowrap}.work-stage__progress{background:var(--linea);flex:1;height:1px;overflow:hidden}.work-stage__progress span{background:var(--coral-700);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(.1667)}.motion .work-stage__dots{margin-top:var(--s-3);flex-wrap:wrap;gap:6px;display:flex}.work-stage__dot{border:1px solid var(--linea);border-radius:var(--r-full);background:var(--papel);width:32px;height:32px;color:var(--mute);font-family:var(--mono);cursor:pointer;justify-content:center;align-items:center;font-size:10px;display:inline-flex}.work-stage__dot[aria-current=true]{border-color:var(--coral-700);color:var(--coral-700)}.work-stage__dot:focus-visible,.work-stage__arrow:focus-visible{outline:2px solid var(--coral-700);outline-offset:2px}.motion .work-stage__nav{gap:var(--s-2);margin-top:var(--s-3);display:flex}.work-stage__arrow{border:1px solid var(--linea);border-radius:var(--r-full);background:var(--papel);width:44px;height:44px;color:var(--verde);cursor:pointer;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.motion .work-stage__panel .feature{border-top:0;margin-top:0;padding-top:0}.motion .work-stage__panel .case{gap:var(--s-3)}.motion .work-stage__panel .case__cover--image{background:var(--crema);justify-content:center;align-items:center;max-height:44svh;display:flex}.motion .work-stage__panel .case__image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:44svh}.motion .work-stage__panel .cover{max-height:44svh}@media (width<=960px){.motion .work-stage{height:auto}.motion .work-stage__sticky{min-height:0;padding-block:0;display:block;position:static}.motion .work-stage__side{grid-column:auto}.motion .work-stage__deck{scroll-snap-type:x mandatory;gap:16px;margin-top:clamp(20px,4vw,32px);padding-bottom:12px;display:flex;overflow-x:auto}.motion .work-stage__panel,.motion .work-stage__panel.is-active{scroll-snap-align:start;flex:0 0 min(86vw,440px);display:block}.motion .work-stage__panel+.work-stage__panel{margin-top:0}.motion .work-stage__panel .feature,.motion .work-stage__panel .feature--reverse{grid-template-columns:minmax(0,1fr)}.motion .work-stage__panel .feature__media,.motion .work-stage__panel .feature__body{grid-area:auto/1}.motion .work-stage__panel .feature__shot{object-fit:contain;max-height:28svh}.motion .work-stage__panel .case__cover--image,.motion .work-stage__panel .case__image,.motion .work-stage__panel .cover{max-height:32svh}.motion .work-stage__meter,.motion .work-stage__dots,.motion .work-stage__nav{display:none}}.act--contact{min-height:0}@media (width<=1024px){.trajectory__sticky{z-index:2;background:var(--crema);padding-block:10px;position:sticky;top:0}}@media (width<=360px){.craft__head .shead__title{font-size:clamp(1.6rem,9vw,2rem)}.skills__label{font-size:.625rem}.chip{padding:3px 7px;font-size:.6875rem}.craft__groups{gap:8px}.hero__panel{min-height:24svh}.hero__headline{font-size:clamp(2rem,10vw,2.5rem)}.hero__support{margin-top:10px}.hero__cta{margin-top:16px}}@media (width<=480px){.act--craft{padding-block:44px}}@media (width<=360px){.hero__panel{min-height:20svh}.hero__role{font-size:.5625rem;line-height:1.4}.hero__headline{font-size:clamp(1.7rem,9vw,2.15rem)}.hero__support{margin-top:8px;font-size:.8125rem;line-height:1.45}.hero__cta{gap:8px;margin-top:12px}.hero__meta{margin-top:8px;font-size:.625rem}}@media (width<=480px){.act--craft{padding-block:32px}.craft__head .shead__title{font-size:clamp(1.6rem,8.5vw,2rem)}.craft__line{margin-top:8px}.craft__groups{gap:6px;margin-top:18px}}.motion .work-stage__sticky{grid-template-rows:minmax(0,1fr);align-content:stretch;align-items:center;height:100svh;min-height:0}.motion .work-stage__side{align-self:center}.motion .work-stage__deck{align-self:start}@media (width<=960px){.motion .work-stage__sticky{height:auto}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
