@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");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}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_9f4f9187-module__4LtYgq__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_9f4f9187-module__4LtYgq__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.00ewlnc1znsu7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0bnyh_2yo1emg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0glcd8n2pdab0.woff2)format("woff2");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}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_d361c29d-module__5PBLiG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_d361c29d-module__5PBLiG__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@layer theme{:root,:host{--font-sans:var(--font-outfit);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-outfit);--default-mono-font-family:var(--font-mono);--font-display:var(--font-fraunces)}}@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]){-webkit-text-decoration:underline dotted;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;-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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.block{display:block}.flex{display:flex}.hidden{display:none}.size-full{width:100%;height:100%}.resize{resize:both}.fill-current{fill:currentColor}}:root{--fondo:#e7eef2;--superficie:#f7fafb;--tinta:#102027;--tinta-suave:#4a5c66;--acento:#0f6e6b;--acento-secundario:#e4572e;--trazo:#c43686;--sobre-acento:#f7fafb;--linea:var(--tinta)}@supports (color:color-mix(in lab, red, red)){:root{--linea:color-mix(in srgb, var(--tinta) 14%, transparent)}}:root{--space-gutter:clamp(1.25rem, 4vw, 2rem);--space-section:clamp(4.5rem, 9vw, 7.5rem);--space-block:1.5rem;--measure:66ch;--header:4.5rem;--shell:72rem;--text-hero:clamp(3.4rem, 12vw, 8.5rem);--text-section:clamp(1.85rem, 3vw, 2.6rem);--text-lead:clamp(1.15rem, 2vw, 1.45rem);--font-sans:var(--font-outfit), sans-serif;--font-display:var(--font-fraunces), "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dark{--fondo:#0c1418;--superficie:#152026;--tinta:#e7eef2;--tinta-suave:#93a4ad;--acento:#3dccc7;--acento-secundario:#f07a4a;--trazo:#f09ac8;--sobre-acento:#0c1418;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{background:var(--fondo);min-height:100dvh;color:var(--tinta);font-family:var(--font-sans);margin:0;font-size:1.0625rem;line-height:1.6;position:relative}main,.site-footer{z-index:1;pointer-events:none;position:relative}main :where(section,div,article,ul,ol,form),.site-footer,.site-footer :where(div){pointer-events:none}main :where(a,button,input,textarea,label,p,h1,h2,h3,li),.site-footer :where(a,p){pointer-events:auto}.scroll-field{top:calc(var(--header) + .25rem);z-index:0;pointer-events:none;opacity:0;width:17rem;height:17rem;transition:opacity .85s cubic-bezier(.22,1,.36,1);position:fixed;right:0}.scroll-field.is-ready{opacity:1;pointer-events:auto;cursor:grab;touch-action:none}.scroll-field.is-grabbing{cursor:grabbing}.scroll-field:focus-visible{outline:2px solid var(--acento-secundario);outline-offset:4px}.scroll-field canvas{width:100%;height:100%;display:block}:focus-visible{outline:2px solid var(--acento-secundario);outline-offset:3px}img{max-width:100%}a{color:var(--acento)}h1,h2,h3{letter-spacing:-.03em;font-weight:560;line-height:1.15}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{left:var(--space-gutter);z-index:40;background:var(--superficie);color:var(--tinta);padding:.6rem .8rem;position:absolute;top:.5rem;transform:translateY(-150%)}.skip:focus{transform:none}.shell{width:min(100%, var(--shell));padding-inline:var(--space-gutter);margin-inline:auto}#inicio,#sobre,#stack,#proyectos,#contacto{scroll-margin-top:var(--header)}.site-header{z-index:20;height:var(--header);background:var(--superficie);border-bottom:1px solid var(--linea);position:sticky;top:0}.header-bar{align-items:center;gap:.75rem;height:100%;display:flex}.brand{color:var(--trazo);justify-content:center;align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:inline-flex}.brand-mark{border:2px solid var(--trazo);width:2.45rem;height:2.45rem;font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:1.28rem;font-weight:560;line-height:1;display:flex}.brand-r,.brand-l{display:block}.brand-r{margin-inline-end:-.2em;transform:scaleX(-1)}.brand-l{margin-inline-start:-.2em}.nav-desktop{display:none}.nav-list{gap:.25rem 1.1rem;margin:0;padding:0;list-style:none;display:flex}.nav-list a{color:var(--tinta-suave);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nav-list a.is-active{color:var(--tinta);box-shadow:inset 0 -2px 0 var(--acento)}.header-tools{align-items:center;margin-left:auto;display:flex}.lang{display:flex}.lang button,.icon-btn,.nav-list a,.brand{touch-action:manipulation}.lang button,.icon-btn{min-width:44px;min-height:44px;color:var(--tinta-suave);font:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.lang button[aria-pressed=true]{color:var(--tinta)}.icon-btn svg{pointer-events:none;width:1.25rem;height:1.25rem}.nav-sheet{inset:var(--header) 0 0 0;z-index:30;background:var(--fondo);padding:var(--space-section) var(--space-gutter);-webkit-overflow-scrolling:touch;position:fixed;overflow:auto}.nav-sheet .nav-list{flex-direction:column;font-size:clamp(1.75rem,6vw,2.4rem)}@media (min-width:768px){.nav-desktop{margin-left:auto;display:block}.header-tools{margin-left:0}.menu-btn{display:none}}.hero{min-height:calc(100dvh - var(--header));padding-top:calc(var(--header) + 2rem);padding-bottom:var(--space-section);align-items:flex-end;display:flex;overflow-x:clip}.eyebrow{color:var(--acento);margin:0;font-weight:500}.rule{background:var(--acento);transform-origin:0;width:4.5rem;height:2px;margin:.85rem 0 1.1rem;display:block}.hero-name{font-family:var(--font-display);font-size:var(--text-hero);letter-spacing:-.045em;margin:0;font-weight:560;line-height:.9}.hero-name-line{display:block}@media (min-width:480px){.hero-name{white-space:nowrap}.hero-name-line{display:inline}}@media (prefers-reduced-motion:no-preference){.rule{animation:.7s ease-out .15s both hero-rule}.hero-name{animation:1.05s cubic-bezier(.22,1,.36,1) both hero-name-narrow}}@media (min-width:480px) and (prefers-reduced-motion:no-preference){.hero-name{animation-name:hero-name-wide}}@keyframes hero-rule{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hero-name-narrow{0%{opacity:.01;letter-spacing:.16em}to{opacity:1;letter-spacing:-.045em}}@keyframes hero-name-wide{0%{opacity:.01;letter-spacing:.02em}to{opacity:1;letter-spacing:-.045em}}.lead{max-width:var(--measure);color:var(--tinta-suave);font-size:var(--text-lead);margin:1.25rem 0 0}.hero-actions{margin-top:var(--space-block);flex-wrap:wrap;gap:.75rem;display:flex}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:0 1.1rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--acento);color:var(--sobre-acento)}.btn-primary:hover:not(:disabled),.btn-primary:focus-visible:not(:disabled){background:var(--acento)}@supports (color:color-mix(in lab, red, red)){.btn-primary:hover:not(:disabled),.btn-primary:focus-visible:not(:disabled){background:color-mix(in srgb, var(--acento) 78%, var(--tinta))}}.btn-secondary{color:var(--tinta);border-color:var(--linea);background:0 0}.btn:disabled{cursor:not-allowed;opacity:.65}.section{padding-block:var(--space-section)}.section h2{margin:0 0 var(--space-block);font-size:var(--text-section)}.measure{max-width:var(--measure)}.about-grid,.contact-grid{gap:2rem;display:grid}.about-links{margin:0;padding:0;list-style:none}.about-links li+li{margin-top:.45rem}.about-links a{color:var(--tinta)}.about-links a:hover,.about-links a:focus-visible{color:var(--acento)}.tech-list,.tag-row{margin:0;padding:0;list-style:none}.tech-list{flex-direction:column;gap:.9rem;display:flex}.tech-list li{color:var(--tinta-suave);align-items:center;gap:.7rem;display:flex}.tech-icon{flex:none;width:1.35rem;height:1.35rem;display:grid}.tech-list .is-strong{color:var(--tinta);font-size:1.15rem}.tech-list .is-strong .tech-icon{width:1.9rem;height:1.9rem}.tech-list li:hover,.tech-list li:focus-within{color:var(--acento)}.project-list{gap:clamp(3rem,6vw,5rem);display:grid}.project{gap:1rem;display:grid}.project-index{font-family:var(--font-display);color:var(--trazo);margin:0;font-size:clamp(2rem,5vw,3.25rem);line-height:.9}.project h3{font-family:var(--font-display);margin:.15rem 0 .45rem;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:500;line-height:1.1}.is-lead h3{font-size:clamp(2rem,4vw,3.25rem)}.role,.tag{color:var(--tinta-suave)}.tag-row{flex-wrap:wrap;gap:.35rem .8rem;margin:.8rem 0;display:flex}.shot{aspect-ratio:16/10;background:var(--superficie);box-shadow:.55rem .55rem 0 0 var(--trazo);display:block;position:relative;overflow:hidden}.shot img{object-fit:cover;transition:transform .5s}.shot.is-top img{object-position:top}.shot:hover img,.shot:focus-visible img{transform:scale(1.03)}.project-links{flex-wrap:wrap;gap:.75rem;display:flex}.form{gap:.75rem;display:grid}.form label{gap:.35rem;display:grid}.form input,.form textarea{border:1px solid var(--linea);background:var(--superficie);width:100%;min-height:44px;color:var(--tinta);font:inherit;padding:.75rem .85rem}.field-error,.form-status.is-error{color:var(--acento-secundario);margin:0}.form-status{min-height:1.5rem;margin:0}.hp{position:absolute;left:-9999px}.site-footer{border-top:1px solid var(--linea);color:var(--tinta-suave);padding-block:1.5rem;font-size:.95rem}.footer-row{flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;display:flex}.footer-row p{flex-wrap:wrap;gap:.4rem 1rem;margin:0;display:flex}.footer-row a{color:inherit}.footer-social{align-items:center;gap:.25rem;display:flex}.footer-social a{place-items:center;width:44px;height:44px;display:grid}.footer-social a:hover{color:var(--acento)}.footer-icon{fill:currentColor;width:1.35rem;height:1.35rem}@media (min-width:768px){.hero{min-height:100dvh}.scroll-field{top:calc(var(--header) + .5rem);width:min(40vw,28rem);height:min(40vw,28rem);right:0}.about-grid,.contact-grid{grid-template-columns:1fr 1fr}.project{grid-template-columns:4.5rem 1.15fr .9fr;align-items:center;column-gap:1.5rem}.project:nth-child(2n){grid-template-columns:4.5rem .9fr 1.15fr}.project:nth-child(2n) .project-copy{order:2}.project:nth-child(2n) .shot{order:3}.about-grid{grid-template-columns:1.5fr .7fr;align-items:start}.tech-list{flex-flow:wrap;gap:1rem 1.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shot img{transition:none;transform:none}}
