@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.p.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.p.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.p.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.p.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.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:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_101f9366-module__822Ugq__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_101f9366-module__822Ugq__variable{--font-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,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:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.p.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_2ef99438-module__iBGuyq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_2ef99438-module__iBGuyq__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#001219;--bg-deep:#000911;--panel:#001e2a80;--panel-solid:#01202c;--bar:#0009119e;--primary:#4ee6ab;--primary-bright:#6fffc4;--primary-rgb:78, 230, 171;--warn:#ffb454;--warn-rgb:255, 180, 84;--ok:#4ee6ab;--ok-rgb:78, 230, 171;--text:#e2e8f0;--text-dim:#94a3b8;--line:#4ee6ab2e;--line-soft:#4ee6ab1a;--nav-height:64px;--radius:8px;--content:1180px;--ease-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 16px)}body{font-family:var(--font-sans), "IBM Plex Sans", system-ui, sans-serif;background-color:var(--bg);background-image:radial-gradient(ellipse 90% 55% at 50% -12%, rgba(var(--primary-rgb), .07), transparent), linear-gradient(var(--bg) 0%, var(--bg-deep) 100%);color:var(--text);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100dvh;line-height:1.65;overflow-x:hidden}body:before{content:"";z-index:1;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");position:fixed;inset:0}body>*{z-index:2;position:relative}.mono,.nav,.btn,.panel__bar,.hero__greeting,.hero__role,.hero__status,.section__hint,.skill-tag,.project-card__url,.contact-item__action,.price-line__value,.payment-list,.footer__prompt,.footer__legal,.disclaimer,.toast,.status__state{font-family:var(--font-mono), "JetBrains Mono", monospace}h1,h2,h3{letter-spacing:-.015em;font-weight:600}::selection{background:var(--primary);color:var(--bg)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:rgba(var(--primary-rgb), .45);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(var(--primary-rgb), .7)}a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-bright)}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}.skip-link{z-index:100;background:var(--primary);color:var(--bg);padding:.6rem 1rem;font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}main{max-width:var(--content);padding:calc(var(--nav-height) + 2rem) 1.25rem 4rem;margin:0 auto}.nav{z-index:50;height:var(--nav-height);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#000911cc;position:fixed;top:0;left:0;right:0}.nav__inner{max-width:var(--content);justify-content:space-between;align-items:center;gap:1rem;height:100%;margin:0 auto;padding:0 1.25rem;display:flex}.nav__logo{color:var(--text);white-space:nowrap;font-size:.95rem;font-weight:700}.nav__logo span{color:var(--primary)}.nav__links{gap:.25rem;display:flex}.nav__link{color:var(--text-dim);white-space:nowrap;border:1px solid #0000;border-radius:6px;padding:.45rem .85rem;font-size:.88rem;transition:color .2s,background .2s,border-color .2s}.nav__link:hover{color:var(--text);background:rgba(var(--primary-rgb), .08)}.nav__link--active{color:var(--primary);border-color:var(--line);background:rgba(var(--primary-rgb), .08)}.nav__link--cta{color:var(--bg);background:var(--primary);font-weight:600}.nav__link--cta:hover{color:var(--bg);background:var(--primary-bright)}@media (max-width:640px){.nav__logo .nav__host{display:none}.nav__link{padding:.45rem .55rem;font-size:.82rem}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:inset 0 0 90px rgba(var(--primary-rgb), .028), 0 18px 45px #00000059;overflow:hidden}.panel__bar{background:var(--bar);border-bottom:1px solid var(--line-soft);align-items:center;gap:.75rem;padding:.5rem 1rem;font-size:.8rem;display:flex}.panel__index{color:var(--bg);background:rgba(var(--primary-rgb), .85);border-radius:3px;padding:0 .45rem;font-weight:600}.panel__path{color:var(--text-dim)}.panel__title{color:rgba(var(--primary-rgb), .65);text-align:right;margin-left:auto}.panel__body{padding:1.75rem}@media (max-width:640px){.panel__body{padding:1.15rem}.panel__title{display:none}}.section{margin-bottom:3rem}.section__heading{flex-wrap:wrap;align-items:baseline;gap:.75rem;margin-bottom:1.1rem;display:flex}.section__heading h1,.section__heading h2{color:var(--text);font-size:1.45rem}.section__heading h1:before,.section__heading h2:before{content:"❯ ";color:var(--primary);font-family:var(--font-mono), monospace}.section__heading .section__hint{color:var(--text-dim);font-size:.85rem}.hero{margin-bottom:3rem}.hero__notice{border:1px dashed rgba(var(--warn-rgb), .45);background:rgba(var(--warn-rgb), .06);color:var(--text-dim);border-radius:6px;margin-bottom:1.75rem;padding:.75rem 1rem;font-size:.9rem;display:block}.hero__notice strong{color:var(--warn);font-weight:600}.hero__notice:before{content:"⚠ ";color:var(--warn)}.hero__grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:3rem;display:grid}@media (max-width:900px){.hero__grid{grid-template-columns:1fr;gap:2rem}}.hero__skills .skills{margin-top:.9rem}.hero__greeting{color:var(--text-dim);font-size:.9rem}.hero__greeting:before{content:"$ ";color:var(--primary)}.hero__name{letter-spacing:-.025em;margin:.5rem 0 .3rem;font-size:clamp(2.1rem,6vw,3.4rem);font-weight:700;line-height:1.12}.hero__role{color:var(--primary);font-size:clamp(1.05rem,3vw,1.35rem)}.hero__role:before{content:"❯ ";color:var(--text-dim)}.hero__role:after{content:"▋";color:var(--primary);margin-left:.15em;animation:1.2s step-end infinite blink}@keyframes blink{50%{opacity:0}}.hero__comment{color:var(--text-dim);max-width:58ch;margin-top:1rem}.hero__actions{flex-wrap:wrap;gap:.8rem;margin-top:1.75rem;display:flex}.hero__status{color:var(--text-dim);align-items:center;gap:.55rem;margin-top:1.4rem;font-size:.85rem;display:flex}.hero__status-dot{background:var(--ok);width:8px;height:8px;box-shadow:0 0 8px rgba(var(--ok-rgb), .7);border-radius:50%;flex-shrink:0;animation:2.4s ease-in-out infinite pulse}.hero .panel__body>*{animation:rise .5s var(--ease-out) both}.hero .panel__body>:first-child{animation-delay:50ms}.hero .panel__body>:nth-child(2){animation-delay:.15s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.btn{border:1px solid rgba(var(--primary-rgb), .3);background:rgba(var(--primary-rgb), .06);color:var(--text);cursor:pointer;border-radius:7px;align-items:center;gap:.6rem;min-height:48px;padding:.8rem 1.6rem;font-size:.95rem;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s;display:inline-flex}.btn:before{content:"❯";color:var(--primary)}.btn:hover{background:rgba(var(--primary-rgb), .13);border-color:rgba(var(--primary-rgb), .5);color:var(--text);box-shadow:0 6px 20px rgba(var(--primary-rgb), .1)}.btn:active{transform:scale(.98)}.btn--solid{background:var(--primary);color:var(--bg);border-color:var(--primary);font-weight:600}.btn--solid:before{color:var(--bg)}.btn--solid:hover{background:var(--primary-bright);border-color:var(--primary-bright);color:var(--bg)}.status{gap:.9rem;display:grid}.status__row{grid-template-columns:auto 1fr auto;align-items:baseline;gap:.8rem;display:grid}.status__dot{border-radius:50%;align-self:center;width:10px;height:10px}.status__dot--ok{background:var(--ok);box-shadow:0 0 8px rgba(var(--ok-rgb), .7)}.status__dot--warn{background:var(--warn);box-shadow:0 0 8px rgba(var(--warn-rgb), .7);animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.status__name{color:var(--text)}.status__name small{color:var(--text-dim);font-size:.82rem;display:block}.status__state{white-space:nowrap;border:1px solid;border-radius:99px;padding:.15rem .6rem;font-size:.82rem}.status__state--ok{color:var(--ok);border-color:rgba(var(--ok-rgb), .35)}.status__state--warn{color:var(--warn);border-color:rgba(var(--warn-rgb), .35)}.status__note{border-left:3px solid var(--warn);background:rgba(var(--warn-rgb), .06);color:var(--text-dim);border-radius:0 6px 6px 0;margin-top:1.2rem;padding:.9rem 1rem;font-size:.92rem}.status__note strong{color:var(--warn)}@media (max-width:640px){.status__row{grid-template-columns:auto 1fr}.status__state{grid-column:2;justify-self:start}}.skills{gap:1.2rem;display:grid}.skill-group h3{font-size:.98rem}.skill-group h3 span{color:var(--text-dim);font-size:.82rem;font-weight:400;font-family:var(--font-mono), monospace;margin-left:.6rem}.skill-tags{border-left:1px solid rgba(var(--primary-rgb), .3);flex-wrap:wrap;gap:.45rem;margin-top:.55rem;padding-left:1rem;display:flex}.skill-tag{background:rgba(var(--primary-rgb), .05);color:var(--text-dim);border:1px solid var(--line);white-space:nowrap;border-radius:4px;padding:.25rem .6rem;font-size:.8rem}.projects{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.project-card{border:1px solid var(--line);border-radius:var(--radius);color:var(--text);transition:transform .2s var(--ease-out), border-color .2s ease, box-shadow .2s ease;background:#001e2a66;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}a.project-card:hover{border-color:rgba(var(--primary-rgb), .5);color:var(--text);transform:translateY(-3px);box-shadow:0 12px 30px #00000059}.project-card__name{font-size:1.05rem;font-weight:700;font-family:var(--font-mono), monospace}.project-card__desc{color:var(--text-dim);flex:1;font-size:.9rem}.project-card__url{color:var(--primary);font-size:.84rem}.project-card__url:before{content:"↗ "}.project-card--offline{opacity:.85;border-style:dashed;border-color:#94a3b84d}.project-card--offline .project-card__url{color:var(--text-dim)}.project-card--offline .project-card__url:before{content:"⏻ "}.project-card--more{background:0 0;border-style:dashed;justify-content:center}.contacts{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;display:grid}.contact-item{border:1px solid var(--line);border-radius:var(--radius);color:var(--text);cursor:pointer;text-align:left;background:#001e2a66;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-height:56px;padding:1rem 1.15rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,background .2s,transform .15s;display:flex}.contact-item:hover{border-color:rgba(var(--primary-rgb), .5);background:rgba(var(--primary-rgb), .06);color:var(--text)}.contact-item:active{transform:scale(.99)}.contact-item__label{color:var(--text-dim);font-size:.8rem;display:block}.contact-item__value{color:var(--text);font-weight:600}.contact-item__action{color:var(--primary);white-space:nowrap;font-size:.78rem}.contact-item--copied{border-color:rgba(var(--ok-rgb), .5)}.contact-item--copied .contact-item__action{color:var(--ok)}.clients-intro{gap:1rem;display:grid}.clients-intro p{max-width:68ch;color:var(--text-dim)}.price-line{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.price-line__label{color:var(--text-dim);font-size:.9rem}.price-line__value{color:var(--primary);font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:700}.steps{counter-reset:step;list-style:none;display:grid}.step{counter-increment:step;padding:0 0 1.6rem 2.6rem;position:relative}.step:before{content:counter(step, decimal-leading-zero);color:var(--primary);font-size:.85rem;font-weight:700;font-family:var(--font-mono), monospace;position:absolute;top:.15rem;left:0}.step:after{content:"";background:rgba(var(--primary-rgb), .25);width:1px;position:absolute;top:1.6rem;bottom:.3rem;left:.65rem}.step:last-child{padding-bottom:0}.step:last-child:after{display:none}.step h3{font-size:1.05rem}.step p{color:var(--text-dim);max-width:65ch;font-size:.93rem}.payment-list{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.payment-list li{border:1px solid var(--line);color:var(--text-dim);border-radius:99px;padding:.35rem .9rem;font-size:.85rem}.disclaimer{color:var(--text-dim);white-space:pre-line;font-size:.8rem;line-height:1.7}.disclaimer:before{content:"// ";color:var(--primary)}.footer{border-top:1px solid var(--line);background:#00091199}.footer__inner{max-width:var(--content);grid-template-columns:1fr auto;gap:1.5rem;margin:0 auto;padding:2rem 1.25rem;display:grid}.footer__legal{color:var(--text-dim);justify-items:start;gap:.2rem;font-size:.82rem;display:grid}.copy-field{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.1rem 0;display:inline-flex}.copy-field__icon{color:rgba(var(--primary-rgb), .45);font-size:.9em;transition:color .2s}.copy-field:hover{color:var(--text)}.copy-field:hover .copy-field__icon{color:var(--primary)}.footer__prompt{color:var(--primary);margin-bottom:.3rem}.footer__links{align-content:start;justify-items:start;gap:.4rem;font-size:.9rem;display:grid}.footer__rights{color:var(--text-dim);border-top:1px dashed var(--line);grid-column:1/-1;padding-top:1rem;font-size:.8rem}@media (max-width:640px){.footer__inner{grid-template-columns:1fr}}.toast{background:var(--panel-solid);border:1px solid rgba(var(--primary-rgb), .4);color:var(--text);z-index:60;animation:rise .25s var(--ease-out) both;border-radius:8px;padding:.7rem 1.3rem;font-size:.88rem;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000080}.toast:before{content:"✓ ";color:var(--ok)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.hero__role:after{animation:none}}.nav__logo{letter-spacing:-.04em}.nav__link{align-items:center;min-height:40px;display:inline-flex}.nav__label-short{display:none}.panel{position:relative}.panel:after{content:"";pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px rgba(var(--primary-rgb), .08);position:absolute;inset:0}.hero__grid{gap:clamp(2.5rem,6vw,5.5rem)}.hero__kicker{justify-content:space-between;align-items:center;gap:1rem;display:flex}.availability{color:var(--text-dim);font:.72rem var(--font-mono), monospace;white-space:nowrap;align-items:center;gap:.5rem;display:inline-flex}.availability i{background:var(--ok);width:6px;height:6px;box-shadow:0 0 10px rgba(var(--ok-rgb), .7);border-radius:50%}.hero__name{letter-spacing:-.055em;font-size:clamp(2.45rem,6vw,4.5rem)}.hero__facts{border-block:1px solid var(--line-soft);grid-template-columns:repeat(3,1fr);margin-top:1.75rem;display:grid}.hero__facts div{border-right:1px solid var(--line-soft);padding:.8rem .85rem}.hero__facts div:first-child{padding-left:0}.hero__facts div:last-child{border-right:0}.hero__facts dt{color:var(--text-dim);font:.68rem var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.08em}.hero__facts dd{color:var(--text);font:500 .8rem var(--font-mono), monospace;white-space:nowrap;margin-top:.15rem}.btn:focus-visible{outline-offset:4px}.skill-tag{background:0 0}.projects{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(12,1fr);gap:0;overflow:hidden}.project-card{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#001e2a47;border-radius:0;grid-column:span 4;padding:1.5rem}.project-card:nth-child(n+4){border-bottom:0;grid-column:span 6}.project-card:nth-child(3),.project-card:last-child{border-right:0}.project-card__index{color:rgba(var(--primary-rgb), .55);font:.7rem var(--font-mono), monospace;letter-spacing:.1em}.project-card--offline{opacity:.82;border-style:solid}.contacts{border:1px solid var(--line);border-radius:var(--radius);gap:0;overflow:hidden}.contact-item{border:0;border-right:1px solid var(--line);background:#001e2a47;border-radius:0;min-height:96px;padding:1.25rem}.contact-item:last-child{border-right:0}.contact-item__meta{color:var(--text-dim);margin-top:.3rem;font-size:.72rem;font-weight:400;display:block}.service-summary{border-block:1px solid var(--line-soft);grid-template-columns:auto 1fr;align-items:end;gap:1.5rem;padding:1.25rem 0;display:grid}.service-summary__note{font-size:.82rem;line-height:1.5}.steps{grid-template-columns:repeat(2,1fr)}.step{border-bottom:1px solid var(--line-soft);padding:1.4rem 1.5rem 1.4rem 3.7rem}.step:before{top:1.55rem;left:1.25rem}.step:after{display:none}.step:nth-child(odd){border-right:1px solid var(--line-soft)}.step:nth-last-child(-n+2){border-bottom:0}@media (max-width:760px){:root{--nav-height:60px}main,.nav__inner,.footer__inner{padding-inline:.85rem}.nav__links{gap:0}.nav__link{padding-inline:.55rem}.hero__kicker{flex-direction:column;align-items:flex-start;gap:.35rem}.hero__facts{grid-template-columns:1fr}.hero__facts div,.hero__facts div:first-child{border-right:0;border-bottom:1px solid var(--line-soft);padding:.65rem 0}.hero__facts div:last-child{border-bottom:0}.hero__actions{display:grid}.btn{justify-content:center;width:100%}.projects{grid-template-columns:1fr}.project-card:nth-child(n){border-right:0;border-bottom:1px solid var(--line);grid-column:auto}.project-card:last-child{border-bottom:0}.contacts{grid-template-columns:1fr}.contact-item{border-right:0;border-bottom:1px solid var(--line)}.contact-item:last-child{border-bottom:0}.service-summary{grid-template-columns:1fr;gap:.65rem}.steps{grid-template-columns:1fr}.step:nth-child(n){border-right:0;border-bottom:1px solid var(--line-soft)}.step:last-child{border-bottom:0}}@media (max-width:430px){.nav__label-full{display:none}.nav__label-short{display:inline}.nav__logo{font-size:0}.nav__logo>span:first-child{font-size:.9rem}.nav__link{padding-inline:.48rem;font-size:.76rem}}
