.hero{--hero-bg: var(--background);--hero-surface: color-mix(in oklab, var(--foreground) 6%, var(--background));--hero-ink: #1a1a1a;--hero-ink-soft: #403b35;--hero-muted: #8a8278;--hero-muted-2: #a8a096;--hero-line: #d4cdc2;--hero-line-soft: #e1dbd1;--hero-ease: cubic-bezier(.22,.61,.36,1);--hero-ease-out: cubic-bezier(.16,1,.3,1);--hero-orange: #c9622e;position:relative;background:var(--hero-bg);color:var(--hero-ink);min-height:calc(100dvh - 65px);display:flex;align-items:center;overflow:hidden}.dark .hero{--hero-ink: var(--foreground);--hero-ink-soft: var(--muted-foreground);--hero-muted: var(--muted-foreground);--hero-muted-2: color-mix(in oklab, var(--muted-foreground) 65%, var(--foreground));--hero-line: var(--border);--hero-line-soft: color-mix(in oklab, var(--border) 50%, var(--background));--hero-orange: #e8845c}.hero:before{content:"";position:absolute;top:-30%;left:-8%;width:55%;height:160%;background:radial-gradient(ellipse at 30% 50%,color-mix(in oklab,var(--hero-orange) 22%,transparent) 0%,transparent 60%);pointer-events:none}.dark .hero:before{background:radial-gradient(ellipse at 30% 50%,color-mix(in oklab,var(--hero-orange) 16%,transparent) 0%,transparent 60%)}.stack-section{--stack-teal: #16968a}.dark .stack-section{--stack-teal: #3cc4b6}.experiencia{--exp-purple: #7a4fc0}.dark .experiencia{--exp-purple: #a67ee8}.section-glow{position:absolute;pointer-events:none;z-index:0}.sg--stack{top:-20%;left:auto;right:-10%;width:50%;height:140%;background:radial-gradient(ellipse at 60% 50%,color-mix(in oklab,var(--stack-teal) 18%,transparent) 0%,transparent 60%)}.dark .sg--stack{background:radial-gradient(ellipse at 60% 50%,color-mix(in oklab,var(--stack-teal) 14%,transparent) 0%,transparent 60%)}.sg--exp{top:-20%;left:-8%;width:50%;height:140%;background:radial-gradient(ellipse at 30% 50%,color-mix(in oklab,var(--exp-purple) 18%,transparent) 0%,transparent 60%)}.dark .sg--exp{background:radial-gradient(ellipse at 30% 50%,color-mix(in oklab,var(--exp-purple) 14%,transparent) 0%,transparent 60%)}.hero__inner{flex:1;display:flex;align-items:center;max-width:1340px;width:100%;margin:0 auto;padding:clamp(16px,3vh,40px) clamp(20px,4vw,56px) clamp(40px,6vh,72px)}.hero__grid{display:grid;grid-template-columns:55% 45%;align-items:center;gap:clamp(28px,4vw,64px);width:100%}.hero__copy{display:flex;flex-direction:column;align-items:flex-start;max-width:580px}.hero__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(36px,5vw,68px);line-height:1.04;letter-spacing:-.03em;color:var(--hero-ink);margin-bottom:clamp(20px,3vh,28px);text-wrap:balance}.hero__name{color:var(--hero-orange)}.hero__desc{font-size:clamp(15.5px,1.2vw,18px);line-height:1.62;color:var(--hero-ink-soft);max-width:48ch;text-wrap:pretty;margin-bottom:clamp(28px,4vh,38px)}.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:clamp(30px,4.5vh,44px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500;font-size:15px;letter-spacing:-.005em;padding:14px 24px;border-radius:7px;cursor:pointer;text-decoration:none;border:0;transition:background .3s var(--hero-ease),color .3s var(--hero-ease),border-color .3s var(--hero-ease)}.btn .ico{display:inline-block;transition:transform .35s var(--hero-ease-out)}.btn--primary{background:var(--foreground);color:var(--background)}.btn--primary:hover{background:color-mix(in oklab,var(--foreground) 85%,var(--background))}.btn--primary:hover .ico{transform:translate(4px)}.btn--ghost{background:transparent;color:var(--foreground);border:1px solid var(--foreground)}.btn--ghost:hover{background:color-mix(in oklab,var(--foreground) 8%,transparent)}.btn--ghost:hover .ico{transform:translateY(3px)}.hero__stats{display:flex;gap:10px;width:100%;max-width:380px}.stat{flex:1;min-width:0;background:var(--hero-surface);border:.5px solid var(--hero-line);border-radius:6px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:3px}.stat__num{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500;font-size:19px;line-height:1;letter-spacing:-.02em;color:var(--hero-ink)}.stat__label{font-family:var(--font-mono),ui-monospace,monospace;font-size:10.5px;letter-spacing:.04em;color:var(--hero-muted);line-height:1.2}.hero__spline{display:flex;align-items:center;justify-content:center}#spline-avatar{width:100%;background:transparent;border:none;box-shadow:none;position:relative;touch-action:pan-y;display:flex;flex-direction:column;align-items:center;gap:12px}.spline-viewer-wrap{position:relative;width:100%;height:480px;overflow:hidden}#spline-avatar spline-viewer{display:block;width:100%;height:100%;pointer-events:none}#spline-avatar.is-exploring{touch-action:none}#spline-avatar.is-exploring spline-viewer{pointer-events:auto;cursor:grab}#spline-avatar.is-exploring spline-viewer:active{cursor:grabbing}.spline-controls{position:relative;left:auto;bottom:auto;z-index:3;display:flex;align-items:center;gap:6px;padding:5px;border-radius:100px;background:color-mix(in oklab,var(--background) 88%,transparent);border:1px solid var(--border);box-shadow:0 10px 28px -16px #1b191659;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transform:none;pointer-events:auto;flex-shrink:0}.spline-ctrl{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:36px;height:36px;padding:0 10px;border:1px solid transparent;border-radius:100px;background:transparent;color:var(--hero-ink-soft);font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.spline-ctrl:hover{background:color-mix(in oklab,var(--hero-ink) 6%,transparent);color:var(--hero-ink)}.spline-ctrl:focus-visible{outline:2px solid var(--hero-orange);outline-offset:2px}.spline-ctrl[aria-pressed=true]{background:color-mix(in oklab,var(--hero-orange) 16%,var(--background));border-color:color-mix(in oklab,var(--hero-orange) 40%,var(--border));color:var(--hero-ink)}spline-viewer::part(logo){display:none}@media(max-width:860px){.hero__inner{padding-top:clamp(8px,2vh,20px)}.hero__grid{grid-template-columns:1fr;gap:clamp(24px,5vh,36px)}.hero__spline{order:-1;margin-bottom:4px}.spline-viewer-wrap{height:clamp(200px,52vw,240px)}#spline-avatar{gap:10px}.spline-controls{gap:4px;padding:4px}.spline-ctrl{min-width:32px;height:32px;padding:0 8px;font-size:10px}.spline-ctrl svg{width:16px;height:16px}.hero__copy{max-width:none;align-items:stretch;margin-top:6px}.hero__title{margin-bottom:18px}.hero__actions{flex-direction:column;gap:10px}.btn{width:100%}.hero__stats{max-width:none}}@media(max-width:380px){.stat{padding:11px 9px}.stat__label{font-size:9.5px}}@media(prefers-reduced-motion:reduce){.btn .ico{transition:none}}.cta-section{padding:clamp(60px,10vh,100px) clamp(20px,4vw,56px);background:color-mix(in oklab,var(--foreground) 4%,var(--background));border-top:1px solid var(--border);text-align:center}.cta-section__inner{max-width:640px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.cta-section__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-.02em;color:var(--foreground);margin-bottom:18px}.cta-section__desc{font-size:clamp(15px,1.1vw,17px);line-height:1.6;color:var(--muted-foreground);max-width:48ch;margin-bottom:32px}.cta-section__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.dark .cta-section{background:#1b1916;border-top-color:var(--border)}.stack-section{padding:clamp(56px,10vh,100px) 0;background:var(--background);position:relative}.dark .stack-section{background:#1b1916}.stack-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--border) .5px,transparent .5px),linear-gradient(90deg,var(--border) .5px,transparent .5px);background-size:60px 60px;opacity:.22;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 30%,transparent 70%);mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 30%,transparent 70%)}.dark .stack-section:before{opacity:.06}.stack-section__inner{max-width:1000px;margin:0 auto;padding:0 clamp(20px,4vw,56px);position:relative;z-index:1}.stack-header{text-align:center;margin-bottom:clamp(40px,6vh,56px);position:relative}.stack-header:after{content:"";display:block;width:40px;height:2px;background:var(--foreground);margin:20px auto 0;opacity:.15}.stack-header__kicker{display:block;font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:color-mix(in oklab,var(--foreground) 55%,transparent);margin-bottom:12px}.stack-header__title{font-family:var(--font-sans);font-weight:500;font-size:clamp(24px,2.8vw,32px);color:var(--foreground);letter-spacing:-.015em}.stack-carousel-wrap{overflow:hidden;padding:4px 0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%)}.stack-carousel{display:flex;gap:18px;width:max-content;animation:stack-carousel-scroll 50s linear infinite}.sc-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100px;min-width:100px;padding:16px 8px 10px;border:.5px solid var(--border);border-radius:10px;background:transparent;transition:border-color .2s ease,background .2s ease,transform .2s ease}.sc-item__icon{width:44px;height:44px;display:grid;place-items:center}.sc-item__icon img,.sc-item__icon svg{max-width:28px;max-height:28px}.sc-item__name{font-size:11px;line-height:1.15;text-align:center;color:var(--muted-foreground);white-space:nowrap;transition:color .2s ease}.sc-item:hover{transform:translateY(-3px);border-color:var(--foreground);background:color-mix(in oklab,var(--foreground) 3%,var(--background))}.sc-item:hover .sc-item__name{color:var(--foreground)}@keyframes stack-carousel-scroll{0%{transform:translate(0)}to{transform:translate(-33.333%)}}@media(prefers-reduced-motion:reduce){.stack-carousel{animation:none}}.section-divider{height:30px;position:relative;z-index:2;overflow:visible;--sd-color: var(--foreground)}.sd--v15{--v-pos: 15%}.sd--v80{--v-pos: 80%}.sd--v50{--v-pos: 50%}.sd__inner{max-width:1340px;margin:0 auto;padding:0 clamp(20px,4vw,56px);height:100%;position:relative}.sd__h{position:absolute;top:50%;left:0;right:0;height:1px;background:color-mix(in oklab,var(--sd-color) 55%,transparent);transform-origin:left center;transform:scaleX(0);transition:transform .9s cubic-bezier(.22,.61,.36,1)}.dark .sd__h{background:color-mix(in oklab,var(--sd-color) 60%,transparent)}.section-divider.is-visible .sd__h{transform:scaleX(1)}.sd__v{position:absolute;top:0;left:var(--v-pos, 15%);width:1px;height:30px;background:color-mix(in oklab,var(--sd-color) 55%,transparent);transform-origin:center top;transform:scaleY(0);transition:transform .8s cubic-bezier(.22,.61,.36,1)}.section-divider.is-visible .sd__v{transform:scaleY(1);transition-delay:.8s}.sd__dot{position:absolute;top:50%;left:var(--v-pos, 15%);width:6px;height:6px;border-radius:50%;background:color-mix(in oklab,var(--sd-color) 65%,transparent);transform:translate(-50%,-50%);opacity:0;transition:opacity .4s ease}.section-divider.is-visible .sd__dot{opacity:1;transition-delay:1.2s}.sd__num{position:absolute;top:50%;transform:translateY(-50%);font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;letter-spacing:.22em;font-weight:400;color:color-mix(in oklab,var(--sd-color) 55%,transparent);white-space:nowrap;opacity:0;transition:opacity .4s ease}.section-divider.is-visible .sd__num{opacity:1;transition-delay:1.4s}.sd__num--right{left:calc(var(--v-pos, 15%) + 16px)}.sd__num--left{right:calc(100% - var(--v-pos, 80%) + 16px)}.sd__dash{letter-spacing:.15em}.sd--v15+.stack-section:after,.sd--v80+.proyectos:after,.sd--v50+.experiencia:after{content:"";position:absolute;top:0;bottom:0;width:1px;pointer-events:none;background:color-mix(in oklab,var(--foreground) 7%,transparent)}.sd--v15+.stack-section:after{left:15%}.sd--v80+.proyectos:after{left:80%}.sd--v50+.experiencia:after{left:50%}.dark .sd--v15+.stack-section:after,.dark .sd--v80+.proyectos:after,.dark .sd--v50+.experiencia:after{background:color-mix(in oklab,var(--foreground) 8%,transparent)}.dark .proyectos,.dark .experiencia{border-top:1px solid rgba(255,255,255,.04)}.dark .stat{background:color-mix(in oklab,var(--foreground) 8%,var(--background));border-color:var(--border)}.dark .sc-item{border-color:var(--border)}.dark .sc-item:hover{border-color:var(--muted-foreground);background:color-mix(in oklab,var(--foreground) 5%,var(--background))}.experiencia{--exp-bg: var(--background);--exp-ink: #1a1a1a;--exp-ink-soft: #403b35;--exp-muted: #8a8278;--exp-muted-2: #a8a096;--exp-line: #d4cdc2;--exp-line-soft: #e1dbd1;--exp-green: #1d9e75;--exp-ease: cubic-bezier(.22,.61,.36,1);--exp-ease-out: cubic-bezier(.16,1,.3,1);position:relative;background:var(--exp-bg);color:var(--exp-ink)}.dark .experiencia{--exp-bg: #1b1916;--exp-ink: var(--foreground);--exp-ink-soft: var(--muted-foreground);--exp-muted: var(--muted-foreground);--exp-muted-2: color-mix(in oklab, var(--muted-foreground) 65%, var(--foreground));--exp-line: var(--border);--exp-line-soft: color-mix(in oklab, var(--border) 50%, var(--background));--exp-green: #34d399;background:var(--exp-bg);color:var(--exp-ink)}.experiencia__scroll{position:relative;height:300vh}.exp__pin{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center}.exp__inner{max-width:1340px;margin:0 auto;width:100%;padding:clamp(24px,5vh,64px) clamp(20px,4vw,56px)}.exp__head{display:flex;align-items:baseline;gap:16px;margin-bottom:clamp(22px,3.4vh,40px)}.exp__kicker{font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--exp-muted-2)}.exp__head-title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(20px,2.2vw,28px);letter-spacing:-.01em;color:var(--exp-ink)}.exp__head-rule{flex:1;height:1px;background:var(--exp-line);align-self:center}.timebar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:clamp(26px,4vh,48px)}.timebar__cap{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--exp-muted-2);white-space:nowrap}.timebar__track{position:relative;height:2px;background:var(--exp-line);border-radius:2px}.timebar__fill{position:absolute;top:0;height:100%;border-radius:2px;background:var(--exp-ink);left:94%;width:0%;transition:left .5s var(--exp-ease-out),width .5s var(--exp-ease-out)}.timebar__node{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%);background:var(--exp-bg);border:1.5px solid var(--exp-line);transition:background .45s var(--exp-ease),border-color .45s var(--exp-ease),transform .45s var(--exp-ease)}.timebar__node.is-filled{background:var(--exp-ink);border-color:var(--exp-ink)}.timebar__node.is-active{transform:translate(-50%,-50%) scale(1.35)}.exp__split{display:grid;grid-template-columns:minmax(0,1fr) 1px clamp(280px,31%,360px);gap:clamp(30px,4vw,60px);align-items:stretch;min-height:0}.exp__divider{background:repeating-linear-gradient(to bottom,var(--exp-line) 0 5px,transparent 5px 11px)}.exp__detail{position:relative;min-height:clamp(300px,46vh,420px)}.detail{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-right:clamp(8px,3vw,48px);opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .55s var(--exp-ease-out),transform .65s var(--exp-ease-out)}.detail.is-active{opacity:1;transform:none;pointer-events:auto}.detail__bignum{position:absolute;right:clamp(6px,2vw,30px);top:50%;transform:translateY(-50%);font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500;font-size:clamp(116px,15vw,168px);line-height:.8;letter-spacing:-.04em;color:#1a1a1a0a;pointer-events:none;user-select:none;z-index:0}.dark .detail__bignum{color:#ffffff0a}.detail>*{position:relative;z-index:1}.detail__company{font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--exp-muted);margin-bottom:16px}.detail__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(30px,3.6vw,50px);line-height:1.04;letter-spacing:-.025em;color:var(--exp-ink);text-wrap:balance;margin-bottom:18px;max-width:14ch}.badge{display:inline-flex;align-items:center;font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;font-weight:400;letter-spacing:.04em;padding:6px 14px;border-radius:100px;margin-bottom:24px;white-space:nowrap}.badge--green{background:var(--exp-green);color:#fff}.badge--neutral{background:transparent;color:var(--exp-ink-soft);border:1px solid var(--exp-line)}.detail__desc{font-size:clamp(15px,1.15vw,17.5px);line-height:1.64;color:var(--exp-ink-soft);max-width:46ch;text-wrap:pretty;margin-bottom:26px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;font-weight:400;padding:6px 13px;border-radius:100px;background:transparent;border:1px solid var(--exp-line);color:var(--exp-ink-soft);white-space:nowrap}.exp__roles{display:flex;flex-direction:column;gap:12px;justify-content:center}.role{position:relative;display:flex;align-items:flex-start;gap:15px;width:100%;text-align:left;cursor:pointer;background:transparent;border:1px solid transparent;border-radius:14px;padding:18px 18px 18px 21px;font:inherit;color:inherit;opacity:.42;transition:opacity .45s var(--exp-ease),border-color .45s var(--exp-ease),background .45s var(--exp-ease),transform .45s var(--exp-ease-out)}.role__accent{position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:var(--exp-ink);transform:scaleY(0);transform-origin:center;transition:transform .45s var(--exp-ease-out)}.role__icon{flex:0 0 38px;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--exp-line);color:var(--exp-ink-soft);background:transparent;transition:border-color .45s var(--exp-ease),color .45s var(--exp-ease)}.role__body{display:flex;flex-direction:column;gap:7px;min-width:0}.role__num{font-family:var(--font-mono),ui-monospace,monospace;font-size:10.5px;letter-spacing:.18em;color:var(--exp-muted-2)}.role__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:16px;line-height:1.18;letter-spacing:-.01em;color:var(--exp-ink);text-wrap:balance}.role__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.role__mini{font-family:var(--font-mono),ui-monospace,monospace;font-size:10px;letter-spacing:.02em;color:var(--exp-muted);border:1px solid var(--exp-line-soft);border-radius:100px;padding:3px 8px;white-space:nowrap}.role.is-active{opacity:1;border-color:var(--exp-ink);background:#ffffff52}.dark .role.is-active{background:#ffffff0f;border-color:var(--exp-line)}.role.is-active .role__accent{transform:scaleY(1)}.role.is-active .role__icon{border-color:var(--exp-ink);color:var(--exp-ink)}.dark .role.is-active .role__icon{border-color:var(--exp-line);color:var(--exp-ink)}.role:not(.is-active):hover{opacity:.7}.exp__cta{display:flex;justify-content:flex-end;margin-top:clamp(22px,3.4vh,40px)}.cta-link{display:inline-flex;align-items:center;gap:11px;font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500;font-size:14.5px;letter-spacing:-.005em;color:var(--exp-ink);text-decoration:none;padding:11px 20px;border:1px solid var(--exp-line);border-radius:100px;transition:border-color .3s var(--exp-ease),background .3s var(--exp-ease)}.cta-link:hover{border-color:var(--exp-ink);background:#ffffff52}.dark .cta-link:hover{background:#ffffff0f}.cta-link .arrow{display:inline-block;transition:transform .35s var(--exp-ease-out)}.cta-link:hover .arrow{transform:translate(4px)}@media(max-width:860px){.experiencia__scroll{height:auto}.exp__pin{position:static;height:auto;display:block;padding-top:8vh;padding-bottom:8vh}.exp__split{grid-template-columns:1fr;gap:0}.exp__divider,.exp__roles{display:none}.exp__detail{min-height:0}.detail{position:relative;inset:auto;opacity:1!important;transform:none!important;pointer-events:auto;padding:clamp(28px,7vw,44px) 0;border-top:1px solid var(--exp-line)}.detail:first-of-type{border-top:0}.detail__bignum{font-size:clamp(90px,28vw,140px);right:0}.timebar{display:none}}@media(prefers-reduced-motion:reduce){.timebar__fill,.detail,.role,.role__accent{transition:none}}.proyectos{--deck-bg: #f0ede8;--deck-bg-warm: #e9e5dd;--deck-card: #f7f5f1;--deck-card-2: #efebe3;--deck-ink: #1b1916;--deck-ink-soft: #403b35;--deck-muted: #7a746b;--deck-line: #d9d3c9;--deck-line-soft: #e3ded5;--deck-feature-bg: #fbfaf7;--orange: #c9622e;--teal: #16968a;--purple: #7a4fc0;--coral: #c47a6a;--terracotta: #c1694f;--indigo: #5B4EF5;position:relative;background:var(--deck-bg);color:var(--deck-ink)}.dark .proyectos{--deck-bg: #151310;--deck-bg-warm: var(--muted);--deck-card: var(--card);--deck-card-2: color-mix(in oklab, var(--card) 88%, var(--foreground));--deck-ink: var(--foreground);--deck-ink-soft: color-mix(in oklab, var(--foreground) 70%, var(--muted-foreground));--deck-muted: var(--muted-foreground);--deck-line: var(--border);--deck-line-soft: color-mix(in oklab, var(--border) 55%, var(--background));--deck-feature-bg: color-mix(in oklab, var(--card) 94%, var(--foreground));--orange: #e8845c;--teal: #3cc4b6;--purple: #a67ee8;--coral: #d49484;--terracotta: #db8a70;--indigo: #7C72FF}.dark .proyectos .card{box-shadow:0 24px 56px -36px #0000008c}.dark .proyectos .card--back{box-shadow:0 16px 40px -30px #00000080}.dark .proyectos .shot{box-shadow:0 18px 40px -24px #0000008c}.dark .proyectos .timeline__fill{background:linear-gradient(var(--foreground),var(--muted-foreground))}.dark .proyectos .btn-magnet{background:var(--foreground);color:var(--background)}.dark .proyectos .btn-magnet:hover{background:var(--accent);color:var(--background)}.proyectos__inner{max-width:1340px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}.proyectos__mobile-nav{display:none}.proyectos__scroll{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:stretch;position:relative}.sec-head{display:flex;align-items:baseline;gap:18px;padding:clamp(40px,8vh,90px) 0 clamp(24px,4vh,40px)}.sec-head__kicker{font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--deck-muted)}.sec-head__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.01em;color:var(--deck-ink)}.sec-head__rule{flex:1;height:1px;background:var(--deck-line);align-self:center}.rail{position:relative;z-index:5;min-height:100%;align-self:stretch}.rail__sticky{position:sticky;top:65px;height:calc(100vh - 65px);display:flex;align-items:center;padding-left:6px;will-change:transform}.rail__sticky.rail--fixed{position:fixed;top:65px;left:var(--rail-left, 0);width:var(--rail-width, 240px);z-index:25}.rail__sticky.rail--bottom{position:absolute;inset:auto 0 0;width:auto}.timeline-destacados,#timeline-destacados{position:relative;height:min(58vh,460px);width:100%;padding-left:2px}.timeline__track{position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:var(--deck-line);border-radius:2px}.timeline__fill{position:absolute;left:0;top:0;width:100%;height:0%;background:linear-gradient(var(--deck-ink),var(--deck-ink-soft));border-radius:2px;transition:height .12s linear}.timeline__nodes{position:relative;height:100%;display:flex;flex-direction:column;justify-content:space-between}.node{position:relative;display:flex;align-items:center;gap:14px;cursor:pointer;background:none;border:0;text-align:left;font:inherit;color:inherit}.node__dot{position:relative;z-index:2;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:var(--deck-bg);border:2px solid var(--deck-line);display:grid;place-items:center;transition:border-color .4s cubic-bezier(.22,.61,.36,1),background .4s cubic-bezier(.22,.61,.36,1),transform .4s cubic-bezier(.22,.61,.36,1)}.node__dot:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent, var(--deck-ink));transform:scale(0);transition:transform .4s cubic-bezier(.22,.61,.36,1)}.node__meta{display:flex;flex-direction:column;gap:1px;line-height:1.1;transition:opacity .4s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1);opacity:.4}.node__num{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.12em;color:var(--deck-muted)}.node__name{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--deck-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.node.is-passed .node__dot{border-color:var(--deck-ink-soft);background:var(--deck-ink-soft)}.node.is-passed .node__dot:after{transform:scale(1);background:var(--deck-bg)}.node.is-passed .node__meta{opacity:.55}.node:not(.is-active):not(.is-passed) .node__dot:after{transform:scale(0)}.node.is-active .node__dot{border-color:var(--accent);background:var(--deck-bg);transform:scale(1.12)}.node.is-active .node__dot:after{transform:scale(1);background:var(--accent)}.node.is-active .node__meta{opacity:1;transform:translate(2px)}.stream{min-width:0}.project{position:relative;height:300vh}.project__pin{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden}.project__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,4vw,72px);width:100%}.project[data-layout=flip] .project__text{order:2}.project[data-layout=flip] .project__visual{order:1}.project__text{position:relative;z-index:3;max-width:480px}.project[data-layout=flip] .project__text{justify-self:end}.cat{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}.cat__dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.project__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(28px,3.2vw,44px);line-height:1.05;letter-spacing:-.02em;color:var(--deck-ink);text-wrap:balance;margin-bottom:20px}.project__desc{font-size:clamp(15px,1.15vw,17px);line-height:1.62;color:var(--deck-ink-soft);max-width:42ch;text-wrap:pretty;margin-bottom:26px}.stack-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.tag{font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;padding:6px 12px;border-radius:100px;background:var(--deck-card);border:1px solid var(--deck-line-soft);color:var(--deck-ink-soft);white-space:nowrap}.tag.tag--more{background:transparent;border-style:dashed;color:var(--deck-muted)}.deck-progress{display:flex;align-items:center;gap:12px;margin-bottom:26px}.deck-progress__track{position:relative;height:2px;width:108px;border-radius:2px;background:var(--deck-line)}.deck-progress__bar{position:absolute;inset:0 auto 0 0;width:0%;border-radius:2px;background:var(--accent);transition:width .1s linear}.deck-progress__label{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--deck-muted);text-transform:uppercase}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.btn-magnet{position:relative;display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:100px;background:var(--deck-ink);color:var(--deck-bg);font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:500;font-size:14.5px;letter-spacing:.01em;text-decoration:none;border:0;cursor:pointer;will-change:transform;transition:transform .35s cubic-bezier(.16,1,.3,1),background .3s cubic-bezier(.22,.61,.36,1)}.btn-magnet:hover{background:var(--accent)}.btn-magnet .arrow{display:inline-block;transition:transform .35s cubic-bezier(.16,1,.3,1)}.btn-magnet:hover .arrow{transform:translate(4px)}.links{display:flex;align-items:center;gap:18px}.link{font-family:var(--font-mono),ui-monospace,monospace;font-size:12.5px;color:var(--deck-muted);text-decoration:none;position:relative;letter-spacing:.01em;transition:color .25s cubic-bezier(.22,.61,.36,1)}.link:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.22,.61,.36,1)}.link:hover{color:var(--deck-ink)}.link:hover:after{transform:scaleX(1)}.project__visual{position:relative;z-index:2;width:min(100%,440px);height:472px;margin-inline:auto}.card{position:absolute;left:50%;top:0;width:100%;transform-origin:50% 0;transform:translate(-50%);will-change:transform,opacity;border-radius:18px;background:var(--deck-card);border:1px solid var(--deck-line);box-shadow:0 30px 70px -42px #1b19168c;overflow:hidden}.card--media{height:280px}.card--media-cover{height:340px}.project--phone-cover .project__visual{height:520px}.project--phone-cover .card--back{height:340px}.card--media-cover .grid-lines{display:none}.card--media-cover .field{background:radial-gradient(90% 70% at 50% 20%,color-mix(in oklab,var(--accent) 14%,transparent),transparent 65%),var(--deck-card-2)}.card--media-cover .shot--phone{width:44%;top:5%;bottom:5%;border-width:4px;box-shadow:0 22px 52px -26px #0000007a}.card--media-cover .shot--phone.shot--has-cover .shot__body{background-size:cover;background-position:center top}.card--feature{height:116px;background:var(--deck-feature-bg)}.card--back{height:280px;background:var(--deck-card-2);border:1px solid var(--deck-line-soft);box-shadow:0 18px 44px -34px #1b191673;transition:transform .75s cubic-bezier(.22,.61,.36,1),opacity .55s cubic-bezier(.22,.61,.36,1)}.card--back--1{transform:translate(calc(-50% + 22px),-20px) rotate(4deg);z-index:8}.card--back--2{transform:translate(calc(-50% + 42px),-38px) rotate(8deg);z-index:6;background:var(--deck-bg-warm)}.project[data-layout=flip] .card--back--1{transform:translate(calc(-50% - 22px),-20px) rotate(-4deg)}.project[data-layout=flip] .card--back--2{transform:translate(calc(-50% - 42px),-38px) rotate(-8deg)}.js .project[data-layout=normal]:not(.is-entered) .card--back--1{transform:translate(calc(-50% + 6px),-6px) rotate(1.2deg)}.js .project[data-layout=normal]:not(.is-entered) .card--back--2{transform:translate(calc(-50% + 11px),-11px) rotate(2.4deg)}.js .project[data-layout=flip]:not(.is-entered) .card--back--1{transform:translate(calc(-50% - 6px),-6px) rotate(-1.2deg)}.js .project[data-layout=flip]:not(.is-entered) .card--back--2{transform:translate(calc(-50% - 11px),-11px) rotate(-2.4deg)}.js .project.is-entered .card--back--1{transition-delay:.14s}.js .project.is-entered .card--back--2{transition-delay:.22s}.field{position:absolute;inset:0;background:radial-gradient(120% 90% at 70% 12%,color-mix(in oklab,var(--accent) 22%,transparent),transparent 60%),var(--deck-card-2)}.grid-lines{position:absolute;inset:0;background-image:linear-gradient(var(--deck-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--deck-line-soft) 1px,transparent 1px);background-size:30px 30px;opacity:.55;mask-image:radial-gradient(120% 100% at 50% 40%,#000,transparent 80%);-webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000,transparent 80%)}.shot{position:absolute;border-radius:12px;overflow:hidden;background:var(--deck-feature-bg);border:1px solid var(--deck-line);box-shadow:0 20px 44px -26px #1b191680}.shot__bar{height:28px;display:flex;align-items:center;gap:6px;padding:0 12px;background:var(--deck-card);border-bottom:1px solid var(--deck-line-soft)}.shot__dot{width:7px;height:7px;border-radius:50%;background:var(--deck-line)}.shot__body{position:absolute;inset:28px 0 0;background-image:repeating-linear-gradient(135deg,var(--deck-card-2) 0 11px,transparent 11px 22px);opacity:.9}.shot--has-cover .shot__body{background-image:var(--shot-cover);background-size:cover;background-position:center top;opacity:1}.shot__label{position:absolute;left:12px;bottom:10px;font-family:var(--font-mono),ui-monospace,monospace;font-size:10.5px;letter-spacing:.05em;color:var(--deck-muted);background:color-mix(in oklab,var(--deck-card) 80%,transparent);padding:3px 7px;border-radius:6px}.shot--wide{inset:18% 9% 14% 11%}.shot--phone{width:38%;left:50%;top:9%;bottom:9%;transform:translate(-50%);border-radius:24px;border-width:5px;border-color:var(--deck-ink);background:#101010}.shot--phone .shot__body{inset:0;background-image:radial-gradient(60% 34% at 50% 24%,color-mix(in oklab,var(--accent) 55%,#101010),#101010 70%),repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 56px)}.shot--phone.shot--has-cover .shot__body{background-image:var(--shot-cover);background-size:cover;background-position:center top}.shot--phone .shot__label{color:#bdb8b0;background:#14141499;top:10px;bottom:auto;left:50%;transform:translate(-50%)}.shot--phone .feed-card{position:absolute;left:12%;right:12%;border-radius:9px;background:#ffffff12;border:1px solid rgba(255,255,255,.1)}.shot--phone .feed-card.c1{top:16%;height:40%}.shot--phone .feed-card.c2{top:60%;height:24%}.card__tab{position:absolute;top:12px;left:12px;z-index:4;font-family:var(--font-mono),ui-monospace,monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--deck-ink-soft);background:color-mix(in oklab,var(--deck-card) 86%,transparent);border:1px solid var(--deck-line-soft);padding:4px 9px;border-radius:100px}.feat{display:flex;align-items:center;gap:16px;height:100%;padding:0 22px}.feat__icon{flex:0 0 46px;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:color-mix(in oklab,var(--accent) 16%,var(--deck-card));border:1px solid color-mix(in oklab,var(--accent) 30%,var(--deck-line));color:var(--accent)}.feat__icon svg{width:22px;height:22px;display:block}.feat__body{display:flex;flex-direction:column;gap:5px;min-width:0}.feat__meta{display:flex;align-items:center;gap:8px;font-family:var(--font-mono),ui-monospace,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--deck-muted)}.feat__meta b{color:var(--accent);font-weight:500}.feat__title{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:16.5px;letter-spacing:-.01em;line-height:1.18;color:var(--deck-ink);text-wrap:balance}.js .actions{transition:opacity .55s cubic-bezier(.22,.61,.36,1),transform .55s cubic-bezier(.22,.61,.36,1)}.js .project:not(.cards-complete) .actions{opacity:0;transform:translateY(16px);pointer-events:none}.js .project.cards-complete .actions{opacity:1;transform:none;pointer-events:auto}.js .deck-progress{transition:opacity .4s cubic-bezier(.22,.61,.36,1)}.js .project.cards-complete .deck-progress{opacity:.45}.js .project__visual,.js .cat,.js .project__title,.js .project__desc,.js .stack-tags,.js .deck-progress{transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .85s cubic-bezier(.22,.61,.36,1)}.js .project:not(.is-entered) .project__visual,.js .project:not(.is-entered) .cat,.js .project:not(.is-entered) .project__title,.js .project:not(.is-entered) .project__desc,.js .project:not(.is-entered) .stack-tags,.js .project:not(.is-entered) .deck-progress{opacity:0}.js .project[data-layout=normal]:not(.is-entered) .project__visual{transform:translate(-15%) scale(.9) rotate(-3deg)}.js .project[data-layout=flip]:not(.is-entered) .project__visual{transform:translate(15%) scale(.9) rotate(3deg)}.js .project[data-layout=normal]:not(.is-entered) .cat,.js .project[data-layout=normal]:not(.is-entered) .project__title,.js .project[data-layout=normal]:not(.is-entered) .project__desc,.js .project[data-layout=normal]:not(.is-entered) .deck-progress{transform:translate(46px)}.js .project[data-layout=flip]:not(.is-entered) .cat,.js .project[data-layout=flip]:not(.is-entered) .project__title,.js .project[data-layout=flip]:not(.is-entered) .project__desc,.js .project[data-layout=flip]:not(.is-entered) .deck-progress{transform:translate(-46px)}.js .project:not(.is-entered) .stack-tags{transform:translateY(34px)}.js .project.is-entered .project__visual{transition-delay:.06s}.js .project.is-entered .cat{transition-delay:.1s}.js .project.is-entered .project__title{transition-delay:.18s}.js .project.is-entered .project__desc{transition-delay:.26s}.js .project.is-entered .stack-tags{transition-delay:.34s}.js .project.is-entered .deck-progress{transition-delay:.42s}.js .project.entered-settled .project__visual,.js .project.entered-settled .cat,.js .project.entered-settled .project__title,.js .project.entered-settled .project__desc,.js .project.entered-settled .stack-tags,.js .project.entered-settled .deck-progress{opacity:1!important;transform:none!important;transition:none!important}.js .project.entered-settled .card--back{transition:none!important;opacity:1!important}.cta{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:26px;padding:clamp(60px,12vh,140px) 0}.cta__rule{height:1px;flex:1;max-width:200px;background:var(--deck-line)}.cta__btn{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:clamp(18px,2vw,26px);letter-spacing:-.01em;color:var(--deck-ink);text-decoration:none;padding:6px 4px;position:relative}.cta__btn .arrow{display:inline-block;transition:transform .4s cubic-bezier(.22,.61,.36,1)}.cta__btn:hover .arrow{transform:translate(6px)}@media(max-width:900px){.proyectos__scroll{grid-template-columns:1fr}.rail{display:none}.sec-head{flex-wrap:wrap;gap:8px 12px;padding:clamp(28px,6vw,44px) 0 clamp(12px,3vw,20px)}.sec-head__rule{display:none}.proyectos__mobile-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;margin-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.proyectos__mobile-nav::-webkit-scrollbar{display:none}.mobile-step{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:100px;border:1px solid var(--deck-line);background:var(--deck-card);font:inherit;color:inherit;cursor:pointer;transition:border-color .25s ease,background .25s ease}.mobile-step.is-active{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,var(--deck-card))}.mobile-step.is-passed{border-color:var(--deck-ink-soft);opacity:.72}.mobile-step__num{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.08em;color:var(--deck-muted)}.mobile-step__name{font-family:var(--font-display),ui-sans-serif,system-ui,sans-serif;font-weight:600;font-size:13px;color:var(--deck-ink);white-space:nowrap}.mobile-step.is-active .mobile-step__num{color:var(--accent)}.project{height:auto;padding-bottom:clamp(36px,8vw,52px);border-bottom:1px solid var(--deck-line)}.project:last-child{border-bottom:0;padding-bottom:0}.project__pin{position:static;height:auto;display:block;padding:clamp(24px,5vw,36px) 0 0;overflow:visible}.project__grid{grid-template-columns:1fr;gap:22px;align-items:start}.project[data-layout=flip] .project__text,.project[data-layout=flip] .project__visual{order:initial}.project__text{order:2;max-width:none;justify-self:stretch}.project__visual{order:1;width:100%;height:auto;margin-inline:0;display:flex;flex-direction:column;gap:10px}.js .proyectos--mobile .project:not(.is-entered) .project__visual{opacity:1!important;transform:none!important}.js .proyectos--mobile .project:not(.is-entered) .cat,.js .proyectos--mobile .project:not(.is-entered) .project__title,.js .proyectos--mobile .project:not(.is-entered) .project__desc,.js .proyectos--mobile .project:not(.is-entered) .stack-tags{transform:none}.card--back{display:none!important}.card{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100%!important;margin:0!important;box-shadow:0 14px 36px -22px #1b191666}.card--media{height:clamp(200px,54vw,248px)}.card--media-cover{height:clamp(300px,78vw,360px)}.project--phone-cover .project__visual{height:auto}.card--feature{height:auto;min-height:0;overflow:visible}.card--feature .feat{align-items:center;gap:14px;padding:14px 16px;min-height:0}.card--feature .feat__icon{flex:0 0 42px;width:42px;height:42px;border-radius:12px;align-self:center;flex-shrink:0}.card--feature .feat__icon svg{width:20px;height:20px;display:block}.card--feature .feat__body{flex:1;min-width:0;justify-content:center}.card--feature .feat__title{font-size:15px;line-height:1.28}.deck-progress{display:none}.project__title{font-size:clamp(22px,6.2vw,28px)}.project__desc{max-width:none;font-size:15px;margin-bottom:20px}.stack-tags{margin-bottom:18px}.cat{margin-bottom:14px}.actions{flex-direction:column;align-items:stretch;gap:14px}.btn-magnet{justify-content:center;width:100%;transform:none!important}.links{flex-wrap:wrap;justify-content:flex-start;gap:10px 16px}.cta{padding:clamp(36px,8vw,56px) 0;flex-direction:column;gap:14px}.cta__rule{display:none}.cta__btn{font-size:clamp(17px,4.8vw,21px);text-align:center}.js .proyectos--mobile .sec-head,.js .proyectos--mobile .proyectos__mobile-nav{opacity:0;transform:translateY(14px);transition:opacity .55s cubic-bezier(.22,.61,.36,1),transform .65s cubic-bezier(.22,.61,.36,1)}.js .proyectos--mobile.proyectos--revealed .sec-head{opacity:1;transform:none}.js .proyectos--mobile.proyectos--revealed .proyectos__mobile-nav{opacity:1;transform:none;transition-delay:.08s}.js .proyectos--mobile .project [data-card="1"],.js .proyectos--mobile .project [data-card="2"],.js .proyectos--mobile .project [data-card="3"],.js .proyectos--mobile .project .cat,.js .proyectos--mobile .project .project__title,.js .proyectos--mobile .project .project__desc,.js .proyectos--mobile .project .stack-tags,.js .proyectos--mobile .project .actions{opacity:0;transform:translateY(16px);transition:opacity .55s cubic-bezier(.22,.61,.36,1),transform .65s cubic-bezier(.22,.61,.36,1)}.js .proyectos--mobile .project.is-inview [data-card="1"]{opacity:1!important;transform:none!important}.js .proyectos--mobile .project.is-inview [data-card="2"]{opacity:1!important;transform:none!important;transition-delay:.07s}.js .proyectos--mobile .project.is-inview [data-card="3"]{opacity:1!important;transform:none!important;transition-delay:.14s}.js .proyectos--mobile .project.is-inview .cat{opacity:1!important;transform:none!important;transition-delay:.2s}.js .proyectos--mobile .project.is-inview .project__title{opacity:1!important;transform:none!important;transition-delay:.26s}.js .proyectos--mobile .project.is-inview .project__desc{opacity:1!important;transform:none!important;transition-delay:.32s}.js .proyectos--mobile .project.is-inview .stack-tags{opacity:1!important;transform:none!important;transition-delay:.38s}.js .proyectos--mobile .project.is-inview .actions{opacity:1!important;transform:none!important;pointer-events:auto!important;transition-delay:.44s}.js .proyectos--mobile .project .actions{pointer-events:none}.js .proyectos--mobile .project.is-inview .actions{pointer-events:auto}}@media(max-width:900px)and (prefers-reduced-motion:reduce){.js .proyectos--mobile .sec-head,.js .proyectos--mobile .proyectos__mobile-nav,.js .proyectos--mobile .project [data-card="1"],.js .proyectos--mobile .project [data-card="2"],.js .proyectos--mobile .project [data-card="3"],.js .proyectos--mobile .project .cat,.js .proyectos--mobile .project .project__title,.js .proyectos--mobile .project .project__desc,.js .proyectos--mobile .project .stack-tags,.js .proyectos--mobile .project .actions{opacity:1!important;transform:none!important;transition:none!important}}@media(prefers-reduced-motion:reduce){.timeline__fill,.deck-progress__bar{transition:none}}
