@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-cyrillic-wght-normal.BfQLqnEI.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-ext-wght-normal.CsF3XSp0.woff2)format("woff2-variations");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:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-wght-normal.Cbhn5ptY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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}:root{--pix:"Pixelify Sans Variable", "Courier New", monospace;--mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--bg:#14123a;--grid:#8a6bff24;--fg:#eef0ff;--hl-orange:#ff8a3d;--hl-teal:#3de0d3;--edge:#0a0925;--ink:#1a1840;--cream:#f6ecd0}:root[data-theme=light]{--bg:#efeafc;--grid:#4b36a01f;--fg:#1a1840;--hl-orange:#b84e08;--hl-teal:#0a746e;--edge:#1a1840}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font:400 1rem/1.7 var(--mono);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:32px 32px;margin:0}:focus-visible{outline:3px solid var(--hl-orange);outline-offset:3px}.wide{max-width:72rem;margin:0 auto;padding:0 1.5rem}[id]{scroll-margin-top:5rem}.skip{background:var(--cream);color:var(--ink);z-index:100;border:3px solid var(--ink);padding:.6rem 1rem;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.site-header{z-index:50;background:var(--bg);border-bottom:3px solid var(--edge);position:sticky;top:0}.site-header .wide{justify-content:space-between;align-items:center;gap:1rem;padding-block:.7rem;display:flex}.brand{color:var(--fg);font:700 1.2rem var(--pix);align-items:center;gap:.6rem;text-decoration:none;display:flex}.brand svg{color:var(--hl-orange)}.nav{align-items:center;gap:1.1rem;display:flex}.nav a{color:var(--fg);font:500 1rem var(--pix);padding:.2rem 0;text-decoration:none}.nav a:hover{color:var(--hl-orange);text-underline-offset:6px;text-decoration:underline 3px}.header-tools{align-items:center;gap:.6rem;display:flex}.tool-btn{font:600 .9rem var(--pix);color:var(--fg);border:2px solid var(--hl-teal);cursor:pointer;background:0 0;padding:.3rem .7rem}.tool-btn:hover{background:var(--hl-teal);color:var(--ink)}.menu-btn{display:none}@media (width<=62rem){.menu-btn{display:inline-block}.nav{background:var(--bg);border-bottom:3px solid var(--edge);flex-direction:column;align-items:flex-start;gap:0;padding:.5rem 1.5rem 1rem;display:none;position:absolute;top:100%;left:0;right:0}.nav.open{display:flex}.nav a{width:100%;padding:.6rem 0;font-size:1.1rem}}.retro-scene[data-astro-cid-5ywxjsbg]{--cream:#f6ecd0;--ink:#1a1840;--violet:#4b36a0;--teal:#3de0d3;--orange:#ff8a3d;filter:drop-shadow(0 24px 30px #05051d80);width:100%;max-width:570px;margin:0 auto;padding:30px 10px 45px;animation:5s ease-in-out infinite laptop-float;position:relative}.laptop-shadow[data-astro-cid-5ywxjsbg]{filter:blur(18px);background:#050514;border-radius:50%;height:30px;position:absolute;bottom:24px;left:8%;right:8%}.laptop-screen-frame[data-astro-cid-5ywxjsbg]{border:3px solid var(--orange);z-index:2;background:linear-gradient(135deg,#fff0c9,#bba7fa 40%,#51429b);border-radius:12px 12px 5px 5px;width:76%;margin:0 auto;padding:13px 13px 16px;position:relative;transform:perspective(900px)rotateY(-4deg);box-shadow:0 0 0 2px #251b5c,0 0 20px #4b36a055,0 0 40px #3de0d322}.laptop-camera[data-astro-cid-5ywxjsbg]{background:#4b36a0;border-radius:50%;width:5px;height:5px;position:absolute;top:4px;left:50%}.laptop-screen[data-astro-cid-5ywxjsbg]{min-height:270px;color:var(--cream);background:#0b1027;border:2px solid #4b36a0;border-radius:5px;padding:10px;font-family:IBM Plex Mono,monospace;overflow:hidden}.screen-toolbar[data-astro-cid-5ywxjsbg]{border-bottom:1px solid #4b36a066;align-items:center;gap:5px;padding-bottom:9px;display:flex}.toolbar-dot[data-astro-cid-5ywxjsbg]{border-radius:50%;width:7px;height:7px}.dot-red[data-astro-cid-5ywxjsbg]{background:#ff6c79}.dot-yellow[data-astro-cid-5ywxjsbg]{background:#ffd166}.dot-green[data-astro-cid-5ywxjsbg]{background:#3de0a0}.toolbar-title[data-astro-cid-5ywxjsbg]{color:#b5acd9;margin-left:auto;font-size:9px}.screen-content[data-astro-cid-5ywxjsbg]{padding:22px 7px 12px;position:relative}.screen-heading[data-astro-cid-5ywxjsbg]{color:var(--teal);letter-spacing:2px;margin-bottom:18px;font-size:11px}.screen-code[data-astro-cid-5ywxjsbg]{z-index:1;font-size:clamp(9px,1.5vw,12px);line-height:1.9;position:relative}.screen-code[data-astro-cid-5ywxjsbg] p[data-astro-cid-5ywxjsbg]{color:#d8d2f1;margin:0}.code-green[data-astro-cid-5ywxjsbg]{color:var(--teal)}.code-active[data-astro-cid-5ywxjsbg]{color:var(--orange)!important}.code-cursor[data-astro-cid-5ywxjsbg]{animation:1s steps(2,start) infinite cursor-blink}.laptop-chart[data-astro-cid-5ywxjsbg]{opacity:.9;border-bottom:1px solid #3de0d355;border-left:1px solid #3de0d355;width:42%;height:90px;position:absolute;bottom:12px;right:4px}.chart-bars[data-astro-cid-5ywxjsbg]{justify-content:space-around;align-items:flex-end;gap:4px;height:100%;padding:0 4px;display:flex}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]{background:linear-gradient(to top, #168d95, var(--teal));flex:1;animation:2s ease-in-out infinite alternate bar-pulse;box-shadow:0 0 10px #3de0d344}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]:first-child{height:25%}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]:nth-child(2){height:45%;animation-delay:.2s}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]:nth-child(3){height:38%;animation-delay:.4s}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]:nth-child(4){height:70%;animation-delay:.6s}.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg]:nth-child(5){height:92%;animation-delay:.8s}.chart-line[data-astro-cid-5ywxjsbg]{border-top:2px solid var(--orange);opacity:.85;width:90%;height:40%;position:absolute;top:12%;left:5%;transform:skewY(-18deg)}.screen-brain[data-astro-cid-5ywxjsbg]{color:var(--teal);text-shadow:0 0 12px #3de0d3;margin-top:15px;font-size:24px;animation:3s ease-in-out infinite alternate brain-glow}.screen-footer[data-astro-cid-5ywxjsbg]{text-align:center;color:#a99ee1;letter-spacing:1px;border-top:1px solid #4b36a066;padding:8px 2px 0;font-size:8px}.laptop-hinge[data-astro-cid-5ywxjsbg]{background:linear-gradient(#7d6bc0,#302664);border:1px solid #ffcb9e;border-radius:0 0 5px 5px;width:82%;height:10px;margin:-1px auto 0}.laptop-base[data-astro-cid-5ywxjsbg]{clip-path:polygon(10% 0,90% 0,100% 88%,95% 100%,5% 100%,0 88%);background:linear-gradient(150deg,#ffe7b5,#b4a2ef 40%,#51409b);border:3px solid #4b36a0;border-top:2px solid #ffca9a;border-radius:6px 6px 24px 24px;width:100%;height:150px;margin-top:-1px;padding:15px 18px 22px;position:relative;transform:perspective(650px)rotateX(7deg)}.laptop-keyboard[data-astro-cid-5ywxjsbg]{gap:4px;width:73%;margin:0 auto;display:grid;transform:perspective(300px)rotateX(-3deg)}.keyboard-row[data-astro-cid-5ywxjsbg]{justify-content:center;gap:4px;display:flex}.keyboard-key[data-astro-cid-5ywxjsbg]{background:linear-gradient(#393078,#171539);border:1px solid #3b2c7d;border-radius:2px;flex:1;height:9px;box-shadow:0 2px #1a153e}.keyboard-row[data-astro-cid-5ywxjsbg]:last-child .keyboard-key[data-astro-cid-5ywxjsbg]:nth-child(5){flex:3}.laptop-trackpad[data-astro-cid-5ywxjsbg]{background:linear-gradient(135deg,#e4d4ff,#9585d6);border:2px solid #7766bd;border-radius:5px;width:28%;height:30px;position:absolute;bottom:16px;left:36%}.laptop-front-edge[data-astro-cid-5ywxjsbg]{background:#4b36a0;border-radius:3px;width:14%;height:3px;position:absolute;bottom:3px;left:43%}.laptop-sticker[data-astro-cid-5ywxjsbg]{z-index:3;color:var(--ink);background:var(--orange);border:2px solid var(--ink);padding:8px;font-size:9px;font-weight:800;line-height:1.4;position:absolute;bottom:15px;left:1%;transform:rotate(-8deg);box-shadow:3px 3px #1a1840}@keyframes laptop-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(.4deg)}}@keyframes cursor-blink{to{opacity:0}}@keyframes bar-pulse{0%{opacity:.65}to{opacity:1}}@keyframes brain-glow{0%{opacity:.7;text-shadow:0 0 5px #3de0d3}to{opacity:1;text-shadow:0 0 20px #3de0d3}}@media (width<=600px){.retro-scene[data-astro-cid-5ywxjsbg]{max-width:420px}.laptop-screen[data-astro-cid-5ywxjsbg]{min-height:220px}.laptop-base[data-astro-cid-5ywxjsbg]{height:125px}.laptop-trackpad[data-astro-cid-5ywxjsbg]{height:23px}}@media (prefers-reduced-motion:reduce){.retro-scene[data-astro-cid-5ywxjsbg],.chart-bars[data-astro-cid-5ywxjsbg] span[data-astro-cid-5ywxjsbg],.code-cursor[data-astro-cid-5ywxjsbg],.screen-brain[data-astro-cid-5ywxjsbg]{animation:none!important}}:root{color-scheme:dark;--hero-bg:#14123a;--hero-cream:#f6ecd0;--hero-ink:#1a1840;--hero-violet:#4b36a0;--hero-violet-deep:#2c2570;--hero-teal:#3de0d3;--hero-orange:#ff8a3d;--hero-text:var(--hero-cream);--hero-muted:#c7c1df;--hero-accent:var(--hero-orange);--hero-card-bg:#201c50;--hero-border:#51468b;--hero-grid:#3de0d312;--hero-glow:#4b36a059;--hero-shadow:#0000004d;--hero-terminal-bg:#10102c;--hero-heading-font:"Pixelify Sans", "Courier New", monospace;--hero-body-font:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--hero-container:1200px;--hero-radius:8px;--hero-header-offset:72px}[data-theme=light]{color-scheme:light;--hero-bg:#efeafc;--hero-teal:#087c76;--hero-orange:#b84e08;--hero-text:#1a1840;--hero-muted:#514a73;--hero-accent:#b84e08;--hero-card-bg:#e4dcf7;--hero-border:#b8acd9;--hero-grid:#4b36a017;--hero-glow:#4b36a02e;--hero-shadow:#1a18402e}.hero{isolation:isolate;min-height:100svh;padding:calc(var(--hero-header-offset) + 24px) 0 0;background:var(--hero-bg);color:var(--hero-text);font-family:var(--hero-body-font);flex-direction:column;justify-content:center;margin-top:-125px;transition:background-color .25s,color .25s;display:flex;position:relative;overflow:hidden}.hero *,.hero :before,.hero :after{box-sizing:border-box}.hero-grid{z-index:-3;background-image:linear-gradient(var(--hero-grid) 1px, transparent 1px), linear-gradient(90deg, var(--hero-grid) 1px, transparent 1px);pointer-events:none;background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 15% 80%,#0000);mask-image:linear-gradient(#0000,#000 15% 80%,#0000)}.hero-glow{z-index:-2;background:radial-gradient(circle, var(--hero-glow), transparent 70%);pointer-events:none;border-radius:50%;position:absolute}.hero-glow-one{aspect-ratio:1;width:min(520px,90vw);top:8%;right:-8%}.hero-glow-two{aspect-ratio:1;opacity:.6;width:min(380px,70vw);bottom:6%;left:-10%}.hero-container{width:min(var(--hero-container), calc(100% - 32px));grid-template-columns:minmax(0,1fr);align-items:center;gap:48px;margin-inline:auto;padding-block:32px 48px;display:grid}.hero-content,.hero-visual{min-width:0}.hero-status{border:1px solid var(--hero-border);background:var(--hero-card-bg);color:var(--hero-teal);letter-spacing:.04em;border-radius:999px;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:20px;padding:8px 12px;font-size:10px;font-weight:600;line-height:1.5;display:inline-flex}.status-dot{background:var(--hero-teal);width:8px;height:8px;box-shadow:0 0 10px var(--hero-teal);border-radius:50%;flex:none;animation:2s ease-in-out infinite hero-pulse}.hero-year{border-left:1px solid var(--hero-border);color:var(--hero-accent);padding-left:10px}.hero-terminal-symbol{color:var(--hero-accent);font-family:var(--hero-heading-font);margin-bottom:8px;font-size:22px;line-height:1}.hero-title{font-family:var(--hero-heading-font);letter-spacing:-.03em;text-transform:uppercase;color:var(--hero-text);overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;margin:0 0 18px;font-size:clamp(38px,11vw,80px);font-weight:700;line-height:1;display:flex}.title-line{max-width:100%;display:block}.title-highlight{max-width:100%;color:var(--hero-accent);display:inline-block;position:relative}.title-highlight:after{content:"";background:var(--hero-teal);width:64%;height:4px;margin-top:6px;display:block}.title-period{color:var(--hero-teal)}.hero-subtitle{letter-spacing:.06em;color:var(--hero-muted);align-items:center;gap:8px;margin-bottom:18px;font-size:clamp(12px,3.2vw,15px);font-weight:600;display:flex}.subtitle-hash{color:var(--hero-accent)}.terminal-line{min-height:1.8em;color:var(--hero-teal);align-items:center;gap:8px;margin-bottom:20px;font-size:clamp(13px,3.6vw,17px);font-weight:500;line-height:1.8;display:flex}.terminal-prompt{color:var(--hero-accent);flex:none}.terminal-typing{overflow-wrap:anywhere;min-width:0}.terminal-cursor{background:var(--hero-accent);flex:none;width:9px;height:1.1em;animation:1s steps(2,start) infinite hero-blink}.hero-description{max-width:56ch;color:var(--hero-muted);margin:0;font-size:13px;line-height:1.9}.hero-description strong{color:var(--hero-text);font-weight:600}.hero-actions{flex-direction:column;gap:12px;margin-top:28px;display:flex}.hero-btn{border:2px solid var(--hero-teal);border-radius:var(--hero-radius);width:100%;min-height:48px;color:var(--hero-text);font-family:var(--hero-body-font);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:10px;padding:12px 18px;font-size:12px;font-weight:600;line-height:1.4;text-decoration:none;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.hero-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.hero-btn-primary{background:var(--hero-teal);color:#1a1840}.hero-btn-primary:hover{background:var(--hero-text);border-color:var(--hero-text);color:var(--hero-bg);box-shadow:4px 4px 0 var(--hero-violet);transform:translate(-2px,-2px)}.btn-arrow{transition:transform .18s}.hero-btn-primary:hover .btn-arrow{transform:translate(3px)}.hero-btn-outline{border-color:var(--hero-border)}.hero-btn-outline:hover,.hero-btn-outline[aria-expanded=true]{border-color:var(--hero-teal);background:var(--hero-card-bg);color:var(--hero-teal)}.hero-btn-contact{border-color:var(--hero-accent);color:var(--hero-accent)}.hero-btn-contact:hover{background:var(--hero-accent);color:var(--hero-bg);box-shadow:4px 4px 0 var(--hero-violet);transform:translate(-2px,-2px)}.hero-btn:focus-visible,.cv-menu a:focus-visible{outline:3px solid var(--hero-accent);outline-offset:3px}.cv-chevron{transition:transform .18s;display:inline-block;transform:translateY(-2px)}.cv-toggle[aria-expanded=true] .cv-chevron{transform:translateY(2px)rotate(180deg)}.cv-dropdown{width:100%;position:relative}.cv-menu{z-index:20;border:2px solid var(--hero-border);border-radius:var(--hero-radius);background:var(--hero-card-bg);box-shadow:6px 6px 0 var(--hero-shadow);gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0}.cv-menu[hidden]{display:none}.cv-menu a{color:var(--hero-text);border-radius:6px;align-items:center;gap:10px;padding:11px 12px;font-size:12px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.cv-menu a:hover{background:var(--hero-violet);color:#f6ecd0}.cv-menu small{color:var(--hero-muted);margin-left:auto;font-size:10px}.cv-menu a:hover small{color:#f6ecd0}.cv-language{border:1px solid var(--hero-teal);min-width:30px;color:var(--hero-teal);border-radius:4px;place-items:center;padding:2px 6px;font-size:10px;font-weight:700;display:inline-grid}.tech-stack{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:32px;display:flex}.tech-label{color:var(--hero-muted);letter-spacing:.1em;font-size:10px;font-weight:600}.tech-icons{flex-wrap:wrap;gap:10px;display:flex}.tech-icon{border:1px solid var(--hero-border);border-radius:var(--hero-radius);background:var(--hero-card-bg);width:42px;height:42px;color:var(--hero-text);place-items:center;transition:border-color .18s,transform .18s;display:grid}.tech-icon:hover{border-color:var(--hero-teal);transform:translateY(-3px)}.tech-icon svg{width:22px;height:22px}.hero-visual{place-items:center;width:100%;max-width:560px;margin-inline:auto;padding:36px 0;display:grid;position:relative}.hero-visual>:not(.visual-orbit):not(.floating-tech):not(.spark){z-index:2;width:100%;position:relative}.visual-orbit{border:1px dashed var(--hero-border);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-one{aspect-ratio:1;opacity:.7;width:92%}.orbit-two{aspect-ratio:1;opacity:.45;width:66%}.floating-tech{z-index:3;border:1px solid var(--hero-border);border-radius:var(--hero-radius);background:var(--hero-card-bg);box-shadow:3px 3px 0 var(--hero-shadow);color:var(--hero-text);white-space:nowrap;align-items:center;gap:8px;padding:6px 10px;font-size:10px;font-weight:600;line-height:1.3;animation:6s ease-in-out infinite hero-float;display:inline-flex;position:absolute}.floating-symbol{background:var(--hero-violet);color:#f6ecd0;min-width:22px;height:22px;font-family:var(--hero-heading-font);border-radius:4px;place-items:center;padding:0 4px;font-size:12px;font-weight:700;display:grid}.floating-python{animation-delay:0s;top:2%;left:-2%}.floating-ai{animation-delay:-1.5s;top:10%;right:-2%}.floating-data{animation-delay:-3s;bottom:8%;left:-2%}.floating-database{animation-delay:-4.5s;bottom:2%;right:-2%}.floating-python .floating-symbol{background:#3776ab}.floating-ai .floating-symbol{background:var(--hero-orange-band,#f47b2a)}.floating-data .floating-symbol{background:#12857f}.spark{z-index:1;background:var(--hero-teal);width:8px;height:8px;box-shadow:0 0 14px var(--hero-teal);pointer-events:none;position:absolute}.spark-one{top:18%;left:12%}.spark-two{background:var(--hero-accent);box-shadow:0 0 14px var(--hero-accent);top:30%;right:8%}.spark-three{background:var(--hero-accent);box-shadow:0 0 14px var(--hero-accent);bottom:24%;left:6%}.spark-four{bottom:14%;right:14%}.hero .laptop-scene{--cream:var(--hero-cream);--ink:var(--hero-ink);--violet:var(--hero-violet);--teal:#3de0d3;--orange:#ff8a3d;width:100%;max-width:540px;margin-inline:auto}.hero .laptop__screen{border-color:var(--hero-ink);box-shadow:inset 0 0 0 3px #d6c8a6, 0 0 24px var(--hero-glow)}.hero .screen__content{background:var(--hero-terminal-bg);color:#3de0d3}.hero .screen__topbar{background:var(--hero-violet)}.hero .laptop__base{background:linear-gradient(180deg, var(--hero-cream), #dfd0ad);border-color:var(--hero-ink)}.hero .laptop__front{color:var(--hero-violet)}.hero .pixel{background:var(--hero-teal);box-shadow:0 0 18px var(--hero-glow)}.hero .pixel--two{background:var(--hero-accent)}.hero .scene-caption{color:var(--hero-text)}.hero-bottom-line{border-top:1px solid var(--hero-border);background:var(--hero-violet-deep);color:#f6ecd0;font-family:var(--hero-heading-font);letter-spacing:.12em;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;padding:14px 16px;font-size:clamp(12px,3.4vw,16px);display:flex}.bottom-separator{color:var(--hero-teal)}@keyframes hero-pulse{0%,to{opacity:1;box-shadow:0 0 10px var(--hero-teal)}50%{opacity:.5;box-shadow:0 0 3px var(--hero-teal)}}@keyframes hero-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (width<=479px){.floating-data,.floating-database{display:none}.floating-python{left:0}.floating-ai{right:0}}@media (width>=640px){.hero-container{width:min(var(--hero-container), calc(100% - 64px));gap:56px}.hero-status{font-size:11px}.hero-description{font-size:14px}.hero-actions{flex-flow:wrap;align-items:center}.hero-btn{width:auto;padding-inline:20px}.cv-dropdown{width:auto}.cv-menu{min-width:230px;right:auto}.floating-tech{padding:8px 12px;font-size:11px}.floating-python{left:2%}.floating-ai{right:2%}.floating-data{left:2%}.floating-database{right:2%}}@media (width>=960px){.hero{padding-top:calc(var(--hero-header-offset) + 16px)}.hero-container{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,4vw,72px);padding-block:48px 64px}.hero-title{font-size:clamp(48px,5.4vw,76px)}.hero-visual{max-width:none;margin-inline:0}}@media (width>=1280px){.hero-container{padding-block:64px 80px}.hero-description{font-size:15px}}@media (height<=520px) and (orientation:landscape){.hero{min-height:auto}}.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}@media (prefers-reduced-motion:reduce){.status-dot,.terminal-cursor,.floating-tech,.hero .laptop,.hero .pixel,.hero .screen__chart span{animation:none!important}.hero,.hero-btn,.btn-arrow,.cv-chevron,.tech-icon,.cv-menu a{transition:none}.hero-btn:hover,.tech-icon:hover{transform:none}}.showcase{--sc-bg:var(--bg,#14123a);--sc-bg-image:linear-gradient(var(--grid,#8a6bff24) 1px, transparent 1px), linear-gradient(90deg, var(--grid,#8a6bff24) 1px, transparent 1px);--sc-bg-size:40px 40px;--sc-card:#201c50;--sc-text:var(--fg,#eef0ff);--sc-line:#51468b;--sc-header:#4b36a0;--sc-header-text:var(--cream,#f6ecd0);--sc-shadow-color:#2c2570;--sc-shadow-hover-color:var(--hl-teal,#3de0d3);--sc-art-bg:var(--cream,#f6ecd0);--sc-art-line:#1a184014;--sc-orange:var(--hl-orange,#ff8a3d);--sc-marquee-text:var(--ink,#1a1840);--sc-marquee-line:var(--ink,#1a1840);--sc-marquee-duration:45s;--sc-shadow:4px;--sc-pixel-font:"Press Start 2P", "Courier New", monospace;--sc-text-font:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}[data-theme=light] .showcase{--sc-card:#e4dcf7;--sc-line:var(--edge,#1a1840);--sc-shadow-color:var(--edge,#1a1840);--sc-shadow-hover-color:var(--edge,#1a1840);--sc-orange:#f47b2a;color-scheme:light}.showcase{background-color:var(--sc-bg);background-image:var(--sc-bg-image);background-size:var(--sc-bg-size);color:var(--sc-text);font-family:var(--sc-text-font);padding-block:40px 0;transition:background-color .25s,color .25s;position:relative;overflow-x:clip}.showcase *,.showcase :before,.showcase :after{box-sizing:border-box}.sc-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}.sc-marquee-wrap{margin-top:-60px;padding-block:8px 12px}.sc-marquee{border-block:4px solid var(--sc-marquee-line);background:var(--sc-orange);overflow:hidden}.sc-track{will-change:transform;width:max-content;animation:sc-scroll var(--sc-marquee-duration) linear infinite;display:flex}.sc-group{flex:none;margin:0;padding:0;list-style:none;display:flex}.sc-item{color:var(--sc-marquee-text);font-family:var(--sc-pixel-font);text-transform:uppercase;white-space:nowrap;align-items:center;gap:1.1rem;padding:.95rem 1.1rem .95rem 0;font-size:clamp(.7rem,2.6vw,1rem);line-height:1;display:flex}.sc-star{flex:none;width:1em;height:1em}.sc-marquee:hover .sc-track,.sc-marquee:focus-within .sc-track{animation-play-state:paused}@keyframes sc-scroll{to{transform:translate(-50%)}}.sc-grid{grid-template-columns:minmax(0,1fr);gap:22px;width:min(980px,100% - 40px);margin:0 auto;padding:36px 6px 56px 0;list-style:none;display:grid}.sc-cell{min-width:0;display:flex}.sc-card{border:3px solid var(--sc-line);background:var(--sc-card);width:100%;box-shadow:var(--sc-shadow) var(--sc-shadow) 0 var(--sc-shadow-color);border-radius:8px;flex-direction:column;transition:transform .16s,box-shadow .16s,background-color .25s,border-color .25s;display:flex;overflow:hidden}.sc-card:hover{box-shadow:calc(var(--sc-shadow) + 2px) calc(var(--sc-shadow) + 3px) 0 var(--sc-shadow-hover-color);transform:translate(-2px,-3px)}.sc-card-header{border-bottom:3px solid var(--sc-line);background:var(--sc-header);min-height:2.9rem;color:var(--sc-header-text);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 8px 12px;display:flex}.sc-card-title{font-family:var(--sc-pixel-font);letter-spacing:.02em;text-transform:uppercase;overflow-wrap:anywhere;margin:0;font-size:.6rem;font-weight:400;line-height:1.6}.sc-card-icon{border:2px solid var(--sc-header-text);background:var(--icon,var(--sc-orange));flex:none;width:12px;height:12px;box-shadow:2px 2px #00000059}.sc-art{border:3px solid var(--sc-line);background-color:var(--sc-art-bg);background-image:linear-gradient(var(--sc-art-line) 1px, transparent 1px), linear-gradient(90deg, var(--sc-art-line) 1px, transparent 1px);background-size:12px 12px;border-radius:6px;place-items:center;height:118px;margin:12px 12px 0;padding:10px;display:grid}.sc-art svg{width:auto;max-width:100%;height:100%;image-rendering:pixelated;transition:filter .16s;display:block}.sc-card:hover .sc-art svg{filter:brightness(1.1)saturate(1.12)}.sc-card-text{color:var(--sc-text);flex:1;margin:0;padding:12px 14px 16px;font-size:.82rem;line-height:1.65}@media (width>=480px){.sc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media (width>=640px){.showcase{padding-top:56px}.sc-item{gap:1.4rem;padding-right:1.4rem}}@media (width>=900px){.sc-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;max-width:980px;padding-bottom:80px}.sc-item{font-size:1rem}}.sc-card:focus-within{outline:3px solid var(--sc-orange);outline-offset:4px}@media (prefers-reduced-motion:reduce){.sc-track{will-change:auto;flex-wrap:wrap;justify-content:center;width:auto;animation:none}.sc-group[aria-hidden=true]{display:none}.sc-group{flex-wrap:wrap;justify-content:center;padding-inline:12px}.showcase,.sc-card,.sc-art svg{transition:none}.sc-card:hover{transform:none}}.about{--ab-bg:var(--bg,#14123a);--ab-bg-image:linear-gradient(var(--grid,#8a6bff24) 1px, transparent 1px), linear-gradient(90deg, var(--grid,#8a6bff24) 1px, transparent 1px);--ab-bg-size:40px 40px;--ab-window:#201c50;--ab-text:var(--fg,#eef0ff);--ab-muted:#d6d0ea;--ab-line:#51468b;--ab-bar:#4b36a0;--ab-bar-text:var(--cream,#f6ecd0);--ab-shadow:#2c2570;--ab-accent:var(--hl-orange,#ff8a3d);--ab-teal:var(--hl-teal,#3de0d3);--ab-mark-bg:var(--hl-orange,#ff8a3d);--ab-mark-text:var(--ink,#1a1840);--ab-pixel-font:"Press Start 2P", "Courier New", monospace;--ab-text-font:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}[data-theme=light] .about{--ab-window:#e4dcf7;--ab-muted:#3b3665;--ab-line:var(--edge,#1a1840);--ab-shadow:var(--edge,#1a1840);--ab-accent:#f47b2a;--ab-mark-bg:#f47b2a;color-scheme:light}.about{background-color:var(--ab-bg);background-image:var(--ab-bg-image);background-size:var(--ab-bg-size);color:var(--ab-text);font-family:var(--ab-text-font);padding-block:56px 72px;transition:background-color .25s,color .25s;position:relative;overflow-x:clip}.about *,.about :before,.about :after{box-sizing:border-box}.ab-container{width:min(1100px,100% - 40px);margin-inline:auto}.ab-title{font-family:var(--ab-pixel-font);color:var(--ab-text);align-items:center;gap:.45em;margin:0 0 36px;padding-bottom:20px;font-size:clamp(1.1rem,4.5vw,1.75rem);font-weight:400;line-height:1.4;display:flex;position:relative}.ab-title:before{content:"";background:var(--ab-teal);flex:none;order:1;width:.4em;height:.4em;animation:1.8s ease-in-out infinite ab-pulse}.ab-title:after{content:"";background:linear-gradient(90deg, var(--ab-teal) 0 60%, var(--ab-accent) 60% 100%);width:clamp(8rem,28vw,16rem);height:6px;position:absolute;bottom:0;left:0}@keyframes ab-pulse{50%{opacity:.35}}.ab-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding-right:6px;display:grid}.ab-window{border:3px solid var(--ab-line);background:var(--ab-window);min-width:0;box-shadow:6px 6px 0 var(--ab-shadow);border-radius:8px;transition:background-color .25s,border-color .25s;overflow:hidden}.ab-bar{border-bottom:3px solid var(--ab-line);background:var(--ab-bar);min-height:3rem;color:var(--ab-bar-text);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px 8px 16px;display:flex}.ab-filename{font-family:var(--ab-pixel-font);letter-spacing:.04em;margin:0;font-size:.72rem;font-weight:400;line-height:1.5}.ab-close{border:2px solid var(--ab-bar-text);background:var(--ab-accent);color:#1a1840;width:22px;height:22px;font-family:var(--ab-pixel-font);text-transform:lowercase;flex:none;place-items:center;font-size:.6rem;line-height:1;display:grid;box-shadow:2px 2px #00000059}.ab-body{padding:22px 20px 26px}.ab-body p{max-width:62ch;color:var(--ab-muted);margin:0 0 18px;font-size:.95rem;line-height:1.85}.ab-body p:last-child{margin-bottom:0}.ab-body mark{background:var(--ab-mark-bg);color:var(--ab-mark-text);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:2px 6px;font-weight:600}.ab-cursor{vertical-align:text-bottom;background:var(--ab-accent);width:.55em;height:1.05em;margin-left:6px;animation:1s steps(2,start) infinite ab-blink;display:inline-block}@keyframes ab-blink{0%,49%{opacity:1}50%,to{opacity:0}}.ab-subtitle{color:var(--ab-text);font-family:var(--ab-pixel-font);margin:0 0 18px;font-size:.72rem;font-weight:400;line-height:1.8}.ab-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.ab-list li{color:var(--ab-muted);padding-left:26px;font-size:.95rem;line-height:1.6;position:relative}.ab-list li:before{content:"";background:var(--ab-accent);width:10px;height:10px;box-shadow:2px 2px 0 var(--ab-line);position:absolute;top:.4em;left:0}@media (width>=640px){.about{padding-block:72px 88px}.ab-body{padding:28px 28px 32px}.ab-body p,.ab-list li{font-size:1rem}}@media (width>=900px){.ab-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:36px}.ab-window--log{margin-top:40px}}@media (prefers-reduced-motion:reduce){.ab-cursor,.ab-title:before{animation:none}.about,.ab-window{transition:none}}.education{--ed-bg:var(--bg,#14123a);--ed-bg-image:linear-gradient(var(--grid,#8a6bff24) 1px, transparent 1px), linear-gradient(90deg, var(--grid,#8a6bff24) 1px, transparent 1px);--ed-bg-size:40px 40px;--ed-window:#201c50;--ed-text:var(--fg,#eef0ff);--ed-muted:#d6d0ea;--ed-line:#51468b;--ed-bar:#4b36a0;--ed-bar-text:var(--cream,#f6ecd0);--ed-shadow:#2c2570;--ed-tag:#2c2570;--ed-orange:var(--hl-orange,#ff8a3d);--ed-accent:var(--hl-orange,#ff8a3d);--ed-teal:var(--hl-teal,#3de0d3);--ed-paper:var(--cream,#f6ecd0);--ed-pixel-font:"Press Start 2P", "Courier New", monospace;--ed-heading-font:"Pixelify Sans", "Press Start 2P", sans-serif;--ed-text-font:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}[data-theme=light] .education{--ed-window:#e4dcf7;--ed-muted:#3b3665;--ed-line:var(--edge,#1a1840);--ed-shadow:var(--edge,#1a1840);--ed-tag:#d3c8f3;--ed-orange:#f47b2a;--ed-paper:#fffaf0;color-scheme:light}.education{background-color:var(--ed-bg);background-image:var(--ed-bg-image);background-size:var(--ed-bg-size);color:var(--ed-text);font-family:var(--ed-text-font);padding-block:56px 80px;transition:background-color .25s,color .25s;position:relative;overflow-x:clip}.education *,.education :before,.education :after{box-sizing:border-box}.ed-container{width:min(960px,100% - 40px);margin-inline:auto}.ed-title{font-family:var(--ed-pixel-font);color:var(--ed-text);align-items:center;gap:.45em;margin:0 0 40px;padding-bottom:20px;font-size:clamp(1.1rem,4.5vw,1.75rem);font-weight:400;line-height:1.4;display:flex;position:relative}.ed-title:before{content:"";background:var(--ed-teal);flex:none;order:1;width:.4em;height:.4em;animation:1.8s ease-in-out infinite ed-pulse}.ed-title:after{content:"";background:linear-gradient(90deg, var(--ed-teal) 0 60%, var(--ed-accent) 60% 100%);width:clamp(8rem,28vw,16rem);height:6px;position:absolute;bottom:0;left:0}@keyframes ed-pulse{50%{opacity:.35}}.ed-list{gap:36px;margin:0;padding:0;list-style:none;display:grid}.ed-item{padding-left:42px;padding-right:6px;position:relative}.ed-item:not(:last-child):before{content:"";background:repeating-linear-gradient(to bottom, var(--ed-line) 0 8px, transparent 8px 14px);width:4px;position:absolute;top:34px;bottom:-48px;left:9px}.ed-node{border:3px solid var(--ed-line);background:var(--ed-window);width:22px;height:22px;box-shadow:2px 2px 0 var(--ed-shadow);position:absolute;top:12px;left:0}.ed-node:after{content:"";background:var(--ed-teal);position:absolute;inset:3px}.ed-item.is-current .ed-node{background:var(--ed-orange)}.ed-item.is-current .ed-node:after{background:var(--ed-window)}.ed-window{border:3px solid var(--ed-line);background:var(--ed-window);min-width:0;box-shadow:6px 6px 0 var(--ed-shadow);border-radius:8px;transition:background-color .25s,border-color .25s;overflow:hidden}.ed-bar{border-bottom:3px solid var(--ed-line);background:var(--ed-bar);min-height:3rem;color:var(--ed-bar-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:8px 12px 8px 16px;display:flex}.ed-file{font-family:var(--ed-pixel-font);letter-spacing:.04em;font-size:.68rem;line-height:1.5}.ed-bar-right{align-items:center;gap:10px;display:flex}.ed-chip{border:2px solid var(--ed-bar-text);color:var(--ed-bar-text);font-family:var(--ed-pixel-font);text-transform:uppercase;align-items:center;gap:6px;padding:4px 8px;font-size:.5rem;line-height:1.4;display:inline-flex}.ed-chip--live{background:var(--ed-orange);color:#1a1840;border-color:#1a1840}.ed-chip--live:before{content:"";background:#1a1840;width:6px;height:6px;animation:1.2s steps(2,start) infinite ed-blink}.ed-close{border:2px solid var(--ed-bar-text);background:var(--ed-orange);color:#1a1840;width:22px;height:22px;font-family:var(--ed-pixel-font);place-items:center;font-size:.6rem;line-height:1;display:grid;box-shadow:2px 2px #00000059}@keyframes ed-blink{0%,49%{opacity:1}50%,to{opacity:.15}}.ed-body{gap:24px;padding:20px 20px 24px;display:grid}.ed-info{min-width:0}.ed-period{color:var(--ed-accent);font-family:var(--ed-pixel-font);text-transform:uppercase;margin:0 0 10px;font-size:.6rem;line-height:1.6}.ed-degree{color:var(--ed-text);font-family:var(--ed-heading-font);overflow-wrap:anywhere;margin:0 0 10px;font-size:clamp(1.2rem,3.6vw,1.6rem);font-weight:700;line-height:1.2}.ed-school{color:var(--ed-text);margin:0;font-size:.9rem;font-weight:500;line-height:1.6}.ed-summary{max-width:58ch;color:var(--ed-muted);margin:14px 0 0;font-size:.92rem;line-height:1.8}.ed-tags{flex-wrap:wrap;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:flex}.ed-tags li{border:2px solid var(--ed-line);background:var(--ed-tag);box-shadow:2px 2px 0 var(--ed-shadow);color:var(--ed-text);padding:5px 10px;font-size:.78rem;font-weight:500;line-height:1.4}.ed-diploma{justify-self:start;width:min(100%,260px);margin:0}.ed-diploma-btn{aspect-ratio:4/3;border:3px solid var(--ed-line);background:var(--ed-paper);width:100%;box-shadow:4px 4px 0 var(--ed-shadow);cursor:zoom-in;padding:8px;transition:transform .16s,box-shadow .16s;display:block;position:relative;transform:rotate(1.5deg)}.ed-diploma-btn:before{content:"";background:var(--ed-orange);opacity:.85;width:56px;height:18px;position:absolute;top:-12px;left:50%;transform:translate(-50%)rotate(-3deg)}.ed-diploma-btn:hover{box-shadow:6px 7px 0 var(--ed-shadow);transform:rotate(0)translate(-2px,-3px)}.ed-diploma-btn:focus-visible{outline:3px solid var(--ed-orange);outline-offset:4px}.ed-diploma-btn img{object-fit:contain;width:100%;height:100%;display:block}.ed-diploma figcaption{color:var(--ed-muted);font-family:var(--ed-pixel-font);text-transform:uppercase;margin-top:12px;font-size:.5rem;line-height:1.6}.ed-lightbox{border:3px solid var(--ed-line);background:var(--ed-window);max-width:min(92vw,900px);max-height:92vh;box-shadow:8px 8px 0 var(--ed-shadow);color:var(--ed-text);border-radius:8px;padding:12px}.ed-lightbox::backdrop{background:#0a0924c7}.ed-lightbox img{object-fit:contain;max-width:100%;max-height:calc(92vh - 90px);margin:10px auto 0;display:block}.ed-lightbox-close{border:2px solid var(--ed-line);background:var(--ed-orange);box-shadow:2px 2px 0 var(--ed-shadow);color:#1a1840;font-family:var(--ed-pixel-font);text-transform:uppercase;cursor:pointer;margin-left:auto;padding:8px 12px;font-size:.6rem;display:block}.ed-lightbox-close:focus-visible{outline:3px solid var(--ed-teal);outline-offset:3px}@media (width>=640px){.education{padding-block:72px 96px}.ed-item{padding-left:52px}.ed-item:not(:last-child):before{left:9px}.ed-body{padding:26px 28px 30px}.ed-school{font-size:.95rem}.ed-summary{font-size:1rem}}@media (width>=760px){.ed-window.has-image .ed-body{grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:32px}.ed-diploma{justify-self:end}}@media (prefers-reduced-motion:reduce){.ed-chip--live:before,.ed-title:before{animation:none}.education,.ed-window,.ed-diploma-btn{transition:none}.ed-diploma-btn:hover{transform:rotate(1.5deg)}}.ed-list{position:relative}.ed-node{z-index:1}.ed-list:after{content:"";z-index:0;width:4px;height:var(--spine-h,0px);background:var(--ed-teal);transform:scaleY(var(--ed-progress,0));transform-origin:top;pointer-events:none;transition:transform 90ms linear;position:absolute;top:23px;left:9px}.ed-anim .ed-item:not(.is-visible) .ed-window,.ed-anim .ed-item:not(.is-visible) .ed-node{opacity:0}.ed-anim .ed-item.is-visible .ed-node{animation:.36s steps(4,end) backwards ed-pop}.ed-anim .ed-item.is-visible .ed-window{animation:.7s steps(9,end) .15s backwards ed-boot}.ed-anim .ed-item.is-visible .ed-info>*{animation:.32s steps(4,end) backwards ed-line}.ed-anim .ed-item.is-visible .ed-info>:first-child{animation-delay:.45s}.ed-anim .ed-item.is-visible .ed-info>:nth-child(2){animation-delay:.54s}.ed-anim .ed-item.is-visible .ed-info>:nth-child(3){animation-delay:.63s}.ed-anim .ed-item.is-visible .ed-info>:nth-child(4){animation-delay:.72s}.ed-anim .ed-item.is-visible .ed-info>:nth-child(5){animation-delay:.81s}.ed-anim .ed-item.is-visible .ed-tags li{animation:.28s steps(3,end) backwards ed-chip;animation-delay:calc(.85s + var(--i,0) * 80ms)}.ed-anim .ed-item.is-visible .ed-diploma-btn{animation:.56s cubic-bezier(.2,.9,.3,1.25) .9s backwards ed-drop}@keyframes ed-pop{0%{transform:scale(0)}60%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes ed-boot{0%{clip-path:inset(-10px -10px 100%);transform:translate(-18px)}to{clip-path:inset(-10px);transform:translate(0)}}@keyframes ed-line{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes ed-chip{0%{opacity:0;transform:translateY(8px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ed-drop{0%{opacity:0;transform:translateY(-28px)rotate(10deg)}to{opacity:1;transform:translateY(0)rotate(1.5deg)}}@media (prefers-reduced-motion:reduce){.ed-list:after{transition:none;transform:scaleY(1)}}.skills{--sk-bg:var(--bg,#14123a);--sk-bg-image:linear-gradient(var(--grid,#8a6bff24) 1px, transparent 1px), linear-gradient(90deg, var(--grid,#8a6bff24) 1px, transparent 1px);--sk-bg-size:40px 40px;--sk-window:#201c50;--sk-text:var(--fg,#eef0ff);--sk-muted:#d6d0ea;--sk-line:#51468b;--sk-bar:#4b36a0;--sk-bar-text:var(--cream,#f6ecd0);--sk-shadow:#2c2570;--sk-chip:#2c2570;--sk-orange:var(--hl-orange,#ff8a3d);--sk-accent:var(--hl-orange,#ff8a3d);--sk-teal:var(--hl-teal,#3de0d3);--sk-pixel-font:"Press Start 2P", "Courier New", monospace;--sk-heading-font:"Pixelify Sans", "Press Start 2P", sans-serif;--sk-text-font:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}[data-theme=light] .skills{--sk-window:#e4dcf7;--sk-muted:#3b3665;--sk-line:var(--edge,#1a1840);--sk-shadow:var(--edge,#1a1840);--sk-chip:#f6f1ff;--sk-orange:#f47b2a;color-scheme:light}.skills{background-color:var(--sk-bg);background-image:var(--sk-bg-image);background-size:var(--sk-bg-size);color:var(--sk-text);font-family:var(--sk-text-font);padding-block:56px 80px;transition:background-color .25s,color .25s;position:relative;overflow-x:clip}.skills *,.skills :before,.skills :after{box-sizing:border-box}.sk-container{width:min(1100px,100% - 40px);margin-inline:auto}.sk-title{font-family:var(--sk-pixel-font);color:var(--sk-text);align-items:center;gap:.45em;margin:0 0 20px;padding-bottom:20px;font-size:clamp(1.1rem,4.5vw,1.75rem);font-weight:400;line-height:1.4;display:flex;position:relative}.sk-title:before{content:"";background:var(--sk-teal);flex:none;order:1;width:.4em;height:.4em;animation:1.8s ease-in-out infinite sk-pulse}.sk-title:after{content:"";background:linear-gradient(90deg, var(--sk-teal) 0 60%, var(--sk-accent) 60% 100%);width:clamp(8rem,28vw,16rem);height:6px;position:absolute;bottom:0;left:0}.sk-summary{border-left:3px solid var(--sk-accent);color:var(--sk-muted);font-family:var(--sk-pixel-font);text-transform:uppercase;margin:0 0 32px;padding-left:1rem;font-size:.6rem;line-height:1.8}@keyframes sk-pulse{50%{opacity:.35}}.sk-layout{grid-template-columns:minmax(0,1fr);gap:22px;display:grid}.sk-view{gap:28px;min-width:0;padding-right:6px;display:grid}.sk-tabs{display:none}.sk-js .sk-tabs{scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--sk-line) transparent;gap:10px;min-width:0;padding:2px 6px 12px 2px;display:flex;position:relative;overflow-x:auto}.sk-tab{scroll-snap-align:center;border:3px solid var(--sk-line);background:var(--sk-window);box-shadow:3px 3px 0 var(--sk-shadow);color:var(--sk-text);cursor:pointer;font-family:var(--sk-text-font);text-align:left;white-space:nowrap;border-radius:6px;flex:none;align-items:center;gap:10px;padding:9px 12px;font-size:.85rem;font-weight:600;line-height:1.3;transition:transform .12s,box-shadow .12s,background-color .16s;display:flex}.sk-tab:hover{box-shadow:4px 4px 0 var(--sk-shadow);transform:translate(-1px,-1px)}.sk-tab[aria-selected=true]{background:var(--sk-bar);color:var(--sk-bar-text);box-shadow:1px 1px 0 var(--sk-shadow);transform:translate(2px,2px)}.sk-tab:focus-visible{outline:3px solid var(--sk-orange);outline-offset:3px}.sk-num{border:2px solid var(--sk-line);background:var(--cat,var(--sk-orange));color:#1a1840;font-family:var(--sk-pixel-font);flex:none;padding:4px 5px;font-size:.55rem;line-height:1}.sk-label{flex:1}.sk-count{opacity:.75;font-family:var(--sk-pixel-font);margin-left:4px;font-size:.5rem;line-height:1}.sk-panel{border:3px solid var(--sk-line);background:var(--sk-window);min-width:0;box-shadow:6px 6px 0 var(--sk-shadow);border-radius:8px;transition:background-color .25s,border-color .25s;overflow:hidden}.sk-panel[hidden]{display:none}.sk-bar{border-bottom:3px solid var(--sk-line);background:var(--sk-bar);min-height:3rem;color:var(--sk-bar-text);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px 8px 16px;display:flex}.sk-file{font-family:var(--sk-pixel-font);letter-spacing:.04em;font-size:.68rem;line-height:1.5}.sk-close{border:2px solid var(--sk-bar-text);background:var(--sk-orange);color:#1a1840;width:22px;height:22px;font-family:var(--sk-pixel-font);place-items:center;font-size:.6rem;line-height:1;display:grid;box-shadow:2px 2px #00000059}.sk-body{padding:22px 20px 28px}.sk-panel-title{color:var(--sk-text);font-family:var(--sk-heading-font);overflow-wrap:anywhere;margin:0 0 8px;font-size:clamp(1.3rem,4vw,1.8rem);font-weight:700;line-height:1.2}.sk-meta{color:var(--sk-accent);font-family:var(--sk-pixel-font);text-transform:uppercase;margin:0 0 22px;font-size:.6rem;line-height:1.6}.sk-chips{flex-wrap:wrap;gap:12px 10px;margin:0;padding:0;list-style:none;display:flex}.sk-chip{border:2px solid var(--sk-line);background:var(--sk-chip);box-shadow:2px 2px 0 var(--sk-shadow);color:var(--sk-text);padding:7px 12px 7px 26px;font-size:.86rem;font-weight:500;line-height:1.4;position:relative}.sk-chip:before{content:"";background:var(--cat,var(--sk-orange));width:8px;height:8px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}@media (width>=640px){.skills{padding-block:72px 96px}.sk-body{padding:28px 28px 34px}.sk-chip{font-size:.9rem}}@media (width>=900px){.sk-js .sk-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:32px}.sk-js .sk-tabs{top:calc(var(--hero-header-offset,72px) + 16px);flex-direction:column;gap:10px;padding:2px 6px 6px 2px;position:sticky;overflow:visible}.sk-tab{white-space:normal}}.sk-js:not(.is-in) .sk-panel,.sk-js:not(.is-in) .sk-tab{opacity:0}.sk-js.is-in .sk-tab{animation:.32s steps(4,end) backwards sk-tab}.sk-js.is-in .sk-tab:first-child{animation-delay:0s}.sk-js.is-in .sk-tab:nth-child(2){animation-delay:50ms}.sk-js.is-in .sk-tab:nth-child(3){animation-delay:.1s}.sk-js.is-in .sk-tab:nth-child(4){animation-delay:.15s}.sk-js.is-in .sk-tab:nth-child(5){animation-delay:.2s}.sk-js.is-in .sk-tab:nth-child(6){animation-delay:.25s}.sk-js.is-in .sk-tab:nth-child(7){animation-delay:.3s}.sk-js.is-in .sk-tab:nth-child(8){animation-delay:.35s}.sk-js.is-in .sk-tab:nth-child(9){animation-delay:.4s}.sk-js.is-in .sk-tab:nth-child(10){animation-delay:.45s}.sk-js.is-in .sk-tab:nth-child(11){animation-delay:.5s}.sk-js.is-in .sk-panel:not([hidden]){animation:.46s steps(7,end) backwards sk-boot}.sk-js.is-in .sk-panel:not([hidden]) .sk-chip{animation:.26s steps(3,end) backwards sk-chip;animation-delay:calc(.22s + var(--i,0) * 40ms)}@keyframes sk-tab{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes sk-boot{0%{clip-path:inset(-10px -10px 100%)}to{clip-path:inset(-10px)}}@keyframes sk-chip{0%{opacity:0;transform:translateY(8px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.sk-js:not(.is-in) .sk-panel,.sk-js:not(.is-in) .sk-tab{opacity:1}.sk-js.is-in .sk-tab,.sk-js.is-in .sk-panel:not([hidden]),.sk-js.is-in .sk-panel:not([hidden]) .sk-chip,.sk-title:before{animation:none}.skills,.sk-panel,.sk-tab{transition:none}.sk-tab:hover{transform:none}}.pj-section{background:var(--bg);color:var(--fg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;padding:clamp(3rem,8vw,6rem) 1.25rem;scroll-margin-top:5rem}.pj-wrap{max-width:1200px;margin:0 auto}.pj-head{flex-direction:column;margin-bottom:2rem;display:flex}.pj-head h2{font-family:var(--font-display,inherit);letter-spacing:.01em;margin:0;font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.05}.pj-head h2:after{content:"";background:var(--hl-teal);width:.4em;height:.4em;margin-left:.3em;animation:1.8s ease-in-out infinite pj-pulse;display:inline-block}.pj-head:after{content:"";background:linear-gradient(90deg, var(--hl-teal) 0 60%, var(--hl-orange) 60% 100%);order:1;width:clamp(8rem,28vw,16rem);height:6px;margin:.9rem 0 1.25rem}.pj-head p{border-left:3px solid var(--hl-orange);opacity:.88;order:2;max-width:62ch;margin:0;padding-left:1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.7}@keyframes pj-pulse{50%{opacity:.35}}.pj-filters{flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;display:flex}.pj-chip{font:inherit;color:var(--fg);border:2px solid var(--edge);cursor:pointer;background:0 0;padding:.45rem .9rem;font-size:.85rem;transition:border-color .15s,color .15s}.pj-chip:hover{border-color:var(--hl-teal);color:var(--hl-teal)}.pj-chip[aria-pressed=true]{border-color:var(--hl-orange);color:var(--hl-orange);box-shadow:3px 3px 0 var(--hl-orange)}.pj-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:1.5rem;display:grid}.pj-card{background:var(--bg);border:2px solid var(--edge);box-shadow:5px 5px 0 var(--edge);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.pj-card[hidden]{display:none}.pj-card:hover,.pj-card:focus-within{border-color:var(--hl-teal);box-shadow:7px 7px 0 var(--hl-teal);transform:translate(-2px,-2px)}.pj-media{aspect-ratio:16/10;border-bottom:2px solid var(--edge);background:var(--ink);position:relative;overflow:hidden}.pj-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.pj-card:hover .pj-media img{transform:scale(1.04)}.pj-placeholder{width:100%;height:100%;color:var(--cream);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:24px 24px;place-content:center;justify-items:center;gap:.4rem;display:grid}.pj-ph-mark{font-family:var(--font-display,inherit);color:var(--hl-teal);font-size:2.6rem}.pj-ph-note{opacity:.7;font-size:.75rem}.pj-cat{background:var(--ink);color:var(--cream);border:2px solid var(--hl-orange);padding:.25rem .55rem;font-size:.75rem;position:absolute;top:.75rem;left:.75rem}.pj-body{flex-direction:column;flex:1;gap:.75rem;padding:1.1rem 1.1rem 1.25rem;display:flex}.pj-title{margin:0;font-size:1.1rem;line-height:1.3}.pj-summary{opacity:.85;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.pj-tags,.pj-m-tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.pj-tags li,.pj-m-tags li{color:var(--hl-teal);border:1px solid var(--hl-teal);padding:.2rem .5rem;font-size:.72rem}.pj-tags .pj-more{color:var(--fg);border-color:var(--edge)}.pj-actions{flex-wrap:wrap;gap:.6rem;margin-top:auto;padding-top:.5rem;display:flex}.pj-btn{font:inherit;cursor:pointer;border:2px solid var(--hl-orange);padding:.55rem 1rem;font-size:.85rem;text-decoration:none;transition:transform .15s,background .15s,color .15s}.pj-btn-primary{background:var(--hl-orange);color:var(--bg);font-weight:700}.pj-btn-primary:hover{box-shadow:3px 3px 0 var(--edge);transform:translate(-1px,-1px)}.pj-btn-ghost{color:var(--hl-teal);border-color:var(--hl-teal);background:0 0}.pj-btn-ghost:hover{background:var(--hl-teal);color:var(--bg)}.pj-chip:focus-visible,.pj-btn:focus-visible,.pj-m-close:focus-visible,.pj-thumb:focus-visible{outline:3px solid var(--hl-teal);outline-offset:3px}body.pj-lock{overflow:hidden}.pj-modal{border:2px solid var(--edge);background:var(--bg);color:var(--fg);width:min(1000px,100% - 1.5rem);max-height:calc(100dvh - 1.5rem);box-shadow:8px 8px 0 var(--hl-orange);padding:0;overflow:hidden}.pj-modal::backdrop{background:color-mix(in srgb, var(--edge) 80%, transparent);backdrop-filter:blur(2px)}.pj-modal[open]{animation:.22s ease-out pj-in}@keyframes pj-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.pj-m-panel{background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:40px 40px;grid-template-columns:1fr;max-height:calc(100dvh - 1.5rem);display:grid;position:relative;overflow-y:auto}.pj-m-close{z-index:2;cursor:pointer;width:2.4rem;height:2.4rem;color:var(--cream);background:var(--ink);border:2px solid var(--hl-orange);justify-self:end;margin:.6rem .6rem -2.6rem 0;font-size:1.5rem;line-height:1;position:sticky;top:.6rem}.pj-m-close:hover{background:var(--hl-orange);color:var(--bg)}.pj-m-stage{aspect-ratio:16/10;background:var(--ink);border-bottom:2px solid var(--edge);overflow:hidden}.pj-m-stage img{object-fit:cover;width:100%;height:100%;display:block}.pj-m-thumbs{flex-wrap:wrap;gap:.5rem;padding:.6rem 1.25rem 0;display:flex}.pj-m-thumbs:empty{display:none}.pj-thumb{aspect-ratio:16/10;border:2px solid var(--edge);background:var(--ink);cursor:pointer;opacity:.75;width:84px;padding:0}.pj-thumb img{object-fit:cover;width:100%;height:100%;display:block}.pj-thumb[aria-current=true]{border-color:var(--hl-orange);opacity:1}.pj-m-content{gap:1.1rem;padding:1.25rem;display:grid}.pj-m-cat{color:var(--hl-teal);margin:0;font-size:.8rem}.pj-m-title{font-family:var(--font-display,inherit);margin:0;font-size:clamp(1.3rem,3.5vw,1.9rem);line-height:1.2}.pj-m-sections{gap:1.1rem;display:grid}.pj-m-sec h4{color:var(--hl-orange);margin:0 0 .4rem;font-size:.95rem}.pj-m-sec p,.pj-m-sec li{margin:0;font-size:.92rem;line-height:1.65}.pj-m-sec ul{gap:.3rem;margin:0;padding-left:1.1rem;display:grid}.pj-m-links{flex-wrap:wrap;gap:.6rem;display:flex}@media (width>=860px){.pj-m-panel{grid-template-columns:1.1fr 1fr;align-items:start}.pj-m-gallery{position:sticky;top:0}.pj-m-close{grid-area:1/2;margin-bottom:-2.6rem}.pj-m-gallery{grid-area:1/1/span 2}.pj-m-content{grid-area:2/2;padding-top:2.5rem}.pj-m-stage{border-bottom:0;border-right:2px solid var(--edge);aspect-ratio:4/3}}@media (prefers-reduced-motion:reduce){.pj-card,.pj-media img,.pj-btn,.pj-chip{transition:none}.pj-card:hover,.pj-card:focus-within,.pj-card:hover .pj-media img{transform:none}.pj-modal[open],.pj-head h2:after{animation:none}}.xp-section{background:var(--bg);color:var(--fg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;padding:clamp(3rem,8vw,5.5rem) 1.25rem;scroll-margin-top:5rem}.xp-wrap{max-width:1200px;margin:0 auto}.xp-head{flex-direction:column;margin-bottom:2.25rem;display:flex}.xp-head h2{font-family:var(--font-display,inherit);letter-spacing:.01em;margin:0;font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.05}.xp-head h2:after{content:"";background:var(--hl-teal);width:.4em;height:.4em;margin-left:.3em;animation:1.8s ease-in-out infinite xp-pulse;display:inline-block}.xp-head:after{content:"";background:linear-gradient(90deg, var(--hl-teal) 0 60%, var(--hl-orange) 60% 100%);order:1;width:clamp(8rem,28vw,16rem);height:6px;margin:.9rem 0 1.25rem}.xp-head p{border-left:3px solid var(--hl-orange);opacity:.88;order:2;max-width:62ch;margin:0;padding-left:1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.7}.xp-card{background:var(--bg);border:2px solid var(--edge);box-shadow:6px 6px 0 var(--hl-teal);gap:1.1rem;padding:clamp(1.25rem,4vw,2.25rem);display:grid}.xp-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.xp-icon{width:3.2rem;height:3.2rem;color:var(--hl-orange);border:2px solid var(--hl-orange);background:var(--bg);place-items:center;display:grid}.xp-status{color:var(--hl-teal);border:1px solid var(--hl-teal);align-items:center;gap:.5rem;padding:.3rem .6rem;font-size:.8rem;display:inline-flex}.xp-dot{background:var(--hl-teal);width:.55rem;height:.55rem;animation:1.8s ease-in-out infinite xp-pulse}.xp-title{font-family:var(--font-display,inherit);margin:0;font-size:clamp(1.3rem,3.6vw,2rem);line-height:1.2}.xp-dots:after{content:"";animation:1.6s steps(4,end) infinite xp-dots}.xp-msg{opacity:.88;max-width:60ch;margin:0;line-height:1.65}.xp-track{margin:.6rem 0 .2rem;padding-top:.3rem;position:relative}.xp-bar{background:var(--grid);border:1px solid var(--edge);height:4px;position:absolute;top:.75rem;left:.55rem;right:.55rem}.xp-fill{background:var(--hl-teal);width:0;height:100%;animation:2.2s ease-out .3s forwards xp-fill}.xp-stages{justify-content:space-between;margin:0;padding:0;list-style:none;display:flex;position:relative}.xp-stage{justify-items:center;gap:.55rem;font-size:.8rem;display:grid}.xp-node{background:var(--hl-teal);border:2px solid var(--edge);width:1.1rem;height:1.1rem}.xp-stage.is-next .xp-node{background:var(--bg);border-color:var(--hl-orange);animation:1.8s ease-in-out infinite xp-pulse}.xp-stage.is-next .xp-label{color:var(--hl-orange)}.xp-actions{flex-wrap:wrap;gap:.75rem;padding-top:.6rem;display:flex}.xp-btn{font:inherit;border:2px solid var(--hl-orange);padding:.65rem 1.2rem;font-size:.9rem;text-decoration:none;transition:transform .15s,background .15s,color .15s,box-shadow .15s}.xp-btn-primary{background:var(--hl-orange);color:var(--bg);font-weight:700}.xp-btn-primary:hover{box-shadow:3px 3px 0 var(--edge);transform:translate(-1px,-1px)}.xp-btn-ghost{color:var(--hl-teal);border-color:var(--hl-teal);background:0 0}.xp-btn-ghost:hover{background:var(--hl-teal);color:var(--bg)}.xp-btn:focus-visible{outline:3px solid var(--hl-teal);outline-offset:3px}@keyframes xp-fill{to{width:78%}}@keyframes xp-pulse{50%{opacity:.35}}@keyframes xp-dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}@media (width<=480px){.xp-btn{text-align:center;flex:100%}}@media (prefers-reduced-motion:reduce){.xp-fill{width:78%;animation:none}.xp-dot,.xp-stage.is-next .xp-node,.xp-head h2:after{animation:none}.xp-dots:after{content:"...";animation:none}.xp-btn{transition:none}}.in-section{background:var(--bg);color:var(--fg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;padding:clamp(3rem,8vw,6rem) 1.25rem;scroll-margin-top:5rem}.in-wrap{max-width:1200px;margin:0 auto}.in-head{flex-direction:column;margin-bottom:2rem;display:flex}.in-head h2{font-family:var(--font-display,inherit);letter-spacing:.01em;margin:0;font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.05}.in-head h2:after{content:"";background:var(--hl-teal);width:.4em;height:.4em;margin-left:.3em;animation:1.8s ease-in-out infinite in-pulse;display:inline-block}.in-head:after{content:"";background:linear-gradient(90deg, var(--hl-teal) 0 60%, var(--hl-orange) 60% 100%);order:1;width:clamp(8rem,28vw,16rem);height:6px;margin:.9rem 0 1.25rem}.in-head p{border-left:3px solid var(--hl-orange);opacity:.88;order:2;max-width:62ch;margin:0;padding-left:1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.7}@keyframes in-pulse{50%{opacity:.35}}.in-filters{flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;display:flex}.in-chip{font:inherit;color:var(--fg);border:2px solid var(--edge);cursor:pointer;background:0 0;padding:.45rem .9rem;font-size:.85rem;transition:border-color .15s,color .15s}.in-chip:hover{border-color:var(--hl-teal);color:var(--hl-teal)}.in-chip[aria-pressed=true]{border-color:var(--hl-orange);color:var(--hl-orange);box-shadow:3px 3px 0 var(--hl-orange)}.in-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.in-card{background:var(--bg);border:2px solid var(--edge);box-shadow:5px 5px 0 var(--edge);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative}.in-card[hidden]{display:none}.in-card:hover,.in-card:focus-within{border-color:var(--hl-teal);box-shadow:7px 7px 0 var(--hl-teal);transform:translate(-2px,-2px)}.in-media{aspect-ratio:16/10;background:var(--ink);border-bottom:2px solid var(--edge);overflow:hidden}.in-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.in-card:hover .in-media img{transform:scale(1.04)}.in-ph{text-align:center;height:100%;color:var(--hl-teal);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:24px 24px;place-items:center;padding:1rem;font-size:.85rem;display:grid}.in-body{flex-direction:column;flex:1;gap:.7rem;padding:1.1rem 1.1rem 1.25rem;display:flex}.in-cat{color:var(--hl-teal);border:1px solid var(--hl-teal);align-self:flex-start;padding:.2rem .5rem;font-size:.72rem}.in-title{margin:0;font-size:1.1rem;line-height:1.3}.in-desc{opacity:.85;margin:0;font-size:.9rem;line-height:1.6}.in-meta{opacity:.75;gap:.5rem;margin:0;font-size:.78rem;display:flex}.in-link{align-self:flex-start;margin-top:auto}.in-link:after{content:"";position:absolute;inset:0}.in-btn{font:inherit;cursor:pointer;border:2px solid var(--hl-orange);padding:.55rem 1rem;font-size:.85rem;text-decoration:none;transition:transform .15s,background .15s,color .15s;display:inline-block}.in-btn-primary{background:var(--hl-orange);color:var(--bg);font-weight:700}.in-btn-ghost{color:var(--hl-teal);border-color:var(--hl-teal);background:0 0}.in-btn-ghost:hover{background:var(--hl-teal);color:var(--bg)}.in-btn:focus-visible,.in-chip:focus-visible{outline:3px solid var(--hl-teal);outline-offset:3px}.in-empty{border:2px dashed var(--edge);justify-items:start;gap:.8rem;max-width:640px;padding:clamp(1.5rem,5vw,2.5rem);display:grid}.in-empty p{opacity:.88;margin:0;line-height:1.6}.in-empty-title{font-family:var(--font-display,inherit);font-size:1.4rem;opacity:1!important}.in-cursor{color:var(--hl-orange);animation:1s steps(2,end) infinite in-blink}@keyframes in-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.in-card,.in-media img,.in-btn,.in-chip{transition:none}.in-card:hover,.in-card:focus-within,.in-card:hover .in-media img{transform:none}.in-cursor,.in-head h2:after{animation:none}}.ct-section{background:var(--bg);color:var(--fg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;padding:clamp(3rem,8vw,6rem) 1.25rem;scroll-margin-top:5rem}.ct-wrap{max-width:1200px;margin:0 auto}.ct-head{flex-direction:column;margin-bottom:2rem;display:flex}.ct-head h2{font-family:var(--font-display,inherit);letter-spacing:.01em;margin:0;font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.05}.ct-head h2:after{content:"";background:var(--hl-teal);width:.4em;height:.4em;margin-left:.3em;animation:1.8s ease-in-out infinite ct-pulse;display:inline-block}.ct-head:after{content:"";background:linear-gradient(90deg, var(--hl-teal) 0 60%, var(--hl-orange) 60% 100%);order:1;width:clamp(8rem,28vw,16rem);height:6px;margin:.9rem 0 1.25rem}.ct-head p{border-left:3px solid var(--hl-orange);opacity:.88;order:2;max-width:64ch;margin:0;padding-left:1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.7}@keyframes ct-pulse{50%{opacity:.35}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ct-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:1.5rem;display:grid}.ct-card{background:var(--bg);border:2px solid var(--edge);box-shadow:5px 5px 0 var(--edge);align-content:start;gap:1rem;padding:1.4rem;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid}.ct-card:hover,.ct-card:focus-within{border-color:var(--hl-teal);box-shadow:7px 7px 0 var(--hl-teal);transform:translate(-2px,-2px)}.ct-card-head{align-items:center;gap:.8rem;display:flex}.ct-card-head h3{margin:0;font-size:1.05rem}.ct-icon{width:2.8rem;height:2.8rem;color:var(--hl-orange);border:2px solid var(--hl-orange);place-items:center;display:grid}.ct-value{word-break:break-all;user-select:all;margin:0;font-size:1.05rem}.ct-unset{opacity:.6;user-select:none;font-style:italic}.ct-actions{flex-wrap:wrap;gap:.6rem;display:flex}.ct-btn{min-height:44px;font:inherit;cursor:pointer;border:2px solid var(--hl-orange);align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.88rem;text-decoration:none;transition:transform .15s,background .15s,color .15s,box-shadow .15s;display:inline-flex}.ct-btn-primary{background:var(--hl-orange);color:var(--bg);font-weight:700}.ct-btn-primary:hover{box-shadow:3px 3px 0 var(--edge);transform:translate(-1px,-1px)}.ct-btn-primary.is-done{background:var(--hl-teal);border-color:var(--hl-teal)}.ct-btn-ghost{color:var(--hl-teal);border-color:var(--hl-teal);background:0 0}.ct-btn-ghost:hover{background:var(--hl-teal);color:var(--bg)}.ct-btn:focus-visible,.ct-soc:focus-visible{outline:3px solid var(--hl-teal);outline-offset:3px}.ct-status{min-height:1.6rem;color:var(--hl-teal);margin:1rem 0 0;font-size:.9rem}.ct-sub{font-family:var(--font-display,inherit);margin:1.5rem 0 1rem;font-size:1.3rem}.ct-social{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.ct-soc{min-height:64px;color:var(--fg);background:var(--bg);border:2px solid var(--edge);flex-wrap:wrap;align-items:center;gap:.8rem;padding:.9rem 1.1rem;text-decoration:none;transition:transform .2s,border-color .2s,color .2s;display:flex}a.ct-soc:hover{border-color:var(--hl-orange);color:var(--hl-orange);box-shadow:4px 4px 0 var(--hl-orange);transform:translate(-2px,-2px)}.ct-soc-off{opacity:.65;border-style:dashed}.ct-soc-label{font-weight:700}.ct-soc-note{width:100%;margin-top:-.5rem;padding-left:calc(26px + .8rem);font-size:.72rem}@media (prefers-reduced-motion:reduce){.ct-card,.ct-btn,.ct-soc{transition:none}.ct-card:hover,.ct-card:focus-within,a.ct-soc:hover,.ct-btn-primary:hover{transform:none}.ct-head h2:after{animation:none}}.ft{background:var(--bg);color:var(--fg);border-top:2px solid var(--edge);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:48px 48px;padding:clamp(2.5rem,6vw,4rem) 1.25rem 1.5rem}.ft-wrap{max-width:1200px;margin:0 auto}.ft-grid{grid-template-columns:1fr;gap:2.25rem;display:grid}@media (width>=720px){.ft-grid{grid-template-columns:1.6fr 1fr 1fr;gap:3rem}}.ft h2{font-family:var(--font-display,inherit);color:var(--hl-orange);margin:0 0 1rem;font-size:1rem}.ft-name{color:var(--fg);font-family:var(--font-display,inherit);align-items:center;gap:.7rem;font-size:1.25rem;text-decoration:none;display:inline-flex}.ft-name:hover{color:var(--hl-teal)}.ft-mark{grid-template-columns:repeat(2,.55rem);gap:2px;display:grid}.ft-mark i{background:var(--hl-orange);width:.55rem;height:.55rem}.ft-mark i:nth-child(2),.ft-mark i:nth-child(3){background:var(--hl-teal)}.ft-brand p{opacity:.85;max-width:46ch;margin:.9rem 0 1rem;font-size:.9rem;line-height:1.65}.ft-accent{background:var(--hl-teal);width:4.5rem;height:4px;box-shadow:4.5rem 0 0 var(--hl-orange);margin-right:4.5rem;display:block}.ft ul{margin:0;padding:0;list-style:none}.ft-nav ul{grid-template-columns:repeat(2,auto);justify-content:start;gap:.35rem 2rem;display:grid}.ft-nav a{color:var(--fg);border-bottom:2px solid #0000;padding:.25rem 0;font-size:.9rem;text-decoration:none;transition:color .15s,border-color .15s;display:inline-block}.ft-nav a:hover{color:var(--hl-teal);border-color:var(--hl-teal)}.ft-icons{flex-wrap:wrap;gap:.7rem;display:flex}.ft-icons a{width:44px;height:44px;color:var(--fg);border:2px solid var(--edge);place-items:center;transition:transform .15s,color .15s,border-color .15s,box-shadow .15s;display:grid}.ft-icons a:hover{color:var(--hl-orange);border-color:var(--hl-orange);box-shadow:3px 3px 0 var(--hl-orange);transform:translate(-2px,-2px)}.ft a:focus-visible,.ft-top:focus-visible{outline:3px solid var(--hl-teal);outline-offset:3px}.ft-bottom{border-top:2px solid var(--edge);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:2.5rem;padding-top:1.1rem;display:flex}.ft-bottom p{opacity:.8;margin:0;font-size:.8rem}.ft-care{color:var(--hl-teal);margin-left:.4rem}.ft-top{min-height:44px;font:inherit;cursor:pointer;color:var(--hl-teal);border:2px solid var(--hl-teal);background:0 0;align-items:center;gap:.45rem;padding:.4rem .9rem;font-size:.8rem;transition:background .15s,color .15s;display:inline-flex}.ft-top:hover{background:var(--hl-teal);color:var(--bg)}@media (prefers-reduced-motion:reduce){.ft-nav a,.ft-icons a,.ft-top{transition:none}.ft-icons a:hover{transform:none}}
