:root{color-scheme:dark;--bg:#090b11;--surface:#10131c;--surface-2:#151925;--text:#f3f4f8;--muted:#9094a4;--subtle:#5e6373;--line:rgba(255,255,255,.1);--accent:#9b86ff;--cyan:#74e2d3;--pink:#ed8fc4;--shadow:0 24px 80px rgba(0,0,0,.3);--font:'Manrope',system-ui,sans-serif;--mono:'DM Mono',monospace}
:root[data-theme="light"]{color-scheme:light;--bg:#f4f5f8;--surface:#fff;--surface-2:#eceef4;--text:#191b27;--muted:#676b7b;--subtle:#888c9b;--line:rgba(20,22,35,.12);--shadow:0 24px 80px rgba(56,56,80,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.7;overflow-x:hidden;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.section-wrap,.topbar,.footer{width:min(1120px,calc(100% - 64px));margin-inline:auto}.ambient{position:absolute;z-index:-1;border-radius:50%;filter:blur(90px);opacity:.17;pointer-events:none}.ambient-one{width:460px;height:460px;top:30px;right:-210px;background:#725dff}.ambient-two{width:360px;height:360px;top:820px;left:-210px;background:#227e91;opacity:.1}.skip-link{position:fixed;top:-80px;left:16px;padding:10px 16px;background:var(--text);color:var(--bg);z-index:30}.skip-link:focus{top:16px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.wordmark{font-size:11px;font-weight:800;letter-spacing:.13em;display:flex;align-items:center;gap:11px}.mark{font-size:23px;color:var(--accent);line-height:1}.nav{display:flex;align-items:center;gap:33px;color:var(--muted);font-size:12px}.nav>a{transition:color .2s}.nav>a:hover,.social-links a:hover{color:var(--text)}.theme-toggle,.menu-toggle{border:1px solid var(--line);background:var(--surface);width:35px;height:35px;border-radius:50%;cursor:pointer;color:var(--text)}.theme-toggle{font-size:18px;line-height:1}.menu-toggle{display:none}.hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;position:relative;padding-top:38px;padding-bottom:95px}.hero-copy{position:relative;z-index:1}.eyebrow,.section-kicker,.mono,.hero-bottom,.art-label,.card-index,.project-top,.list-label,.timeline-meta,.contact-bottom,.footer{font-family:var(--mono);font-size:9px;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:9px;color:#a8acba;margin-bottom:26px}.status-dot,.mini-pulse{width:7px;height:7px;border-radius:50%;background:#72e1b4;box-shadow:0 0 12px #72e1b4}.hero h1{font-size:clamp(47px,6.1vw,76px);line-height:1.1;letter-spacing:-.065em;margin:0 0 20px;font-weight:700}.gradient-text{background:linear-gradient(105deg,#b9a8ff 5%,#8bdcd7 58%,#f2a3c8);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-intro{font-size:15px;margin:0 0 10px;font-weight:600}.muted{color:var(--muted)}.hero-description{max-width:420px;color:var(--muted);font-size:14px;margin:0 0 27px}.hero-actions{display:flex;align-items:center;gap:12px}.button{height:46px;display:inline-flex;align-items:center;gap:18px;padding:0 17px;border-radius:6px;font-size:11px;font-weight:700;transition:transform .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(110deg,#a88cf8,#79d8d3);color:#10111a}.button-primary span,.button-quiet span{font-size:16px}.button-quiet{border:1px solid var(--line)}.social-links{display:flex;gap:22px;margin-top:33px;color:var(--muted);font:10px var(--mono)}.social-links a span{color:var(--accent);margin-left:4px}.hero-art{width:min(100%,450px);aspect-ratio:1;justify-self:end;position:relative;display:grid;place-items:center;isolation:isolate}.art-glow{position:absolute;width:53%;height:53%;border-radius:50%;background:radial-gradient(circle,rgba(143,112,255,.25),rgba(90,185,198,.08) 55%,transparent 75%);filter:blur(15px);animation:breathe 5s ease-in-out infinite alternate}.orbit{position:absolute;border:1px solid var(--line);border-radius:50%;transform:rotate(-28deg)}.orbit-a{width:78%;height:45%;border-color:rgba(170,149,255,.38);animation:orbit 24s linear infinite}.orbit-b{width:90%;height:58%;transform:rotate(53deg);border-color:rgba(104,211,203,.23)}.orbit-c{width:61%;height:61%;transform:rotate(10deg);border-style:dashed;border-color:rgba(255,255,255,.16);animation:orbit 35s linear infinite reverse}.art-core{width:132px;height:132px;display:grid;place-items:center;border:1px solid rgba(195,178,255,.34);border-radius:50%;background:radial-gradient(circle at 35% 25%,rgba(174,145,255,.24),rgba(14,16,27,.95) 68%);box-shadow:0 0 60px rgba(144,112,255,.2),inset 0 0 35px rgba(128,107,213,.16);animation:float 6s ease-in-out infinite}.art-core span{font-size:54px;line-height:1;background:linear-gradient(135deg,#c4b4ff,#70e2d3);color:transparent;background-clip:text}.orbit-node{position:absolute;width:10px;height:10px;border-radius:50%;box-shadow:0 0 20px currentColor}.node-a{top:20%;left:26%;color:#b69cff;background:#b69cff}.node-b{right:13%;top:48%;color:#83dfd3;background:#83dfd3;width:7px;height:7px}.node-c{left:30%;bottom:13%;color:#f09dcc;background:#f09dcc;width:6px;height:6px}.art-label{position:absolute;color:var(--muted);font-size:8px}.label-top{top:12%;right:10%}.label-bottom{bottom:11%;left:6%}.mini-card{position:absolute;right:2%;bottom:20%;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:blur(16px);border-radius:7px;color:var(--muted);font-size:9px;line-height:1.5;box-shadow:var(--shadow)}.mini-card b{color:var(--text);font-weight:600}.mini-spark{font-size:20px;color:var(--accent)}.mini-pulse{width:5px;height:5px;margin-left:8px}.hero-bottom{position:absolute;bottom:32px;left:0;right:0;display:flex;align-items:center;gap:14px;color:var(--subtle)}.hero-bottom .mono{margin-left:auto;color:var(--muted)}.scroll-line{width:54px;height:1px;background:linear-gradient(90deg,var(--accent),transparent)}.intro-section,.skills-section,.work-section,.experience-section{padding-top:86px;padding-bottom:100px}.section-kicker{display:flex;align-items:center;gap:18px;color:var(--subtle)}.kicker-line{height:1px;background:var(--line);flex:1}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-top:51px}.intro-grid h2,.section-heading h2,.experience-grid>h2{font-size:clamp(32px,4vw,45px);line-height:1.18;letter-spacing:-.055em;margin:0;font-weight:600}.about-copy{font-size:15px;line-height:1.9;color:var(--muted);margin:3px 0 35px;max-width:640px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.stat{padding:19px 14px 0 0;position:relative}.stat strong{display:block;font-size:25px;letter-spacing:-.04em}.stat span{display:block;font-size:10px;color:var(--muted);margin-top:1px}.stat i{position:absolute;right:10px;top:24px;color:var(--subtle);font:9px var(--mono);font-style:normal}.section-heading{display:flex;justify-content:space-between;align-items:end;padding:50px 0 36px}.section-heading p{color:var(--muted);font-size:12px;max-width:200px;margin:0 0 4px}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.skill-card{border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 76%,var(--surface-2)));padding:23px 22px 25px;min-height:170px;transition:transform .25s,border-color .25s}.skill-card:hover,.project-card:hover{transform:translateY(-4px);border-color:rgba(155,134,255,.42)}.card-index{color:var(--accent)}.skill-card h3{font-size:14px;margin:15px 0 16px}.skill-tags,.project-tags{display:flex;gap:7px;flex-wrap:wrap}.skill-tags span,.project-tags span{border:1px solid var(--line);border-radius:99px;color:var(--muted);font:9px var(--mono);padding:5px 9px}.work-section{padding-top:66px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.project-card{overflow:hidden;border:1px solid var(--line);background:var(--surface);border-radius:8px;transition:transform .25s,border-color .25s}.project-top{display:flex;justify-content:space-between;color:var(--subtle);padding:16px 16px 0}.project-visual{height:190px;margin:12px 12px 0;overflow:hidden;border-radius:5px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse at 54% 40%,rgba(142,113,255,.4),transparent 55%),linear-gradient(140deg,#202032,#121520 60%,#17272b)}.visual-2{background:radial-gradient(ellipse at 48% 55%,rgba(87,210,195,.35),transparent 54%),linear-gradient(140deg,#15252b,#11151c 60%,#29202d)}.visual-3{background:radial-gradient(ellipse at 53% 43%,rgba(238,143,194,.36),transparent 55%),linear-gradient(140deg,#2b1d2b,#17151f 62%,#20252e)}.visual-shape{position:absolute;width:126px;height:126px;border:1px solid rgba(215,204,255,.5);border-radius:32% 68% 54% 46% / 45% 38% 62% 55%;box-shadow:0 0 45px rgba(157,130,255,.23),inset 0 0 30px rgba(175,153,255,.15);transform:rotate(-23deg);animation:morph 9s ease-in-out infinite alternate}.visual-2 .visual-shape{border-color:rgba(137,231,217,.55);border-radius:50%;width:135px;height:80px;transform:rotate(30deg)}.visual-3 .visual-shape{border-color:rgba(248,176,216,.56);width:110px;height:110px;border-radius:50% 50% 8% 50%;transform:rotate(45deg)}.visual-label{position:absolute;bottom:12px;left:14px;color:rgba(255,255,255,.66);font:8px var(--mono);letter-spacing:.15em;text-transform:uppercase}.project-content{padding:17px 18px 19px}.project-content h3{font-size:15px;margin:0 0 8px;display:flex;justify-content:space-between}.project-content h3 a{color:var(--accent)}.project-content p{font-size:11px;line-height:1.8;color:var(--muted);min-height:58px;margin:0 0 16px}.project-tags span{font-size:8px;padding:4px 8px}.experience-section{padding-top:55px;padding-bottom:120px}.experience-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding-top:50px}.experience-grid>h2{font-size:clamp(29px,3.5vw,40px)}.list-label{font-weight:400;color:var(--subtle);margin:0 0 22px}.timeline{border-left:1px solid var(--line);margin-left:4px}.timeline-item{display:grid;grid-template-columns:155px 1fr;gap:20px;position:relative;padding:0 0 29px 22px}.timeline-meta{color:var(--subtle);font-size:9px;position:relative;padding-top:3px}.timeline-meta i{position:absolute;left:-27px;top:5px;width:9px;height:9px;border:1px solid var(--accent);background:var(--bg);border-radius:50%;box-shadow:0 0 10px rgba(155,134,255,.3)}.timeline-item h4{margin:0;font-size:13px}.timeline-company{font-size:10px;color:var(--accent);margin:3px 0 6px}.timeline-description{font-size:10px;color:var(--muted);margin:0;max-width:410px}.education-label{margin-top:17px}.contact-section{position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(120deg,color-mix(in srgb,var(--surface) 86%,transparent),transparent)}.contact-inner{position:relative;padding-top:46px;padding-bottom:36px}.contact-orb{position:absolute;width:440px;height:440px;border-radius:50%;right:5%;top:10%;background:radial-gradient(circle,rgba(128,103,244,.12),transparent 68%);filter:blur(12px)}.contact-overline{font:10px var(--mono);letter-spacing:.1em;color:var(--muted);margin:53px 0 14px}.contact-inner h2{font-size:clamp(42px,7vw,75px);line-height:1.08;letter-spacing:-.06em;margin:0 0 22px}.contact-email{font-size:15px;border-bottom:1px solid var(--line);padding-bottom:5px}.contact-email span{color:var(--accent);margin-left:8px}.contact-bottom{border-top:1px solid var(--line);margin-top:82px;padding-top:16px;color:var(--subtle);display:flex;justify-content:space-between;font-size:8px}.contact-bottom a{color:var(--muted)}.footer{display:flex;justify-content:space-between;padding-top:23px;padding-bottom:24px;color:var(--subtle);font-size:8px}.footer-star{color:var(--accent);font-size:13px;vertical-align:-1px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes float{50%{transform:translateY(-10px)}}@keyframes breathe{to{transform:scale(1.15);opacity:.75}}@keyframes orbit{to{transform:rotate(332deg)}}@keyframes morph{to{border-radius:63% 37% 39% 61% / 39% 59% 41% 61%;transform:rotate(15deg) scale(1.07)}}
@media(max-width:800px){.section-wrap,.topbar,.footer{width:min(100% - 42px,620px)}.hero{grid-template-columns:1fr;min-height:auto;padding-top:80px;padding-bottom:90px}.hero-copy{max-width:560px}.hero-art{position:absolute;width:44vw;min-width:230px;right:-5%;top:110px;opacity:.5;z-index:0}.hero-copy{z-index:1}.hero h1{font-size:clamp(49px,9vw,70px)}.hero-description{max-width:380px}.intro-grid,.experience-grid{grid-template-columns:1fr;gap:33px}.intro-grid{padding-top:37px}.experience-grid{gap:39px}.section-heading{align-items:start;gap:20px;flex-direction:column}.section-heading p{max-width:none}.skill-grid{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr}.project-card:last-child{grid-column:span 2}.project-visual{height:170px}.experience-grid>h2 br{display:none}.timeline-item{grid-template-columns:140px 1fr}.contact-orb{right:-170px}.nav{gap:22px}}
@media(max-width:560px){.section-wrap,.topbar,.footer{width:calc(100% - 38px)}.topbar{height:70px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center}.menu-toggle span{width:13px;height:1px;background:var(--text);transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}.nav{display:none;position:absolute;top:61px;left:0;right:0;padding:17px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0}.nav.is-open{display:flex}.nav>a{padding:11px 6px;border-bottom:1px solid var(--line)}.theme-toggle{margin-top:12px;align-self:flex-start}.hero{padding-top:72px;padding-bottom:82px}.hero-art{width:60vw;min-width:225px;right:-15%;top:62px;opacity:.33}.hero h1{font-size:clamp(43px,12vw,60px)}.eyebrow{font-size:8px}.hero-intro{font-size:13px}.hero-description{font-size:12px;max-width:300px}.hero-actions{gap:8px}.button{height:43px;padding:0 12px;gap:10px;font-size:10px}.social-links{margin-top:26px}.hero-bottom{font-size:8px;bottom:25px}.intro-section,.skills-section,.work-section,.experience-section{padding-top:62px;padding-bottom:72px}.intro-grid{padding-top:34px}.intro-grid h2,.section-heading h2{font-size:35px}.about-copy{font-size:13px}.stat strong{font-size:21px}.stat span{font-size:9px}.stat i{display:none}.section-heading{padding:35px 0 25px}.skill-grid{grid-template-columns:1fr;gap:10px}.skill-card{min-height:unset;padding:19px}.skill-card h3{margin:10px 0}.project-grid{grid-template-columns:1fr;gap:12px}.project-card:last-child{grid-column:auto}.project-visual{height:190px}.project-content p{min-height:unset}.experience-grid{padding-top:34px}.experience-grid>h2{font-size:31px}.timeline-item{grid-template-columns:1fr;gap:4px;padding-bottom:23px}.timeline-meta{padding-bottom:2px}.timeline-meta i{top:3px}.contact-inner{padding-top:37px}.contact-overline{margin-top:42px}.contact-inner h2{font-size:clamp(43px,12vw,62px)}.contact-bottom{margin-top:62px;gap:12px;font-size:7px}.footer{font-size:7px;gap:10px}.footer span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
