@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500 800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9K6as8bTXq_nANBjzKo3IeZx8z6up5BeSl9D4dj_x9PpZBMlGHInHEVA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500 800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9K6as8bTXq_nANBjzKo3IeZx8z6up5BeSl9D4dj_x9PpZBMlGGInHEVA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Bricolage Grotesque;font-style:normal;font-weight:500 800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9K6as8bTXq_nANBjzKo3IeZx8z6up5BeSl9D4dj_x9PpZBMlGIInE.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpQ59CjCQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpS59CjCQ.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpT59CjCQ.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpd59A.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpQ59CjCQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpS59CjCQ.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpT59CjCQ.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpd59A.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpQ59CjCQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpS59CjCQ.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpT59CjCQ.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpd59A.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpQ59CjCQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpS59CjCQ.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpT59CjCQ.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYtpd59A.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=dark]{color-scheme:dark;--bg: oklch(.1 .012 250);--bg-surface: oklch(.14 .012 250);--bg-hover: oklch(.18 .012 250);--bg-overlay: oklch(.1 .012 250 / .96);--ink: oklch(.95 .008 80);--ink-muted: oklch(.65 .01 80);--ink-dim: oklch(.45 .008 80);--border: oklch(.24 .01 250);--border-hover: oklch(.38 .015 250);--accent: oklch(.74 .16 54);--accent-dim: oklch(.65 .14 54);--accent-soft: oklch(.74 .16 54 / .12);--accent-ink: oklch(.12 .03 250);--success: oklch(.8 .13 158);--danger: oklch(.7 .18 28);--canvas-opacity: 1}[data-theme=light]{color-scheme:light;--bg: oklch(.98 .003 85);--bg-surface: oklch(.95 .004 85);--bg-hover: oklch(.91 .006 85);--bg-overlay: oklch(.98 .003 85 / .96);--ink: oklch(.13 .01 250);--ink-muted: oklch(.45 .01 80);--ink-dim: oklch(.62 .008 80);--border: oklch(.86 .005 85);--border-hover: oklch(.72 .008 85);--accent: oklch(.64 .16 54);--accent-dim: oklch(.56 .14 54);--accent-soft: oklch(.64 .16 54 / .1);--accent-ink: oklch(.98 .003 85);--success: oklch(.5 .13 158);--danger: oklch(.55 .18 28);--canvas-opacity: 1}:root{--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: clamp(5rem, 12vw, 9rem);--container: 1120px;--header-height: 64px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--t-fast: .14s;--t-base: .22s;--t-slow: .32s;--z-canvas: 1;--z-content: 2;--z-header: 10;--z-nav-overlay: 20}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg)}body{font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--bg);line-height:1.6;min-height:100vh;overflow-x:hidden;transition:background var(--t-slow) var(--ease-out-quart),color var(--t-slow) var(--ease-out-quart)}body:before{content:"";position:fixed;inset:0;z-index:calc(var(--z-header) + 1);pointer-events:none;opacity:.035;mix-blend-mode:soft-light;background-image:radial-gradient(circle at 25% 20%,var(--ink) 0 1px,transparent 1px),radial-gradient(circle at 75% 80%,var(--accent) 0 1px,transparent 1px);background-size:4px 4px,7px 7px}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none}a,button,input,textarea{font:inherit}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-xs)}.skip-link{position:fixed;left:var(--space-md);top:-120%;z-index:var(--z-nav-overlay);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font-weight:600;transition:top var(--t-fast) var(--ease-out-quart)}.skip-link:focus{top:var(--space-md)}.scene-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:var(--z-canvas);pointer-events:none;display:block;opacity:var(--canvas-opacity);transition:opacity var(--t-slow) var(--ease-out-quart)}.page-shell{position:relative;z-index:var(--z-content)}.container{width:min(calc(100% - 2.5rem),var(--container));margin-inline:auto}.section{padding-block:var(--space-3xl)}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.08;letter-spacing:-.03em;color:var(--ink);text-wrap:balance}h1{font-size:clamp(2.6rem,6vw,4.8rem);letter-spacing:-.04em}h2{font-size:clamp(1.8rem,3.8vw,2.8rem);max-width:22ch}h3{font-size:1.15rem;letter-spacing:-.01em}p{text-wrap:pretty}.lead{max-width:58ch;font-size:clamp(1rem,1.7vw,1.18rem);color:var(--ink-muted);line-height:1.68}.text-accent{color:var(--accent)}.panel-tag{display:inline-block;font-family:var(--font-mono);font-size:.76rem;font-weight:500;color:var(--accent);margin-bottom:var(--space-sm);letter-spacing:.01em}.site-header{position:sticky;top:0;z-index:var(--z-header);background:var(--bg);border-bottom:1px solid transparent;transition:border-color var(--t-base) var(--ease-out-quart),background var(--t-base) var(--ease-out-quart)}.site-header.is-scrolled{border-bottom-color:var(--border);background:var(--bg-overlay);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);height:var(--header-height)}.brand{display:inline-flex;align-items:center;gap:var(--space-sm)}.brand-mark{display:inline-flex;align-items:center;justify-content:center}.brand-mark img{display:block;width:3.5rem;height:3.5rem;object-fit:contain}.brand-wordmark{font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--ink)}.site-nav{display:flex;align-items:center;gap:var(--space-xs)}.nav-menu{display:flex;align-items:center;gap:0}.nav-menu a{display:inline-flex;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);color:var(--ink-muted);font-weight:500;font-size:.875rem;transition:color var(--t-fast) var(--ease-out-quart),background var(--t-fast) var(--ease-out-quart)}.nav-menu a:hover{color:var(--ink);background:var(--bg-hover)}.nav-cta{color:var(--accent)!important;font-weight:600!important}.nav-cta:hover{background:var(--accent-soft)!important}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--ink-muted);transition:color var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart),background var(--t-fast) var(--ease-out-quart)}.theme-toggle:hover{color:var(--ink);border-color:var(--border-hover);background:var(--bg-hover)}.theme-toggle svg{pointer-events:none}.menu-toggle{display:none;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--ink-muted);transition:border-color var(--t-fast) var(--ease-out-quart)}.menu-toggle span{width:16px;height:1.5px;background:currentColor;border-radius:2px;transition:transform var(--t-base) var(--ease-out-quart),opacity var(--t-base) var(--ease-out-quart)}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(3.25px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){transform:translateY(-3.25px) rotate(-45deg)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:44px;padding:.625rem 1.25rem;border-radius:var(--radius-sm);border:1px solid transparent;font-weight:600;font-size:.9rem;transition:background var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart),box-shadow var(--t-fast) var(--ease-out-quart),transform var(--t-fast) var(--ease-out-quart)}.button:active{transform:scale(.97)}.button-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 18px 50px #f78b3929}.button-primary:hover{background:var(--accent-dim);border-color:var(--accent-dim);box-shadow:0 22px 70px #f78b3938;transform:translateY(-2px)}.button-secondary{background:transparent;color:var(--ink);border-color:var(--border)}.button-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translateY(-2px)}.button-lg{min-height:50px;padding:.75rem 1.5rem;font-size:.95rem}.hero{position:relative;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-block:calc(var(--header-height) + var(--space-2xl)) var(--space-3xl)}.hero-inner{display:grid;gap:var(--space-lg);justify-items:center;max-width:860px}.live-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:var(--radius-pill);background:#6cd79d1a;border:1px solid oklch(.8 .13 158 / .28);color:var(--success);font-family:var(--font-mono);font-size:.76rem;font-weight:600;letter-spacing:.01em}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--success);animation:pulse 2.4s var(--ease-out-quart) infinite}@keyframes pulse{0%,to{box-shadow:0 0 #6cd79d80}50%{box-shadow:0 0 0 6px #6cd79d00}}.hero h1{max-width:16ch}.hero h1{font-size:clamp(3.2rem,8.4vw,7.4rem);line-height:.92;letter-spacing:-.07em;text-shadow:0 18px 70px oklch(.04 .02 250 / .55)}.hero .text-accent{color:transparent;background:linear-gradient(100deg,var(--accent),oklch(.88 .11 80),var(--accent-dim));-webkit-background-clip:text;background-clip:text}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center;padding-top:var(--space-xs)}.scroll-cue{margin-top:var(--space-2xl);display:inline-flex;flex-direction:column;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}.scroll-cue-line{width:1px;height:36px;background:linear-gradient(var(--accent),transparent);animation:cue 2.2s var(--ease-out-quart) infinite}@keyframes cue{0%,to{transform:scaleY(.5);opacity:.4;transform-origin:top}50%{transform:scaleY(1);opacity:1;transform-origin:top}}.panel{padding:clamp(1.75rem,4vw,3rem);border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border)}.panel-head{max-width:60ch;margin-bottom:var(--space-xl)}.panel-head p{color:var(--ink-muted);font-size:1rem;margin-top:var(--space-sm)}.capability-list{display:grid;gap:2px}.capability{display:grid;grid-template-columns:auto 1fr;gap:var(--space-lg);align-items:start;padding:var(--space-lg);border-radius:var(--radius-sm);border:1px solid transparent;transition:background var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart)}.capability:hover{background:var(--bg-hover);border-color:var(--border)}.capability-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid oklch(.74 .16 54 / .2);color:var(--accent);flex-shrink:0}.capability h3{color:var(--ink);margin-bottom:var(--space-2xs)}.capability p{color:var(--ink-muted);font-size:.93rem;max-width:52ch}.capability-meta{display:inline-block;margin-top:var(--space-sm);font-family:var(--font-mono);font-size:.72rem;color:var(--ink-dim)}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-xl)}.tech-category-title{font-family:var(--font-mono);font-size:.73rem;font-weight:600;letter-spacing:.05em;color:var(--accent);text-transform:uppercase;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.tech-items{display:flex;flex-direction:column;gap:var(--space-sm)}.tech-item{display:flex;align-items:center;gap:var(--space-sm);font-size:.9rem;color:var(--ink-muted);font-weight:500}.tech-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-sm)}.team-card{padding:var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-surface);display:flex;flex-direction:column;gap:var(--space-2xs);transition:background var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart)}.team-card:hover{background:var(--bg-hover);border-color:var(--border-hover)}.team-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid oklch(.74 .16 54 / .22);color:var(--accent);font-family:var(--font-mono);font-weight:600;font-size:.85rem;margin-bottom:var(--space-sm)}.team-card h3{color:var(--ink)}.team-role{font-family:var(--font-mono);font-size:.72rem;color:var(--accent);font-weight:500}.team-card p:last-child{color:var(--ink-muted);font-size:.88rem}.cta-panel{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-lg);padding-block:var(--space-3xl)}.cta-panel h2{max-width:18ch}.cta-panel p{color:var(--ink-muted);max-width:48ch}.build-status{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.4rem 1rem;border-radius:var(--radius-pill);background:#6cd79d14;border:1px solid oklch(.8 .13 158 / .22);font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--success);opacity:0;transform:translateY(6px);transition:opacity var(--t-slow) var(--ease-out-quart),transform var(--t-slow) var(--ease-out-quart)}.build-icon{display:inline-flex}.cta-panel.is-built .build-status{opacity:1;transform:translateY(0)}.contact-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:start}.contact-intro .panel-tag,.contact-intro h2{margin-bottom:var(--space-sm)}.contact-intro>p{color:var(--ink-muted)}.contact-info{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-xl)}.contact-info-item{display:flex;align-items:center;gap:var(--space-sm);color:var(--ink-muted);font-size:.93rem}.contact-info-item a{transition:color var(--t-fast) var(--ease-out-quart)}.contact-info-item a:hover{color:var(--accent)}.contact-form{display:grid;gap:var(--space-md);scroll-margin-top:calc(var(--header-height) + var(--space-lg))}.form-group{display:grid;gap:var(--space-xs)}.contact-form label{font-weight:600;font-size:.86rem;color:var(--ink)}.contact-form input,.contact-form textarea{width:100%;padding:.7rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);transition:border-color var(--t-fast) var(--ease-out-quart),box-shadow var(--t-fast) var(--ease-out-quart)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ink-dim)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.contact-form textarea{resize:vertical;min-height:120px}.form-message{min-height:1.4rem;font-size:.86rem;font-weight:500}.form-message.success{color:var(--success)}.form-message.error{color:var(--danger)}.site-footer{padding-block:var(--space-2xl);margin-top:var(--space-2xl);border-top:1px solid var(--border);background:var(--bg-surface)}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-lg)}.footer-brand{display:grid;gap:var(--space-2xs)}.footer-brand-head{display:inline-flex;align-items:center;gap:var(--space-sm)}.footer-logo{display:inline-flex;align-items:center;justify-content:center}.footer-logo img{display:block;width:4.5rem;height:4.5rem;object-fit:contain}.footer-brand p{color:var(--ink-dim);font-size:.86rem}.footer-links{display:flex;flex-wrap:wrap;gap:var(--space-lg)}.footer-links a{color:var(--ink-muted);font-size:.88rem;font-weight:500;transition:color var(--t-fast) var(--ease-out-quart)}.footer-links a:hover{color:var(--ink)}.footer-copy{color:var(--ink-dim);font-size:.78rem;width:100%}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out-expo),transform .6s var(--ease-out-expo)}.js .reveal.is-visible{opacity:1;transform:none}.js .hero .reveal:nth-of-type(2){transition-delay:60ms}.js .hero .reveal:nth-of-type(3){transition-delay:.12s}.js .hero .reveal:nth-of-type(4){transition-delay:.18s}@media(max-width:860px){.contact-panel{grid-template-columns:1fr}.capability{grid-template-columns:1fr;gap:var(--space-md)}.services-cards{grid-template-columns:1fr}.service-card:first-child{grid-template-columns:1fr;gap:var(--space-lg)}.service-row{grid-template-columns:2rem 2rem 1fr 1.25rem}.tech-cat-row{grid-template-columns:8rem 1fr}.process-timeline{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2):not(:last-child):after{display:none}.team-bento{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto}.team-card:first-child{grid-row:auto;grid-column:1 / 3;justify-content:flex-start}.team-card:nth-child(2){grid-column:1;grid-row:auto}.team-card:nth-child(3){grid-column:2;grid-row:auto}.team-card:last-child{grid-column:1 / 3;grid-row:auto;justify-content:flex-start}}@media(max-width:600px){.service-row{grid-template-columns:2rem 1fr 1.25rem}.service-icon{display:none}.tech-cat-row{grid-template-columns:1fr;gap:var(--space-sm)}.tech-cat-label{padding-top:0}.process-timeline{grid-template-columns:1fr}.process-step:not(:last-child):after{display:none}.team-bento{grid-template-columns:1fr}.team-card:first-child,.team-card:last-child{grid-column:auto;grid-row:auto}.menu-toggle{display:inline-flex}.site-nav{position:fixed;inset:var(--header-height) 0 0 0;z-index:var(--z-nav-overlay);background:var(--bg-overlay);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:var(--space-lg);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart)}.site-nav.is-open{opacity:1;pointer-events:auto;transform:none}.nav-menu{flex-direction:column;align-items:stretch;gap:var(--space-xs)}.nav-menu a{padding:var(--space-md);font-size:1.05rem;text-align:center}.theme-toggle{display:none}}#servicios.section{padding:0;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 18% 22%,oklch(.74 .16 54 / .08),transparent 34%),radial-gradient(circle at 82% 76%,oklch(.74 .16 54 / .045),transparent 38%),var(--bg)}.services-fullscreen{list-style:none;margin:0;padding:0;height:100dvh;position:relative;overflow:hidden}.service-slide{position:absolute;inset:0;height:100dvh;display:flex;align-items:center;background:linear-gradient(110deg,var(--bg) 0 44%,transparent 44%),radial-gradient(circle at 78% 30%,oklch(.74 .16 54 / .1),transparent 34%),linear-gradient(135deg,var(--bg),oklch(.095 .014 250));overflow:hidden;transform:translateZ(0)}.service-slide:before{content:"{";position:absolute;right:clamp(2rem,6vw,5rem);bottom:-.1em;font-family:var(--font-mono);font-size:clamp(12rem,28vw,22rem);font-weight:700;line-height:1;color:var(--ink);opacity:.045;pointer-events:none;-webkit-user-select:none;user-select:none;letter-spacing:-.04em}.service-slide:nth-child(1):before{content:"{"}.service-slide:nth-child(2):before{content:"\221e"}.service-slide:nth-child(3):before{content:"\25c7"}.service-slide:nth-child(4):before{content:"\25cb"}.service-slide:after{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--border);transition:background var(--t-base) var(--ease-out-quart)}.service-slide:nth-child(2n){background:linear-gradient(250deg,var(--bg-surface) 0 46%,transparent 46%),radial-gradient(circle at 18% 72%,oklch(.74 .16 54 / .11),transparent 32%),var(--bg)}.service-slide:nth-child(2n):after{background:var(--accent)}[data-theme=light] .service-slide:nth-child(2n){background:linear-gradient(250deg,oklch(.93 .005 85) 0 46%,transparent 46%),radial-gradient(circle at 18% 72%,oklch(.64 .16 54 / .13),transparent 32%),#f6f5f2}.service-slide-inner{width:100%;max-width:var(--container);margin:0 auto;padding:0 clamp(1.5rem,5vw,4rem);display:flex;flex-direction:column;gap:var(--space-lg);position:relative;z-index:1;min-height:min(56vh,520px);justify-content:center}.service-slide-inner:before{content:"";position:absolute;left:clamp(1.5rem,5vw,4rem);top:0;bottom:0;width:1px;background:linear-gradient(transparent,var(--accent),transparent);opacity:.32}.service-slide-tag{font-family:var(--font-mono);font-size:.76rem;color:var(--accent);letter-spacing:.06em}.service-slide h3{font-family:var(--font-display);font-size:clamp(2.7rem,7vw,5.6rem);font-weight:700;color:var(--ink);line-height:.96;letter-spacing:-.06em;max-width:16ch;margin:0}.service-slide p{font-size:clamp(.95rem,1.4vw,1.05rem);color:var(--ink-muted);max-width:54ch;line-height:1.72;margin:0;padding-left:clamp(1rem,3vw,2rem);border-left:1px solid var(--border)}.service-slide-hint{position:absolute;bottom:var(--space-xl);right:clamp(1.5rem,5vw,4rem);font-family:var(--font-mono);font-size:.68rem;color:var(--ink-dim);letter-spacing:.08em;writing-mode:vertical-rl;z-index:1}@media(max-width:860px){#servicios.section{padding:var(--space-3xl) 0;overflow:visible}.services-fullscreen{height:auto;position:static}.service-slide{position:static;height:auto;padding:var(--space-xl) var(--space-lg);border-bottom:1px solid var(--border);counter-increment:none;transform:none}.service-slide:before,.service-slide:after{display:none}.service-slide:last-child{border-bottom:none}.service-slide h3{font-size:1.2rem}.service-slide p{font-size:.88rem}.service-slide-hint{display:none}}.services-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.service-card:first-child{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-2xl);align-items:center}.service-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:clamp(1.5rem,3vw,2rem);display:flex;flex-direction:column;gap:var(--space-sm);cursor:default;transition:border-color var(--t-base) var(--ease-out-quart),background var(--t-base) var(--ease-out-quart);position:relative;overflow:hidden}.service-card:hover{border-color:var(--border-hover);background:var(--bg-hover)}.service-card h3{font-size:1rem;font-weight:600;color:var(--ink);margin:0;line-height:1.3}.service-card:first-child h3{font-size:1.2rem}.service-card p{font-size:.87rem;color:var(--ink-muted);margin:0;line-height:1.65}@media(min-width:861px){.services-cards .service-card{opacity:0;transform:translateY(48px)}}.service-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--t-base) var(--ease-out-expo)}.service-card:hover:after{transform:scaleX(1)}.services-list{list-style:none;margin:0;padding:0}.service-row{position:relative;display:grid;grid-template-columns:2.5rem 2.5rem 1fr 1.5rem;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-sm);border-bottom:1px solid var(--border);overflow:hidden;cursor:default;transition:background var(--t-fast) var(--ease-out-quart)}.service-row:first-child{border-top:1px solid var(--border)}.service-row:hover{background:var(--bg-hover)}.service-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);transform:scaleY(0);transform-origin:center;transition:transform var(--t-base) var(--ease-out-expo);border-radius:0 2px 2px 0}.service-row:hover:before{transform:scaleY(1)}.service-index{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--ink-dim);letter-spacing:.05em;padding-left:4px;transition:color var(--t-fast) var(--ease-out-quart)}.service-row:hover .service-index{color:var(--accent)}.service-icon{display:flex;align-items:center;justify-content:center}.service-body{min-width:0}.service-body h3{font-size:1rem;font-weight:600;margin-bottom:.2em;color:var(--ink)}.service-body p{font-size:.87rem;color:var(--ink-muted);margin:0}.service-meta{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-dim);white-space:nowrap;text-align:right;opacity:0;transform:translate(6px);transition:opacity var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart)}.service-row:hover .service-meta{opacity:1;transform:none}.service-arrow{color:var(--ink-dim);display:flex;align-items:center;opacity:0;transform:translate(-4px);transition:opacity var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart),color var(--t-fast) var(--ease-out-quart)}.service-row:hover .service-arrow{opacity:1;transform:none;color:var(--accent)}#garantias.section{background:var(--bg)}#garantias.section{position:relative;overflow:clip;padding-block:clamp(6rem,13vw,11rem)}#garantias.section:before{content:"";position:absolute;inset:8% -10% auto auto;width:min(44vw,520px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--accent-soft),transparent 68%);filter:blur(20px);pointer-events:none}.guarantees-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);background:transparent;border:1px solid var(--border);border-radius:clamp(1rem,2.4vw,1.75rem);padding:var(--space-md);overflow:hidden;counter-reset:guarantee}.guarantee-card{background:var(--bg-surface);padding:clamp(2rem,4vw,3rem);display:flex;flex-direction:column;gap:var(--space-sm);position:relative;overflow:hidden;border-radius:var(--radius-md);border:1px solid transparent;min-height:clamp(17rem,27vw,22rem);transition:background var(--t-base) var(--ease-out-quart),border-color var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart)}.guarantee-card:before{content:"";position:absolute;inset:auto -20% -38% 28%;height:58%;background:radial-gradient(ellipse at center,var(--accent-soft),transparent 70%);opacity:0;transition:opacity var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart)}.guarantee-card:after{content:"0" counter(guarantee);position:absolute;right:clamp(1rem,3vw,2rem);bottom:-.18em;font-family:var(--font-display);font-size:clamp(4rem,10vw,8rem);font-weight:800;line-height:1;letter-spacing:-.08em;color:var(--ink);opacity:.035;pointer-events:none}.guarantee-card{counter-increment:guarantee}.guarantee-card:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translateY(-6px)}.guarantee-card:hover:before{opacity:1;transform:translateY(-10%)}.guarantee-card h3{font-size:clamp(1.15rem,2vw,1.55rem);font-weight:700;color:var(--ink);line-height:1.15;margin:0;max-width:18ch}.guarantee-card p{font-size:clamp(.92rem,1.25vw,1.02rem);color:var(--ink-muted);line-height:1.65;margin:0;max-width:46ch}[data-theme=light] .guarantee-card{background:#f6f5f3}[data-theme=light] .guarantee-card:hover{background:#e9e8e4}@media(max-width:640px){#garantias.section{min-height:auto}.guarantees-grid{grid-template-columns:1fr}.guarantee-card{padding:var(--space-lg)}}.tech-section{margin:0;padding:0}.tech-cat-row{display:grid;grid-template-columns:10rem 1fr;align-items:start;gap:var(--space-lg);padding:var(--space-lg) var(--space-sm);border-bottom:1px solid var(--border);transition:background var(--t-fast) var(--ease-out-quart)}.tech-cat-row:first-child{border-top:1px solid var(--border)}.tech-cat-row:hover{background:var(--bg-hover)}.tech-cat-label{font-family:var(--font-mono);font-size:.76rem;font-weight:500;color:var(--ink-muted);letter-spacing:.03em;padding-top:.25em}.tech-chips{display:flex;flex-wrap:wrap;gap:var(--space-2xs);list-style:none;margin:0;padding:0}.tech-chip{font-family:var(--font-mono);font-size:.74rem;font-weight:500;color:var(--ink-muted);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:.25em .65em;cursor:default;transition:color var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart),background var(--t-fast) var(--ease-out-quart),transform var(--t-fast) var(--ease-out-quart)}.tech-chip:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.process-timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg);position:relative}#proceso.section{position:relative;min-height:100dvh;display:grid;align-items:center;overflow:clip}#proceso.section:before{content:"";position:absolute;inset:18% 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.24}#proceso.section:after{content:"";position:absolute;left:-8%;bottom:6%;width:min(52vw,640px);aspect-ratio:1.6;border:1px solid var(--border);border-radius:50%;transform:rotate(-10deg);opacity:.28;pointer-events:none}.process-step{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:default;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:clamp(1.5rem,3vw,2.35rem) var(--space-lg);min-height:22rem;overflow:hidden;transition:background var(--t-fast) var(--ease-out-quart),border-color var(--t-fast) var(--ease-out-quart),box-shadow var(--t-fast) var(--ease-out-quart),transform var(--t-fast) var(--ease-out-quart)}.process-step:nth-child(2n){transform:translateY(var(--space-xl))}.process-step:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,oklch(1 0 0 / .055),transparent 42%),radial-gradient(circle at 50% 0%,var(--accent-soft),transparent 46%);opacity:0;transition:opacity var(--t-base) var(--ease-out-quart)}.process-step:hover{background:var(--bg-hover);border-color:var(--border-hover);box-shadow:0 26px 80px #00000152}.process-step:nth-child(odd):hover{transform:translateY(-6px)}.process-step:nth-child(2n):hover{transform:translateY(calc(var(--space-xl) - 6px))}.process-step:hover:before{opacity:1}.step-badge{width:3rem;height:3rem;border-radius:50%;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--ink-muted);margin-bottom:var(--space-md);transition:background var(--t-base) var(--ease-out-expo),border-color var(--t-base) var(--ease-out-expo),color var(--t-base) var(--ease-out-expo),transform var(--t-base) var(--ease-out-expo)}.process-step:hover .step-badge{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);transform:scale(1.1)}.process-step:not(:last-child):after{content:"";position:absolute;top:1.5rem;right:calc(var(--space-lg) * -.5);transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid var(--border);transition:border-left-color var(--t-base) var(--ease-out-quart);z-index:1}.process-step:not(:last-child):hover:after{border-left-color:var(--accent)}.process-step h3{font-size:.92rem;font-weight:600;color:var(--ink);margin-bottom:var(--space-2xs);transition:color var(--t-fast) var(--ease-out-quart)}.process-step p{font-size:.82rem;color:var(--ink-dim);margin:0;transition:color var(--t-base) var(--ease-out-quart)}.process-step:hover p{color:var(--ink-muted)}.team-bento{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1.25fr .95fr 1.25fr;grid-template-rows:auto auto;gap:var(--space-md)}.team-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:clamp(1.35rem,2.5vw,2.1rem);display:flex;flex-direction:column;gap:var(--space-xs);position:relative;overflow:hidden;transition:border-color var(--t-base) var(--ease-out-quart),background var(--t-base) var(--ease-out-quart),box-shadow var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart);cursor:default}.team-card:hover{border-color:var(--border-hover);background:var(--bg-hover);box-shadow:0 24px 70px #00000147;transform:translateY(-4px)}.team-card:nth-child(1){background:linear-gradient(160deg,oklch(.74 .16 54 / .1),transparent 42%),var(--bg-surface)}.team-card:nth-child(2){border-radius:var(--radius-sm) var(--radius-md) var(--radius-sm) var(--radius-md)}.team-card:nth-child(3){border-radius:var(--radius-md) var(--radius-sm) var(--radius-md) var(--radius-sm);background:linear-gradient(20deg,oklch(.8 .13 158 / .08),transparent 48%),var(--bg-surface)}.team-card:nth-child(4){background:radial-gradient(circle at 82% 18%,oklch(.74 .16 54 / .11),transparent 35%),var(--bg-surface)}.team-card:before{content:"";position:absolute;inset:auto -35% -45% 10%;height:70%;background:radial-gradient(ellipse at center,var(--accent-soft),transparent 68%);opacity:0;transition:opacity var(--t-base) var(--ease-out-quart),transform var(--t-base) var(--ease-out-quart)}.team-card:hover:before{opacity:1;transform:translateY(-12%)}.team-card:after{content:"";position:absolute;top:var(--space-md);right:var(--space-md);width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:0;transition:opacity var(--t-base) var(--ease-out-quart)}.team-card:hover:after{opacity:1}.team-card:first-child{grid-row:1 / 3;justify-content:flex-end}.team-card:nth-child(2){grid-column:2;grid-row:1}.team-card:nth-child(3){grid-column:2;grid-row:2}.team-card:last-child{grid-column:3;grid-row:1 / 3;justify-content:flex-end}.team-avatar{width:2.75rem;height:2.75rem;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.76rem;font-weight:700;color:var(--accent);margin-bottom:var(--space-xs);transition:background var(--t-base) var(--ease-out-quart),border-color var(--t-base) var(--ease-out-quart),color var(--t-base) var(--ease-out-quart)}.team-card:hover .team-avatar{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.team-card h3{font-size:.95rem;font-weight:600;color:var(--ink);margin:0}.team-card:first-child h3,.team-card:last-child h3{font-size:clamp(1.15rem,2.2vw,1.55rem);max-width:15ch}.team-role{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-dim);margin:0}.team-card>p:last-child{font-size:.85rem;color:var(--ink-muted);margin:0}.team-card:first-child>p:last-child,.team-card:last-child>p:last-child{font-size:.92rem}@media(max-width:860px){.hero:before{width:115vw;opacity:.5}.hero:after{inset:10vh 1rem;background-size:48px 48px}.hero-inner:before{inset:-1.5rem -1rem}.hero h1{font-size:clamp(2.9rem,17vw,4.8rem)}.service-slide-inner{min-height:auto;padding-inline:0}.service-slide-inner:before{display:none}.service-slide h3{font-size:clamp(1.65rem,9vw,2.8rem);line-height:1}.service-slide p{padding-left:0;border-left:0}#proceso.section{min-height:auto;display:block}.process-timeline{grid-template-columns:repeat(2,1fr)}.process-step,.process-step:nth-child(2n),.process-step:nth-child(odd):hover,.process-step:nth-child(2n):hover{min-height:auto;transform:none}.team-bento{grid-template-columns:1fr 1fr;grid-template-rows:auto}.team-card:first-child,.team-card:last-child{grid-column:1 / -1;grid-row:auto;justify-content:flex-start}.team-card:nth-child(2),.team-card:nth-child(3){grid-column:auto;grid-row:auto}}@media(max-width:640px){body:before{opacity:.025}.guarantees-grid,.process-timeline,.team-bento{grid-template-columns:1fr}.guarantees-grid{padding:var(--space-xs)}.guarantee-card{min-height:auto}}@media(max-width:600px){.container{width:min(calc(100% - 1.5rem),var(--container))}.hero{min-height:calc(100dvh - var(--header-height));padding-block:calc(var(--header-height) + var(--space-xl)) var(--space-2xl);overflow:hidden}.hero-inner{width:100%;max-width:100%}.hero h1{max-width:9.8ch;font-size:clamp(2.45rem,12.8vw,3.35rem);line-height:.96;letter-spacing:-.055em}.hero h1 br{display:none}.hero .lead{max-width:32ch;font-size:.98rem}.hero-actions{width:100%}.hero-actions .button{width:min(100%,19rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
