@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:left;box-sizing:border-box;border:0;flex-direction:column;width:100%;max-width:none;min-height:100svh;margin:0;padding:0;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{color:#e8edf7;font-synthesis:none;background:#08111f;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#08111f;margin:0}a{color:inherit;text-decoration:none}.site{background:radial-gradient(900px 560px at 100% -5%,#182c4c 0,#0000 64%),radial-gradient(700px 520px at -10% 60%,#141f3b 0,#0000 66%),#08111f;min-height:100vh;overflow:hidden}.nav,main,footer{width:min(1180px,100% - 48px);margin:auto}.nav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#08111fe8;border-bottom:1px solid #ffffff14;align-items:center;height:78px;display:flex;position:sticky;top:0}.brand{color:#f4f7ff;align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.brand span{color:#fff;background:#6179ee;border:1px solid #91b9ff44;border-radius:9px;place-items:center;width:34px;height:34px;font:10px JetBrains Mono,monospace;display:grid}.nav nav{color:#a9b7ce;gap:28px;margin-left:auto;font-size:13px;font-weight:500;display:flex}.nav nav a{padding:8px 0;transition:color .2s;position:relative}.nav nav a:after{content:"";background:#8ab4ff;border-radius:2px;height:2px;transition:transform .2s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav nav a:hover{color:#fff}.nav nav a:hover:after{transform:scaleX(1)}.nav-cta{color:#fff;background:#6179ee;border:1px solid #90a9ff36;border-radius:8px;margin-left:34px;padding:11px 15px;font-size:12px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}.nav-cta:hover{background:#7188f5;transform:translateY(-2px);box-shadow:0 8px 18px #6179ee2b}.nav-cta span{color:#d2ddff;margin-left:6px}.menu-toggle{display:none}.hero{grid-template-columns:1.08fr .72fr;align-items:center;gap:74px;min-height:650px;padding:79px 0 86px;display:grid}.hero-copy{max-width:670px}.eyebrow{color:#9db8ff;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 17px;font:10px JetBrains Mono,monospace;display:flex}.eyebrow i{background:#5eead4;border-radius:50%;width:7px;height:7px;display:block;box-shadow:0 0 0 4px #5eead420}.kicker{color:#97a5bd;margin:0 0 13px;font-size:14px}.hero h1{color:#f4f7ff;letter-spacing:-.075em;margin:0;font-size:clamp(3.8rem,7.6vw,6.9rem);font-weight:800;line-height:.91}.hero h2{color:#91b9ff;letter-spacing:-.02em;margin:16px 0 0;font-size:clamp(1.15rem,2vw,1.55rem);font-weight:600}.hero-description{color:#b7c2d4;max-width:570px;margin:26px 0 0;font-size:16px;line-height:1.78}.hero-actions{align-items:center;gap:22px;margin-top:31px;display:flex}.button{color:#fff;cursor:pointer;background:#6179ee;border:0;border-radius:8px;align-items:center;gap:10px;padding:13px 17px;font:700 13px Inter;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex}.button:hover{background:#7188f5;transform:translateY(-2px);box-shadow:0 9px 18px #6179ee2b}.primary b{font-size:16px}.text-link{color:#e5ebf8;border-bottom:1px solid #ffffff34;padding-bottom:4px;font-size:13px;font-weight:700}.text-link b{color:#91b9ff;margin-left:6px}.hero-stack{flex-wrap:wrap;align-items:center;gap:8px;margin-top:27px;display:flex}.hero-stack>span{color:#8492a9;text-transform:uppercase;margin-right:4px;font:10px JetBrains Mono,monospace}.hero-stack b{color:#bdc9db;background:#ffffff08;border:1px solid #ffffff16;border-radius:999px;padding:6px 9px;font-size:10px}.hero-meta{border-top:1px solid #ffffff18;gap:42px;margin-top:42px;padding-top:22px;display:flex}.hero-meta div{gap:4px;display:grid}.hero-meta strong{color:#f3f6ff;font-size:24px;line-height:1}.hero-meta span{color:#8695aa;font-size:11px}.portrait-card{justify-self:end;max-width:365px;position:relative}.portrait-card:before{z-index:-1;content:"";background:#172642;border:1px solid #91b9ff35;border-radius:18px;width:78%;height:78%;position:absolute;top:-15px;right:-15px}.portrait-frame{aspect-ratio:.78;background:#172642;border:1px solid #ffffff1c;border-radius:17px;position:relative;overflow:hidden;box-shadow:0 24px 52px #00000048}.portrait-frame>img,.portrait-frame>span{object-fit:cover;color:#91b9ff;place-items:center;width:100%;height:100%;font-size:54px;display:grid}.portrait-glow{background:linear-gradient(#0000,#08111f9a);height:35%;position:absolute;inset:auto 0 0}.portrait-caption{border-bottom:1px solid #ffffff1c;justify-content:space-between;align-items:center;margin:14px 4px 0;padding:14px 0;display:flex}.portrait-caption small{color:#8796ac;text-transform:uppercase;margin-bottom:4px;font-size:10px;display:block}.portrait-caption strong{color:#e9effb;font-size:12px}.spark{color:#9fc1ff;background:#1d3358;border-radius:50%;place-items:center;width:30px;height:30px;font-size:18px;display:grid}section{padding:96px 0}.about-section{clip-path:inset(0 -100vmax);background:#0d1829;border-top:1px solid #ffffff12;box-shadow:0 0 0 100vmax #0d1829}.section-heading{max-width:760px;margin-bottom:40px}.section-heading h2,.contact-intro h2{color:#f1f5ff;letter-spacing:-.065em;margin:0;font-size:clamp(2.7rem,5.2vw,4.8rem);font-weight:800;line-height:1}.section-heading h2 em,.contact-intro h2 em{color:#91b9ff;font-style:normal}.about-layout{grid-template-columns:1.16fr .84fr;gap:22px;display:grid}.statement{background:#101e32;border:1px solid #ffffff14;border-radius:14px;padding:34px;box-shadow:0 12px 26px #00000018}.statement p{color:#c9d4e4;white-space:pre-line;margin:0;font-size:16px;line-height:1.9}.skill-panel{background:#132441;border:1px solid #7da4ff2e;border-radius:14px;padding:26px}.panel-label{color:#9db8ff;text-transform:uppercase;margin:0 0 19px;font:10px JetBrains Mono,monospace}.skills{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.skill{color:#bfccde;text-align:center;background:#ffffff07;border:1px solid #ffffff12;border-radius:9px;align-content:center;place-items:center;gap:8px;min-height:94px;font-size:11px;transition:transform .2s,border-color .2s,background .2s;display:grid}.skill:hover{background:#91b9ff12;border-color:#91b9ff55;transform:translateY(-3px)}.skill img,.skill-placeholder{object-fit:contain;width:35px;height:35px}.skill-placeholder{color:#a8c4ff;background:#91b9ff18;border-radius:50%;place-items:center;display:grid}#experience{padding-bottom:102px}.section-heading.split{justify-content:space-between;align-items:end;gap:44px;max-width:none;display:flex}.section-heading.split>p{color:#9caac0;max-width:315px;margin:0;font-size:14px;line-height:1.75}.experience-list{gap:10px;display:grid}.experience{background:#0d1829;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:40px 52px .85fr 1.15fr .72fr;align-items:center;gap:19px;padding:23px 20px;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s;display:grid}.experience:hover{background:#101e34;border-color:#91b9ff3f;transform:translateY(-3px);box-shadow:0 15px 28px #00000026}.experience-number,.period{color:#9db8ff;font:10px JetBrains Mono,monospace}.experience-number{background:#1a2e51;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.company-mark{color:#aebed3;background:#16243b;border:1px solid #ffffff16;border-radius:10px;place-items:center;width:48px;height:48px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.company-mark img{object-fit:cover;width:100%;height:100%}.experience-role h3{color:#eef3ff;margin:7px 0 4px;font-size:17px;line-height:1.3}.experience-role h4{color:#95a5bb;margin:0;font-size:13px;font-weight:500}.experience-description{color:#a9b6c8;max-width:350px;margin:0;font-size:13px;line-height:1.72}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{color:#b5ccf5;background:#91b9ff0c;border:1px solid #91b9ff26;border-radius:999px;padding:6px 8px;font-size:10px}#services{clip-path:inset(0 -100vmax);background:#101d31;box-shadow:0 0 0 100vmax #101d31}.service-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-card{isolation:isolate;background:#132039;border:1px solid #ffffff17;border-radius:14px;min-height:280px;padding:27px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.service-card:hover{border-color:#91b9ff5a;transform:translateY(-5px);box-shadow:0 16px 28px #0000002b}.service-card:before{z-index:1;content:"";background:linear-gradient(90deg,#132039f5 0%,#132039e8 42%,#132039a6 100%);position:absolute;inset:0}.service-card:after{z-index:2;content:"";background:#91b9ff;border-radius:3px;width:34px;height:3px;position:absolute;top:26px;left:27px}.service-background-art{z-index:0;object-fit:cover;object-position:center;opacity:.28;filter:saturate(.92)brightness(.82);width:100%;height:100%;position:absolute;inset:0}.service-copy{z-index:3;flex-direction:column;justify-content:flex-end;min-height:226px;display:flex;position:relative}.service-card h3{color:#f3f6ff;letter-spacing:-.025em;max-width:265px;margin:0 0 11px;font-size:19px;line-height:1.32}.service-card p{color:#b9c6d8;max-width:285px;margin:0;font-size:13px;line-height:1.74}.service-card:hover .service-background-art{opacity:.37;transition:opacity .2s,transform .35s;transform:scale(1.025)}.reasons{background:linear-gradient(135deg,#152746,#101e34);border:1px solid #ffffff16;border-radius:18px;margin:96px 0;padding:70px 45px;position:relative;overflow:hidden}.reasons:before{content:"";border:1px solid #91b9ff26;border-radius:50%;width:420px;height:420px;position:absolute;top:-190px;right:-150px;box-shadow:0 0 0 75px #91b9ff08,0 0 0 150px #91b9ff05}.reasons .section-heading{z-index:1;max-width:700px;position:relative}.reason-grid{z-index:1;grid-template-columns:repeat(4,1fr);gap:13px;display:grid;position:relative}.reason-card{background:#0d1a2d;border:1px solid #ffffff14;border-radius:12px;min-height:248px;padding:22px;transition:transform .2s,border-color .2s,background .2s;position:relative}.reason-card:hover{background:#101f35;border-color:#91b9ff4a;transform:translateY(-5px)}.reason-card>img,.reason-card>span{color:#a9c5ff;object-fit:contain;filter:none;background:#1d3358;border-radius:10px;place-items:center;width:47px;height:47px;padding:9px;display:grid}.reason-card>p:first-of-type{color:#9db8ff;margin:0;font:10px JetBrains Mono,monospace;position:absolute;top:25px;right:22px}.reason-card h3{color:#ecf2ff;margin:28px 0 0;font-size:16px;line-height:1.35}.reason-card div{background:#91b9ff;width:30px;height:2px;margin:14px 0}.reason-card>p:last-child{color:#aebccd;margin:0;font-size:12px;line-height:1.75}.contact-section{grid-template-columns:.95fr .8fr;align-items:center;gap:82px;padding:106px 0;display:grid}.contact-intro h2{max-width:610px}.contact-intro>p:not(.eyebrow){color:#aebccc;max-width:450px;margin:24px 0 0;font-size:15px;line-height:1.8}.social-list{flex-wrap:wrap;gap:9px;margin-top:29px;display:flex}.social-list a{color:#b8c5d6;background:#ffffff06;border:1px solid #ffffff18;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:11px;transition:transform .2s,border-color .2s,background .2s;display:inline-flex}.social-list a:hover{color:#eaf1ff;background:#91b9ff10;border-color:#91b9ff55;transform:translateY(-2px)}.social-list span{color:#9db8ff}.contact-form{background:#101d31;border:1px solid #ffffff17;border-radius:15px;gap:15px;padding:29px;display:grid;box-shadow:0 18px 35px #0000002e}.contact-form:before{content:"";background:#6179ee;border-radius:15px 15px 0 0;height:4px;margin:-29px -29px 12px}.contact-form label{color:#ced8e7;gap:8px;font-size:12px;font-weight:700;display:grid}.contact-form label small{color:#8998ac;font-weight:400}.contact-form input,.contact-form textarea{color:#e9effb;background:#081525;border:1px solid #ffffff16;border-radius:8px;outline:0;width:100%;padding:12px;font:13px Inter;transition:border-color .2s,box-shadow .2s,background .2s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6f8096}.contact-form input:focus,.contact-form textarea:focus{background:#0b192b;border-color:#91b9ff7a;box-shadow:0 0 0 3px #91b9ff13}.contact-form textarea{resize:vertical;min-height:108px}.contact-form .button{justify-self:start}.form-notice{color:#9db8ff;margin:0;font-size:12px}footer{color:#8595aa;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:31px 0;font-size:11px;display:flex}footer p{margin:0}footer>a:last-child{color:#9db8ff;font-weight:700}.state{color:#e8edf7;background:#08111f;place-items:center;min-height:100vh;font:14px Inter;display:grid}.error{color:#fca5a5}.spinner{border:2px solid #91b9ff;border-right-color:#0000;border-radius:50%;width:19px;height:19px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.hero{grid-template-columns:1fr .7fr;gap:42px}.about-layout{gap:16px}.experience{grid-template-columns:38px 48px 1fr 1fr}.tags{grid-column:3/-1}.service-grid,.reason-grid{grid-template-columns:repeat(2,1fr)}.contact-section{gap:44px}.reasons{padding:56px 30px}}@media (width<=700px){.nav,main,footer{width:min(100% - 32px,1180px)}.nav{height:65px}.nav-cta{display:none}.menu-toggle{z-index:3;cursor:pointer;background:#101e34;border:1px solid #ffffff1e;border-radius:8px;place-content:center;gap:6px;width:39px;height:39px;margin-left:auto;padding:0;display:grid;position:relative}.menu-toggle span{background:#9db8ff;border-radius:2px;width:17px;height:1.5px;transition:transform .2s;display:block}.menu-open .menu-toggle span:first-child{transform:translateY(3.75px)rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.nav nav{opacity:0;pointer-events:none;background:#101d31;border:1px solid #ffffff16;border-radius:11px;gap:3px;padding:8px;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;transform:translateY(-7px);box-shadow:0 15px 30px #00000048}.menu-open nav{opacity:1;pointer-events:auto;transform:translateY(0)}.nav nav a{border-radius:7px;padding:11px}.nav nav a:hover{background:#91b9ff12}.nav nav a:after{display:none}.hero{grid-template-columns:1fr;gap:45px;min-height:auto;padding:68px 0}.portrait-card{justify-self:start;width:min(100%,380px)}.section-heading.split{display:block}.section-heading.split>p{margin-top:18px}.about-layout,.contact-section{grid-template-columns:1fr}.experience{grid-template-columns:36px 46px 1fr;gap:14px}.experience-description,.tags{grid-column:3}.contact-section{gap:46px}.contact-form{max-width:600px}footer{flex-wrap:wrap;gap:17px}}@media (width<=500px){.brand strong{font-size:13px}.hero{padding-top:52px;padding-bottom:64px}.hero h1{font-size:clamp(3.7rem,17vw,5rem)}.hero h2{font-size:1.1rem;line-height:1.4}.hero-description{font-size:14px}.hero-actions{gap:15px}.hero-meta{gap:25px;margin-top:35px}.portrait-card{width:90%;margin-left:0}.portrait-frame{box-shadow:0 16px 35px #00000034}section{padding:70px 0}.section-heading{margin-bottom:28px}.section-heading h2,.contact-intro h2{font-size:clamp(2.55rem,12vw,3.45rem)}.statement{padding:25px}.statement p{font-size:15px}.skill-panel{padding:21px}.skills{grid-template-columns:repeat(2,1fr)}.experience{grid-template-columns:34px 1fr;gap:12px;padding:19px 15px}.experience:hover{transform:none}.company-mark,.experience-role,.experience-description,.tags{grid-column:2}.service-grid,.reason-grid{grid-template-columns:1fr}.service-card{min-height:242px;padding:22px}.service-card:after{top:22px;left:22px}.service-copy{min-height:197px}.reasons{border-radius:14px;margin:18px 0;padding:45px 19px}.reason-card{min-height:215px}.contact-section{gap:38px;padding:74px 0}.contact-form{padding:22px}.contact-form:before{border-radius:14px 14px 0 0;height:4px;margin:-22px -22px 9px}.contact-form .button{justify-content:center;width:100%}.social-list{gap:7px}.social-list a{padding:9px 10px}footer{flex-direction:column;align-items:flex-start;padding:26px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.hero-copy,.hero-copy h1,.hero-copy h2,.hero-copy p,.hero-meta,.portrait-caption,.section-heading,.section-heading h2,.section-heading p,.statement,.statement p,.skill-panel,.panel-label,.experience,.experience-role,.experience-role h3,.experience-role h4,.experience-description,.tags,.service-card,.service-copy,.service-card h3,.service-card p,.reasons,.reason-card,.reason-card h3,.reason-card p,.contact-intro,.contact-intro h2,.contact-intro p,.contact-form,.contact-form label,.form-notice,footer{text-align:left}.hero-copy{padding-right:12px}.hero-description{max-width:555px}.hero-actions,.hero-meta{justify-content:flex-start}.portrait-caption>div{text-align:left}.skill-panel{padding:28px}.skills{gap:10px}.skill{text-align:left;justify-content:flex-start;align-items:center;gap:11px;min-height:76px;padding:11px;display:flex}.skill img,.skill-placeholder{flex:0 0 31px;width:31px;height:31px}.skill>span:last-child{text-align:left;line-height:1.3}#experience .section-heading.split>p{text-align:left}.experience{align-items:start;padding-top:25px;padding-bottom:25px}.experience-role{padding-top:1px}.experience-description{padding-top:3px}.tags{justify-content:flex-start;padding-top:3px}.tags span,.service-card{text-align:left}.service-copy{text-align:left;align-items:flex-start}.service-card h3,.service-card p{text-align:left;width:100%}.service-card:hover .service-copy{transition:transform .2s;transform:translateY(-2px)}.reasons .section-heading,.reasons .section-heading h2,.reasons .section-heading p,.reason-card{text-align:left}.reason-card>p:first-of-type{display:none}.reason-card h3,.reason-card>p:last-child{text-align:left;width:100%}.reason-card div{margin-left:0;margin-right:auto}.contact-intro,.contact-intro h2,.contact-intro>p:not(.eyebrow){text-align:left}.social-list{justify-content:flex-start}.contact-form label,.contact-form input,.contact-form textarea{text-align:left}.contact-form .button{text-align:left;justify-self:start}footer{justify-content:flex-start;gap:34px;display:flex}footer p{text-align:left;margin:0}footer>a:last-child{text-align:left;margin-left:auto}@media (width<=900px){.experience{align-items:start}.experience-description{max-width:100%}}@media (width<=700px){.hero-copy{padding-right:0}.portrait-caption{text-align:left}.skill{min-height:68px}.experience{align-items:start}.contact-form .button{justify-self:start}}@media (width<=500px){.skills{grid-template-columns:1fr}.skill{min-height:61px}.experience{padding-left:15px;padding-right:15px}.reason-card{padding:21px}.contact-form .button{justify-content:flex-start;width:auto}footer{flex-direction:column;align-items:flex-start;gap:14px}footer>a:last-child{margin-left:0}}.loading-shell{background:radial-gradient(900px 560px at 100% -5%,#182c4c 0,#0000 64%),#08111f;min-height:100vh}.loading-nav,.loading-main{width:min(1180px,100% - 48px);margin:auto}.loading-nav{border-bottom:1px solid #ffffff14;align-items:center;gap:13px;height:78px;display:flex}.shimmer{background:linear-gradient(100deg,#15243a 25%,#253a58 42%,#15243a 58%) 0 0/220% 100%;border-radius:7px;animation:1.35s ease-in-out infinite portfolio-shimmer;display:block;overflow:hidden}.brand-block{width:150px;height:34px;margin-right:auto}.nav-block{width:56px;height:12px}.loading-main{padding:76px 0}.loading-hero{grid-template-columns:1.08fr .72fr;align-items:center;gap:74px;min-height:480px;display:grid}.loading-copy{flex-direction:column;align-items:flex-start;gap:15px;display:flex}.loading-label{width:180px;height:11px}.loading-title{border-radius:10px;height:68px}.loading-title.wide{width:min(570px,88%)}.loading-title.medium{width:min(455px,71%)}.loading-line{width:min(470px,73%);height:15px;margin-top:8px}.loading-line.short{width:min(350px,55%)}.loading-actions{gap:14px;margin-top:16px;display:flex}.loading-button{border-radius:8px;width:137px;height:45px}.loading-button.ghost{background:linear-gradient(100deg,#101c2e 25%,#1d3049 42%,#101c2e 58%) 0 0/220% 100%;width:108px;animation:1.35s ease-in-out infinite portfolio-shimmer}.loading-portrait{aspect-ratio:.78;border-radius:17px;justify-self:end;width:min(100%,360px)}.loading-cards{margin-top:74px}.loading-heading{width:280px;height:43px;margin-bottom:28px}.loading-cards>div{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.loading-card{border-radius:14px;height:194px}@keyframes portfolio-shimmer{to{background-position:-220% 0}}@media (width<=700px){.loading-nav,.loading-main{width:min(100% - 32px,1180px)}.loading-nav{height:65px}.loading-nav .nav-block{display:none}.loading-hero{grid-template-columns:1fr;gap:42px;min-height:0}.loading-portrait{justify-self:start;width:min(88%,360px)}.loading-cards{margin-top:60px}.loading-cards>div{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.loading-main{padding:53px 0}.loading-title{height:48px}.loading-cards>div{grid-template-columns:1fr}.loading-card{height:135px}.loading-heading{width:210px;height:34px}.loading-actions{margin-top:9px}}.experience-number{display:none}@media (width<=900px){.experience{grid-template-columns:48px minmax(0,1fr) minmax(0,1fr)}.experience .tags{grid-column:2/-1}}@media (width<=700px){.experience{grid-template-columns:46px minmax(0,1fr)}.experience .company-mark{grid-row:span 2}.experience .experience-description,.experience .tags{grid-column:2}}@media (width<=500px){.experience{grid-template-columns:1fr}.experience .company-mark{grid-area:auto}.experience .experience-role,.experience .experience-description,.experience .tags{grid-column:auto}}.experience{grid-template-columns:52px minmax(210px,1fr) minmax(190px,.72fr)}@media (width<=900px){.experience{grid-template-columns:48px minmax(0,1fr) minmax(170px,.65fr)}.experience .tags{grid-column:auto}}@media (width<=700px){.experience{grid-template-columns:46px minmax(0,1fr)}.experience .company-mark{grid-row:span 2}.experience .tags{grid-column:2}}@media (width<=500px){.experience{grid-template-columns:1fr}.experience .company-mark{grid-row:auto}.experience .tags{grid-column:auto}}.experience{gap:16px;min-height:0;padding-top:16px;padding-bottom:16px}.company-mark{border-radius:9px;width:42px;height:42px}.experience-role h3{margin-top:5px;font-size:16px}.experience-role h4{font-size:12px}.period{margin-bottom:5px}.tags{gap:5px;padding-top:0}.tags span{padding:5px 7px}@media (width<=700px){.experience{gap:13px;padding-top:15px;padding-bottom:15px}.company-mark{width:40px;height:40px}}@media (width<=500px){.experience{gap:10px;padding-top:14px;padding-bottom:14px}.company-mark{width:38px;height:38px}}footer{text-align:left;border-top-color:#ffffff18;grid-template-columns:minmax(210px,.82fr) minmax(330px,1.5fr) auto;align-items:center;gap:38px;min-height:118px;padding:25px 0;display:grid}.footer-identity{text-align:left;gap:10px;display:grid}.footer-identity p{color:#8493a8;font-size:11px}.footer-socials{text-align:left;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;display:flex}.footer-socials>span{color:#7f8ea3;letter-spacing:.08em;text-transform:uppercase;margin-right:4px;font:10px JetBrains Mono,monospace}.footer-socials a{color:#b5c2d3;background:#ffffff05;border:1px solid #ffffff18;border-radius:7px;align-items:center;gap:6px;padding:8px 10px;font-size:11px;transition:transform .2s,border-color .2s,background .2s,color .2s;display:inline-flex}.footer-socials a:hover{color:#edf3ff;background:#91b9ff12;border-color:#91b9ff55;transform:translateY(-2px)}.footer-socials b{color:#9db8ff;font-size:12px}.footer-top{color:#aac4ff;white-space:nowrap;border-bottom:1px solid #91b9ff5a;justify-self:end;padding-bottom:4px;font-size:11px;font-weight:700;transition:color .2s,border-color .2s}.footer-top:hover{color:#fff;border-color:#d7e4ff}.footer-top span{margin-left:5px}@media (width<=900px){footer{grid-template-columns:1fr auto;gap:22px}.footer-socials{grid-area:2/1/auto/-1}.footer-top{grid-area:1/2}}@media (width<=500px){footer{flex-direction:column;align-items:flex-start;gap:16px;min-height:0;padding:27px 0;display:flex}.footer-socials{gap:7px;width:100%}.footer-socials>span{width:100%;margin-bottom:1px}.footer-top{align-self:flex-start;margin:0}}.footer-socials a{border-radius:10px;justify-content:center;width:39px;height:39px;padding:0}.social-icon{color:#b9ccf3;width:18px;height:18px;transition:color .2s,transform .2s;display:block}.footer-socials a:hover .social-icon{color:#fff;transform:scale(1.08)}@media (width<=500px){.footer-socials a{width:38px;height:38px}}.footer-name{gap:0;font-size:15px}.footer-name strong{color:#eef3ff}.footer-identity{gap:0}@media (width<=500px){.footer-socials{text-align:right;justify-content:flex-end;align-self:flex-end}.footer-socials>span{text-align:right;width:100%;margin-right:0}footer{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 14px;min-height:0;padding:22px 0;display:grid}.footer-identity{grid-area:1/1;align-self:center}.footer-top{color:#b9ceff;background:#91b9ff09;border:1px solid #91b9ff2f;border-radius:8px;grid-area:1/2;place-self:center end;margin:0;padding:8px 10px}.footer-socials{text-align:left;border-top:1px solid #ffffff12;grid-area:2/1/auto/-1;justify-content:flex-end;align-self:stretch;align-items:center;gap:7px;width:100%;padding-top:16px;display:flex}.footer-socials>span{text-align:left;width:auto;margin:0 auto 0 0}.footer-socials a{border-radius:9px;width:37px;height:37px}}.footer-identity{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.footer-kicker{color:#8293ad;letter-spacing:.14em;text-transform:uppercase;font:10px JetBrains Mono,monospace}.footer-socials a{background:#ffffff06;border-color:#91b9ff22;width:40px;height:40px}.footer-top{color:#fff;background:linear-gradient(135deg,#4564d9,#5d78ed);border:1px solid #91b9ff67;border-radius:13px;grid-area:auto;justify-content:center;justify-self:end;align-items:center;min-height:47px;margin:0;padding:0 17px;font-size:11px;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 8px 20px #4564d92d}.footer-top:hover{color:#fff;background:linear-gradient(135deg,#5473e7,#6f89f5);border-color:#a9c2ff;transform:translateY(-2px);box-shadow:0 12px 25px #4564d942}@media (width<=700px){footer{border-radius:16px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:18px 14px;margin:18px auto 22px;padding:20px}.footer-identity{grid-area:1/1}.footer-top{grid-area:1/2}.footer-socials{border-top:1px solid #ffffff12;border-left:0;border-right:0;grid-area:2/1/auto/-1;justify-content:flex-end;width:100%;padding:16px 0 0}}@media (width<=500px){footer{border-radius:15px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:17px 12px;margin:14px auto 18px;padding:18px 17px;display:grid}.footer-identity{grid-area:1/1}.footer-name{font-size:14px}.footer-top{border-radius:10px;grid-area:1/2;min-height:40px;padding:0 12px}.footer-socials{border-top:1px solid #ffffff12;grid-area:2/1/auto/-1;justify-content:flex-end;align-self:stretch;gap:7px;width:100%;padding-top:15px;display:flex}.footer-socials:before{color:#8293ad;letter-spacing:.12em;text-transform:uppercase;content:"Socials";margin-right:auto;font:10px JetBrains Mono,monospace}.footer-socials a{border-radius:9px;width:37px;height:37px}}footer{background:#0c1729;border:1px solid #7294ff7a;border-radius:13px;grid-template-columns:minmax(170px,1fr) auto auto;align-items:center;gap:0;min-height:88px;margin:22px auto 26px;padding:14px 20px;display:grid;box-shadow:0 12px 30px #00000020,inset 0 1px #ffffff08}.footer-identity{grid-area:auto;gap:6px;padding-right:27px}.footer-socials{border-top:0;border-left:1px solid #7294ff38;border-right:1px solid #7294ff38;grid-area:auto;justify-content:center;align-items:center;gap:8px;width:auto;padding:0 27px;display:flex}.footer-socials a{background:#ffffff04;border-color:#91b9ff2d;border-radius:9px;width:39px;height:39px}.footer-top{min-height:44px;box-shadow:none;color:#b7cbff;background:#101d32;border:1px solid #7294ff78;border-radius:10px;grid-area:auto;justify-content:center;justify-self:end;align-items:center;margin:0 0 0 27px;padding:0 16px;font-size:11px;transition:transform .2s,border-color .2s,background .2s,color .2s;display:inline-flex}@media (width<=700px){footer{border-radius:12px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:16px 12px;margin:18px auto 22px;padding:17px}.footer-identity{grid-area:1/1;padding-right:0}.footer-top{grid-area:1/2;min-height:40px;margin:0;padding:0 12px}.footer-socials{border-top:1px solid #7294ff29;border-left:0;border-right:0;grid-area:2/1/auto/-1;justify-content:flex-end;width:100%;padding:15px 0 0}}@media (width<=500px){footer{border-radius:11px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:15px 10px;margin:14px auto 18px;padding:16px 15px;display:grid}.footer-identity{grid-area:1/1}.footer-name{font-size:14px}.footer-kicker{font-size:9px}.footer-top{border-radius:8px;grid-area:1/2;min-height:38px;margin:0;padding:0 10px}.footer-socials{border-top:1px solid #7294ff29;grid-area:2/1/auto/-1;justify-content:flex-end;gap:7px;width:100%;padding-top:14px;display:flex}.footer-socials:before{content:none}.footer-socials a{border-radius:8px;width:36px;height:36px}}footer{isolation:isolate;background:#0a1526;border:1px solid #91b9ff2d;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:25px 28px;min-height:150px;margin:22px auto 27px;padding:25px 28px 27px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 34px #0002}footer:before{z-index:0;content:"";background:linear-gradient(155deg,#1a3158,#101f39 65%,#0d1a30);border-top:1px solid #688cff4c;border-radius:50% 55% 0 0;height:155px;position:absolute;bottom:-88px;left:-7%;right:-7%;transform:rotate(-4deg)}footer>*{z-index:1;position:relative}.footer-identity{grid-area:1/1;align-self:start;gap:10px;padding:0}.footer-name{font-size:16px}.footer-kicker{font-size:10px}.footer-top{min-height:0;box-shadow:none;color:#a9c1ff;background:0 0;border:0;border-bottom:2px solid #7fa0ff;grid-area:1/2;justify-content:flex-start;justify-self:end;align-items:center;margin:0;padding:1px 0 6px;font-size:11px;display:inline-flex}.footer-top:hover{box-shadow:none;color:#fff;background:0 0;border-color:#d6e2ff;transform:none}.footer-socials{border:0;grid-area:2/2;justify-content:flex-end;align-self:end;gap:8px;width:auto;padding:0;display:flex}.footer-socials:before{content:none}.footer-socials a{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b1729cc;border-color:#91b9ff2b;border-radius:9px;width:40px;height:40px}@media (width<=700px){footer{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:24px 18px;min-height:142px;margin:18px auto 22px;padding:22px 22px 24px}.footer-identity{grid-area:1/1}.footer-top{grid-area:1/2;margin:0}.footer-socials{border:0;grid-area:2/2;width:auto;padding:0}}@media (width<=500px){footer{border-radius:12px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:23px 12px;min-height:140px;margin:14px auto 18px;padding:20px 16px 21px;display:grid}footer:before{height:132px;bottom:-76px;left:-18%;right:-18%}.footer-identity{grid-area:1/1}.footer-name{font-size:14px}.footer-kicker{font-size:9px}.footer-top{border-radius:0;grid-area:1/2;min-height:0;margin:0;padding:0 0 5px}.footer-socials{border:0;grid-area:2/2;justify-content:flex-end;gap:7px;width:auto;padding:0;display:flex}.footer-socials:before{content:none}.footer-socials a{border-radius:8px;width:36px;height:36px}}.site{width:100%;max-width:none}.nav,main{border-left:0;border-right:0;width:100%;max-width:none;margin:0;padding-left:clamp(28px,5vw,92px);padding-right:clamp(28px,5vw,92px)}.nav{border-left:0;border-right:0}.loading-nav,.loading-main{width:100%;max-width:none;padding-left:clamp(28px,5vw,92px);padding-right:clamp(28px,5vw,92px)}footer{width:auto;max-width:none;margin-left:clamp(28px,5vw,92px);margin-right:clamp(28px,5vw,92px)}@media (width<=700px){.nav,main,.loading-nav,.loading-main{width:100%;padding-left:20px;padding-right:20px}footer{width:auto;margin-left:20px;margin-right:20px}}@media (width<=500px){.nav,main,.loading-nav,.loading-main{padding-left:16px;padding-right:16px}footer{margin-left:16px;margin-right:16px}}
