:root{--bg:#0b0e12;--bg-rgb:11,14,18;--bg-elevated:#121620;--surface-rgb:19,23,30;--ink-rgb:222,226,234;--text:#e7e4dd;--text-soft:#d2d3d4;--muted:#8f96a1;--dim:#5c6370;--accent:#d4bf94;--accent-rgb:212,191,148;--accent-soft:#ebdcbd;--accent-soft-rgb:235,220,189;--sage:#8fa7b8;--second-rgb:143,167,184;--green:#8fc29a;--green-rgb:143,194,154;--live-text:#d1e8d6;--cream:#ece6da;--cream-hover:#f5f0e6;--on-cream:#12151a;--monogram:#f0e6d2;--scrollbar:#232833;--glow-1-rgb:52,72,104;--glow-3-rgb:96,84,60;--gradient:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);--card:rgba(var(--ink-rgb),0.025);--card-strong:rgba(var(--ink-rgb),0.05);--line:rgba(var(--ink-rgb),0.08);--line-strong:rgba(var(--ink-rgb),0.16);--font-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:"Instrument Serif",Georgia,serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--radius:24px;--ease:cubic-bezier(0.16,1,0.3,1);--container:1200px;color-scheme:dark}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;background:#0b0e12;background:var(--bg)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b0e12;background:var(--bg);color:#e7e4dd;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-family:var(--font-sans);font-size:16px;line-height:1.6;overflow-x:hidden}::selection{background:hsla(40,43%,71%,.35);background:rgba(var(--accent-rgb),.35);color:#ece6da;color:var(--cream)}a{text-decoration:none}a,button{color:inherit}button{background:none;border:0;cursor:pointer;font:inherit}ul{list-style:none}img{-webkit-user-drag:none;display:block;max-width:100%;-webkit-user-select:none;user-select:none}:focus-visible{border-radius:8px;outline:2px solid #d4bf94;outline:2px solid var(--accent);outline-offset:3px}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#0b0e12;background:var(--bg)}::-webkit-scrollbar-thumb{background:#232833;background:var(--scrollbar);border:2px solid #0b0e12;border:2px solid var(--bg);border-radius:10px}#root{isolation:isolate}#root,main{position:relative}.container{margin:0 auto;max-width:1200px;max-width:var(--container);padding:0 24px;width:100%}.container--narrow{max-width:920px}.serif{font-family:"Instrument Serif",Georgia,serif;font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.01em}.gradient-text{-webkit-text-fill-color:transparent;background:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);background:var(--gradient);-webkit-background-clip:text;background-clip:text;background-size:200% auto;color:transparent}@-webkit-keyframes gradient-shift{to{background-position:200%}}@keyframes gradient-shift{to{background-position:200%}}.live-dot{background:#8fc29a;background:var(--green);border-radius:50%;display:inline-block;flex-shrink:0;height:8px;position:relative;width:8px}.live-dot:after{-webkit-animation:ping 2s cubic-bezier(.16,1,.3,1) infinite;animation:ping 2s cubic-bezier(.16,1,.3,1) infinite;-webkit-animation:ping 2s var(--ease) infinite;animation:ping 2s var(--ease) infinite;background:inherit;border-radius:inherit;content:"";inset:0;position:absolute}@-webkit-keyframes ping{75%,to{opacity:0;-webkit-transform:scale(2.6);transform:scale(2.6)}}@keyframes ping{75%,to{opacity:0;-webkit-transform:scale(2.6);transform:scale(2.6)}}.bg{inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:-1}.bg__grid{background-image:radial-gradient(rgba(222,226,234,.07) 1px,transparent 0);background-image:radial-gradient(rgba(var(--ink-rgb),.07) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 100%)}.bg__aurora,.bg__grid{inset:0;position:absolute}.bg__aurora{-webkit-filter:blur(100px);filter:blur(100px);opacity:.32}.bg__blob{border-radius:50%;position:absolute}.bg__blob--1{-webkit-animation:drift-1 22s ease-in-out infinite alternate;animation:drift-1 22s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(52,72,104,.55),transparent 65%);background:radial-gradient(circle,rgba(var(--glow-1-rgb),.55),transparent 65%);height:46vw;left:-10vw;top:-18vw;width:46vw}.bg__blob--2{-webkit-animation:drift-2 26s ease-in-out infinite alternate;animation:drift-2 26s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(143,167,184,.35),transparent 65%);background:radial-gradient(circle,rgba(var(--second-rgb),.35),transparent 65%);height:40vw;right:-12vw;top:-12vw;width:40vw}.bg__blob--3{-webkit-animation:drift-3 30s ease-in-out infinite alternate;animation:drift-3 30s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(96,84,60,.28),transparent 65%);background:radial-gradient(circle,rgba(var(--glow-3-rgb),.28),transparent 65%);height:36vw;left:30vw;top:55vh;width:36vw}@-webkit-keyframes drift-1{to{-webkit-transform:translate(18vw,14vh) scale(1.15);transform:translate(18vw,14vh) scale(1.15)}}@keyframes drift-1{to{-webkit-transform:translate(18vw,14vh) scale(1.15);transform:translate(18vw,14vh) scale(1.15)}}@-webkit-keyframes drift-2{to{-webkit-transform:translate(-16vw,20vh) scale(.9);transform:translate(-16vw,20vh) scale(.9)}}@keyframes drift-2{to{-webkit-transform:translate(-16vw,20vh) scale(.9);transform:translate(-16vw,20vh) scale(.9)}}@-webkit-keyframes drift-3{to{-webkit-transform:translate(-20vw,-24vh) scale(1.2);transform:translate(-20vw,-24vh) scale(1.2)}}@keyframes drift-3{to{-webkit-transform:translate(-20vw,-24vh) scale(1.2);transform:translate(-20vw,-24vh) scale(1.2)}}.bg__spotlight{background:radial-gradient(320px circle at 50% -20%,hsla(40,43%,71%,.04),transparent 60%);background:radial-gradient(320px circle at var(--cursor-x,50%) var(--cursor-y,-20%),rgba(var(--accent-rgb),.04),transparent 60%);inset:0;position:absolute}.bg__noise{-webkit-animation:grain 1s steps(4) infinite;animation:grain 1s steps(4) infinite;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");inset:-50%;opacity:.06;position:absolute}@-webkit-keyframes grain{0%{-webkit-transform:translate(0);transform:translate(0)}25%{-webkit-transform:translate(-3%,2%);transform:translate(-3%,2%)}50%{-webkit-transform:translate(2%,-3%);transform:translate(2%,-3%)}75%{-webkit-transform:translate(-1%,3%);transform:translate(-1%,3%)}to{-webkit-transform:translate(3%,-1%);transform:translate(3%,-1%)}}@keyframes grain{0%{-webkit-transform:translate(0);transform:translate(0)}25%{-webkit-transform:translate(-3%,2%);transform:translate(-3%,2%)}50%{-webkit-transform:translate(2%,-3%);transform:translate(2%,-3%)}75%{-webkit-transform:translate(-1%,3%);transform:translate(-1%,3%)}to{-webkit-transform:translate(3%,-1%);transform:translate(3%,-1%)}}.scroll-progress{background:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);background:var(--gradient);background-size:200% auto;height:2px;left:0;position:fixed;right:0;top:0;-webkit-transform-origin:0 50%;transform-origin:0 50%;z-index:200}.preloader{align-items:center;background:#0b0e12;background:var(--bg);display:flex;inset:0;justify-content:center;position:fixed;z-index:900}.preloader__name{font-size:clamp(2.6rem,7vw,5rem);font-weight:600;letter-spacing:-.04em}.preloader__count{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";bottom:28px;color:rgba(222,226,234,.12);color:rgba(var(--ink-rgb),.12);font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:clamp(3rem,10vw,7rem);font-variant-numeric:tabular-nums;line-height:1;position:absolute;right:32px}.preloader__bar{background:rgba(222,226,234,.08);background:var(--line);height:1px;left:32px;position:absolute;right:32px;top:32px}.preloader__bar span{background:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);background:var(--gradient);display:block;height:100%;-webkit-transform-origin:0 50%;transform-origin:0 50%}.btn{align-items:center;border-radius:999px;display:inline-flex;font-size:15px;font-weight:500;gap:10px;height:54px;isolation:isolate;letter-spacing:-.01em;overflow:hidden;padding:0 26px;position:relative;transition:box-shadow .4s cubic-bezier(.16,1,.3,1),background-color .3s,border-color .3s,color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),background-color .3s,border-color .3s,color .3s;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),background-color .3s,border-color .3s,color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:box-shadow .4s var(--ease),background-color .3s,border-color .3s,color .3s,-webkit-transform .4s var(--ease);transition:transform .4s var(--ease),box-shadow .4s var(--ease),background-color .3s,border-color .3s,color .3s;transition:transform .4s var(--ease),box-shadow .4s var(--ease),background-color .3s,border-color .3s,color .3s,-webkit-transform .4s var(--ease);white-space:nowrap}.btn svg{transition:-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .4s var(--ease);transition:transform .4s var(--ease);transition:transform .4s var(--ease),-webkit-transform .4s var(--ease)}.btn:hover svg{-webkit-transform:translateX(3px);transform:translateX(3px)}.btn--small{font-size:14px;height:42px;padding:0 18px}.btn--primary{background:#ece6da;background:var(--cream);box-shadow:0 10px 30px -12px hsla(40,43%,71%,.45);box-shadow:0 10px 30px -12px rgba(var(--accent-rgb),.45);color:#12151a;color:var(--on-cream)}.btn--primary:before{background:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);background:var(--gradient);background-size:200% auto;content:"";inset:0;opacity:0;position:absolute;transition:opacity .4s;z-index:-1}.btn--primary:hover:before{opacity:1}.btn--primary:hover{box-shadow:0 14px 40px -12px hsla(40,43%,71%,.6);box-shadow:0 14px 40px -12px rgba(var(--accent-rgb),.6)}.btn--ghost{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(222,226,234,.04);background:rgba(var(--ink-rgb),.04);border:1px solid rgba(222,226,234,.16);border:1px solid var(--line-strong);color:#e7e4dd;color:var(--text)}.btn--ghost:hover{background:rgba(222,226,234,.09);background:rgba(var(--ink-rgb),.09);border-color:rgba(222,226,234,.3);border-color:rgba(var(--ink-rgb),.3)}.btn--light{background:#ece6da;background:var(--cream);color:#12151a;color:var(--on-cream)}.btn--light:hover{background:#f5f0e6;background:var(--cream-hover)}.nav{grid-gap:16px;align-items:center;border:1px solid transparent;border-radius:999px;display:grid;gap:16px;grid-template-columns:1fr auto 1fr;left:50%;max-width:1160px;padding:10px;position:fixed;top:16px;transition:background-color .5s cubic-bezier(.16,1,.3,1),border-color .5s cubic-bezier(.16,1,.3,1),-webkit-backdrop-filter .5s;transition:background-color .5s cubic-bezier(.16,1,.3,1),border-color .5s cubic-bezier(.16,1,.3,1),backdrop-filter .5s;transition:background-color .5s cubic-bezier(.16,1,.3,1),border-color .5s cubic-bezier(.16,1,.3,1),backdrop-filter .5s,-webkit-backdrop-filter .5s;transition:background-color .5s var(--ease),border-color .5s var(--ease),-webkit-backdrop-filter .5s;transition:background-color .5s var(--ease),border-color .5s var(--ease),backdrop-filter .5s;transition:background-color .5s var(--ease),border-color .5s var(--ease),backdrop-filter .5s,-webkit-backdrop-filter .5s;translate:-50% 0;width:calc(100% - 32px);z-index:300}.nav--scrolled{backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);background:rgba(19,23,30,.6);background:rgba(var(--surface-rgb),.6);border-color:rgba(222,226,234,.08);border-color:var(--line);box-shadow:0 20px 50px -20px rgba(0,0,0,.8)}.nav__links{background:rgba(222,226,234,.03);background:rgba(var(--ink-rgb),.03);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:999px;display:flex;gap:2px;grid-column:2;padding:4px}.nav__links a{border-radius:999px;color:#8f96a1;color:var(--muted);font-size:14px;padding:8px 16px;position:relative;transition:color .3s}.nav__links a.is-active,.nav__links a:hover{color:#e7e4dd;color:var(--text)}.nav__actions{align-items:center;display:flex;gap:10px;grid-column:3;justify-content:flex-end}.nav__pill{background:rgba(222,226,234,.09);background:rgba(var(--ink-rgb),.09);border-radius:inherit;box-shadow:inset 0 1px 0 rgba(222,226,234,.08);box-shadow:inset 0 1px 0 rgba(var(--ink-rgb),.08);inset:0;position:absolute}.nav__burger,.nav__label{position:relative}.nav__burger{background:rgba(222,226,234,.06);background:rgba(var(--ink-rgb),.06);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:50%;display:none;height:44px;width:44px;z-index:2}.nav__burger span{background:#e7e4dd;background:var(--text);height:1.5px;left:13px;position:absolute;right:13px;transition:top .5s cubic-bezier(.16,1,.3,1),-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:transform .5s cubic-bezier(.16,1,.3,1),top .5s cubic-bezier(.16,1,.3,1);transition:transform .5s cubic-bezier(.16,1,.3,1),top .5s cubic-bezier(.16,1,.3,1),-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:top .5s var(--ease),-webkit-transform .5s var(--ease);transition:transform .5s var(--ease),top .5s var(--ease);transition:transform .5s var(--ease),top .5s var(--ease),-webkit-transform .5s var(--ease)}.nav__burger span:first-child{top:17px}.nav__burger span:last-child{top:25px}.nav__burger.is-open span:first-child{top:21px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.nav__burger.is-open span:last-child{top:21px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.mobile-menu{align-items:flex-end;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:rgba(11,14,18,.96);background:rgba(var(--bg-rgb),.96);display:flex;inset:0;padding:120px 24px 48px;position:fixed;z-index:250}.mobile-menu nav{display:flex;flex-direction:column;gap:6px;width:100%}.mobile-menu a{align-items:baseline;border-bottom:1px solid rgba(222,226,234,.08);border-bottom:1px solid var(--line);display:flex;font-size:clamp(2.2rem,10vw,3.4rem);font-weight:500;gap:16px;letter-spacing:-.04em;line-height:1.15;padding-bottom:6px}.mobile-menu__index{color:#5c6370;color:var(--dim);font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:12px;letter-spacing:0}.hero{align-items:center;display:flex;min-height:100vh;min-height:100svh;padding:140px 0 100px;position:relative}.hero__inner{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1.15fr .85fr}.badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(222,226,234,.04);background:rgba(var(--ink-rgb),.04);border:1px solid rgba(222,226,234,.16);border:1px solid var(--line-strong);border-radius:999px;color:#e7e4dd;color:var(--text);display:inline-flex;font-size:14px;gap:10px;padding:8px 16px 8px 14px;transition:border-color .3s,background-color .3s}.badge:hover{background:rgba(222,226,234,.08);background:rgba(var(--ink-rgb),.08);border-color:rgba(222,226,234,.3);border-color:rgba(var(--ink-rgb),.3)}.badge svg{color:#8f96a1;color:var(--muted);transition:-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .4s var(--ease);transition:transform .4s var(--ease);transition:transform .4s var(--ease),-webkit-transform .4s var(--ease)}.badge:hover svg{-webkit-transform:translateX(3px);transform:translateX(3px)}.hero__title{display:flex;flex-direction:column;font-size:clamp(4.2rem,11vw,9.6rem);font-weight:600;letter-spacing:-.055em;line-height:.92;margin:28px 0 18px}.split-word{display:block;white-space:nowrap}.split-word.serif{letter-spacing:-.02em;padding-left:.04em}.split-word__mask{margin-bottom:-.08em;overflow:hidden;padding-bottom:.08em;vertical-align:top}.split-word__mask,.split-word__mask>span{display:inline-block}.split-word.gradient-text{-webkit-text-fill-color:initial;-webkit-animation:none;animation:none;background:none}.split-word.gradient-text .split-word__mask>span{-webkit-text-fill-color:transparent;background:linear-gradient(100deg,#efe3c6,#d4bf94 55%,#b0966a);background:var(--gradient);-webkit-background-clip:text;background-clip:text;background-size:100% auto;padding-right:.06em}.hero__role{align-items:center;display:flex;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:500;gap:14px;letter-spacing:-.02em}.hero__role-line{background:rgba(222,226,234,.16);background:var(--line-strong);height:1px;width:48px}.role-rotator{align-items:center;display:inline-flex;height:1.5em;overflow:hidden;position:relative}.role-rotator>span{display:inline-block}.hero__desc{text-wrap:pretty;color:#8f96a1;color:var(--muted);font-size:17px;margin:22px 0 36px;max-width:520px}.hero__actions{display:flex;flex-wrap:wrap;gap:14px}.hero__socials{display:flex;gap:10px;margin-top:36px}.hero__socials a{border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:50%;color:#8f96a1;color:var(--muted);display:grid;height:44px;place-items:center;transition:color .3s,border-color .3s,background-color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:color .3s,border-color .3s,transform .4s cubic-bezier(.16,1,.3,1),background-color .3s;transition:color .3s,border-color .3s,transform .4s cubic-bezier(.16,1,.3,1),background-color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:color .3s,border-color .3s,background-color .3s,-webkit-transform .4s var(--ease);transition:color .3s,border-color .3s,transform .4s var(--ease),background-color .3s;transition:color .3s,border-color .3s,transform .4s var(--ease),background-color .3s,-webkit-transform .4s var(--ease);width:44px}.hero__socials a:hover{background:rgba(222,226,234,.05);background:rgba(var(--ink-rgb),.05);border-color:rgba(222,226,234,.16);border-color:var(--line-strong);color:#e7e4dd;color:var(--text);-webkit-transform:translateY(-3px);transform:translateY(-3px)}.hero__visual{justify-self:center;max-width:440px;position:relative;width:100%}.portrait{aspect-ratio:4/5;border-radius:32px;position:relative}.portrait__ring{border-radius:34px;inset:-2px;overflow:hidden;position:absolute}.portrait__ring:before{-webkit-animation:spin 6s linear infinite;animation:spin 6s linear infinite;background:conic-gradient(from 0deg,transparent 0deg,#d4bf94 60deg,#ebdcbd 120deg,transparent 180deg,transparent 1turn);background:conic-gradient(from 0deg,transparent 0deg,var(--accent) 60deg,var(--accent-soft) 120deg,transparent 180deg,transparent 1turn);content:"";inset:-50%;position:absolute}.portrait:after{background:radial-gradient(circle,hsla(40,43%,71%,.6),rgba(143,167,184,.25) 50%,transparent 70%);background:radial-gradient(circle,rgba(var(--accent-rgb),.6),rgba(var(--second-rgb),.25) 50%,transparent 70%);border-radius:50%;content:"";-webkit-filter:blur(50px);filter:blur(50px);inset:10%;position:absolute;z-index:-1}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.portrait__frame{background:#12151a;background:var(--on-cream);border-radius:31px;inset:1px;overflow:hidden;position:absolute}.portrait__frame img{height:100%;object-fit:cover;object-position:center 30%;-webkit-transform:scale(1.02);transform:scale(1.02);width:100%}.portrait__shade{background:linear-gradient(180deg,transparent 55%,rgba(11,14,18,.65));background:linear-gradient(180deg,transparent 55%,rgba(var(--bg-rgb),.65) 100%);inset:0;position:absolute}.float-chip{align-items:center;-webkit-animation:bob 6s ease-in-out infinite;animation:bob 6s ease-in-out infinite;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(19,23,30,.7);background:rgba(var(--surface-rgb),.7);border:1px solid rgba(222,226,234,.16);border:1px solid var(--line-strong);border-radius:14px;box-shadow:0 20px 40px -12px rgba(0,0,0,.7);display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 16px;position:absolute;white-space:nowrap}.float-chip svg{color:#d4bf94;color:var(--accent)}.float-chip--location{left:-14%;top:12%}.float-chip--thm{-webkit-animation-delay:-2s;animation-delay:-2s;right:-16%;top:70%}.float-chip--thm svg{color:#8fa7b8;color:var(--sage)}@-webkit-keyframes bob{50%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}}@keyframes bob{50%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}}.scroll-cue{align-items:center;bottom:28px;color:#5c6370;color:var(--dim);display:flex;flex-direction:column;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:11px;gap:8px;left:50%;letter-spacing:.2em;position:absolute;text-transform:uppercase;translate:-50% 0}.scroll-cue svg{-webkit-animation:bob 2s ease-in-out infinite;animation:bob 2s ease-in-out infinite}.marquee{background:rgba(222,226,234,.012);background:rgba(var(--ink-rgb),.012);border-bottom:1px solid rgba(222,226,234,.08);border-bottom:1px solid var(--line);border-top:1px solid rgba(222,226,234,.08);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);overflow:hidden;padding:22px 0;position:relative}.marquee__row{-webkit-animation:marquee 70s linear infinite;animation:marquee 70s linear infinite;display:flex;width:-webkit-max-content;width:max-content}.marquee__row--reverse{animation-direction:reverse;-webkit-animation-duration:80s;animation-duration:80s}.marquee:hover .marquee__row{-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes marquee{to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}@keyframes marquee{to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}.marquee__item{align-items:center;color:rgba(222,226,234,.7);color:rgba(var(--ink-rgb),.7);display:flex;font-size:clamp(.95rem,1.4vw,1.1rem);font-weight:500;gap:10px;letter-spacing:-.02em;padding-right:16px;white-space:nowrap}.marquee__item img{height:20px;object-fit:contain;width:20px}.marquee__sep{color:#5c6370;color:var(--dim);font-size:.6em;margin-left:8px}.section{padding:140px 0 40px;position:relative;scroll-margin-top:40px}.section-heading{margin-bottom:56px}.eyebrow{align-items:center;color:#8f96a1;color:var(--muted);display:flex;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:12px;gap:12px;letter-spacing:.16em;margin-bottom:20px;text-transform:uppercase}.eyebrow--center{justify-content:center}.eyebrow__index{color:#d4bf94;color:var(--accent)}.eyebrow__line{background:rgba(222,226,234,.16);background:var(--line-strong);height:1px;width:40px}.section-title{font-size:clamp(2.6rem,6vw,4.8rem);font-weight:600;letter-spacing:-.05em;line-height:1}.section-title .serif{padding-right:.08em}.section-lead{color:#8f96a1;color:var(--muted);font-size:17px;margin-top:20px;max-width:560px}.card{height:100%}.card--pad{padding:32px}.spotlight-card{background:linear-gradient(180deg,rgba(222,226,234,.04),rgba(222,226,234,.015));background:linear-gradient(180deg,rgba(var(--ink-rgb),.04),rgba(var(--ink-rgb),.015));border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:24px;border-radius:var(--radius);isolation:isolate;overflow:hidden;position:relative;transition:border-color .4s,-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:border-color .4s,transform .5s cubic-bezier(.16,1,.3,1);transition:border-color .4s,transform .5s cubic-bezier(.16,1,.3,1),-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:border-color .4s,-webkit-transform .5s var(--ease);transition:border-color .4s,transform .5s var(--ease);transition:border-color .4s,transform .5s var(--ease),-webkit-transform .5s var(--ease)}.spotlight-card:after,.spotlight-card:before{content:"";opacity:0;pointer-events:none;position:absolute;transition:opacity .5s}.spotlight-card:before{background:radial-gradient(280px circle at 50% 50%,hsla(40,43%,71%,.06),transparent 45%);background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(var(--accent-rgb),.06),transparent 45%);inset:0;z-index:-1}.spotlight-card:after{background:radial-gradient(160px circle at 50% 50%,hsla(40,53%,83%,.4),transparent 60%);background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(var(--accent-soft-rgb),.4),transparent 60%);border-radius:inherit;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);padding:1px}.spotlight-card:hover:after,.spotlight-card:hover:before{opacity:1}.card__kicker{font-size:clamp(1.2rem,2vw,1.5rem);font-weight:500;letter-spacing:-.02em;line-height:1.35;margin-bottom:20px}.card__label{align-items:center;color:#8f96a1;color:var(--muted);display:flex;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:12px;gap:8px;letter-spacing:.12em;margin-bottom:10px;text-transform:uppercase}.card__title{font-size:1.4rem;font-weight:600;letter-spacing:-.03em;line-height:1.25}.card__muted{color:#8f96a1;color:var(--muted);font-size:15px;font-weight:400}.card__title .card__muted{font-size:inherit}.bento{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.bento__half,.bento__intro,.bento__terminal{grid-column:span 2}.scrub{text-wrap:pretty;font-size:17px;line-height:1.7}.scrub-word{display:inline}.stat{display:flex;flex-direction:column;gap:24px;justify-content:space-between;min-height:180px}.stat__value{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";font-size:clamp(2.4rem,4vw,3.4rem);font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.05em;line-height:1}.stat__label{color:#8f96a1;color:var(--muted);font-size:14px}.terminal{display:flex;flex-direction:column;font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:13.5px;height:100%;min-height:300px}.terminal__bar{align-items:center;border-bottom:1px solid rgba(222,226,234,.08);border-bottom:1px solid var(--line);display:flex;gap:8px;padding:16px 20px}.terminal__bar span{background:#ff5f57;border-radius:50%;height:12px;width:12px}.terminal__bar span:nth-child(2){background:#febc2e}.terminal__bar span:nth-child(3){background:#28c840}.terminal__bar p{color:#5c6370;color:var(--dim);font-size:12px;margin-left:auto;margin-right:auto;-webkit-transform:translateX(-26px);transform:translateX(-26px)}.terminal__body{color:#d2d3d4;color:var(--text-soft);flex:1 1;line-height:1.75;padding:20px 24px 24px}.terminal__block{margin-bottom:12px}.terminal__prompt{color:#8fc29a;color:var(--green)}.terminal__out{color:#8f96a1;color:var(--muted);white-space:pre-wrap}.terminal__out:first-of-type{color:#8fa7b8;color:var(--sage)}.terminal__caret{-webkit-animation:blink 1s steps(1) infinite;animation:blink 1s steps(1) infinite;background:#d4bf94;background:var(--accent);display:inline-block;height:1.1em;margin-left:2px;vertical-align:text-bottom;width:8px}@-webkit-keyframes blink{50%{opacity:0}}@keyframes blink{50%{opacity:0}}.location{align-items:center;display:flex;gap:28px}.location__map{background:repeating-radial-gradient(circle,transparent 0 14px,rgba(222,226,234,.06) 14px 15px),radial-gradient(circle,hsla(40,43%,71%,.25),transparent 70%);background:repeating-radial-gradient(circle,transparent 0 14px,rgba(var(--ink-rgb),.06) 14px 15px),radial-gradient(circle,rgba(var(--accent-rgb),.25),transparent 70%);border:1px solid rgba(222,226,234,.16);border:1px solid var(--line-strong);border-radius:50%;flex-shrink:0;height:112px;position:relative;width:112px}.location__map:before{-webkit-animation:spin 4s linear infinite;animation:spin 4s linear infinite;background:conic-gradient(from 0deg,rgba(143,167,184,.35),transparent 25%);background:conic-gradient(from 0deg,rgba(var(--second-rgb),.35),transparent 25%);border-radius:50%;content:"";inset:0;position:absolute}.location__pulse{background:#8fa7b8;background:var(--sage);border-radius:50%;box-shadow:0 0 12px rgba(143,167,184,.6);box-shadow:0 0 12px rgba(var(--second-rgb),.6);height:10px;left:50%;margin:-5px 0 0 -5px;position:absolute;top:50%;width:10px}.now{position:relative}.now .card__title{margin-bottom:10px;padding-right:40px}.now__arrow{color:#5c6370;color:var(--dim);font-size:22px;position:absolute;right:28px;top:28px}.timeline{display:flex;flex-direction:column;gap:20px;padding-left:48px;position:relative}.timeline__track{background:rgba(222,226,234,.08);background:var(--line);border-radius:2px;bottom:8px;left:11px;overflow:hidden;position:absolute;top:8px;width:2px}.timeline__beam{background:linear-gradient(180deg,#d4bf94,#8fa7b8);background:linear-gradient(180deg,var(--accent),var(--sage));box-shadow:none;height:100%;-webkit-transform-origin:top;transform-origin:top;width:100%}.timeline__item{position:relative}.timeline__node{background:#0b0e12;background:var(--bg);border:2px solid rgba(222,226,234,.16);border:2px solid var(--line-strong);border-radius:50%;height:14px;left:-43px;position:absolute;top:34px;width:14px}.timeline__node.is-current{border-color:#d4bf94;border-color:var(--accent);box-shadow:0 0 0 4px hsla(40,43%,71%,.15),0 0 20px hsla(40,43%,71%,.6);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.15),0 0 20px rgba(var(--accent-rgb),.6)}.xp{position:relative}.xp:hover{-webkit-transform:translateX(6px);transform:translateX(6px)}.xp__meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.xp__period{color:#8f96a1;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:13px}.tag{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:500;gap:8px;padding:4px 12px}.tag--live{background:rgba(143,194,154,.1);background:rgba(var(--green-rgb),.1);border:1px solid rgba(143,194,154,.25);border:1px solid rgba(var(--green-rgb),.25);color:#d1e8d6;color:var(--live-text)}.tag--live .live-dot{height:6px;width:6px}.xp__title{font-size:clamp(1.4rem,2.6vw,1.9rem);font-weight:600;letter-spacing:-.035em;line-height:1.2}.xp__org{color:#8f96a1;color:var(--muted);font-size:16px;margin-top:6px}.xp__desc{text-wrap:pretty;color:#d2d3d4;color:var(--text-soft);font-size:15px;margin-top:14px;max-width:600px;opacity:.85}.xp__index{-webkit-text-stroke:1px rgba(222,226,234,.08);-webkit-text-stroke:1px rgba(var(--ink-rgb),.08);color:transparent;font-size:5rem;font-weight:700;letter-spacing:-.06em;position:absolute;right:28px;top:50%;transition:-webkit-text-stroke-color .4s;translate:0 -50%}.xp:hover .xp__desc{text-wrap:pretty;color:#d2d3d4;color:var(--text-soft);font-size:15px;margin-top:14px;max-width:600px;opacity:.85}.xp__index{-webkit-text-stroke-color:hsla(40,43%,71%,.45);-webkit-text-stroke-color:rgba(var(--accent-rgb),.45)}.skills{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(6,1fr)}.skills__group--backend,.skills__group--data,.skills__group--frontend,.skills__group--languages{grid-column:span 3}.skills__group--testing{grid-column:span 2}.skills__group--devops{grid-column:span 4}.skills__group--security{grid-column:1/-1}.skills__group--testing .skills__list{grid-template-columns:repeat(2,1fr)}.skills__head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:28px}.skills__head .card__muted{margin-top:4px}.skills__count{border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:999px;color:#5c6370;color:var(--dim);font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:13px;padding:4px 10px}.skills__list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.skills__extra{align-items:center;border-top:1px solid rgba(222,226,234,.08);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:20px;padding-top:18px}.skills__extra .card__label{font-size:11px;margin:0 4px 0 0}.skills__extra ul{display:flex;flex-wrap:wrap;gap:8px}.skills__extra li{background:rgba(222,226,234,.04);background:rgba(var(--ink-rgb),.04);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:999px;color:#d2d3d4;color:var(--text-soft);font-size:12.5px;padding:4px 12px}.skill-monogram,.skills__extra li{font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono)}.skill-monogram{background:linear-gradient(135deg,hsla(40,43%,71%,.35),rgba(143,167,184,.25));background:linear-gradient(135deg,rgba(var(--accent-rgb),.35),rgba(var(--second-rgb),.25));border:1px solid rgba(222,226,234,.14);border:1px solid rgba(var(--ink-rgb),.14);border-radius:28%;color:#f0e6d2;color:var(--monogram);display:grid;font-size:15px!important;font-weight:600;letter-spacing:-.04em;place-items:center}.skill{align-items:center;background:rgba(222,226,234,.025);background:rgba(var(--ink-rgb),.025);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;gap:10px;padding:18px 8px 14px;transition:background-color .3s,border-color .3s,box-shadow .3s}.skill:hover{background:rgba(222,226,234,.06);background:rgba(var(--ink-rgb),.06);border-color:rgba(222,226,234,.16);border-color:var(--line-strong);box-shadow:0 16px 40px -16px hsla(40,43%,71%,.5);box-shadow:0 16px 40px -16px rgba(var(--accent-rgb),.5)}.skill__icon{display:grid;height:44px;place-items:center;width:44px}.skill__icon>*{height:36px;object-fit:contain;transition:-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:transform .5s cubic-bezier(.16,1,.3,1);transition:transform .5s cubic-bezier(.16,1,.3,1),-webkit-transform .5s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .5s var(--ease);transition:transform .5s var(--ease);transition:transform .5s var(--ease),-webkit-transform .5s var(--ease);width:36px}.skill:hover .skill__icon>*{-webkit-transform:scale(1.12) rotate(-4deg);transform:scale(1.12) rotate(-4deg)}.skill__name{color:#d2d3d4;color:var(--text-soft);font-size:13px;line-height:1.3;text-align:center}.certs{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(6,1fr)}.certs__item{grid-column:span 2}.certs__item:nth-child(4),.certs__item:nth-child(5){grid-column:span 3}.cert{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.cert,.cert__button{border-radius:24px;border-radius:var(--radius);height:100%}.cert__button{background:linear-gradient(180deg,rgba(222,226,234,.05),rgba(222,226,234,.015));background:linear-gradient(180deg,rgba(var(--ink-rgb),.05),rgba(var(--ink-rgb),.015));border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;position:relative;text-align:left;transition:border-color .4s,box-shadow .4s;width:100%}.cert__button:hover{border-color:rgba(222,226,234,.16);border-color:var(--line-strong);box-shadow:0 30px 60px -30px hsla(40,43%,71%,.6);box-shadow:0 30px 60px -30px rgba(var(--accent-rgb),.6)}.cert__media{aspect-ratio:16/10;background:#fff;border-radius:16px;margin:10px 10px 0;overflow:hidden;position:relative}.certs__item:nth-child(4) .cert__media,.certs__item:nth-child(5) .cert__media{aspect-ratio:16/8}.cert__media img{-webkit-filter:saturate(.85);filter:saturate(.85);height:100%;object-fit:cover;object-position:top;transition:-webkit-transform .8s cubic-bezier(.16,1,.3,1),-webkit-filter .6s;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .6s;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .6s,-webkit-transform .8s cubic-bezier(.16,1,.3,1),-webkit-filter .6s;transition:-webkit-transform .8s var(--ease),-webkit-filter .6s;transition:transform .8s var(--ease),filter .6s;transition:transform .8s var(--ease),filter .6s,-webkit-transform .8s var(--ease),-webkit-filter .6s;width:100%}.cert__media:after{background:linear-gradient(180deg,transparent 50%,rgba(11,14,18,.35));background:linear-gradient(180deg,transparent 50%,rgba(var(--bg-rgb),.35));content:"";inset:0;position:absolute}.cert__button:hover .cert__media img{-webkit-filter:saturate(1);filter:saturate(1);-webkit-transform:scale(1.06);transform:scale(1.06)}.cert__body{align-items:center;display:flex;gap:14px;padding:18px 20px 20px}.cert__body h3{font-size:1.1rem;font-weight:600;letter-spacing:-.02em}.cert__body p{color:#8f96a1;color:var(--muted);font-size:13px}.cert__icon{background:hsla(40,43%,71%,.1);background:rgba(var(--accent-rgb),.1);border:1px solid hsla(40,43%,71%,.2);border:1px solid rgba(var(--accent-rgb),.2);border-radius:12px;color:#d4bf94;color:var(--accent);display:grid;flex-shrink:0;height:40px;place-items:center;width:40px}.cert__arrow{color:#5c6370;color:var(--dim);flex-shrink:0;font-size:20px;margin-left:auto;transition:color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),color .3s;transition:transform .4s cubic-bezier(.16,1,.3,1),color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:color .3s,-webkit-transform .4s var(--ease);transition:transform .4s var(--ease),color .3s;transition:transform .4s var(--ease),color .3s,-webkit-transform .4s var(--ease)}.cert__button:hover .cert__arrow{color:#e7e4dd;color:var(--text);-webkit-transform:translate(3px,-3px);transform:translate(3px,-3px)}.cert__glare{background:radial-gradient(circle at 50% 0,rgba(222,226,234,.14),transparent 40%);background:radial-gradient(circle at var(--gx,50%) var(--gy,0),rgba(var(--ink-rgb),.14),transparent 40%);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .4s}.cert:hover .cert__glare{opacity:1}.lightbox{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(11,14,18,.82);background:rgba(var(--bg-rgb),.82);display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:500}.lightbox__figure{background:#121620;background:var(--bg-elevated);border:1px solid rgba(222,226,234,.16);border:1px solid var(--line-strong);border-radius:24px;box-shadow:0 40px 120px -20px rgba(0,0,0,.9);display:flex;flex-direction:column;max-height:100%;overflow:hidden;width:min(1000px,100%)}.lightbox__figure img{background:#fff;max-height:72vh;min-height:0;object-fit:contain;width:100%}.lightbox__figure figcaption{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px}.lightbox__figure h3{font-size:1.2rem;letter-spacing:-.02em}.lightbox__figure p{color:#8f96a1;color:var(--muted);font-size:14px}.lightbox__actions{align-items:center;display:flex;gap:10px}.lightbox__close{background:rgba(222,226,234,.06);background:rgba(var(--ink-rgb),.06);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:50%;display:grid;font-size:18px;height:42px;place-items:center;transition:background-color .3s,-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:background-color .3s,transform .4s cubic-bezier(.16,1,.3,1);transition:background-color .3s,transform .4s cubic-bezier(.16,1,.3,1),-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:background-color .3s,-webkit-transform .4s var(--ease);transition:background-color .3s,transform .4s var(--ease);transition:background-color .3s,transform .4s var(--ease),-webkit-transform .4s var(--ease);width:42px}.lightbox__close:hover{background:rgba(222,226,234,.12);background:rgba(var(--ink-rgb),.12);-webkit-transform:rotate(90deg);transform:rotate(90deg)}.edu{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.edu__card{display:flex;flex-direction:column}.edu__card:hover{-webkit-transform:translateY(-6px);transform:translateY(-6px)}.edu__top{align-items:center;display:flex;justify-content:space-between;margin-bottom:48px}.edu__icon{background:rgba(143,167,184,.08);background:rgba(var(--second-rgb),.08);border:1px solid rgba(143,167,184,.2);border:1px solid rgba(var(--second-rgb),.2);border-radius:14px;color:#8fa7b8;color:var(--sage);display:grid;font-size:20px;height:46px;place-items:center;width:46px}.edu__card .card__title{font-size:1.2rem}.contact{overflow:hidden;padding-bottom:120px;padding-top:180px;text-align:center}.contact__glow{aspect-ratio:2/1;background:radial-gradient(ellipse,rgba(52,72,104,.35),rgba(143,167,184,.12) 45%,transparent 70%);background:radial-gradient(ellipse,rgba(var(--glow-1-rgb),.35),rgba(var(--second-rgb),.12) 45%,transparent 70%);border-radius:50%;-webkit-filter:blur(40px);filter:blur(40px);left:50%;position:absolute;top:140px;translate:-50% 0;width:min(900px,120vw);z-index:-1}.contact__title{font-size:clamp(2.8rem,8vw,6.4rem);font-weight:600;letter-spacing:-.055em;line-height:.98;margin:0 auto;max-width:1100px}.contact__title .serif{padding-right:.08em}.contact__lead{margin:24px auto 0}.contact__cta{align-items:center;display:flex;flex-direction:column;gap:18px;margin:48px 0 64px}.contact__email{align-items:center;background:#ece6da;background:var(--cream);border-radius:999px;box-shadow:0 16px 50px -20px hsla(40,43%,71%,.5);box-shadow:0 16px 50px -20px rgba(var(--accent-rgb),.5);color:#12151a;color:var(--on-cream);display:inline-flex;font-size:clamp(1.05rem,2.6vw,1.6rem);font-weight:500;gap:14px;letter-spacing:-.02em;padding:20px 34px;transition:box-shadow .4s,background-color .3s;word-break:break-all}.contact__email:hover{background:#f5f0e6;background:var(--cream-hover);box-shadow:0 20px 60px -18px hsla(40,43%,71%,.7);box-shadow:0 20px 60px -18px rgba(var(--accent-rgb),.7)}.contact__email svg{flex-shrink:0;transition:-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .4s var(--ease);transition:transform .4s var(--ease);transition:transform .4s var(--ease),-webkit-transform .4s var(--ease)}.contact__email:hover svg{-webkit-transform:translate(3px,-3px) rotate(45deg);transform:translate(3px,-3px) rotate(45deg)}.copy-label{align-items:center;display:inline-flex;gap:8px}.contact__grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr);text-align:left}.contact__card{align-items:center;display:flex;gap:16px;padding:20px}a.contact__card:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px)}.contact__card .card__label{font-size:11px;margin-bottom:2px}.contact__icon{background:rgba(222,226,234,.05);background:rgba(var(--ink-rgb),.05);border:1px solid rgba(222,226,234,.08);border:1px solid var(--line);border-radius:14px;display:grid;flex-shrink:0;font-size:18px;height:44px;place-items:center;width:44px}.contact__value{display:block;font-size:15px;font-weight:500;word-break:break-word}.footer{border-top:1px solid rgba(222,226,234,.08);border-top:1px solid var(--line);color:#8f96a1;color:var(--muted);font-size:14px;padding:28px 0}.footer__inner{flex-wrap:wrap;gap:16px;justify-content:space-between}.footer__inner,.footer__time{align-items:center;display:flex}.footer__time{font-family:JetBrains Mono,ui-monospace,monospace;font-family:var(--font-mono);font-size:13px;gap:10px}.footer__top{align-items:center;color:#e7e4dd;color:var(--text);display:inline-flex;gap:8px;transition:color .3s}.footer__top svg{transition:-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1);transition:transform .4s cubic-bezier(.16,1,.3,1),-webkit-transform .4s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .4s var(--ease);transition:transform .4s var(--ease);transition:transform .4s var(--ease),-webkit-transform .4s var(--ease)}.footer__top:hover svg{-webkit-transform:translateY(-3px);transform:translateY(-3px)}@media (max-width:1080px){.nav__links{display:none}.nav__burger{display:block}.contact__grid{grid-template-columns:1fr}}@media (max-width:900px){.hero{padding-top:120px}.hero__inner{gap:48px;grid-template-columns:1fr}.hero__visual{max-width:340px;order:-1}.float-chip--location{left:-6%}.float-chip--thm{right:-8%}.bento{grid-template-columns:repeat(2,1fr)}.skills{grid-template-columns:1fr}.skills>*{grid-column:auto!important}.skills__group--data .skills__list,.skills__group--testing .skills__list{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.certs{grid-template-columns:repeat(2,1fr)}.certs__item,.certs__item:nth-child(4),.certs__item:nth-child(5){grid-column:auto}.certs__item:nth-child(5){grid-column:span 2}.edu{grid-template-columns:1fr}.edu__top{margin-bottom:28px}.section{padding-top:110px}}@media (max-width:600px){.container{padding:0 18px}.nav{top:10px;width:calc(100% - 20px)}.nav__cta{display:none}.hero__title{font-size:clamp(3.6rem,19vw,5rem)}.hero__visual{max-width:280px}.float-chip{font-size:12px;padding:8px 12px}.float-chip--thm{right:-12%}.btn{height:50px;padding:0 22px}.card--pad{padding:24px}.bento{gap:12px;grid-template-columns:1fr 1fr}.bento__half,.bento__intro,.bento__terminal{grid-column:span 2}.stat{min-height:140px}.stat__value{font-size:2.2rem}.location{gap:20px}.location__map{height:84px;width:84px}.timeline{padding-left:32px}.timeline__track{left:5px}.timeline__node{left:-33px}.xp__desc{text-wrap:pretty;color:#d2d3d4;color:var(--text-soft);font-size:15px;margin-top:14px;max-width:600px;opacity:.85}.xp__index{font-size:3.4rem;right:18px;top:28px;translate:none}.skills__group--data .skills__list,.skills__group--testing .skills__list,.skills__list{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.certs{grid-template-columns:1fr}.certs__item:nth-child(5){grid-column:auto}.contact{padding-top:130px}.contact__grid{grid-template-columns:1fr}.contact__email{padding:16px 24px}.footer__inner{flex-direction:column;text-align:center}.preloader__count{right:20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}}
/*# sourceMappingURL=main.2178a26c.css.map*/