@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_dd5b2f{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_dd5b2f{--font-display:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_73ee6c{--font-body:"Manrope","Manrope Fallback"}:root{--bg:#0b0d10;--surface-light:#171c22;--surface-soft:#11151a;--surface-dark:#06080a;--surface-muted:#202833;--line:rgba(124,255,107,0.12);--line-strong:rgba(124,255,107,0.2);--text:#f3f7fb;--muted:#9ca8b5;--muted-soft:#6f7d8b;--primary:#7cff6b;--primary-soft:#b3ffa8;--secondary:#5ee6ff;--shadow-soft:0 24px 60px rgba(3,6,10,0.38);--shadow-glow:0 0 0 1px rgba(124,255,107,0.08),0 22px 48px rgba(6,14,8,0.4);--radius-md:1rem;--radius-lg:1.5rem;--content-width:1536px}*{box-sizing:border-box}html{scroll-behavior:smooth}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light;--bg:#f7f3ea;--surface-light:#fffdf8;--surface-soft:#efe8dc;--surface-dark:#151515;--surface-muted:#24211d;--line:rgba(56,45,21,0.08);--line-strong:rgba(56,45,21,0.14);--text:#161311;--muted:#685f56;--muted-soft:#9d9288;--primary:#4d6400;--primary-soft:#d5fb76;--secondary:#0d7180;--shadow-soft:0 24px 44px rgba(55,40,16,0.08);--shadow-glow:0 18px 32px rgba(55,40,16,0.1)}section[id]{scroll-margin-top:120px}body{margin:0;min-width:320px;color:var(--text);background:var(--bg);font-family:var(--font-body),sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.shell{width:min(calc(100% - 48px),var(--content-width));margin:0 auto}.portfolio-page{background:var(--bg)}.topbar{position:fixed;top:0;z-index:50;width:100%;background:rgba(11,13,16,.78);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(124,255,107,.08);transition:background-color .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1)}.topbar__inner{width:min(calc(100% - 48px),var(--content-width));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;transition:padding .22s cubic-bezier(.22,1,.36,1),gap .22s cubic-bezier(.22,1,.36,1)}.topbar.is-scrolled{background:rgba(11,13,16,.92);border-bottom-color:rgba(124,255,107,.12);box-shadow:0 16px 36px rgba(3,6,10,.22)}.topbar.is-scrolled .topbar__inner{gap:20px;padding:18px 0}.topbar__brand{font-family:var(--font-display),sans-serif;font-size:1.25rem;font-weight:800;letter-spacing:-.04em}.topbar__actions,.topbar__nav{display:flex;align-items:center;gap:24px}.theme-toggle{width:52px;height:32px;padding:0;border:1px solid rgba(124,255,107,.12);border-radius:999px;background:rgba(23,28,34,.82);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.theme-toggle:hover{transform:translateY(-1px);border-color:rgba(124,255,107,.22)}.theme-toggle__track{width:100%;height:100%;background:transparent;padding:3px}.theme-toggle__thumb,.theme-toggle__track{display:inline-flex;align-items:center;border-radius:999px}.theme-toggle__thumb{position:relative;width:26px;height:26px;justify-content:center;background:linear-gradient(135deg,var(--primary-soft),var(--primary));color:#072b05;font-size:.8rem;line-height:1;transform:translateX(0);transition:transform .18s ease}.theme-toggle__icon{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;transition:opacity .18s ease,transform .18s ease}.theme-toggle__icon--moon{opacity:0;transform:scale(.8)}.theme-toggle.is-dark .theme-toggle__thumb{transform:translateX(22px)}.theme-toggle.is-dark .theme-toggle__icon--sun{opacity:0;transform:scale(.8)}.theme-toggle.is-dark .theme-toggle__icon--moon{opacity:1;transform:scale(1)}html[data-theme=dark] .theme-toggle__thumb{transform:translateX(22px)}html[data-theme=dark] .theme-toggle__icon--sun{opacity:0;transform:scale(.8)}html[data-theme=dark] .theme-toggle__icon--moon{opacity:1;transform:scale(1)}.topbar__menu-toggle{display:none}.footer p,.topbar__nav a{font-family:var(--font-display),sans-serif}.topbar__nav a{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;transition:color .18s ease}.topbar__nav a.is-active{color:var(--text);border-bottom:2px solid var(--primary);padding-bottom:4px}.topbar__nav a:focus-visible,.topbar__nav a:hover{color:var(--text)}.locale-switcher{padding:4px;border-radius:999px;border:1px solid rgba(124,255,107,.1);background:rgba(23,28,34,.82)}.locale-switcher,.locale-switcher a{display:inline-flex;align-items:center}.locale-switcher a{border:0;cursor:pointer;justify-content:center;padding:7px 12px;border-radius:999px;background:transparent;color:var(--muted);font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.locale-switcher a.is-active{background:var(--surface-dark);color:var(--text)}.button,.topbar__cta{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;border-radius:999px;font-family:var(--font-body),sans-serif;font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}.topbar__cta{color:#072b05;background:linear-gradient(135deg,var(--primary-soft),var(--primary));box-shadow:0 14px 32px rgba(124,255,107,.18)}.button:hover,.topbar__cta:hover{transform:translateY(-1px)}.topbar__cta:hover{background:linear-gradient(135deg,var(--primary),#61f24e)}.button{border:1px solid transparent}.button--primary{color:#072b05;background:linear-gradient(135deg,var(--primary-soft),var(--primary));box-shadow:0 16px 40px rgba(124,255,107,.16)}.button--primary:hover{background:linear-gradient(135deg,var(--primary),#61f24e)}.button--primary:hover .button__icon{transform:translateX(2px)}.button__icon{width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease}.button__icon svg{width:100%;height:100%;display:block}.button__icon--inline{width:.95rem;height:.95rem}.button--ghost{color:var(--text);border-color:rgba(124,255,107,.14);background:rgba(23,28,34,.9)}.button--ghost:hover{background:rgba(32,40,51,.94)}.button--disabled,.button--disabled:hover{cursor:default;opacity:.62;transform:none;background:var(--surface-light)}.page-loader{position:fixed;inset:0;z-index:999;display:grid;place-items:center;background:radial-gradient(circle at 50% 65%,rgba(124,255,107,.14),transparent 28%),#0b0d10;color:var(--text)}.page-loader__core{display:grid;justify-items:center;grid-gap:18px;gap:18px}.page-loader__ring{width:64px;height:64px;border-radius:999px;border:2px solid rgba(243,247,251,.12);border-top:2px solid var(--primary);animation:spin .9s linear infinite}.page-loader__label{font-family:var(--font-display),sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.hero{position:relative;min-height:100vh;overflow:hidden;padding-top:132px;padding-bottom:72px}.cta__leak,.hero__leak{position:absolute;pointer-events:none;background:radial-gradient(circle at center,rgba(124,255,107,.16),transparent 70%)}.hero__leak{top:0;right:0;width:800px;height:800px;transform:translate(25%,-50%);opacity:.6}.cta__inner,.hero__grid,.projects-grid,.section-heading--split{position:relative;z-index:1}.hero__grid{min-height:calc(100vh - 132px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:48px;gap:48px;align-items:center}.hero__content{grid-column:span 8}.hero__media{grid-column:span 4;position:relative}.hero__badge{width:-moz-fit-content;width:fit-content;padding:8px 16px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.cta h2,.experience-card h3,.hero h1,.process-card h3,.project-card h3,.section-heading h2,.skill-card h3{margin:0;font-family:var(--font-display),sans-serif;font-weight:800;letter-spacing:-.06em}.hero h1{margin-top:28px;margin-bottom:24px;font-size:clamp(4rem,8vw,8rem);line-height:.9}.hero h1 span{color:var(--primary)}.hero h1 strong{display:inline-block;margin-top:8px;padding:6px 16px;border-radius:12px;background:linear-gradient(135deg,rgba(124,255,107,.32),rgba(124,255,107,.18));border:1px solid rgba(124,255,107,.28)}.cta__inner p,.experience-card p,.hero__content p,.process-card p,.section-heading p,.skill-card p{color:var(--muted);line-height:1.7}.hero__content>p{max-width:40rem;margin:0 0 36px;font-size:1.2rem;font-weight:300}.cta__buttons,.hero__buttons{display:flex;flex-wrap:wrap;gap:16px}.hero__image-frame{position:relative;overflow:hidden;aspect-ratio:4/5;border-radius:1.5rem;border:1px solid rgba(124,255,107,.1);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0)),var(--surface-light);box-shadow:var(--shadow-soft);transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1)}.hero__image-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(124,255,107,.08),transparent 34%,rgba(6,8,10,.1));opacity:0;transition:opacity .22s cubic-bezier(.22,1,.36,1);pointer-events:none}.hero__image-frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .72s cubic-bezier(.22,1,.36,1)}.hero__media:focus-within .hero__image-frame,.hero__media:hover .hero__image-frame{transform:translate3d(0,-6px,0);border-color:rgba(124,255,107,.18);box-shadow:0 32px 72px rgba(3,6,10,.42)}.hero__media:focus-within .hero__image-frame:after,.hero__media:hover .hero__image-frame:after{opacity:1}.hero__media:focus-within .hero__image-frame img,.hero__media:hover .hero__image-frame img{transform:scale(1.035)}.hero__status{position:absolute;left:-14px;bottom:-14px;display:grid;grid-gap:6px;gap:6px;max-width:182px;padding:12px 14px;border-radius:14px;border:1px solid rgba(124,255,107,.1);background:rgba(23,28,34,.9);box-shadow:var(--shadow-glow);transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),background-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1)}.hero__status-head{display:inline-flex;align-items:center;gap:8px}.hero__status-badge{width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(10,102,194,.14);color:#0a66c2;flex:0 0 1.6rem;transition:background-color .22s cubic-bezier(.22,1,.36,1),color .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.hero__status-badge svg{width:.72rem;height:.72rem;display:block}.hero__status p{margin:0;color:var(--muted);font-size:.54rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero__status strong{display:block;font-size:.72rem;line-height:1.35;letter-spacing:-.01em}.hero__status-link{display:inline-flex;align-items:center;gap:6px;margin-top:0;color:var(--primary);font-family:var(--font-body),sans-serif;font-size:.5rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero__status:focus-visible,.hero__status:hover{transform:translate3d(0,-5px,0);border-color:rgba(124,255,107,.24);background:rgba(27,37,30,.96);box-shadow:0 0 0 1px rgba(124,255,107,.08),0 22px 44px rgba(6,14,8,.34)}.hero__status:focus-visible .hero__status-badge,.hero__status:hover .hero__status-badge{background:rgba(124,255,107,.14);color:var(--primary);transform:scale(1.05)}.process{padding:140px 0 120px;color:var(--text);background:linear-gradient(180deg,#0f1318,#0a0d11)}.section-heading{margin-bottom:64px}.section-heading--split{display:flex;align-items:flex-end;justify-content:space-between;gap:48px}.section-heading--split span{display:block;margin-bottom:18px;color:var(--primary);font-size:.72rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase}.cta h2,.section-heading h2{font-size:clamp(3rem,6vw,6rem)}.section-heading--split p{max-width:22rem;color:var(--muted);font-size:1.12rem}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.process-card{position:relative;overflow:hidden;padding:40px;border-radius:18px;border:1px solid rgba(124,255,107,.08);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)),var(--surface-light);box-shadow:var(--shadow-soft);transition:background-color .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.process-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(124,255,107,.18),transparent 36%);opacity:0;transition:opacity .22s cubic-bezier(.22,1,.36,1);pointer-events:none}.process-card:hover{background:linear-gradient(180deg,rgba(124,255,107,.24),rgba(124,255,107,.08)),#1b2818;border-color:rgba(124,255,107,.28);box-shadow:0 0 0 1px rgba(124,255,107,.08),0 24px 46px rgba(4,10,7,.44);transform:translate3d(0,-8px,0)}.process-card:hover:after{opacity:1}.process-card__index{display:block;margin-bottom:32px;color:rgba(243,247,251,.1);font-family:var(--font-display),sans-serif;font-size:3.8rem;font-weight:800;position:relative;z-index:1}.process-card h3{margin-bottom:16px;font-size:1.35rem;position:relative;z-index:1}.process-card p{color:var(--muted);font-size:.94rem;position:relative;z-index:1}.process-card:hover p{color:rgba(243,247,251,.86)}.projects,.skills{padding:120px 0;background:var(--bg)}.projects{border-top:1px solid rgba(124,255,107,.08);border-bottom:1px solid rgba(124,255,107,.08)}.section-heading--center{max-width:44rem;margin-left:auto;margin-right:auto;text-align:center}.section-heading--center p{font-size:1rem}.skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:32px;gap:32px;align-items:stretch}.skill-card{position:relative;overflow:hidden;padding:48px;border-radius:18px;border:1px solid rgba(124,255,107,.1);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0)),var(--surface-light);box-shadow:var(--shadow-soft);transition:background-color .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.skill-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(124,255,107,.16),transparent 36%);opacity:0;transition:opacity .22s cubic-bezier(.22,1,.36,1);pointer-events:none}.skill-card:hover{background:linear-gradient(180deg,rgba(124,255,107,.22),rgba(124,255,107,.06)),#1a2519;border-color:rgba(124,255,107,.26);transform:translate3d(0,-8px,0);box-shadow:0 0 0 1px rgba(124,255,107,.08),0 24px 48px rgba(6,14,8,.34)}.skill-card:hover:after{opacity:1}.skill-card--featured{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0)),var(--surface-light);box-shadow:var(--shadow-soft)}.skill-card__icon{position:absolute;top:20px;right:20px;width:96px;height:96px;display:inline-flex;align-items:center;justify-content:center;opacity:.14;line-height:1;pointer-events:none;transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);color:currentColor;z-index:0}.skill-card__icon svg{width:100%;height:100%;display:block}.skill-card h3{margin-bottom:20px;font-size:1.9rem}.skill-card h3,.skill-card p,.skill-card__tags{position:relative;z-index:1}.skill-card:hover .skill-card__icon{opacity:.24;transform:translate3d(-4px,4px,0) scale(1.04)}.skill-card__tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:28px 0 0}.skill-card__tags li{padding:8px 14px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.skill-card--featured .skill-card__tags li,.skill-card__tags li{background:rgba(94,230,255,.08);color:var(--secondary)}.skill-card--featured:hover{background:linear-gradient(180deg,rgba(124,255,107,.22),rgba(124,255,107,.06)),#1a2519;border-color:rgba(124,255,107,.26);box-shadow:0 0 0 1px rgba(124,255,107,.08),0 24px 48px rgba(6,14,8,.34)}.projects-soon{transition:background-color .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.projects-soon:hover{background:radial-gradient(circle at 20% 50%,rgba(124,255,107,.24),transparent 30%),linear-gradient(180deg,rgba(124,255,107,.14),rgba(124,255,107,.03)),var(--surface-light);border-color:rgba(124,255,107,.24);box-shadow:0 0 0 1px rgba(124,255,107,.08),0 24px 48px rgba(6,14,8,.3);transform:translate3d(0,-8px,0)}.project-card{display:grid;grid-gap:24px;gap:24px}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:48px;gap:48px;align-items:start}.projects-soon{display:grid;grid-template-columns:220px minmax(0,1fr) auto;align-items:center;grid-gap:40px;gap:40px;padding:48px;border:1px solid rgba(124,255,107,.1);border-radius:24px;background:radial-gradient(circle at 20% 50%,rgba(124,255,107,.14),transparent 28%),var(--surface-light);box-shadow:var(--shadow-soft)}.projects-soon__visual{position:relative;display:grid;place-items:center;width:180px;aspect-ratio:1;border-radius:999px;background:radial-gradient(circle,rgba(124,255,107,.12),transparent 65%);transition:transform .22s cubic-bezier(.22,1,.36,1)}.projects-soon__core,.projects-soon__ring{position:absolute;border-radius:999px}.projects-soon__ring{border:1px solid rgba(124,255,107,.16);opacity:.72;transition:opacity .22s cubic-bezier(.22,1,.36,1)}.projects-soon__ring--outer{inset:0;animation:orbit 7s linear infinite}.projects-soon__ring--inner{inset:22px;border-color:rgba(94,230,255,.24);animation:orbitReverse 5.4s linear infinite}.projects-soon__core{width:52px;height:52px;background:var(--primary);box-shadow:0 0 0 10px rgba(124,255,107,.12),0 12px 28px rgba(7,43,5,.28);transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1)}.projects-soon:hover .projects-soon__visual{transform:translate3d(0,-4px,0) scale(1.02)}.projects-soon:hover .projects-soon__ring{opacity:.88}.projects-soon:hover .projects-soon__core{transform:scale(1.04);box-shadow:0 0 0 12px rgba(124,255,107,.14),0 16px 32px rgba(7,43,5,.3)}.projects-soon__copy span{display:inline-block;margin-bottom:16px;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase}.projects-soon__copy h3{margin:0 0 14px;font-family:var(--font-display),sans-serif;font-size:clamp(2rem,3vw,3rem);font-weight:800;letter-spacing:-.06em}.projects-soon__copy p{max-width:36rem;margin:0;color:var(--muted);line-height:1.75}.project-card--offset{margin-top:96px}.project-card__image{position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:18px;border:1px solid rgba(124,255,107,.08);background:var(--surface-soft)}.project-card__image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform .28s ease,filter .28s ease}.project-card:hover .project-card__image img{transform:scale(1.05);filter:grayscale(0)}.project-card__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.project-card__meta span{display:block;margin-bottom:10px;color:var(--muted);font-size:.64rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.project-card h3{font-size:2rem}.project-card__arrow{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(124,255,107,.14);font-size:1rem;transition:background-color .18s ease,color .18s ease}.project-card:hover .project-card__arrow{background:var(--primary);color:#072b05}.section-heading--projects{align-items:flex-start}.section-heading--projects h2{font-size:clamp(3.5rem,7vw,7rem);text-transform:uppercase}.section-heading--projects p{margin:0 0 20px;max-width:16rem;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.section-heading--projects a{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body),sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.cta{position:relative;overflow:hidden;padding:140px 0;background:linear-gradient(180deg,rgba(32,40,51,.32),rgba(11,13,16,0)),var(--bg)}.cta__leak{left:0;bottom:0;width:800px;height:800px;transform:translate(-25%,50%);opacity:.3}.cta__inner{text-align:center}.cta h2{margin-bottom:32px;text-transform:uppercase}.cta h2 span{color:var(--primary)}.cta__copy{max-width:44rem;margin:0 auto 48px}.cta__inner p{max-width:44rem;margin:0 auto;font-size:1.2rem;font-weight:300}.cta__email{display:inline-flex;margin-top:24px;color:var(--text);font-family:var(--font-display),sans-serif;font-size:1rem;font-weight:700;letter-spacing:-.02em;transition:color .18s ease}.cta__email:focus-visible,.cta__email:hover{color:var(--primary)}.cta__links{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:32px;margin-bottom:16px}.cta__social{display:inline-flex;align-items:center;gap:8px;color:var(--muted);transition:color .18s ease}.cta__social:focus-visible,.cta__social:hover{color:var(--primary)}.cta__social-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex:0 0 1.25rem}.cta__social-icon svg{display:block;width:1.25rem;height:1.25rem}.cta__social span:last-child{font-family:var(--font-body),sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.cta__buttons{justify-content:center}.footer{padding:48px 0;background:#06080a}.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer p,.footer__links a{margin:0;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.footer__links{display:flex;align-items:center;flex-wrap:wrap;gap:32px}.footer__links a{transition:color .18s ease}.footer__links a:focus-visible,.footer__links a:hover{color:var(--text)}.footer__links a.is-highlighted{color:var(--primary)}.cta,.process,.projects,.skills{content-visibility:auto;contain-intrinsic-size:1px 900px}[data-reveal]{--reveal-delay:0ms;--reveal-duration:720ms;--reveal-translate-x:0px;--reveal-translate-y:32px;--reveal-scale:1;--reveal-rotate:0deg}[data-reveal-variant=fade-up]{--reveal-translate-y:26px}[data-reveal-variant=hero-title]{--reveal-duration:780ms;--reveal-translate-y:42px}[data-reveal-variant=hero-media]{--reveal-duration:820ms;--reveal-translate-x:26px;--reveal-translate-y:18px;--reveal-scale:0.965}[data-reveal-variant=card-rise]{--reveal-duration:720ms;--reveal-translate-y:28px;--reveal-scale:0.985}[data-reveal-variant=feature-rise]{--reveal-duration:780ms;--reveal-translate-x:12px;--reveal-translate-y:32px;--reveal-scale:0.985}[data-reveal-variant=cta-rise]{--reveal-duration:760ms;--reveal-translate-y:30px;--reveal-scale:0.99}@media (prefers-reduced-motion:no-preference){html[data-motion=enhanced] [data-reveal]{opacity:0;transform:translate3d(var(--reveal-translate-x),var(--reveal-translate-y),0) scale(var(--reveal-scale)) rotate(var(--reveal-rotate));transition:opacity var(--reveal-duration) cubic-bezier(.22,1,.36,1),transform var(--reveal-duration) cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay);will-change:opacity,transform}html[data-motion=enhanced] [data-reveal].is-visible{opacity:1;transform:translateZ(0) scale(1) rotate(0deg);will-change:auto}}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}.hero__image-frame,.hero__image-frame img,.hero__status,.hero__status-badge,.process-card,.process-card:after,.projects-soon,.projects-soon__core,.projects-soon__ring,.projects-soon__visual,.skill-card,.skill-card:after,.skill-card__icon,.topbar,.topbar__inner,[data-reveal]{transition:none}.projects-soon__ring--inner,.projects-soon__ring--outer{animation:none}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes orbit{to{transform:rotate(1turn)}}@keyframes orbitReverse{to{transform:rotate(-1turn)}}@media (max-width:1080px){.hero__grid,.process-grid,.projects-grid,.skills-grid{grid-template-columns:1fr 1fr}.hero__content,.hero__media{grid-column:span 2}.section-heading--split{flex-direction:column;align-items:start}.projects-soon{grid-template-columns:1fr;justify-items:start}}@media (max-width:760px){.shell,.topbar__inner{width:min(calc(100% - 28px),var(--content-width))}.topbar{background:rgba(11,13,16,.92)}.topbar__inner{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:16px;gap:16px;padding:18px 0}.topbar__brand{width:auto;font-size:1rem}.topbar__menu-toggle{width:48px;height:48px;display:inline-grid;justify-items:center;align-content:center;gap:5px;border:1px solid rgba(124,255,107,.12);border-radius:16px;background:rgba(23,28,34,.94);color:var(--text);cursor:pointer}.topbar__menu-toggle span{width:18px;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.topbar__menu-toggle.is-open span:first-child{transform:translateY(7px) rotate(45deg)}.topbar__menu-toggle.is-open span:nth-child(2){opacity:0}.topbar__menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.topbar__actions,.topbar__nav{display:none;width:100%}.topbar__actions.is-open,.topbar__nav.is-open{display:flex}.topbar__nav{grid-column:1/-1;flex-direction:column;align-items:flex-start;gap:12px;padding:18px;border:1px solid rgba(124,255,107,.1);border-radius:24px;background:rgba(23,28,34,.96);box-shadow:var(--shadow-soft)}.topbar__nav a{width:100%;padding-bottom:0;border-bottom:0}.topbar__nav a.is-active{padding-bottom:0;color:var(--primary);border-bottom:0}.topbar__actions{grid-column:1/-1;flex-direction:column;align-items:stretch;gap:12px}.theme-toggle{width:52px;align-self:flex-start}.locale-switcher{width:-moz-fit-content;width:fit-content}.footer__inner{align-items:flex-start}.footer__links{gap:18px}.cta,.experience,.hero,.process,.projects,.skills{padding-top:96px}.hero{min-height:auto}.hero__grid,.process-grid,.projects-grid,.skills-grid{grid-template-columns:1fr}.hero__content,.hero__media{grid-column:span 1}.cta h2,.hero h1,.section-heading h2{font-size:clamp(3rem,16vw,4.8rem)}.cta__inner p,.hero__content>p{font-size:1rem}.button,.topbar__cta{width:100%}.cta__links{flex-wrap:wrap;gap:20px}.project-card--offset{margin-top:0}.projects-soon{padding:28px;gap:24px}.projects-soon__visual{width:140px}.hero__status{position:static;margin-top:18px;max-width:none}}html[data-theme=light] .topbar{background:rgba(247,243,234,.82);border-bottom:1px solid rgba(56,45,21,.06)}html[data-theme=light] .topbar.is-scrolled{background:rgba(247,243,234,.94);border-bottom-color:rgba(56,45,21,.1);box-shadow:0 14px 32px rgba(55,40,16,.08)}html[data-theme=light] .topbar__nav a.is-active,html[data-theme=light] .topbar__nav a:focus-visible,html[data-theme=light] .topbar__nav a:hover{color:#000000}html[data-theme=light] .topbar__nav a.is-active{border-bottom-color:var(--primary)}html[data-theme=light] .locale-switcher{border-color:rgba(56,45,21,.08);background:var(--surface-soft)}html[data-theme=light] .locale-switcher a.is-active{background:#161311;color:#ffffff}html[data-theme=light] .theme-toggle{border-color:rgba(56,45,21,.1);background:var(--surface-light)}html[data-theme=light] .theme-toggle__track{background:transparent}html[data-theme=light] .theme-toggle__thumb{color:#ffffff;background:linear-gradient(135deg,#161311,#38312a)}html[data-theme=light] .button--primary,html[data-theme=light] .topbar__cta{color:#ffffff;background:#161311;box-shadow:0 16px 40px rgba(22,19,17,.14)}html[data-theme=light] .button--primary:hover,html[data-theme=light] .topbar__cta:hover{background:var(--primary);color:#ffffff}html[data-theme=light] .button--ghost{color:var(--text);border-color:rgba(56,45,21,.1);background:var(--surface-light)}html[data-theme=light] .button--ghost:hover{background:#f3ede3}html[data-theme=light] .page-loader{background:radial-gradient(circle at 50% 65%,rgba(213,251,118,.16),transparent 28%),#f7f3ea;color:var(--text)}html[data-theme=light] .page-loader__ring{border-color:rgba(0,0,0,.14);border-top-color:var(--primary)}html[data-theme=light] .cta__leak,html[data-theme=light] .hero__leak{background:radial-gradient(circle at center,rgba(213,251,118,.18),transparent 70%)}html[data-theme=light] .hero h1 strong{background:#cafd00;border-color:rgba(78,99,0,.08)}html[data-theme=light] .hero__image-frame{border-color:rgba(56,45,21,.07);background:var(--surface-soft)}html[data-theme=light] .hero__image-frame:after{background:linear-gradient(180deg,rgba(213,251,118,.1),transparent 34%,rgba(56,45,21,.04))}html[data-theme=light] .hero__status{border-color:rgba(56,45,21,.07);background:var(--surface-light);box-shadow:0 20px 40px rgba(55,40,16,.08)}html[data-theme=light] .hero__status-badge{background:rgba(10,102,194,.12);color:#0a66c2}html[data-theme=light] .hero__status-link{color:var(--primary)}html[data-theme=light] .hero__status:focus-visible,html[data-theme=light] .hero__status:hover{border-color:rgba(77,100,0,.16);background:linear-gradient(180deg,rgba(213,251,118,.22),rgba(213,251,118,.06)),var(--surface-light);box-shadow:0 22px 44px rgba(122,150,40,.12)}html[data-theme=light] .process{color:var(--text);background:linear-gradient(180deg,#f0eadf,#f7f3ea)}html[data-theme=light] .section-heading--split span{color:var(--primary)}html[data-theme=light] .process-card{border-color:rgba(56,45,21,.08);background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,0)),var(--surface-light);box-shadow:0 12px 28px rgba(55,40,16,.06)}html[data-theme=light] .process-card__index{color:rgba(56,45,21,.14)}html[data-theme=light] .process-card:hover{background:linear-gradient(180deg,rgba(213,251,118,.42),rgba(213,251,118,.14)),#f5fadb;border-color:rgba(77,100,0,.22);box-shadow:0 20px 40px rgba(122,150,40,.14)}html[data-theme=light] .process-card:hover h3{color:#20200f}html[data-theme=light] .process-card:hover p{color:#4f5737}html[data-theme=light] .cta,html[data-theme=light] .projects,html[data-theme=light] .skills{background:var(--bg)}html[data-theme=light] .projects{border-top-color:rgba(56,45,21,.06);border-bottom-color:rgba(56,45,21,.06)}html[data-theme=light] .skill-card{border-color:rgba(56,45,21,.08);background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,0)),var(--surface-light);box-shadow:0 10px 24px rgba(55,40,16,.05)}html[data-theme=light] .skill-card:hover{background:linear-gradient(180deg,rgba(213,251,118,.38),rgba(213,251,118,.12)),#f6fbde;border-color:rgba(77,100,0,.2);box-shadow:0 20px 40px rgba(122,150,40,.12)}html[data-theme=light] .skill-card--featured{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,0)),var(--surface-light);box-shadow:0 10px 24px rgba(55,40,16,.05)}html[data-theme=light] .skill-card--featured .skill-card__tags li,html[data-theme=light] .skill-card__tags li{background:rgba(13,113,128,.08);color:#0b5561}html[data-theme=light] .skill-card--featured:hover{background:linear-gradient(180deg,rgba(213,251,118,.38),rgba(213,251,118,.12)),#f6fbde;border-color:rgba(77,100,0,.2);box-shadow:0 20px 40px rgba(122,150,40,.12)}html[data-theme=light] .projects-soon{border-color:rgba(56,45,21,.08);background:radial-gradient(circle at 20% 50%,rgba(213,251,118,.18),transparent 28%),var(--surface-light);box-shadow:0 18px 48px rgba(55,40,16,.07)}html[data-theme=light] .projects-soon:hover{background:radial-gradient(circle at 20% 50%,rgba(213,251,118,.28),transparent 30%),linear-gradient(180deg,rgba(213,251,118,.22),rgba(213,251,118,.06)),var(--surface-light);border-color:rgba(77,100,0,.18);box-shadow:0 22px 44px rgba(122,150,40,.12)}html[data-theme=light] .projects-soon__visual{background:radial-gradient(circle,rgba(213,251,118,.16),transparent 65%)}html[data-theme=light] .projects-soon__ring{border-color:rgba(56,45,21,.14)}html[data-theme=light] .projects-soon__ring--inner{border-color:rgba(13,113,128,.18)}html[data-theme=light] .projects-soon__core{background:var(--primary-soft);box-shadow:0 0 0 10px rgba(213,251,118,.18),0 12px 28px rgba(77,100,0,.14)}html[data-theme=light] .project-card__image{border-color:rgba(56,45,21,.07)}html[data-theme=light] .project-card__arrow{border-color:rgba(56,45,21,.1)}html[data-theme=light] .project-card:hover .project-card__arrow{background:#161311;color:#ffffff}html[data-theme=light] .cta{background:linear-gradient(180deg,rgba(213,251,118,.16),rgba(247,243,234,0)),var(--bg)}html[data-theme=light] .cta__copy{max-width:42rem}html[data-theme=light] .cta__social{color:#5f554c}html[data-theme=light] .cta__social:focus-visible,html[data-theme=light] .cta__social:hover{color:var(--primary)}html[data-theme=light] .cta__email{color:#1f1a16}html[data-theme=light] .footer{background:#eee7da;border-top:1px solid rgba(56,45,21,.08)}html[data-theme=light] .footer p,html[data-theme=light] .footer__links a{color:#6d645a}html[data-theme=light] .footer__links a:focus-visible,html[data-theme=light] .footer__links a:hover{color:#161311}html[data-theme=light] .footer__links a.is-highlighted{color:var(--primary)}@media (max-width:760px){html[data-theme=light] .topbar{background:rgba(247,243,234,.94)}html[data-theme=light] .topbar__menu-toggle{border-color:rgba(56,45,21,.08);background:var(--surface-light);color:#161311}html[data-theme=light] .topbar__nav{border-color:rgba(56,45,21,.08);background:var(--surface-light);box-shadow:0 16px 40px rgba(55,40,16,.08)}}