@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.p.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_1089a178-module__VaJgxa__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_1089a178-module__VaJgxa__variable{--font-inter:"Inter", "Inter Fallback"}
.cursor-spotlight{pointer-events:none;z-index:9999;background:radial-gradient(600px circle at var(--x,50%) var(--y,50%), var(--spotlight-color), transparent 60%);position:fixed;inset:0}:root .cursor-spotlight{display:none}[data-theme=dark] .cursor-spotlight{display:block}:root .particles-canvas{display:none}[data-theme=dark] .particles-canvas{display:block}.cursor-blob-canvas{pointer-events:auto;z-index:0;background:linear-gradient(135deg,#f7faff 0%,#edf4ff 48%,#f6f1ff 100%);width:100%;height:100%;position:absolute;inset:0}[data-theme=dark] .cursor-blob-canvas{display:none}.particles-canvas{z-index:0;pointer-events:auto;width:100%;height:100%;position:absolute;inset:0}@media (hover:none),(pointer:coarse){.particles-canvas{pointer-events:none}}
.wave-divider{pointer-events:none;width:100%;line-height:0;position:absolute;bottom:0;left:0;overflow:hidden}.wave-divider svg{width:100%;height:80px;display:block}.hero-waves{z-index:2;width:100%;position:absolute;bottom:0;left:0}.hero-waves__svg{width:100%;height:100px;display:block}.hero-wave{animation:25s cubic-bezier(.55,.5,.45,.5) infinite hero-wave-move}.hero-wave--1{fill:var(--divider-color-1);animation-duration:7s;animation-delay:0s}.hero-wave--2{fill:var(--divider-color-3);opacity:.7;animation-duration:10s;animation-delay:-5s}.hero-wave--3{fill:var(--divider-color-5);opacity:.5;animation-duration:13s;animation-delay:-3s}.hero-wave--4{fill:var(--accent);opacity:.1;animation-duration:20s;animation-delay:-4s}:root:not([data-theme=dark]) .hero-waves{filter:drop-shadow(0 -8px 20px #2563eb14)}:root:not([data-theme=dark]) .hero-wave--1{fill:#2563eb4d}:root:not([data-theme=dark]) .hero-wave--2{fill:#7c3aed38;opacity:.9}:root:not([data-theme=dark]) .hero-wave--3{fill:#0891b233;opacity:.86}:root:not([data-theme=dark]) .hero-wave--4{fill:#ffffffc7;opacity:1}@keyframes hero-wave-move{0%{transform:translate(-90px)}to{transform:translate(85px)}}
.page-loader{z-index:99999;background:var(--bg);transition:opacity .6s,visibility .6s;position:fixed;inset:0}.page-loader--done{opacity:0;visibility:hidden;pointer-events:none}.loader{--c1:#ffbf48;--c2:#be4a1d;--t:2s;--size:1;transform:translate(-50%, -50%) scale(var(--size));width:100px;height:100px;animation:loader-colorize calc(var(--t) * 3) ease-in-out infinite;border-radius:50%;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 0 25px #ffbf4780,0 20px 50px #bf4a1d80}.loader:before{content:"";border-top:1px solid var(--c1);border-bottom:1px solid var(--c2);background:linear-gradient(#ffbf4740,#bf4a1d80);border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 10px 10px #ffbf4780,inset 0 -10px 10px #bf4a1d80}.loader-inner{-webkit-filter:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"><filter id=\"g\"><feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"5\"/><feColorMatrix values=\"1 0 0 0 0  0 1 0 0 0  0 0 1 0 0  0 0 0 22 -9\"/></filter></svg>#g");border-radius:50%;position:absolute;inset:0;overflow:hidden}.blob{background:linear-gradient(180deg, var(--c1) 30%, var(--c2) 70%);border-radius:42%;position:absolute}.b1{transform-origin:50% 130%;width:44px;height:44px;animation:loader-spin var(--t) linear infinite reverse;top:12px;left:28px}.b2{transform-origin:50% -30%;width:40px;height:40px;animation:loader-spin var(--t) linear infinite;animation-delay:calc(var(--t) / -3);top:18px;left:30px}.b3{transform-origin:-30% -10%;width:30px;height:30px;animation:loader-spin var(--t) linear infinite reverse;top:28px;left:35px}.b4{transform-origin:-30% -10%;width:28px;height:28px;animation:loader-spin var(--t) linear infinite reverse;animation-delay:calc(var(--t) / -2);top:30px;left:36px}.b5{transform-origin:130% -10%;width:30px;height:30px;animation:loader-spin var(--t) linear infinite;top:28px;left:35px}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes loader-colorize{0%{filter:hue-rotate()}20%{filter:hue-rotate(-30deg)}40%{filter:hue-rotate(-60deg)}60%{filter:hue-rotate(-90deg)}80%{filter:hue-rotate(-45deg)}to{filter:hue-rotate()}}
.contact-modal{z-index:10000;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#030712ad;place-items:center;padding:1.25rem;animation:.18s ease-out contact-modal-fade;display:grid;position:fixed;inset:0}.contact-modal__dialog{text-align:left;width:min(100%,660px);max-height:min(90vh,780px);color:var(--fg);background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 35%), color-mix(in srgb, var(--card-bg) 94%, transparent);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));box-shadow:0 30px 90px #00000059, 0 0 50px color-mix(in srgb, var(--accent) 10%, transparent);border-radius:24px;padding:clamp(1.5rem,5vw,2.5rem);animation:.24s cubic-bezier(.22,1,.36,1) contact-modal-rise;position:relative;overflow-y:auto}.contact-modal__close{z-index:1;border:1px solid var(--border);width:2.5rem;height:2.5rem;color:var(--fg-muted);background:color-mix(in srgb, var(--card-bg) 80%, transparent);font:inherit;cursor:pointer;transition:color var(--transition), border-color var(--transition), transform var(--transition);border-radius:50%;place-items:center;font-size:1.5rem;line-height:1;display:grid;position:absolute;top:1rem;right:1rem}.contact-modal__close:hover{color:var(--accent);border-color:var(--accent);transform:rotate(8deg)}.contact-modal__intro{margin-bottom:1.75rem;padding-right:2.5rem}.contact-modal__eyebrow{color:var(--accent);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem;font-weight:700;display:block}.contact-modal__intro h3,.contact-modal__success h3{margin-bottom:.6rem;font-size:clamp(1.75rem,5vw,2.35rem)}.contact-modal__intro p,.contact-modal__success p{max-width:520px;color:var(--fg-muted);line-height:1.55}.contact-form,.contact-form label{gap:.55rem;display:grid}.contact-form{gap:1.15rem}.contact-form__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-form label>span{font-size:var(--text-sm);color:var(--fg);font-weight:650}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--border);width:100%;color:var(--fg);background:color-mix(in srgb, var(--bg) 72%, transparent);font:inherit;transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);border-radius:12px;padding:.78rem .9rem;line-height:1.4}.contact-form textarea{resize:none;height:140px;min-height:140px;max-height:140px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:color-mix(in srgb, var(--fg-muted) 72%, transparent)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--accent);background:var(--bg);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent);outline:none}.contact-form label small{color:var(--fg-muted);font-size:var(--text-xs);justify-self:end;margin-top:-.35rem}.contact-form__honeypot{width:1px;height:1px;left:-10000px;overflow:hidden;position:absolute!important}.contact-form__turnstile{min-height:0;overflow:hidden}.contact-form__turnstile:empty{display:none}.contact-form__error{color:#ef4444;font-size:var(--text-sm);background:#ef444414;border:1px solid #ef444459;border-radius:10px;padding:.7rem .85rem;line-height:1.4}.contact-form__fallback-title{color:var(--fg);margin-top:.65rem;font-weight:650}.contact-form__fallback-links{flex-wrap:wrap;gap:.55rem;margin-top:.55rem;display:flex}.contact-form__fallback-links a{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:999px;padding:.4rem .7rem;font-weight:650;text-decoration:none}.contact-form__fallback-links a:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.contact-form__footer{justify-content:space-between;align-items:center;gap:1.25rem;margin-top:.25rem;display:flex}.contact-form__footer p{max-width:280px;color:var(--fg-muted);font-size:var(--text-xs);line-height:1.4}.contact-form__submit,.contact-modal__secondary{border:1px solid var(--accent);min-height:46px;color:var(--bg);background:var(--accent);font:inherit;cursor:pointer;transition:background var(--transition), transform var(--transition), box-shadow var(--transition);border-radius:999px;justify-content:center;align-items:center;gap:.65rem;padding:.75rem 1.25rem;font-weight:700;display:inline-flex}.contact-form__submit:hover,.contact-modal__secondary:hover{background:var(--accent-hover);box-shadow:0 10px 30px color-mix(in srgb, var(--accent) 28%, transparent);transform:translateY(-2px)}.contact-form__submit:disabled{cursor:wait;opacity:.65;transform:none}.contact-modal__success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:360px;display:flex}.contact-modal__success-icon{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);width:4.25rem;height:4.25rem;color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:50%;place-items:center;margin-bottom:1.25rem;font-size:2rem;display:grid}.contact-modal__secondary{margin-top:1.5rem}@keyframes contact-modal-fade{0%{opacity:0}}@keyframes contact-modal-rise{0%{opacity:0;transform:translateY(18px)scale(.98)}}@media (max-width:600px){.contact-modal{align-items:end;padding:0}.contact-modal__dialog{width:100%;max-height:94dvh;padding:1.5rem 1.1rem calc(1.25rem + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.contact-form__row{grid-template-columns:1fr}.contact-form__footer{flex-direction:column-reverse;align-items:stretch}.contact-form__submit{width:100%}}@media (prefers-reduced-motion:reduce){.contact-modal,.contact-modal__dialog{animation:none}}
.project-page{padding-bottom:4rem}.pdetail__hero{border-bottom:1px solid var(--border);margin-bottom:3rem;padding:8rem 0 4rem}.pdetail__back{font-size:var(--text-sm);color:var(--accent);transition:opacity var(--transition);margin-bottom:2rem;display:block}.pdetail__back:hover{opacity:.7}.pdetail__period{font-size:var(--text-sm);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;display:block}.pdetail__title{letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2rem,5vw,3rem);font-weight:700}.pdetail__meta{margin-bottom:1.5rem}.pdetail__team{font-size:var(--text-sm);color:var(--fg-muted);background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:.3rem .8rem}.pdetail__tech-row{flex-wrap:wrap;gap:.5rem;display:flex}.pdetail__tech-tag{background:var(--bg-secondary);font-size:var(--text-sm);border:1px solid var(--border);transition:border-color var(--transition), color var(--transition);border-radius:20px;padding:.3rem .8rem;font-weight:500}.pdetail__tech-tag:hover{border-color:var(--accent);color:var(--accent)}.pdetail__section{margin-bottom:3rem}.pdetail__section-title{margin-bottom:1.5rem;font-size:1.4rem;position:relative}.pdetail__section-title:after{content:"";background:var(--accent);border-radius:2px;width:40px;height:2px;margin-top:.5rem;display:block}.pdetail__description{color:var(--fg-muted);max-width:800px;font-size:1.05rem;line-height:1.8}.pdetail__profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,6vw,5rem);display:grid}.pdetail__profile-tags{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.pdetail__profile-tags li{color:var(--fg-muted);font-size:var(--text-xs);background:var(--bg-secondary);border:1px solid var(--border);border-radius:20px;padding:.3rem .8rem;font-weight:500}.pdetail__list{max-width:800px;list-style:none}.pdetail__list-item{color:var(--fg-muted);font-size:var(--text-base);border-bottom:1px solid var(--border);gap:.75rem;padding:.6rem 0;line-height:1.6;display:flex}.pdetail__list-item:last-child{border-bottom:none}.pdetail__list-marker{color:var(--accent);flex-shrink:0;margin-top:2px;font-weight:600}.pdetail__achievements{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.pdetail__achievement{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);padding:1.5rem}.pdetail__achievement:hover{border-color:var(--accent)}.pdetail__achievement-marker{background:var(--accent);border-radius:2px;width:2rem;height:2px;margin-bottom:1rem;display:block}.pdetail__achievement p{color:var(--fg-muted);font-size:var(--text-sm);line-height:1.6}.pdetail__nav-bottom{text-align:center;border-top:1px solid var(--border);padding-top:2rem}
.not_found_page{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.25rem,3vw,2rem);width:100%;min-height:100vh;padding:clamp(1rem,4vh,3rem) 0;display:flex;overflow:hidden}.not_found_body{justify-content:center;align-items:center;width:100vw;max-width:none;margin:0;display:flex}.not_found_container,.not_found_main{width:100%}.not_found_main{margin:0}.not_found_svg{width:100%;height:auto;display:block;overflow:visible}.not_found_btn{z-index:2;color:#385f82;transition:color var(--transition), background var(--transition), border-color var(--transition), transform var(--transition), box-shadow var(--transition);background:#ffffffd1;border:2px solid #5d89af;border-radius:999px;padding:.75rem 1.6rem;font-weight:700;line-height:1.2;text-decoration:none;position:relative;box-shadow:0 10px 24px #5d89af29}.not_found_btn:hover{color:#fff;background:#5d89af;border-color:#5d89af;transform:translateY(-2px);box-shadow:0 12px 28px #5d89af47}.not_found_st0{fill:#fff}.not_found_st2{fill:#5d89af}.not_found_st3{fill:#709abf}.not_found_st4,.not_found_st6{fill:#fff;stroke:#b3dcdf;stroke-miterlimit:10}.not_found_st6{stroke:#5d89af;stroke-width:2px}.not_found_st7,.not_found_st8,.not_found_st9{stroke:#709abf;stroke-miterlimit:10}.not_found_st7{fill:none;stroke-width:5px;stroke-linecap:round}.not_found_st8{fill:#fff}.not_found_st9{fill:none}#not_found_cloud1{animation:15s linear infinite not_found_cloud003}#not_found_cloud2{animation:25s linear infinite not_found_cloud002}#not_found_cloud3{animation:20s linear infinite not_found_cloud003}#not_found_cloud4{animation:4s linear infinite not_found_float}#not_found_cloud5{animation:8s linear infinite not_found_float}#not_found_tracks{will-change:transform;animation:90ms linear infinite not_found_tracks_move}#not_found_bumps{animation:10s linear infinite not_found_land}#not_found_car-layers{animation:.35s linear infinite not_found_jig}#not_found_bracefront,#not_found_braceback{animation:1s linear infinite not_found_braces}@keyframes not_found_jig{0%,to{transform:translateY(0)}50%{transform:translateY(1px)}}@keyframes not_found_land{0%{transform:translate(0)}to{transform:translate(1000px)}}@keyframes not_found_tracks_move{0%{transform:translate(0)}to{transform:translate(10px)}}@keyframes not_found_cloud002{0%{transform:translate(-1000px)translateY(3px)}to{transform:translate(1000px)translateY(0)}}@keyframes not_found_cloud003{0%{transform:translate(-1000px)translateY(3px)}to{transform:translate(1000px)translateY(0)}}@keyframes not_found_float{0%,to{transform:translateY(0)translate(0)}50%{transform:translateY(8px)translate(5px)}}@keyframes not_found_braces{0%,50%,to{transform:translate(-2px)}25%,75%{transform:translate(3px)}}[data-theme=dark] .not_found_page{background:#0a1018}[data-theme=dark] .not_found_st0{fill:#0a1018}[data-theme=dark] .not_found_st2{fill:#63a9d6}[data-theme=dark] .not_found_st3{fill:#8bc5e8}[data-theme=dark] .not_found_st4,[data-theme=dark] .not_found_st6{fill:#121e2b;stroke:#31556d}[data-theme=dark] .not_found_st6{stroke:#63a9d6}[data-theme=dark] .not_found_st7,[data-theme=dark] .not_found_st8,[data-theme=dark] .not_found_st9{stroke:#8bc5e8}[data-theme=dark] .not_found_st8{fill:#121e2b}[data-theme=dark] #not_found_water{fill:#162b3a}[data-theme=dark] #not_found_train>path:first-child{fill:#31556d}[data-theme=dark] .not_found_btn{color:#b8e1f7;background:#121e2be0;border-color:#63a9d6;box-shadow:0 10px 24px #00000047}[data-theme=dark] .not_found_btn:hover{color:#071019;background:#8bc5e8;border-color:#8bc5e8}@media (max-width:600px){.not_found_page{padding:1rem 0}.not_found_container{padding:0}.not_found_btn{padding:.7rem 1.35rem}}@media (prefers-reduced-motion:reduce){#not_found_cloud1,#not_found_cloud2,#not_found_cloud3,#not_found_cloud4,#not_found_cloud5,#not_found_tracks,#not_found_bumps,#not_found_car-layers,#not_found_bracefront,#not_found_braceback{animation:none}}
.nav-header{z-index:1000;background:var(--nav-bg);border-bottom:1px solid var(--border);position:fixed;inset:0 0 auto}.nav{max-width:1100px;padding-top:1rem;padding-right:max(clamp(1rem, 5vw, 3rem), env(safe-area-inset-right));padding-bottom:1rem;padding-left:max(clamp(1rem, 5vw, 3rem), env(safe-area-inset-left));justify-content:space-between;align-items:center;margin:0 auto;display:flex}.nav__logo{letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.nav__logo span{color:var(--accent)}.nav__links{align-items:center;gap:2rem;list-style:none;display:flex}.nav__links a{font-size:var(--text-sm);transition:color var(--transition);font-weight:500;position:relative}.nav__links a:hover{color:var(--accent)}.nav__links a:after{content:"";background:var(--accent);width:0;height:2px;transition:width var(--transition);position:absolute;bottom:-4px;left:0}.nav__links a:hover:after{width:100%}.nav__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.nav__burger span{background:var(--fg);width:24px;height:2px;transition:transform var(--transition), opacity var(--transition);display:block}.nav__burger.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav__burger.active span:nth-child(2){opacity:0}.nav__burger.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.theme-toggle{bottom:1.5rem;left:max(1.5rem, env(safe-area-inset-left));z-index:1000;border:1.5px solid var(--border);background:var(--card-bg);cursor:pointer;width:38px;height:38px;color:var(--fg-muted);border-radius:50%;justify-content:center;align-items:center;transition:transform .3s,border-color .3s,color .3s,box-shadow .3s,background .3s;display:flex;position:fixed;box-shadow:0 2px 8px #00000014}.theme-toggle:hover{border-color:var(--accent);color:var(--accent);transform:scale(1.12);box-shadow:0 4px 16px #0000001f}.theme-toggle:active{transform:scale(.92)}.theme-toggle__icon{transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .3s}.theme-toggle__icon--moon{transform:rotate(-30deg)}.theme-toggle:hover .theme-toggle__icon{transform:rotate(15deg)}.theme-toggle:hover .theme-toggle__icon--moon{transform:rotate(-15deg)}.theme-toggle--inline{width:32px;height:32px;box-shadow:none;background:0 0;border-color:#0000;display:none;position:static}.theme-toggle--inline:hover{background:var(--bg-secondary);border-color:var(--border)}.nav__right{align-items:center;gap:.75rem;display:flex}.lang-switcher{position:relative}.lang-switcher__btn{border:1px solid var(--border);color:var(--fg-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--transition), border-color var(--transition), background var(--transition);letter-spacing:.02em;background:0 0;border-radius:6px;align-items:center;gap:.35rem;padding:.35rem .6rem;font-family:inherit;font-weight:500;display:flex}.lang-switcher__btn:hover{color:var(--accent);border-color:var(--accent)}.lang-switcher__chevron{transition:transform .2s}.lang-switcher__chevron--open{transform:rotate(180deg)}.lang-switcher__dropdown{background:var(--card-bg);border:1px solid var(--border);z-index:1001;border-radius:6px;min-width:56px;margin:0;padding:.25rem 0;list-style:none;animation:.15s langDropIn;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000001a}@keyframes langDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-switcher__dropdown li button{width:100%;color:var(--fg-muted);font-size:var(--text-sm);cursor:pointer;text-align:center;letter-spacing:.02em;transition:color var(--transition), background var(--transition);background:0 0;border:none;padding:.35rem .75rem;font-family:inherit;font-weight:500;display:block}.lang-switcher__dropdown li button:hover{color:var(--accent);background:var(--bg-secondary)}
.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding-top:4rem;display:flex;position:relative;overflow:hidden}.hero:after{content:"";z-index:0;opacity:.64;mix-blend-mode:normal;pointer-events:none;background:linear-gradient(125deg,#dbeafeb8,#ede9fe94,#e0f2fead,#ecfdf57a,#dbeafeb8) 0 0/320% 320%;animation:28s ease-in-out infinite hero-color-flow;position:absolute;inset:0}[data-theme=dark] .hero:after{display:none}@keyframes hero-color-flow{0%,to{background-position:0 45%}50%{background-position:100% 55%}}.hero__content{z-index:1;pointer-events:none}:root:not([data-theme=dark]) .hero__content{isolation:isolate;padding:clamp(1.4rem,4vw,2.5rem) clamp(1.5rem,5vw,3.5rem);position:relative}:root:not([data-theme=dark]) .hero__content:before{content:"";z-index:-1;filter:blur(22px);pointer-events:none;background:radial-gradient(#ffffffd1 0%,#ffffff75 48%,#0000 74%);position:absolute;inset:-18% -14%}.hero__title{letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(2.5rem,8vw,5rem);font-weight:700}:root:not([data-theme=dark]) .hero__title{color:#12213d;text-shadow:0 1px 1px #ffffffe6,0 8px 28px #1e40af1f}:root:not([data-theme=dark]) .hero__title .accent{color:#2563eb;text-shadow:0 1px 1px #ffffffe6,0 6px 22px #2563eb33}.hero__subtitle{color:var(--fg-muted);font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:400}.hero__role,.hero__specialization{display:block}.hero__specialization{letter-spacing:.04em;margin-top:.45rem;font-size:clamp(.85rem,1.8vw,1.05rem)}:root:not([data-theme=dark]) .hero__subtitle{color:#334155;text-shadow:0 1px 1px #fffffff2,0 5px 18px #1e40af1a}.hero__scroll-indicator{color:var(--fg-muted);z-index:3;cursor:pointer;position:absolute;bottom:2rem}
:root:not([data-theme=dark]) .about,:root:not([data-theme=dark]) .skills{background:#fff}.about__grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:4rem;display:grid}.about__text p{color:var(--fg-muted);margin-bottom:1.2rem;font-size:1.05rem}.about__details{margin-bottom:1.5rem;list-style:none}.about__details li{border-bottom:1px solid var(--border);font-size:var(--text-base);padding:.5rem 0}.about__details li span{color:var(--fg);margin-right:.5rem;font-weight:600}.about__highlights{margin-bottom:1.5rem}.about__highlights-title{color:var(--accent);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.65rem;font-weight:600}.about__highlight-item{font-size:var(--text-sm);color:var(--fg-muted);gap:.5rem;padding:.4rem 0;line-height:1.5;display:flex}.about__highlight-icon{color:var(--accent);flex-shrink:0;margin-top:2px}.about__socials{gap:1rem;display:flex}.about__socials a{border:1px solid var(--border);width:40px;height:40px;transition:border-color var(--transition), color var(--transition);border-radius:8px;justify-content:center;align-items:center;display:flex}.about__socials a:hover{border-color:var(--accent);color:var(--accent)}
.skills__grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.skills__column{flex-direction:column;gap:1rem;min-width:0;display:flex}.skills__group{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition), transform var(--transition), box-shadow var(--transition);padding:1.25rem}.skills__group:hover{border-color:var(--accent);box-shadow:0 14px 36px color-mix(in srgb, var(--fg) 7%, transparent);transform:translateY(-2px)}.skills__category{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:.85rem;font-weight:600}.skills__tags{flex-wrap:wrap;gap:.4rem;display:flex}.skills__tag{background:var(--bg-secondary);font-size:var(--text-sm);border:1px solid color-mix(in srgb, var(--border) 78%, transparent);transition:border-color var(--transition), color var(--transition);border-radius:20px;align-items:center;gap:.42rem;padding:.28rem .68rem;font-weight:500;display:inline-flex}.skills__icon{filter:saturate(.9);width:.95rem;height:.95rem;transition:transform var(--transition);flex:none}.skills__tag:hover .skills__icon{transform:translateY(-1px)scale(1.08)}.skills__tag:hover{border-color:var(--accent);color:var(--accent)}
.experience__grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start;gap:clamp(3rem,8vw,7rem);display:grid}.experience__history{min-width:0}.experience .education{margin-top:3rem}.experience__portrait{will-change:transform, opacity, filter;align-self:start;position:sticky;top:clamp(9rem,20vh,12rem)}.experience__portrait-image{will-change:transform, opacity, filter;width:100%;position:relative}.experience__portrait-image img{filter:drop-shadow(0 24px 32px #050c1c29)drop-shadow(0 0 #0000);width:100%;height:auto;transition:filter .6s cubic-bezier(.23,1,.32,1);display:block}.experience__portrait-image:hover img{filter:drop-shadow(0 30px 36px #050c1c38) drop-shadow(0 0 7px color-mix(in srgb, var(--accent) 34%, transparent))}[data-theme=dark] .experience__portrait-image:hover img{filter:drop-shadow(0 28px 38px #0000008c)drop-shadow(0 0 9px #5cc8f0ad)drop-shadow(0 0 20px #5cc8f04d)}:root:not([data-theme=dark]) .experience__portrait-image:hover img{filter:drop-shadow(0 30px 38px #1e40af33)drop-shadow(0 0 10px #1d4ed894)}.timeline{padding-left:2rem;position:relative}.timeline:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0;left:0}.timeline__item{padding-bottom:3rem;position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__marker{background:var(--accent);border:2px solid var(--bg);border-radius:50%;width:12px;height:12px;margin-left:1px;position:absolute;top:.5rem;left:-2rem;transform:translate(-50%)}.timeline__period{font-size:var(--text-xs);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.timeline__role{margin:.3rem 0 .1rem;font-size:1.25rem}.timeline__company{color:var(--accent);margin-bottom:.5rem;font-size:1rem;font-weight:500}
.projects{overflow:hidden}.projects__wrapper{max-width:1100px;margin:0 auto;padding:clamp(4rem,10vh,8rem) clamp(1rem,5vw,3rem)}.projects__track{gap:2rem;padding:1rem 0;display:flex}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition), transform var(--transition);cursor:pointer;flex:0 0 clamp(300px,35vw,420px);display:block;overflow:hidden}.project-card:hover{border-color:var(--accent);transform:translateY(-4px)}.project-card__image{aspect-ratio:16/10;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, transparent), transparent 58%), var(--bg-secondary);width:100%;height:auto;position:relative;overflow:hidden}.project-editorial{flex-direction:column;gap:.75rem;width:100%;height:100%;padding:clamp(1rem,3vw,1.35rem);display:flex}.project-editorial__meta{color:var(--fg-muted);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;font-weight:600;display:grid}.project-editorial__meta span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-editorial__meta span:last-child{white-space:nowrap}.project-editorial__body{flex:1;justify-content:center;align-items:center;gap:1rem;min-height:0;display:flex}.project-editorial__symbol{aspect-ratio:1;flex:none;place-items:center;width:clamp(105px,38%,145px);display:grid;position:relative}.project-editorial__orbit{border:1px solid var(--border);border-radius:50%;position:absolute}.project-editorial__orbit--outer{inset:0}.project-editorial__orbit--inner{inset:20%}.project-editorial__icon{width:34%;height:34%;color:var(--accent);stroke-width:1.5px}.project-editorial__node{background:var(--accent);width:7px;height:7px;box-shadow:0 0 12px color-mix(in srgb, var(--accent) 50%, transparent);border-radius:50%;position:absolute}.project-editorial__node--one{top:-3px;left:50%}.project-editorial__node--two{bottom:14%;right:8%}.project-editorial__node--three{bottom:26%;left:2%}.project-minimal-search{width:min(100%,290px)}.project-minimal-search__field{border:1px solid color-mix(in srgb, var(--fg-muted) 48%, transparent);border-radius:4px;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;height:38px;padding:0 .85rem;display:grid}.project-minimal-search__field svg{width:14px;height:14px;color:var(--fg-muted);stroke-width:1.5px}.project-minimal-search__field span{background:color-mix(in srgb, var(--fg-muted) 42%, transparent);width:56%;height:1px}.project-minimal-search__results{padding:.75rem .2rem 0}.project-minimal-search__results>span{border-bottom:1px solid color-mix(in srgb, var(--border) 72%, transparent);grid-template-columns:4px 1fr;align-items:center;gap:.65rem;height:21px;display:grid}.project-minimal-search__results i{background:var(--accent);border-radius:50%;width:3px;height:3px}.project-minimal-search__results b{width:var(--result-width,72%);background:color-mix(in srgb, var(--fg-muted) 34%, transparent);height:1px}.project-minimal-search__results>span:nth-child(2) b{--result-width:58%}.project-minimal-search__results>span:nth-child(3) b{--result-width:66%}.project-minimal{width:min(100%,290px);height:112px;color:var(--fg-muted)}.project-minimal svg{stroke-width:1.4px}.project-minimal--portfolio{grid-template-rows:26px 1fr;grid-template-columns:1fr .72fr;column-gap:1rem;display:grid}.project-minimal__balance{border-bottom:1px solid var(--border);grid-column:1/-1;align-items:center;gap:.6rem;display:flex}.project-minimal__balance svg{width:14px;height:14px;color:var(--accent)}.project-minimal__balance span{background:color-mix(in srgb, var(--fg-muted) 42%, transparent);width:74px;height:1px}.project-minimal__line-chart{width:100%;height:100%;padding-top:.7rem;overflow:visible}.project-minimal__line-chart path{fill:none;stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.project-minimal__asset-lines{flex-direction:column;justify-content:center;gap:.7rem;padding-top:.55rem;display:flex}.project-minimal__asset-lines span{grid-template-columns:4px 1fr 18px;align-items:center;gap:.4rem;display:grid}.project-minimal__asset-lines i{border:1px solid var(--accent);border-radius:50%;width:4px;height:4px}.project-minimal__asset-lines b,.project-minimal__asset-lines em{background:color-mix(in srgb, var(--fg-muted) 36%, transparent);height:1px}.project-minimal__asset-lines em{background:color-mix(in srgb, var(--accent) 54%, transparent)}.project-minimal--publishing{grid-template-columns:.8fr 42px 1.2fr;align-items:center;display:grid}.project-minimal__content-stack{flex-direction:column;gap:.45rem;display:flex}.project-minimal__content-stack span{border:1px solid var(--border);border-radius:3px;grid-template-columns:13px 1fr;align-items:center;gap:.5rem;height:25px;padding:0 .45rem;display:grid}.project-minimal__content-stack i{border:1px solid color-mix(in srgb, var(--accent) 58%, transparent);height:9px}.project-minimal__content-stack b{background:color-mix(in srgb, var(--fg-muted) 34%, transparent);width:68%;height:1px}.project-minimal__connector{align-items:center;display:flex}.project-minimal__connector:before,.project-minimal__connector:after{content:"";background:var(--border);flex:1;height:1px}.project-minimal__connector i{background:var(--accent);border-radius:50%;width:4px;height:4px}.project-minimal__viewport{border:1px solid color-mix(in srgb, var(--fg-muted) 48%, transparent);border-radius:4px;flex-direction:column;gap:.55rem;height:91px;padding:.6rem;display:flex}.project-minimal__viewport>span:not(.project-minimal__viewport-hero){background:color-mix(in srgb, var(--fg-muted) 34%, transparent);width:62%;height:1px}.project-minimal__viewport-hero{border:1px solid color-mix(in srgb, var(--accent) 48%, transparent);height:43px}.project-minimal--form{grid-template-columns:1.35fr .65fr;align-items:center;gap:1rem;display:grid}.project-minimal__form-main{flex-direction:column;gap:.65rem;display:flex}.project-minimal__form-steps{justify-content:space-between;padding-bottom:.2rem;display:flex;position:relative}.project-minimal__form-steps:before{content:"";background:var(--border);height:1px;position:absolute;top:4px;left:4px;right:4px}.project-minimal__form-steps i{z-index:1;border:1px solid var(--accent);background:var(--bg-secondary);border-radius:50%;width:9px;height:9px}.project-minimal__form-steps i:first-child,.project-minimal__form-steps i:nth-child(2){background:var(--accent)}.project-minimal__form-main>span{grid-template-columns:11px 1fr;align-items:center;gap:.55rem;display:grid}.project-minimal__form-main>span i{border:1px solid var(--border);width:10px;height:10px}.project-minimal__form-main>span b{background:color-mix(in srgb, var(--fg-muted) 34%, transparent);width:78%;height:1px}.project-minimal__report{border:1px solid color-mix(in srgb, var(--fg-muted) 48%, transparent);border-radius:3px 10px 3px 3px;flex-direction:column;gap:.65rem;height:88px;padding:.7rem;display:flex}.project-minimal__report svg{width:17px;height:17px;color:var(--accent)}.project-minimal__report span{background:color-mix(in srgb, var(--fg-muted) 34%, transparent);height:1px}.project-minimal--commerce{grid-template-columns:.65fr 35px 1.35fr;align-items:center;display:grid}.project-minimal__listing{border:1px solid color-mix(in srgb, var(--fg-muted) 48%, transparent);border-radius:4px;flex-direction:column;justify-content:space-between;height:92px;padding:.65rem;display:flex}.project-minimal__listing svg{width:19px;height:19px;color:var(--accent)}.project-minimal__listing span,.project-minimal__listing b{background:color-mix(in srgb, var(--fg-muted) 34%, transparent);height:1px}.project-minimal__listing b{background:var(--accent);width:48%}.project-minimal__commerce-link{background:var(--border);height:1px}.project-minimal__messages{flex-direction:column;gap:.5rem;padding-right:37px;display:flex;position:relative}.project-minimal__messages>span{border:1px solid var(--border);border-radius:7px 7px 7px 2px;align-items:center;gap:.4rem;height:27px;padding:0 .55rem;display:flex}.project-minimal__messages>span:nth-child(2){border-radius:7px 7px 2px;width:82%;margin-left:auto}.project-minimal__messages>span svg{width:11px;height:11px;color:var(--accent)}.project-minimal__messages>span i{background:color-mix(in srgb, var(--fg-muted) 34%, transparent);width:62%;height:1px}.project-minimal__messages div{border:1px solid color-mix(in srgb, var(--accent) 56%, transparent);border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:absolute;bottom:5px;right:0}.project-minimal__messages div svg{width:12px;height:12px;color:var(--accent)}.project-editorial__keywords{color:var(--fg-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:.6rem;font-weight:600;display:flex}.project-editorial__keywords span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-card__content{padding:1.5rem}.project-card__content h3{margin-bottom:.5rem;font-size:1.15rem}.project-card__content p{color:var(--fg-muted);font-size:var(--text-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:1rem;line-height:1.6;display:-webkit-box;overflow:hidden}.project-card__tech{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;list-style:none;display:flex}.project-card__tech li{background:var(--bg-secondary);font-size:var(--text-xs);border:1px solid var(--border);border-radius:16px;padding:.2rem .6rem;font-weight:500}.project-card__link{font-size:var(--text-sm);color:var(--accent);transition:opacity var(--transition);font-weight:500}.project-card:hover .project-card__link{opacity:.7}.project-card--all{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 9%, transparent), transparent 55%), var(--card-bg);flex-direction:column;justify-content:space-between;min-height:100%;padding:1.5rem;display:flex}.project-card--all__eyebrow{z-index:2;color:var(--accent);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:600;position:relative}.project-card--all__body{z-index:2;padding:3rem 0;position:relative}.project-card--all__count{color:var(--accent);letter-spacing:-.08em;opacity:.16;margin-bottom:1.5rem;font-size:clamp(4rem,8vw,6.5rem);font-weight:700;line-height:.9;display:block}.project-card--all h3{margin-bottom:.75rem;font-size:1.7rem}.project-card--all p{color:var(--fg-muted);line-height:1.65;font-size:var(--text-sm)}.project-card--all__arrow{z-index:2;border:1px solid var(--border);width:3rem;height:3rem;color:var(--accent);transition:color var(--transition), background var(--transition), transform var(--transition);border-radius:50%;align-self:flex-end;place-items:center;font-size:1.25rem;display:grid;position:relative}.project-card--all:hover .project-card--all__arrow{color:var(--card-bg);background:var(--accent);transform:rotate(45deg)}.project-card{position:relative;overflow:hidden}.project-card:before{content:"";background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%), var(--accent) 0%, transparent 50%);opacity:0;z-index:1;pointer-events:none;mix-blend-mode:soft-light;transition:opacity .4s;position:absolute;inset:0}.project-card:hover:before{opacity:.15}.project-card:after{content:"";background:conic-gradient(from 0deg, transparent 0%, var(--accent) 10%, transparent 20%);opacity:0;z-index:0;pointer-events:none;width:200%;height:200%;transition:opacity .4s;animation:4s linear infinite card-shine-rotate;position:absolute;top:-50%;left:-50%}.project-card:hover:after{opacity:.06}@keyframes card-shine-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.project-card__image,.project-card__content{z-index:2;position:relative}.project-card__image{transition:transform .5s cubic-bezier(.23,1,.32,1),filter .5s}.project-card:hover .project-card__image{filter:saturate(1.2);transform:scale(1.03)}
.projects-index{background:radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 30%), var(--bg);min-height:100vh;padding:9rem 0 6rem}.projects-index__hero{border-bottom:1px solid var(--border);padding-bottom:clamp(3rem,8vw,6rem)}.projects-index__back{color:var(--fg-muted);font-size:var(--text-sm);transition:color var(--transition);margin-bottom:3rem;display:inline-block}.projects-index__back:hover{color:var(--accent)}.projects-index__eyebrow{color:var(--accent);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem;font-weight:600;display:block}.projects-index__hero h1{letter-spacing:-.055em;max-width:800px;margin-bottom:1.5rem;font-size:clamp(2.7rem,7vw,5.8rem);line-height:.98}.projects-index__hero p{max-width:650px;color:var(--fg-muted);font-size:clamp(1rem,2vw,1.15rem);line-height:1.7}.projects-index__list{padding-top:1rem}.projects-index__card{border-bottom:1px solid var(--border);transition:border-color var(--transition);grid-template-columns:70px minmax(0,1fr) 52px;align-items:start;gap:clamp(1rem,3vw,2.5rem);padding:clamp(1.6rem,4vw,3rem) 0;display:grid}.projects-index__card:hover{border-color:var(--accent)}.projects-index__number{color:var(--fg-muted);font-size:var(--text-xs);letter-spacing:.08em}.projects-index__meta{color:var(--fg-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;flex-wrap:wrap;gap:.5rem 1.25rem;margin-bottom:.7rem;display:flex}.projects-index__content h2{transition:color var(--transition);margin-bottom:.65rem;font-size:clamp(1.35rem,3vw,2rem)}.projects-index__card:hover h2{color:var(--accent)}.projects-index__content p{max-width:760px;color:var(--fg-muted);line-height:1.65;font-size:var(--text-sm)}.projects-index__tech{flex-wrap:wrap;gap:.4rem;margin-top:1.15rem;list-style:none;display:flex}.projects-index__tech li{border:1px solid var(--border);color:var(--fg-muted);font-size:var(--text-xs);border-radius:20px;padding:.2rem .6rem}.projects-index__arrow{border:1px solid var(--border);width:2.8rem;height:2.8rem;color:var(--accent);transition:color var(--transition), background var(--transition), transform var(--transition);border-radius:50%;place-items:center;display:grid}.projects-index__card:hover .projects-index__arrow{color:var(--card-bg);background:var(--accent);transform:rotate(45deg)}
.contact{text-align:center}.contact__text{color:var(--fg-muted);max-width:500px;margin:0 auto 2rem;font-size:clamp(1rem,2vw,1.2rem)}.contact__links{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.neon-btn-wrapper{--rad:32px;--color-wrapper-border:#fff;--color-btn-bg:red;--color-btn-text:#000;--color-btn-text-shadow:#fff;--color-btn-inset-shadow:#558;--color-layer-a:#fff;--color-layer-b:#00f;--color-overlay-text:#080b14;--color-overlay-glow:#fff;--color-overlay-shadow:#0004;--color-overlay-highlight:#fff5;isolation:isolate;border:2px solid var(--color-wrapper-border);border-radius:var(--rad);justify-content:center;align-items:center;font-size:1.2rem;font-weight:600;display:flex;position:relative;overflow:hidden}.neon-btn-effect{filter:saturate(.65)brightness(1.8);justify-content:center;align-items:center;display:flex;position:relative}.neon-gradient-btn{z-index:-1;border-radius:var(--rad);font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:.15rem;color:var(--color-btn-text);background-color:var(--color-btn-bg);box-shadow:inset 0 0 10px 9px var(--color-btn-inset-shadow);text-shadow:0 1px 3px var(--color-btn-text-shadow);cursor:pointer;appearance:none;mix-blend-mode:color-dodge;background-size:200% 200%;border:none;padding:12px 36px;text-decoration:none;transition:color .3s,text-shadow .3s;position:relative}.neon-gradient-btn:after{content:"";pointer-events:none;border-radius:var(--rad);mix-blend-mode:difference;z-index:1;background-size:200% 200%;position:absolute;inset:0}.neon-gradient-layer{pointer-events:none;aspect-ratio:1;background:radial-gradient(ellipse at 65% 180%, var(--color-layer-a), var(--color-layer-b), var(--color-layer-a), var(--color-layer-b), var(--color-layer-a), var(--color-layer-b), var(--color-layer-a), var(--color-layer-b), var(--color-layer-a), var(--color-layer-b), var(--color-layer-a));mix-blend-mode:difference;width:500%;animation:8s linear infinite paused neon-rotate;position:absolute;left:-160px}.neon-gradient-layer:last-of-type{mix-blend-mode:color-dodge}@keyframes neon-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.neon-text-overlay{pointer-events:none;z-index:2;border-radius:var(--rad);font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:.15rem;color:var(--color-overlay-text);text-shadow:0 1px 1px #fffc, 0 0 3px var(--color-overlay-glow);box-shadow:inset 0 -4px 4px 0 var(--color-overlay-shadow), inset 0 4px 4px 0 var(--color-overlay-highlight);mix-blend-mode:normal;padding:12px 36px;transition:transform .3s;position:absolute}.neon-light{pointer-events:none;z-index:1;aspect-ratio:1;filter:blur(5px);background-color:#ffffff4d;border-radius:50px;width:80%;height:1.9rem;animation:3s ease-in-out infinite paused neon-pulse;position:absolute}.neon-btn-wrapper--active .neon-gradient-layer,.neon-btn-wrapper--active .neon-light{animation-play-state:running}.neon-btn-wrapper:hover .neon-text-overlay{transform:scale(1.1)}.neon-btn-wrapper:hover .neon-gradient-btn{color:#0000;text-shadow:0 0 #0000}.neon-btn-wrapper:active .neon-text-overlay{transform:scale(.95)}.neon-btn-wrapper:active .neon-gradient-btn{color:#0000;text-shadow:0 0 #0000}@keyframes neon-pulse{0%,to{opacity:1}50%{opacity:.1}}.contact__socials{gap:2rem;display:flex}.contact__socials a{font-size:var(--text-sm);color:var(--fg-muted);transition:color var(--transition);font-weight:500}.contact__socials a:hover{color:var(--accent)}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--bg-secondary:#f5f7fa;--fg:#111827;--fg-muted:#374151;--accent:#2563eb;--accent-hover:#1d4ed8;--border:#d1d5db;--card-bg:#fff;--spotlight-color:#2563eb0f;--nav-bg:#ffffffe0;--radius:12px;--transition:.3s cubic-bezier(.4, 0, .2, 1);--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--divider-color-1:#2563eb1f;--divider-color-2:#2563eb0f;--divider-color-3:#8b5cf61a;--divider-color-4:#8b5cf60d;--divider-color-5:#10b9811a;--divider-color-6:#10b9810d;--gradient-1:#e0e7ff;--gradient-2:#ede9fe;--gradient-3:#ecfdf5;--gradient-4:#f0f9ff}[data-theme=dark]{--bg:#0a0a0a;--bg-secondary:#141414;--fg:#ededed;--fg-muted:#a0a0a0;--accent:#5cc8f0;--accent-hover:#3aaee0;--border:#333;--card-bg:#1a1a1a;--spotlight-color:#5cc8f012;--nav-bg:#0a0a0ad9;--divider-color-1:#5cc8f026;--divider-color-2:#5cc8f014;--divider-color-3:#a78bfa1f;--divider-color-4:#a78bfa0f;--divider-color-5:#34d3991f;--divider-color-6:#34d3990f;--gradient-1:#0a0a0a;--gradient-2:#0c1929;--gradient-3:#120b20;--gradient-4:#071a14}html{scroll-behavior:smooth;width:100%;overflow-x:clip}html.lenis{scroll-behavior:auto}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}:focus:not(:focus-visible){outline:none}body{background:var(--bg);min-width:0;min-height:100%;color:var(--fg);font-family:var(--font-inter), system-ui, -apple-system, sans-serif;font-size:var(--text-base);cursor:default;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition), color var(--transition);line-height:1.7;overflow-x:hidden}html.page-is-loading,html.page-is-loading body{overscroll-behavior:none;touch-action:none;height:100%;overflow:hidden!important}html.page-is-loading main{visibility:hidden}body:before{content:"";z-index:-1;background:linear-gradient(-45deg, var(--gradient-1), var(--gradient-2), var(--gradient-3), var(--gradient-4));opacity:.35;background-size:400% 400%;animation:15s infinite gradient-shift;position:fixed;inset:0}[data-theme=dark] body:before{opacity:.5}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}a{color:inherit;text-decoration:none}a,button,[role=button]{cursor:pointer}input,textarea,[contenteditable=true]{cursor:text}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}.container{max-width:1100px;padding-left:max(clamp(1rem, 5vw, 3rem), env(safe-area-inset-left));padding-right:max(clamp(1rem, 5vw, 3rem), env(safe-area-inset-right));margin:0 auto}.section{padding:clamp(4rem,10vh,8rem) 0 calc(clamp(4rem,10vh,8rem) + 80px);position:relative}.section__title{margin-bottom:3rem;font-size:clamp(1.8rem,4vw,2.5rem);position:relative}.section__title:after{content:"";background:var(--accent);border-radius:2px;width:60px;height:3px;margin-top:.75rem;display:block}.section__subtitle{font-size:var(--text-lg);color:var(--fg);margin-bottom:.5rem}.accent{color:var(--accent)}@media (max-width:768px){.nav__right{display:flex}.cursor-spotlight,.theme-toggle:not(.theme-toggle--inline){display:none}.theme-toggle--inline,.nav__burger{display:flex}.lang-switcher__dropdown{right:0}.nav__links{background:var(--bg);width:70vw;max-width:300px;height:100vh;transition:transform var(--transition);border-left:1px solid var(--border);flex-direction:column;justify-content:center;gap:2rem;padding:2rem;position:fixed;top:0;right:0;transform:translate(100%)}.nav__links.open{transform:translate(0)}.nav__links a{font-size:1.1rem}.section{padding-bottom:calc(clamp(3rem,8vh,6rem) + 60px)}.hero__content{padding:0 1rem}.hero-waves__svg{height:60px}.wave-divider svg{height:50px}.about__grid{grid-template-columns:1fr;gap:2rem}.timeline{padding-left:1.5rem}.timeline__marker{left:-1.5rem}.experience__grid{grid-template-columns:1fr;gap:2.5rem}.experience__portrait{order:-1;justify-self:center;width:min(76vw,360px);margin:0 auto;display:block;position:relative;top:auto}.skills__grid{grid-template-columns:1fr}.skills__column{display:contents}.projects__wrapper{padding-left:1rem;padding-right:1rem}.project-card{flex:0 0 min(82vw,420px)}.projects-index{padding-top:7rem}.projects-index__card{grid-template-columns:38px minmax(0,1fr)}.projects-index__arrow{display:none}.pdetail__achievements,.pdetail__profile-grid{grid-template-columns:1fr}}@media (max-width:480px){.hero__title{font-size:2rem}.nav__links{width:100vw;max-width:none}.pdetail__title{font-size:1.6rem}.project-card{flex-basis:88vw}}.skills,.contact{background:var(--bg-secondary)}
