@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.cfdd66c2.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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.p.c30238d4.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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.4564287c.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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_e5349e44-module__2w4zKG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_e5349e44-module__2w4zKG__variable{--font-sans:"Space Grotesk","Space Grotesk Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.p.cb53f04b.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.6b5ea6af.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.p.e6cd1753.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.140490a3.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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.b36ae37c.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.bf5f8a12.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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.p.10086973.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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.2902b61f.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 Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_60f45d09-module__PXvaZW__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_60f45d09-module__PXvaZW__variable{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
:root{--accent:#c8ef5b;--accent-ink:#15190e;--radius-panel:18px;--radius-control:999px;--container:1360px;--nav-height:68px;--z-canvas:0;--z-content:2;--z-nav:40;--z-overlay:80;--z-progress:100}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0f0e;--page-soft:#111411;--surface:#151916;--surface-strong:#1b201c;--surface-glass:#141815c2;--text:#f1f4ed;--text-soft:#bac1b6;--text-muted:#8b9488;--line:#e9f1e524;--line-strong:#e9f1e53d;--shadow:0 24px 70px #04070561;--path-stroke:#e2ebe0b8;--grid-line:#e2ebe02e;--grid-accent:#c8ef5bdb}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f1f3ee;--page-soft:#e9ece5;--surface:#f8faf5;--surface-strong:#fff;--surface-glass:#f4f7f0c7;--text:#151914;--text-soft:#454e43;--text-muted:#626d60;--line:#12191221;--line-strong:#12191238;--shadow:0 24px 70px #2f392c24;--path-stroke:#17201794;--grid-line:#1720172e;--grid-accent:#6a8426d6}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--accent)var(--page);scrollbar-width:thin}body{background:var(--page);color:var(--text);font-family:var(--font-sans),"Arial",sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}body:before{z-index:var(--z-overlay);content:"";opacity:.025;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button{color:inherit;font:inherit;border:0}img,video,canvas{max-width:100%;display:block}ul,p,h1,h2,h3,figure{margin:0}ul{padding:0;list-style:none}h1,h2,h3,strong{text-wrap:balance}h1,h2,h3{letter-spacing:-.025em;line-height:1.16}h1{letter-spacing:-.03em;max-width:100%;font-size:clamp(2.05rem,3.4vw,3.25rem);font-weight:650}h2{letter-spacing:-.025em;max-width:100%;font-size:clamp(1.75rem,2.8vw,2.65rem);font-weight:630}h3{font-size:clamp(1.2rem,1.6vw,1.65rem);font-weight:620}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip-link{z-index:calc(var(--z-progress) + 1);border-radius:var(--radius-control);background:var(--accent);color:var(--accent-ink);padding:10px 16px;font-weight:650;transition:transform .18s ease-out;position:fixed;top:14px;left:14px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.scroll-progress{z-index:var(--z-progress);background:var(--accent);transform-origin:0;height:3px;position:fixed;top:0;left:0;right:0}.section-shell{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.section-block{scroll-margin-top:calc(var(--nav-height) + 20px);padding-block:clamp(44px,5.5vw,76px);position:relative}.section-heading{gap:16px;max-width:760px;margin-bottom:clamp(24px,3.2vw,42px);display:grid}.section-heading>p:not(.eyebrow){max-width:58ch;color:var(--text-soft);font-size:clamp(1.05rem,1.4vw,1.2rem)}.eyebrow{color:var(--text-soft);font-family:var(--font-mono),monospace;letter-spacing:.13em;text-transform:uppercase;font-size:.74rem;font-weight:600;line-height:1.4}.site-header{z-index:var(--z-nav);height:var(--nav-height);pointer-events:none;position:fixed;top:14px;left:0;right:0}.nav-shell{width:min(100% - 28px,1320px);height:var(--nav-height);border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-glass);box-shadow:inset 0 1px 0 #ffffff1a,var(--shadow);-webkit-backdrop-filter:blur(22px)saturate(135%);pointer-events:auto;justify-content:space-between;align-items:center;margin-inline:auto;padding:8px 10px 8px 12px;display:flex}.brand{align-items:center;gap:11px;min-height:48px;padding-right:8px;display:inline-flex}.brand-mark{background:var(--accent);width:44px;height:44px;color:var(--accent-ink);font-family:var(--font-mono),monospace;border-radius:50%;flex:0 0 44px;place-items:center;font-size:.77rem;font-weight:600;display:grid}.brand-copy{line-height:1.05;display:grid}.brand-copy strong{letter-spacing:-.02em;font-size:.92rem}.brand-copy small{color:var(--text-muted);font-family:var(--font-mono),monospace;margin-top:4px;font-size:.62rem}.desktop-nav{white-space:nowrap;align-items:center;gap:clamp(14px,2vw,30px);display:flex}.desktop-nav a{min-height:44px;color:var(--text-soft);align-items:center;font-size:.88rem;font-weight:540;transition:color .18s ease-out;display:inline-flex;position:relative}.desktop-nav a:after{background:var(--accent);content:"";transform-origin:0;height:1px;transition:transform .22s ease-out;position:absolute;bottom:7px;left:0;right:0;transform:scaleX(0)}.nav-actions,.language-switch{align-items:center;display:flex}.nav-actions{gap:8px}.language-switch{border:1px solid var(--line);border-radius:var(--radius-control);min-height:44px;padding:3px}.language-switch button{border-radius:var(--radius-control);min-width:40px;min-height:36px;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono),monospace;background:0 0;font-size:.68rem;font-weight:600;transition:background-color .18s ease-out,color .18s ease-out}.language-switch button.is-active{background:var(--text);color:var(--page)}.icon-button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:46px;height:46px;transition:border-color .18s ease-out,background-color .18s ease-out,transform .18s ease-out;display:grid}.mobile-menu-button{display:none}.mobile-menu{z-index:calc(var(--z-nav) - 1);background:color-mix(in srgb,var(--page)94%,transparent);-webkit-backdrop-filter:blur(20px);align-items:center;padding:112px 24px 42px;display:grid;position:fixed;inset:0}.mobile-menu nav{gap:4px;display:grid}.mobile-menu a{border-bottom:1px solid var(--line);letter-spacing:-.045em;align-items:center;min-height:68px;font-size:clamp(2rem,10vw,3.5rem);font-weight:600;display:flex}.hero-section:before{z-index:var(--z-canvas);background:radial-gradient(circle at 80% 30%,#c8ef5b12,transparent 34%),linear-gradient(180deg,color-mix(in srgb,var(--page-soft)70%,transparent),transparent 58%);content:"";pointer-events:none;position:absolute;inset:0}.hero-shell{z-index:var(--z-content);grid-template-columns:minmax(0,.95fr) minmax(460px,1.05fr);align-items:center;gap:clamp(32px,4.5vw,68px);min-height:100dvh;padding-top:96px;padding-bottom:28px;display:grid;position:relative}.hero-copy{gap:22px;max-width:620px;display:grid}.hero-body{max-width:50ch;color:var(--text-soft);font-size:clamp(.92rem,1.08vw,1.04rem);line-height:1.62}.hero-actions,.project-links{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button{border-radius:var(--radius-control);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font-size:.93rem;font-weight:650;line-height:1;transition:border-color .18s ease-out,background-color .18s ease-out,color .18s ease-out;display:inline-flex;position:relative}.button-primary{border:1px solid color-mix(in srgb,var(--accent)78%,var(--text));background:radial-gradient(circle at 20% 0%,#ffffff7a,transparent 42%),var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px #ffffff7a,0 14px 34px #70872a2e}.liquid-button:after{border-radius:inherit;content:"";pointer-events:none;border:1px solid #ffffff3d;position:absolute;inset:2px}.button-secondary{border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface)68%,transparent);color:var(--text);box-shadow:inset 0 1px #ffffff0f}.about-section{background:var(--page-soft)}.about-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(32px,5vw,72px) 24px;display:grid}.about-heading{grid-column:1/span 7}.about-copy{color:var(--text-soft);grid-column:8/-1;align-content:start;gap:28px;padding-top:10px;display:grid}.about-lead{color:var(--text);font-size:clamp(1.08rem,1.45vw,1.32rem);line-height:1.52}.about-copy p:not(.about-lead){max-width:59ch;font-size:.95rem;line-height:1.62}.about-facts{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.fact{border:1px solid var(--line);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface)75%,transparent);align-content:end;gap:7px;min-height:190px;padding:24px;display:grid}.fact svg{color:var(--accent);margin-bottom:auto}.education-logo{object-fit:contain;width:58px;height:58px;filter:drop-shadow(0 10px 18px color-mix(in srgb,var(--page)46%,transparent));margin-bottom:auto}.fact strong{letter-spacing:-.025em;font-size:1.15rem}.fact small,.fact-label,.fact>span:last-child{color:var(--text-muted)}.project-heading,.compact-heading{margin-left:clamp(0px,8vw,116px)}.project-media{background:radial-gradient(circle at 50% 35%,#c8ef5b17,#0000 40%),#101310;width:100%;height:100%;position:relative;overflow:hidden}:root[data-theme=light] .project-media{background:radial-gradient(circle at 50% 35%,#8aa9371f,#0000 40%),#e5e9e1}.project-media img{object-fit:cover;transition:opacity .22s ease-out}.project-media-contain img{object-fit:contain;padding:clamp(18px,4vw,46px)}.project-media[data-status=loading] img{opacity:0}.media-skeleton{z-index:2;background:linear-gradient(105deg,transparent 35%,color-mix(in srgb,var(--text)8%,transparent)48%,transparent 62%);background-size:220% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0}.media-error{height:100%;color:var(--text-soft);place-content:center;justify-items:center;gap:12px;display:grid}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}.project-category{color:var(--accent);font-family:var(--font-mono),monospace;letter-spacing:.04em;font-size:.76rem;font-weight:600}.project-description{max-width:52ch;color:var(--text-soft);font-size:1.05rem}.tech-list{flex-wrap:wrap;gap:7px;display:flex}.tech-list li{border:1px solid var(--line);border-radius:var(--radius-control);color:var(--text-soft);font-family:var(--font-mono),monospace;padding:7px 11px;font-size:.7rem}.text-link{border-bottom:1px solid var(--line-strong);min-height:46px;color:var(--text);align-items:center;gap:8px;font-size:.88rem;font-weight:620;transition:border-color .18s ease-out,color .18s ease-out;display:inline-flex}.experience-section{background:var(--page-soft)}.status-label{border:1px solid color-mix(in srgb,var(--accent)55%,var(--line));border-radius:var(--radius-control);width:fit-content;color:var(--accent);font-family:var(--font-mono),monospace;padding:6px 10px;font-size:.66rem;font-weight:600}.company-logo{background:#f4f6f0;border-radius:12px;flex:0 0 144px;width:144px;height:76px;position:relative;overflow:hidden}.company-logo img{object-fit:contain;padding:11px}.company-logo.logo-sports-digitale{background:#000;border:1px solid #ffffff1f}.company-logo.logo-sports-digitale img{object-fit:cover;padding:0;transform:scale(1.3)}.footer-bottom{border-top:1px solid var(--line);grid-column:1/-1;justify-content:flex-end;align-items:center;gap:24px;margin-top:56px;padding-block:24px;display:flex}.footer-bottom p{color:var(--text-muted);font-family:var(--font-mono),monospace;text-align:right;font-size:.66rem}@media (hover:hover) and (pointer:fine){.desktop-nav a:hover,.text-link:hover{color:var(--accent)}.desktop-nav a:hover:after{transform:scaleX(1)}.icon-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent)10%,transparent)}.button-secondary:hover{border-color:var(--accent)}}@media (max-width:1023px){.desktop-nav{display:none}.mobile-menu-button{display:grid}.hero-shell{grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);gap:24px}.about-heading,.about-copy{grid-column:1/-1}.about-copy{grid-template-columns:1fr 1fr}}@media (max-width:767px){:root{--nav-height:62px}.section-shell{width:min(calc(100% - 32px),var(--container))}.section-block{padding-block:44px}.section-heading,.project-heading,.compact-heading{text-align:left;max-width:none;margin-bottom:24px;margin-left:0;margin-right:0}.nav-shell{width:calc(100% - 20px);height:var(--nav-height);padding:6px 7px 6px 8px}.brand{min-height:48px}.brand-copy small,.language-switch{display:none}.brand-mark{flex-basis:42px;width:42px;height:42px}.icon-button{width:46px;height:46px}.hero-section,.hero-shell{min-height:100dvh}.hero-shell{grid-template-columns:1fr;align-content:center;gap:30px;padding-top:92px;padding-bottom:32px}.hero-copy{gap:17px}.hero-copy h1{max-width:10ch;font-size:clamp(3.1rem,14vw,4.45rem)}.hero-body{max-width:37ch;font-size:1rem}.hero-actions{gap:9px}.button{min-height:50px;padding-inline:18px}.hero-copy{text-shadow:0 2px 24px var(--page)}.about-grid,.about-copy,.about-facts{grid-template-columns:1fr}.about-copy{gap:22px}.about-facts{grid-column:1}.fact{min-height:168px}.company-logo{grid-row:1;width:122px;height:64px}.footer-bottom{align-items:flex-end}.footer-bottom p{max-width:28ch}}@media (max-width:420px){.hero-actions{align-items:stretch}.hero-actions .button{width:100%}.footer-bottom{justify-content:start;display:grid}.footer-bottom p{text-align:left}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency:reduce){.nav-shell,.mobile-menu{background:var(--surface-strong);-webkit-backdrop-filter:none}}.project-lab-section{background:radial-gradient(circle at 84% 14%,color-mix(in srgb,var(--accent)7%,transparent),transparent 28%),var(--page);overflow:hidden}.project-workbench{border:1px solid var(--line);border-radius:calc(var(--radius-panel) + 6px);background:color-mix(in srgb,var(--surface)82%,transparent);box-shadow:var(--shadow);padding:12px}.project-stage{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface-strong);grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);min-height:440px;display:grid;overflow:hidden}.project-visual-board{border-right:1px solid var(--line);background:radial-gradient(circle at 52% 48%,color-mix(in srgb,var(--accent)12%,transparent),transparent 34%),linear-gradient(var(--line)1px,transparent 1px),linear-gradient(90deg,var(--line)1px,transparent 1px),#0e110f;background-size:auto,48px 48px,48px 48px,auto;min-height:440px;position:relative;overflow:hidden}.project-device-gallery{position:absolute;inset:5% 4%}.device-shot{background:#0b0d0c;border:1px solid #fff3;border-radius:26px;width:38%;height:80%;position:absolute;top:10%;overflow:hidden;box-shadow:0 32px 58px #00000057}.device-shot-1{z-index:1;left:3%;rotate:-7deg}.device-shot-2{z-index:3;height:88%;top:5%;left:31%}.device-shot-3{z-index:2;right:3%;rotate:7deg}.device-shot .project-media-contain img{object-fit:cover;padding:0}.project-landscape-gallery{gap:12px;display:grid;position:absolute;inset:7%}.project-landscape-gallery-2{grid-template-rows:repeat(2,minmax(0,1fr))}.project-landscape-gallery-3{grid-template-rows:1.08fr .92fr;grid-template-columns:repeat(2,minmax(0,1fr))}.project-landscape-gallery-3 .landscape-shot-1{grid-column:1/-1}.landscape-shot{border:1px solid var(--line-strong);background:#0b0d0c;border-radius:14px;min-width:0;min-height:0;position:relative;overflow:hidden;box-shadow:0 20px 42px #00000047}.landscape-shot .project-media-contain img{object-fit:contain;padding:0}.project-browser-gallery{gap:12px;display:grid;position:absolute;inset:7% 6%}.browser-shot{border:1px solid color-mix(in srgb,var(--text)17%,var(--line));background:var(--surface-strong);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text)7%,transparent),0 24px 54px #00000057;border-radius:16px;grid-template-rows:34px minmax(0,1fr);transition:border-color .22s ease-out,box-shadow .22s ease-out,rotate .28s cubic-bezier(.16,1,.3,1);display:grid;position:relative;overflow:hidden}.browser-shot-bar{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface)90%,transparent);color:var(--text-muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 12px;display:grid}.browser-shot-bar>span{font-family:var(--font-mono),monospace;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:620;overflow:hidden}.browser-shot-bar>svg:first-child{color:var(--accent)}.browser-shot-media{background:#0b0d0c;min-width:0;min-height:0;position:relative}.browser-shot .project-media-contain img{object-fit:contain;padding:0}.project-browser-gallery-1:before{aspect-ratio:16/10;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface)72%,transparent);content:"";border-radius:16px;position:absolute;inset:52% 0 auto 7%;translate:0 -50%;rotate:2deg}.project-browser-gallery-1 .browser-shot{aspect-ratio:16/10;position:absolute;inset:50% 3% auto;translate:0 -50%}.project-browser-gallery-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.project-browser-gallery-2 .browser-shot{aspect-ratio:16/10}.project-browser-gallery-3,.project-browser-gallery-4{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.project-browser-gallery-3 .browser-shot-1{grid-column:1/-1;justify-self:center;width:58%}.project-single-visual{border:1px solid var(--line-strong);border-radius:var(--radius-panel);position:absolute;inset:8%;overflow:hidden;box-shadow:0 32px 70px #00000052}.project-single-visual .project-media-contain img{padding:clamp(12px,2.5vw,32px)}.project-graphic-cover{border:1px solid var(--line-strong);border-radius:var(--radius-panel);background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--accent)28%,transparent),transparent 28%),var(--surface);color:var(--accent);place-items:center;display:grid;position:absolute;inset:8%;overflow:hidden;box-shadow:0 32px 70px #0000003d}.project-graphic-cover .graphic-grid{background:linear-gradient(var(--line)1px,transparent 1px),linear-gradient(90deg,var(--line)1px,transparent 1px);background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 72%);mask-image:radial-gradient(circle,#000,#0000 72%)}.project-graphic-cover>svg{z-index:1;filter:drop-shadow(0 18px 30px color-mix(in srgb,var(--accent)26%,transparent));position:relative}.project-graphic-cover>span{color:color-mix(in srgb,var(--text)8%,transparent);font-family:var(--font-mono),monospace;letter-spacing:-.1em;font-size:clamp(3rem,5.5vw,4.5rem);font-weight:700;line-height:.8;position:absolute;bottom:12px;right:20px}.project-stage-copy{align-content:center;gap:16px;padding:clamp(20px,2.8vw,36px);display:grid}.project-stage-meta{justify-content:space-between;align-items:center;gap:18px;display:flex}.project-stage-meta>span{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.68rem}.project-stage-copy h3{max-width:100%;font-size:clamp(1.35rem,1.8vw,1.85rem)}.project-stage-copy p{max-width:50ch;color:var(--text-soft);font-size:.94rem;line-height:1.6}.project-stage-copy .project-links{flex-wrap:wrap;gap:12px;display:flex}.project-stage-controls{gap:8px;margin-top:6px;display:flex}.project-stage-controls button{border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;background:0 0;place-items:center;width:40px;height:40px;transition:border-color .18s ease-out,background .18s ease-out;display:grid}.project-index-header{justify-content:space-between;align-items:center;gap:24px;padding:16px 7px 10px;display:flex}.project-index-header>p{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.66rem}.project-index-header a{color:var(--text-soft);align-items:center;gap:7px;font-size:.74rem;font-weight:620;display:inline-flex}.project-index{scrollbar-color:var(--accent)transparent;scrollbar-width:thin;scroll-snap-type:x mandatory;gap:9px;padding:2px 6px 8px;scroll-padding-inline:6px;display:flex;overflow-x:auto}.project-index>button{border:1px solid var(--line);background:color-mix(in srgb,var(--surface)78%,transparent);min-width:0;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text)5%,transparent);cursor:pointer;scroll-snap-align:start;text-align:left;border-radius:14px;flex:0 0 184px;gap:8px;padding:6px 6px 8px;transition:border-color .18s ease-out,background .18s ease-out,box-shadow .18s ease-out,transform .18s ease-out;display:grid;position:relative;overflow:hidden}.project-index>button.is-active{border-color:color-mix(in srgb,var(--accent)68%,var(--line));background:color-mix(in srgb,var(--accent)6%,var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--accent)18%,transparent),0 12px 28px color-mix(in srgb,var(--page)70%,transparent)}.project-thumbnail-image,.project-thumbnail-graphic{aspect-ratio:16/9;border:1px solid var(--line);background:var(--surface-strong);width:100%;color:var(--accent);border-radius:9px;place-items:center;display:grid;position:relative;overflow:hidden}.project-thumbnail-image img{object-fit:cover;transition:filter .24s ease-out,transform .24s cubic-bezier(.16,1,.3,1)}.project-index-copy{align-content:start;gap:4px;min-height:40px;padding:0 3px 2px;display:grid}.project-index-copy small{color:var(--text-muted);font-family:var(--font-mono),monospace;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;font-size:.54rem;overflow:hidden}.project-index-copy strong{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.76rem;font-weight:680;line-height:1.3;display:-webkit-box;overflow:hidden}.contact-section{background:radial-gradient(circle at 14% 18%,color-mix(in srgb,var(--accent)8%,transparent),transparent 30%),var(--page);padding-top:clamp(110px,13vw,184px);position:relative;overflow:hidden}.contact-availability{color:var(--text-soft);font-family:var(--font-mono),monospace;align-items:center;gap:10px;font-size:.7rem;line-height:1.5;display:flex}.contact-availability svg{color:var(--accent);flex:none}@media (hover:hover) and (pointer:fine){.project-stage-controls button:hover{border-color:var(--accent);color:var(--accent)}.project-index>button:hover{border-color:color-mix(in srgb,var(--accent)36%,var(--line-strong));background:color-mix(in srgb,var(--surface-strong)88%,transparent);transform:translateY(-3px)}.project-index>button:hover .project-thumbnail-image img{filter:saturate(1.04)contrast(1.02);transform:scale(1.025)}.project-visual-board:hover .browser-shot{border-color:color-mix(in srgb,var(--accent)38%,var(--line-strong));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--accent)12%,transparent),0 28px 62px #00000061}.project-index-header a:hover{color:var(--accent)}}@media (max-width:1023px){.project-stage{grid-template-columns:minmax(0,1.1fr) minmax(310px,.8fr)}.project-visual-board,.project-stage{min-height:570px}}@media (max-width:767px){.project-workbench{margin-inline:-4px;padding:7px}.project-stage{grid-template-columns:1fr;min-height:0}.project-visual-board{border-right:0;border-bottom:1px solid var(--line);min-height:min(112vw,540px)}.project-device-gallery{inset:5% 1%}.project-landscape-gallery{gap:8px;inset:5%}.project-landscape-gallery-3{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr}.project-landscape-gallery-3 .landscape-shot-1{grid-column:auto}.project-browser-gallery{gap:8px;inset:6% 4%}.browser-shot{border-radius:13px;grid-template-rows:29px minmax(0,1fr)}.browser-shot-bar{gap:7px;padding-inline:9px}.browser-shot-bar>span{font-size:.56rem}.project-browser-gallery-1:before{border-radius:13px;inset:52% 0 auto 5%}.project-browser-gallery-1 .browser-shot{inset:50% 1% auto}.project-browser-gallery-2 .browser-shot{aspect-ratio:auto;width:100%;height:100%}.project-browser-gallery-2{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr;align-items:stretch}.project-browser-gallery-3{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr}.project-browser-gallery-3 .browser-shot-1{grid-column:auto;width:100%}.device-shot{width:41%}.device-shot-1{left:0}.device-shot-2{left:29.5%}.device-shot-3{right:0}.project-single-visual,.project-graphic-cover{inset:7%}.project-stage-copy{padding:30px 22px}.project-stage-copy h3{max-width:15ch}.project-index-header{padding-inline:4px}.project-index>button{flex-basis:154px;gap:7px;padding:6px 6px 8px}.project-index-copy{min-height:38px;padding-inline:2px}.project-index-copy strong{font-size:.72rem}}@media (max-width:420px){.project-index-header a span{display:none}}@media (prefers-reduced-transparency:reduce){.project-workbench{background:var(--surface-strong);-webkit-backdrop-filter:none}}.hero-section{min-height:100dvh;scroll-margin-top:calc(var(--nav-height) + 26px);background:radial-gradient(ellipse at 74% 46%,color-mix(in srgb,var(--accent)8%,transparent),transparent 30%),linear-gradient(180deg,color-mix(in srgb,var(--page-soft)54%,transparent),transparent 70%),var(--page);position:relative;overflow:hidden}.hero-section:after{aspect-ratio:1;border:1px solid color-mix(in srgb,var(--text)6%,transparent);width:68vw;box-shadow:0 0 0 7vw color-mix(in srgb,var(--text)2%,transparent),0 0 0 15vw color-mix(in srgb,var(--text)1.5%,transparent);content:"";pointer-events:none;border-radius:50%;position:absolute;bottom:-36vw;right:-16vw}.hero-shell{grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);gap:clamp(32px,4.5vw,68px);padding-top:88px}.hero-copy{z-index:3;position:relative}.hero-media-stage{--pointer-x:50%;--pointer-y:50%;border:1px solid var(--line-strong);border-radius:calc(var(--radius-panel) + 8px);background:linear-gradient(135deg,#ffffff24,transparent 36%),color-mix(in srgb,var(--surface-glass)84%,transparent);width:min(100%,820px);box-shadow:0 42px 100px color-mix(in srgb,var(--page)82%,transparent),inset 0 1px 0 #ffffff24;-webkit-backdrop-filter:blur(18px)saturate(120%);justify-self:end;padding:clamp(10px,1.2vw,16px);position:relative}.hero-media-stage:before{z-index:-1;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent)26%,transparent);content:"";filter:blur(.2px);border-radius:43% 57% 61% 39%;width:58%;position:absolute;top:-12%;right:-8%;rotate:18deg}.hero-media-stage:after{z-index:3;border-radius:inherit;background:radial-gradient(circle 180px at var(--pointer-x)var(--pointer-y),#ffffff1f,transparent 72%);content:"";pointer-events:none;position:absolute;inset:0}.terminal-window{border-radius:var(--radius-panel);color:#edf2e9;width:100%;min-height:480px;max-height:520px;font-family:var(--font-mono),monospace;background:radial-gradient(circle at 78% 12%,#c8ef5b0e,#0000 28%),#0a0d0b;border:1px solid #ffffff1f;flex-direction:column;display:flex;position:relative;box-shadow:inset 0 1px #ffffff0f,0 20px 60px #02050347;outline:none!important}.terminal-window:focus,.terminal-window:focus-visible{outline-offset:0!important;outline:none!important}.terminal-window:after{content:"";pointer-events:none;background:repeating-linear-gradient(#0000 0 4px,#ffffff03 5px);position:absolute;inset:48px 0 0}.terminal-toolbar{z-index:2;background:linear-gradient(#2b302cf5,#1d221ef5);border-bottom:1px solid #ffffff14;flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;height:46px;padding-inline:16px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff1a}.terminal-controls{align-items:center;gap:8px;display:flex}.terminal-control{border:1px solid #00000038;border-radius:50%;width:12px;height:12px;box-shadow:inset 0 1px #ffffff42}.terminal-control-close{background:#ff5f57}.terminal-control-minimize{background:#febc2e}.terminal-control-expand{background:#28c840}.terminal-title,.terminal-location{color:#eff4ec99;letter-spacing:-.01em;font-size:clamp(.68rem,.9vw,.8rem)}.terminal-title{font-weight:600}.terminal-location{justify-self:end}.terminal-body{z-index:1;flex:auto;min-height:0;max-height:none;padding:clamp(16px,2.2vw,24px) clamp(18px,2.5vw,28px) 14px;font-size:clamp(.78rem,1.15vw,.94rem);line-height:1.65;position:relative;overflow-y:auto}.terminal-context{color:#d5ddd261;justify-content:space-between;margin-bottom:clamp(18px,2.4vw,28px);font-size:.82em;display:flex}.terminal-command-line{white-space:nowrap;align-items:center;gap:.58em;min-height:1.62em;display:flex}.terminal-user{color:#c8ef5b;font-weight:650}.terminal-path{color:#73b7ff}.terminal-prompt{color:#edf2e980}.terminal-command{color:#f2f5ef}.terminal-cursor{opacity:.82;background:#c8ef5b;width:.54em;height:1.06em;margin-left:-.38em}.terminal-output{min-height:8.1em;padding-top:.6em;padding-left:1.1em}.terminal-output-line{color:#e1e7dec2;text-overflow:ellipsis;white-space:pre;animation:.26s cubic-bezier(.16,1,.3,1) both terminal-line-in;overflow:hidden}.terminal-output-strong{color:#f3f6f0;font-weight:650}.terminal-output-muted{color:#d5ddd27a}.terminal-output-accent{color:#c8ef5b}@keyframes terminal-line-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.terminal-cursor{animation:1s step-end infinite terminal-cursor-blink}}@keyframes terminal-cursor-blink{0%,48%{opacity:.82}49%,to{opacity:0}}.project-visual-board{isolation:isolate;background:radial-gradient(ellipse at 23% 20%,#ffffff0e,transparent 28%),radial-gradient(ellipse at 78% 82%,color-mix(in srgb,var(--accent)11%,transparent),transparent 32%),linear-gradient(145deg,#0a0d0b,#151a16 54%,#0b0e0c);background-size:auto}:root[data-theme=light] .project-visual-board{background:radial-gradient(ellipse at 23% 20%,#ffffffb8,transparent 30%),radial-gradient(ellipse at 78% 82%,color-mix(in srgb,var(--accent)19%,transparent),transparent 34%),linear-gradient(145deg,#dde2d8,#f0f3ec 54%,#d8ded4);background-size:auto}.project-visual-board:before{z-index:0;aspect-ratio:1.72;border:1px solid color-mix(in srgb,var(--text)11%,transparent);width:66%;box-shadow:0 0 0 42px color-mix(in srgb,var(--text)3.5%,transparent),0 0 0 98px color-mix(in srgb,var(--text)2%,transparent);content:"";border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-14deg)}.project-visual-board:after{z-index:0;background:color-mix(in srgb,var(--accent)19%,transparent);content:"";filter:blur(58px);border-radius:50%;width:58%;height:24%;position:absolute;bottom:2%;right:-12%;transform:translate(0,0)}.project-device-gallery,.project-single-visual,.project-graphic-cover{z-index:2}.project-graphic-cover{background:radial-gradient(ellipse at 48% 52%,color-mix(in srgb,var(--accent)21%,transparent),transparent 30%),linear-gradient(145deg,var(--surface-strong),var(--surface))}.project-graphic-cover .graphic-grid{background:repeating-radial-gradient(ellipse at 50% 54%,transparent 0 26px,color-mix(in srgb,var(--text)7%,transparent)27px 28px);transform:scale(1.35)rotate(-8deg);-webkit-mask-image:radial-gradient(#000,#0000 70%);mask-image:radial-gradient(#000,#0000 70%)}.project-thumbnail-graphic{background:radial-gradient(circle at 50% 52%,color-mix(in srgb,var(--accent)18%,transparent),transparent 31%),repeating-radial-gradient(ellipse at 50% 54%,transparent 0 13px,color-mix(in srgb,var(--text)7%,transparent)14px 15px),var(--surface-strong);background-size:auto}@media (prefers-reduced-motion:no-preference){.project-visual-board:after{animation:8s ease-in-out infinite alternate project-aurora-drift}}@keyframes project-aurora-drift{0%{opacity:.58;transform:translate(-3%,4%)scale(.92)}to{opacity:.9;transform:translate(5%,-7%)scale(1.08)}}.experience-premium-section{background:radial-gradient(ellipse at 12% 18%,color-mix(in srgb,var(--accent)6%,transparent),transparent 28%),var(--page-soft);overflow:visible}.experience-sheet-logo{border:1px solid #0f140f14;flex-basis:auto;width:108px;height:68px}.experience-sheet-heading{gap:6px;display:grid}.experience-sheet-heading h3{max-width:100%;font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.25}.experience-sheet-heading time{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.68rem}.experience-sheet-meta{justify-content:space-between;align-items:center;gap:18px;display:flex}.experience-sheet-meta>p{color:var(--accent);font-size:.85rem;font-weight:650}.experience-sheet-summary{z-index:1;max-width:60ch;color:var(--text);margin-top:34px;font-size:clamp(1.08rem,1.7vw,1.38rem);line-height:1.55;position:relative}.experience-sheet-details{z-index:1;grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr);align-items:start;gap:clamp(28px,5vw,68px);margin-top:auto;padding-top:38px;display:grid;position:relative}.experience-sheet-bullets{gap:14px;display:grid}.experience-sheet-bullets li{color:var(--text-soft);grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;font-size:.92rem;display:grid}.experience-sheet-bullets svg{color:var(--accent);margin-top:4px}.experience-sheet-side{gap:20px;display:grid}.experience-sheet-side>p{color:var(--text-muted);font-family:var(--font-mono),monospace;align-items:flex-start;gap:8px;font-size:.68rem;line-height:1.5;display:flex}.experience-sheet-side>p svg{color:var(--accent);flex:none;margin-top:2px}@media (hover:hover) and (pointer:fine){.hero-media-stage{transition:border-color .24s ease-out,box-shadow .24s ease-out}.hero-media-stage:hover{border-color:color-mix(in srgb,var(--accent)32%,var(--line));box-shadow:0 48px 110px color-mix(in srgb,var(--page)80%,transparent),inset 0 1px 0 #ffffff2e}}@media (max-width:1023px){.hero-shell{grid-template-columns:minmax(0,.88fr) minmax(390px,1fr);gap:34px}.experience-sheet{min-height:580px;padding:30px}.experience-sheet-details{grid-template-columns:1fr}}@media (max-width:767px){.hero-section,.hero-shell{min-height:100dvh}.hero-shell{grid-template-columns:1fr;align-content:center;gap:22px;padding-top:78px;padding-bottom:20px}.hero-copy{text-shadow:none;gap:16px}.hero-copy h1{max-width:11ch;font-size:clamp(2.7rem,12vw,4rem)}.hero-media-stage{width:100%;padding:7px}.terminal-window{aspect-ratio:16/9.8;min-height:218px}.terminal-context{margin-bottom:14px}.hero-section:after{display:none}.experience-stack{gap:24px;padding-bottom:0}.experience-sheet{min-height:0;padding:22px;position:relative;top:auto}.experience-sheet-header{grid-template-columns:92px minmax(0,1fr);gap:16px;padding-bottom:24px}.experience-sheet-logo{width:92px;height:60px}.experience-sheet-heading h3{font-size:1.32rem}.experience-sheet-meta .status-label{display:none}.experience-sheet-summary{margin-top:24px;font-size:1rem}.experience-sheet-details{gap:24px;margin-top:0;padding-top:28px}}.experience-stack{gap:20px;padding-bottom:clamp(18px,3vw,36px);display:grid}.experience-sheet{top:calc(84px + var(--stack-index)*10px);z-index:calc(4 + var(--stack-index));border:1px solid var(--line-strong);border-radius:var(--radius-panel);background:radial-gradient(ellipse at 96% 0%,color-mix(in srgb,var(--accent)7%,transparent),transparent 30%),linear-gradient(145deg,var(--surface-strong),var(--surface));min-height:auto;box-shadow:0 34px 80px color-mix(in srgb,var(--page)70%,transparent),inset 0 1px 0 #ffffff12;transform-origin:50% 0;align-content:start;padding:clamp(20px,2.8vw,34px);display:grid;position:sticky;overflow:hidden}.experience-sheet:after{aspect-ratio:1;border:1px solid color-mix(in srgb,var(--text)6%,transparent);width:60%;box-shadow:0 0 0 38px color-mix(in srgb,var(--text)2.5%,transparent);content:"";pointer-events:none;border-radius:50%;position:absolute;bottom:-35%;right:-14%}.experience-sheet:nth-child(2n){background:radial-gradient(ellipse at 4% 0%,color-mix(in srgb,var(--accent)7%,transparent),transparent 30%),linear-gradient(215deg,var(--surface-strong),var(--surface))}.experience-sheet-header{z-index:1;border-bottom:1px solid var(--line);grid-template-columns:108px minmax(0,1fr);align-items:center;gap:clamp(16px,2.4vw,28px);padding-bottom:20px;display:grid;position:relative}.experience-sheet-logo{flex-basis:auto;width:108px;height:68px}@media (max-width:420px){.hero-media-stage{margin-bottom:2px}.terminal-window{aspect-ratio:auto;min-height:208px}.terminal-location,.terminal-context span:last-child{display:none}.terminal-output{min-height:7em;padding-left:.4em}.experience-sheet-header{grid-template-columns:1fr}.experience-sheet-logo{width:100px;height:60px}}@media (prefers-reduced-transparency:reduce){.hero-media-stage,.experience-sheet{background:var(--surface-strong);-webkit-backdrop-filter:none}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.experience-premium-section{padding-block:clamp(44px,5.5vw,76px)}.experience-stack-wide{width:min(100%,1040px);margin-inline:auto}.experience-stack-wide .experience-sheet{min-height:auto}.experience-stack-wide .experience-sheet-summary{max-width:68ch;font-size:.94rem;line-height:1.6}.contact-premium-section{background:radial-gradient(ellipse at 76% 16%,color-mix(in srgb,var(--accent)7%,transparent),transparent 30%),var(--page);padding-block:clamp(44px,5.5vw,76px)}.contact-premium-shell{display:grid}.contact-premium-panel{isolation:isolate;border:1px solid var(--line-strong);border-radius:calc(var(--radius-panel) + 6px);background:radial-gradient(ellipse at 84% 18%,color-mix(in srgb,var(--accent)10%,transparent),transparent 27%),linear-gradient(145deg,var(--surface-strong),var(--surface));min-height:auto;box-shadow:0 38px 100px color-mix(in srgb,var(--page)78%,transparent),inset 0 1px 0 #ffffff14;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(24px,4vw,54px);padding:clamp(24px,3.8vw,48px);display:grid;position:relative;overflow:hidden}.contact-premium-panel:after{z-index:-1;border:1px solid color-mix(in srgb,var(--text)4%,transparent);border-radius:calc(var(--radius-panel) + 5px);content:"";pointer-events:none;position:absolute;inset:1px}.contact-premium-orbit{z-index:-1;aspect-ratio:1.65;border:1px solid color-mix(in srgb,var(--text)9%,transparent);width:58%;box-shadow:0 0 0 46px color-mix(in srgb,var(--text)2.5%,transparent),0 0 0 106px color-mix(in srgb,var(--text)1.5%,transparent);border-radius:50%;position:absolute;top:-26%;right:-7%;rotate:-13deg}.contact-premium-orbit:after{background:color-mix(in srgb,var(--accent)24%,transparent);content:"";filter:blur(58px);border-radius:50%;width:52%;height:44%;position:absolute;top:60%;left:22%}.contact-premium-copy{z-index:1;gap:16px;display:grid;position:relative}.contact-premium-copy h2{max-width:100%;font-size:clamp(1.75rem,2.8vw,2.65rem)}.contact-premium-copy>p{max-width:54ch;color:var(--text-soft);font-size:clamp(.92rem,1.1vw,1.04rem);line-height:1.6}.contact-premium-email{z-index:1;border:1px solid var(--line-strong);border-radius:var(--radius-panel);background:linear-gradient(135deg,#ffffff14,transparent 42%),color-mix(in srgb,var(--surface-glass)88%,transparent);-webkit-backdrop-filter:blur(18px)saturate(120%);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;min-width:0;padding:20px 24px;transition:border-color .2s ease-out,background .2s ease-out;display:grid;position:relative;box-shadow:inset 0 1px #ffffff14}.contact-premium-email>span{color:var(--text-muted);font-family:var(--font-mono),monospace;grid-column:1/-1;align-items:center;gap:8px;font-size:.68rem;display:flex}.contact-premium-email>span svg{color:var(--accent)}.contact-premium-email strong{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:clamp(.95rem,1.3vw,1.18rem);overflow:hidden}.contact-premium-email>svg{color:var(--accent)}.contact-premium-network{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px;display:grid}.contact-premium-network>a{border-right:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:72px;padding:14px 20px;transition:background .18s ease-out,color .18s ease-out;display:grid}.contact-premium-network>a:last-child{border-right:0}.contact-premium-network>a>svg:first-child{color:var(--accent)}.contact-premium-network>a>span{gap:3px;min-width:0;display:grid}.contact-premium-network small{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.64rem}.contact-premium-network strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}@media (hover:hover) and (pointer:fine){.contact-premium-email:hover{border-color:color-mix(in srgb,var(--accent)52%,var(--line));background:color-mix(in srgb,var(--accent)7%,var(--surface))}.contact-premium-network>a:hover{background:color-mix(in srgb,var(--accent)6%,transparent);color:var(--text)}}@media (max-width:1023px){.contact-premium-panel{grid-template-columns:minmax(0,1fr) minmax(310px,.8fr);gap:38px;min-height:520px;padding:46px}.contact-premium-network{grid-template-columns:1fr 1fr}}@media (max-width:767px){.experience-stack-wide .experience-sheet{min-height:0}.contact-premium-panel{grid-template-columns:1fr;gap:42px;min-height:0;padding:32px 22px}.contact-premium-copy h2{max-width:11ch;font-size:clamp(2.7rem,13vw,4.5rem)}.contact-premium-email{padding:22px}.contact-premium-orbit{width:104%;top:-4%;right:-36%}.contact-premium-network{grid-template-columns:1fr;margin-top:30px}.contact-premium-network>a,.contact-premium-network>a:first-child{border-right:0;border-bottom:1px solid var(--line);grid-column:1;min-height:90px;padding-inline:6px}.contact-premium-network>a:last-child{border-bottom:0}}@media (prefers-reduced-transparency:reduce){.contact-premium-email{background:var(--surface-strong);-webkit-backdrop-filter:none}}.desktop-nav a.is-active{color:var(--text)}.desktop-nav a.is-active:after{transform:scaleX(1)}.not-found-page{background:var(--page);place-items:center;min-height:100dvh;padding:48px 24px;display:grid}.not-found-content{text-align:center;justify-items:center;gap:16px;display:grid}.not-found-code{font-family:var(--font-mono),monospace;letter-spacing:-.08em;color:var(--accent);opacity:.28;font-size:clamp(6rem,20vw,12rem);font-weight:700;line-height:.85}.not-found-content h1{max-width:none;font-size:clamp(1.8rem,4vw,2.8rem)}.not-found-content p{max-width:38ch;color:var(--text-soft)}.not-found-content .button{margin-top:14px}.terminal-window{cursor:text;flex-direction:column;display:flex}.terminal-body{scrollbar-width:thin;scrollbar-color:var(--line-strong)transparent;max-height:450px;overflow-y:auto}.terminal-interactive-line{font-family:var(--font-mono),monospace;align-items:center;gap:10px;margin-top:12px;font-size:.92rem;display:flex}.terminal-live-text{font-family:var(--font-mono),monospace;color:#f2f5ef;align-items:center;font-size:.92rem;display:inline-flex}.terminal-command-typed{letter-spacing:.02em;font-weight:550;color:#f2f5ef!important}.terminal-hint-placeholder{font-style:italic;color:#d5ddd27a!important}.terminal-active-focus{border-color:#fff3!important;box-shadow:inset 0 1px #ffffff14,0 20px 60px #02050347!important}.terminal-output-success{color:#55efc4!important}.terminal-output-warning{color:#ffeaa7!important}.terminal-output-error{color:#ff7675!important}.terminal-history-item{gap:8px;margin-top:12px;display:grid}.terminal-quick-bar{background:#0e120ff5;border-top:1px solid #ffffff14;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;padding:10px 16px 12px;display:flex}.terminal-chip{border-radius:var(--radius-control);color:#eff4ecd9;font-family:var(--font-mono),monospace;cursor:pointer;background:#ffffff14;border:1px solid #ffffff24;padding:4px 10px;font-size:.72rem;transition:all .18s ease-out}.terminal-chip:hover{color:#0c1208;background:#c8ef5b;border-color:#c8ef5b;transform:translateY(-1px)}.terminal-chip.terminal-chip-matrix{color:#0f6!important;border-color:#00ff6659!important}.terminal-chip.terminal-chip-matrix:hover{color:#020804!important;background:#0f6!important;border-color:#0f6!important}.terminal-output-matrix{text-shadow:0 0 8px #00ff66bf;font-family:var(--font-mono),monospace;letter-spacing:.06em;animation:.24s ease-out forwards matrixLineBloom;color:#0f6!important}@keyframes matrixLineBloom{0%{opacity:0;filter:brightness(2.2);transform:translateY(2px)}60%{opacity:.9;filter:brightness(1.6)}to{opacity:1;filter:brightness();transform:translateY(0)}}.drawer-portal{z-index:calc(var(--z-nav) + 50);justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-backdrop{-webkit-backdrop-filter:blur(8px);background:#000000a6;position:fixed;inset:0}.drawer-panel{z-index:2;background:var(--surface-strong);border-left:1px solid var(--line-strong);scrollbar-width:thin;flex-direction:column;width:min(100%,640px);height:100%;display:flex;position:relative;overflow-y:auto;box-shadow:-20px 0 60px #00000073}.drawer-header{z-index:10;background:color-mix(in srgb,var(--surface-strong)92%,transparent);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:28px 32px 20px;display:flex;position:sticky;top:0}.drawer-header-meta{gap:6px;display:grid}.drawer-category{color:var(--accent);font-family:var(--font-mono),monospace;text-transform:uppercase;letter-spacing:.05em;font-size:.76rem;font-weight:600}.drawer-title{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.15}.drawer-close-btn{border:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface)60%,transparent);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:all .18s ease-out;display:grid}.drawer-close-btn:hover{border-color:var(--accent);color:var(--accent);transform:rotate(90deg)}.drawer-body{gap:28px;padding:32px;display:grid}.drawer-media-wrap{border-radius:var(--radius-panel);border:1px solid var(--line);background:#0d100e;position:relative;overflow:hidden}.drawer-media-frame{aspect-ratio:16/10;width:100%;position:relative}.drawer-actions{flex-wrap:wrap;gap:12px;display:flex}.drawer-btn{min-height:46px;padding:0 18px;font-size:.85rem}.drawer-lead{color:var(--text);font-size:1.08rem;line-height:1.6}.drawer-section{gap:14px;display:grid}.drawer-section-title{letter-spacing:-.02em;font-size:1.15rem;font-weight:650}.drawer-grid-2{grid-template-columns:1fr 1fr;gap:14px}.drawer-card{border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface)75%,transparent);border:1px solid var(--line);gap:10px;padding:20px;display:grid}.drawer-card-full{grid-column:1/-1}.drawer-card-label{color:var(--accent);font-family:var(--font-mono),monospace;align-items:center;gap:8px;font-size:.75rem;font-weight:600;display:flex}.drawer-card p{color:var(--text-soft);font-size:.92rem;line-height:1.55}.drawer-highlights-list{gap:10px;display:grid}.drawer-highlights-list li{color:var(--text-soft);grid-template-columns:20px 1fr;align-items:start;gap:10px;font-size:.92rem;line-height:1.45;display:grid}.drawer-highlights-list .highlight-icon{color:var(--accent);margin-top:2px}.drawer-sequence-copy{max-width:58ch;color:var(--text-soft);font-size:.9rem;line-height:1.55}.drawer-sequence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.drawer-sequence-card{border:1px solid var(--line);background:color-mix(in srgb,var(--surface)78%,transparent);border-radius:14px;min-width:0;overflow:hidden}.drawer-sequence-media{aspect-ratio:4/3;border-bottom:1px solid var(--line);background:#0d100e;width:100%;position:relative;overflow:hidden}.drawer-sequence-media img{object-fit:contain;padding:8px}.drawer-sequence-meta{gap:7px;padding:12px;display:grid}.drawer-sequence-meta strong{color:var(--text);font-size:.78rem;line-height:1.35}.drawer-sequence-meta code{color:var(--text-muted);font-family:var(--font-mono),monospace;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;overflow:hidden}.case-study-btn{align-items:center;gap:8px;min-height:46px;padding:0 16px;font-size:.86rem;display:inline-flex}.cursor-pointer{cursor:pointer}@media (max-width:767px){.drawer-grid-2{grid-template-columns:1fr}.drawer-body,.drawer-header{padding:20px}}.terminal-interactive-menu{border-radius:var(--radius-control);background:#00000073;border:1px solid #ffffff14;gap:2px;margin-top:10px;margin-bottom:6px;padding:8px 6px;display:grid}.terminal-menu-row{cursor:pointer;font-family:var(--font-mono),monospace;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:10px;padding:6px 10px;font-size:.82rem;transition:all .12s ease-out;display:flex}.terminal-menu-row:hover,.terminal-menu-row.is-selected{background:#c8ef5b1f;border-left:2px solid #c8ef5b}.terminal-menu-row.is-matrix-row:hover,.terminal-menu-row.is-matrix-row.is-selected{background:#00ff661f!important;border-left-color:#0f6!important}.menu-pointer{color:#c8ef5b;width:14px;font-weight:700;display:inline-block}.terminal-menu-row.is-matrix-row .menu-pointer{color:#0f6!important}.menu-cmd-name{color:#c8ef5b;min-width:78px;font-weight:650}.terminal-menu-row.is-matrix-row .menu-cmd-name{text-shadow:0 0 6px #00ff6673;font-weight:700;color:#0f6!important}.menu-cmd-desc{color:#d5ddd2a6;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.terminal-menu-row.is-selected .menu-cmd-desc{color:#f2f5ef}@media (max-width:767px){.terminal-menu-row{padding:8px;font-size:.76rem}.menu-cmd-desc{display:none}}.about-github-wrap{grid-column:1/-1;width:100%;margin-top:24px}.about-github-wrap>div{width:100%}.github-activity-card{border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface)80%,transparent);border:1px solid var(--line);box-shadow:var(--shadow);gap:24px;width:100%;padding:clamp(24px,3.5vw,36px);display:grid}.github-activity-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.github-profile-badge{align-items:center;gap:14px;display:flex}.github-avatar-icon{background:color-mix(in srgb,var(--surface-strong)85%,transparent);border:1px solid var(--line-strong);width:46px;height:46px;color:var(--text);border-radius:50%;place-items:center;display:grid}.github-user-line{align-items:center;gap:12px;display:flex}.github-user-line strong{letter-spacing:-.02em;font-size:1.05rem}.github-status-dot{font-family:var(--font-mono),monospace;color:var(--accent);align-items:center;gap:6px;font-size:.68rem;display:inline-flex}.pulse-dot{color:#2ed573;animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.github-profile-badge small{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.7rem}.github-all-btn{color:var(--text);border-radius:var(--radius-control);border:1px solid var(--line-strong);align-items:center;gap:7px;padding:8px 16px;font-size:.8rem;font-weight:620;transition:all .18s ease-out;display:inline-flex}.github-all-btn:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent)8%,transparent)}.github-metrics-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;width:100%;display:grid}.github-metric-item{border-radius:var(--radius-panel);background:var(--surface-strong);border:1px solid var(--line);align-items:center;gap:16px;padding:18px 22px;transition:transform .18s ease-out,border-color .18s ease-out;display:flex}.github-metric-item:hover{border-color:color-mix(in srgb,var(--accent)40%,var(--line));transform:translateY(-2px)}.metric-icon-wrap{border-radius:var(--radius-control);background:color-mix(in srgb,var(--surface)60%,transparent);border:1px solid var(--line);width:44px;height:44px;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.metric-icon-streak{color:#ff7675}.metric-text-wrap{flex-direction:column;gap:3px;display:flex}.metric-val{color:var(--text);letter-spacing:-.02em;font-size:1.35rem;font-weight:700;line-height:1.1}.metric-lbl{font-family:var(--font-mono),monospace;color:var(--text-muted);font-size:.72rem}.github-streak-widget-wrap{justify-content:center;align-items:center;width:100%;padding-top:4px;display:flex}.github-streak-frame{border-radius:var(--radius-panel);justify-content:center;align-items:center;width:100%;max-width:560px;transition:transform .2s ease-out;display:flex;overflow:hidden}.github-streak-frame:hover{transform:translateY(-2px)}.github-streak-img{object-fit:contain;border-radius:10px;width:100%;height:auto;min-height:140px;max-height:210px}@media (max-width:767px){.github-activity-header{flex-direction:column;align-items:flex-start}.github-metrics-row{grid-template-columns:1fr}.github-streak-frame{max-width:100%}}.drawer-overview{border:1px solid var(--line);border-radius:var(--radius-panel);background:color-mix(in srgb,var(--surface)75%,transparent);padding:20px}.drawer-overview p{color:var(--text-soft);font-size:.96rem;line-height:1.7}.experience-role-timeline{z-index:1;width:min(100%,680px);margin-top:28px;margin-left:54px;display:grid;position:relative}.experience-role-item{gap:6px;padding:0 0 24px 28px;display:grid;position:relative}.experience-role-item:last-child{padding-bottom:0}.experience-role-item:before{border:2px solid var(--surface-strong);background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent)50%,var(--line));content:"";border-radius:50%;position:absolute;top:7px;left:0}.experience-role-item:not(:last-child):after{background:var(--line-strong);content:"";width:1px;position:absolute;top:19px;bottom:0;left:4px}.experience-role-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.experience-role-heading>div{min-width:0}.experience-role-heading h4{color:var(--text);margin:0;font-size:1rem;font-weight:650;line-height:1.35}.experience-role-heading p{color:var(--text-soft);margin-top:2px;font-size:.82rem;font-weight:560}.experience-role-item time{color:var(--text-muted);font-family:var(--font-mono),monospace;font-size:.68rem}@media (max-width:767px){.drawer-panel{overscroll-behavior:contain;border-left:0;width:100%;height:100dvh}.drawer-header{padding:max(16px,env(safe-area-inset-top))16px 16px;gap:14px}.drawer-title{overflow-wrap:anywhere;font-size:clamp(1.35rem,7vw,1.8rem)}.drawer-category{font-size:.68rem}.drawer-body{padding:20px 16px max(28px,env(safe-area-inset-bottom));gap:22px}.drawer-overview{padding:17px}.drawer-actions{grid-template-columns:1fr;display:grid}.drawer-btn{white-space:nowrap;justify-content:center;width:100%}.drawer-sequence-grid{scrollbar-color:var(--accent)transparent;scrollbar-width:thin;scroll-snap-type:x mandatory;grid-template-columns:none;grid-auto-columns:minmax(220px,82%);grid-auto-flow:column;padding:1px 1px 10px;overflow-x:auto}.drawer-sequence-card{scroll-snap-align:start}.experience-role-timeline{width:100%;margin-top:24px;margin-left:0}.experience-role-item{padding-left:24px}.experience-role-heading{gap:10px}}@media (max-width:420px){.experience-sheet-header-grouped{grid-template-columns:76px minmax(0,1fr);align-items:center}.experience-sheet-header-grouped .experience-sheet-logo{width:76px;height:52px}.experience-role-heading .status-label{padding:4px 7px;font-size:.58rem}}
