@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}}@layer base{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--rail-width:88px;--page-width:1180px;--background:#f7f9f8;--surface:#fff;--surface-raised:#edf3f1;--surface-soft:#f1f5f4;--text:#14231f;--muted:#5c6c67;--line:#14231f24;--accent:#087a65;--accent-strong:#05614f;--accent-contrast:#fff;--secondary:#1f5f99;--shadow:#1c302a1f;--display-font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono-font:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}:root[data-theme=mint]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#071218;--surface:#0b1c24;--surface-raised:#102832;--surface-soft:#0d222b;--text:#effaf7;--muted:#9eb5b2;--line:#adefd12e;--accent:#7df3ce;--accent-strong:#1ed7aa;--accent-contrast:#062019;--secondary:#79d9ff;--shadow:#00000047}:root[data-theme=amber]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#11130e;--surface:#191c13;--surface-raised:#22271a;--surface-soft:#1b2015;--text:#fbfce9;--muted:#b9bda2;--line:#fee71533;--accent:#fee715;--accent-strong:#e8d200;--accent-contrast:#181700;--secondary:#ff9f43;--shadow:#00000047}:root[data-theme=violet]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#120d1b;--surface:#1b1328;--surface-raised:#281b39;--surface-soft:#20162e;--text:#fbf7ff;--muted:#c1b1cc;--line:#d8b4fe33;--accent:#d8b4fe;--accent-strong:#b779f2;--accent-contrast:#24102f;--secondary:#67e8f9;--shadow:#0000004d}body{background:var(--background);color:var(--text);font-family:var(--display-font);text-rendering:optimizelegibility;font-size:1rem;line-height:1.65}::selection{background:var(--accent);color:var(--accent-contrast)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3{letter-spacing:-.035em;font-weight:650;line-height:1.08}section[id]{scroll-margin-top:0}}@layer components{.skip-link{z-index:1000;background:var(--accent);color:var(--accent-contrast);padding:.7rem 1rem;font-weight:700;transition:transform .16s;position:fixed;top:16px;left:104px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-rail{z-index:100;width:var(--rail-width);border-right:1px solid var(--line);background:color-mix(in srgb, var(--surface) 96%, transparent);flex-direction:column;align-items:center;padding:1.2rem .85rem;display:flex;position:fixed;inset:0 auto 0 0}.rail-header,.rail-footer{flex-direction:column;align-items:center;gap:.8rem;display:flex}.brand-mark{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 12%, var(--surface)), var(--surface));width:52px;height:52px;color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 10%, transparent);border-radius:16px 16px 16px 4px;place-items:center;display:grid}.menu-button{display:none}.rail-navigation{flex-direction:column;flex:1;justify-content:center;gap:.45rem;display:flex}.rail-link,.theme-button,.icon-link{width:46px;height:46px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:13px;place-items:center;transition:background-color .16s,color .16s,transform .16s;display:grid;position:relative}.rail-link:hover,.rail-link[aria-current=page],.theme-button:hover,.icon-link:hover{background:var(--surface-raised);color:var(--accent)}.rail-link:active,.theme-button:active,.icon-link:active{transform:translateY(1px)}.rail-link>span,.theme-button>span{border:1px solid var(--line);background:var(--surface-raised);width:max-content;color:var(--text);font-family:var(--mono-font);opacity:0;pointer-events:none;border-radius:8px;padding:.42rem .65rem;font-size:.73rem;transition:opacity .14s,transform .14s;position:absolute;left:58px;transform:translate(-6px)}.rail-link:hover>span,.rail-link:focus-visible>span,.theme-button:hover>span,.theme-button:focus-visible>span{opacity:1;transform:translate(0)}.rail-footer{gap:.4rem}main{margin-left:var(--rail-width);overflow:hidden}.page-shell{width:min(calc(100% - 3rem), var(--page-width));margin-inline:auto}.hero{isolation:isolate;align-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero__background{z-index:-2;background:radial-gradient(circle at 92% 12%, transparent 0 104px, color-mix(in srgb, var(--accent) 18%, transparent) 105px 106px, transparent 107px), radial-gradient(circle at 82% 68%, color-mix(in srgb, var(--accent) 9%, transparent) 0 108px, transparent 109px), radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--secondary) 8%, transparent) 0 145px, transparent 146px), linear-gradient(132deg, transparent 0 68%, color-mix(in srgb, var(--accent) 14%, transparent) 68.1% 68.25%, transparent 68.35%), linear-gradient(46deg, transparent 0 27%, color-mix(in srgb, var(--accent) 11%, transparent) 27.1% 27.25%, transparent 27.35%), linear-gradient(110deg, var(--surface) 0%, var(--background) 64%, var(--surface-raised) 100%);position:absolute;inset:0}.hero__layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.7fr);align-items:center;gap:clamp(3rem,7vw,7rem);padding-block:5rem 7rem;display:grid}.eyebrow{color:var(--accent);font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;font-weight:700}.hero h1{letter-spacing:-.055em;max-width:850px;margin-top:1.2rem;font-size:clamp(2.65rem,4.3vw,4rem)}.hero h1 span{color:var(--accent)}.hero__summary{max-width:680px;color:var(--muted);margin-top:1.6rem;font-size:clamp(1.05rem,1.6vw,1.27rem)}.hero__actions,.hero__socials,.work-card__links,.site-footer>div{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.hero__actions{margin-top:2.3rem}.button{border:1px solid var(--line);min-height:48px;font-family:var(--mono-font);border-radius:11px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.05rem;font-size:.8rem;font-weight:700;transition:border-color .16s,background-color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.button--primary:hover{background:var(--accent-strong)}.button--ghost{background:color-mix(in srgb, var(--surface) 82%, transparent);color:var(--text)}.button--ghost:hover{border-color:var(--accent);color:var(--accent)}.hero__socials{margin-top:1.7rem}.hero__socials .icon-link{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 82%, transparent);width:38px;height:38px}.text-link,.contact__email{color:var(--muted);font-family:var(--mono-font);font-size:.8rem;position:relative}.text-link:hover,.contact__email:hover{color:var(--accent)}.status-panel{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--surface) 92%, transparent);box-shadow:0 28px 70px var(--shadow);border-radius:24px 24px 24px 6px;position:relative;overflow:hidden}.status-panel:before{border:1px solid var(--accent);content:"";opacity:.35;border-radius:50%;width:150px;height:150px;position:absolute;top:-70px;right:-70px}.status-panel__topline{border-bottom:1px solid var(--line);color:var(--muted);font-family:var(--mono-font);align-items:center;gap:.55rem;padding:.9rem 1.1rem;font-size:.72rem;display:flex}.status-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 14%, transparent);border-radius:50%}.status-panel__body{padding:1.7rem}.status-panel__label{color:var(--accent);font-family:var(--mono-font);letter-spacing:.11em;text-transform:uppercase;font-size:.7rem}.status-panel h2{max-width:300px;margin-top:.55rem;font-size:1.7rem}.status-panel dl{gap:1rem;margin-top:1.8rem;display:grid}.status-panel dl div{border-top:1px solid var(--line);padding-top:.9rem}.status-panel dt{color:var(--muted);font-family:var(--mono-font);text-transform:uppercase;font-size:.7rem}.status-panel dd{color:var(--text);margin-top:.2rem;font-size:.88rem}.status-panel__code{border-top:1px solid var(--line);background:var(--surface-soft);font-family:var(--mono-font);padding:1rem 1.7rem;font-size:.7rem;display:grid}.status-panel__code span,.status-panel__code i{color:var(--muted);font-style:normal}.status-panel__code strong{color:var(--secondary)}.hero__wave{background:var(--background);clip-path:polygon(0 72%,7% 54%,18% 74%,29% 48%,41% 72%,54% 41%,68% 70%,81% 48%,91% 68%,100% 44%,100% 100%,0 100%);height:70px;position:absolute;inset:auto 0 0}.section{padding-block:clamp(3.75rem,6vw,6rem)}.section--tinted{border-block:1px solid var(--line);background:var(--surface)}.section-heading{grid-template-columns:1fr;align-items:end;margin-bottom:clamp(2rem,3.5vw,3.5rem);display:grid}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:.8rem}.section-heading h2{max-width:100%;font-size:clamp(2.1rem,3.4vw,3.25rem)}.section-heading__description{max-width:680px;color:var(--muted);justify-self:start;margin-top:.8rem}.about__grid{grid-template-columns:minmax(340px,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.portrait-frame{z-index:0;grid-template-columns:minmax(0,1fr) 42px;align-items:stretch;width:100%;max-width:390px;display:grid;position:relative}.portrait-frame:after{z-index:-1;border:1px solid var(--accent);content:"";border-radius:4px 26px;position:absolute;inset:.9rem 28px -.9rem .9rem}.portrait-frame img{aspect-ratio:auto;border:1px solid var(--line);width:100%;height:auto;box-shadow:0 20px 50px var(--shadow);filter:saturate(.82)contrast(1.04);object-fit:contain;object-position:center;border-radius:4px 26px}.portrait-frame figcaption{border-block:1px solid var(--line);color:var(--accent);font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;writing-mode:vertical-rl;place-items:center;padding:.7rem 0;font-size:.7rem;display:grid;transform:rotate(180deg)}.about__content{color:var(--muted)}.about__content>p+p{margin-top:1.15rem}.about__lead{color:var(--text);letter-spacing:-.025em;font-size:clamp(1.35rem,2.4vw,2rem);font-weight:550;line-height:1.35}.education-list{gap:.75rem;margin-top:2.3rem;display:grid}.education-item{border-top:1px solid var(--line);grid-template-columns:95px minmax(0,1fr);column-gap:1.1rem;padding-top:.9rem;display:grid}.education-item p{color:var(--accent);font-family:var(--mono-font);grid-row:1/3;font-size:.72rem}.education-item h3{color:var(--text);letter-spacing:-.01em;font-size:.98rem}.education-item span{font-size:.86rem}.timeline{border-top:1px solid var(--line)}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(180px,.45fr) minmax(0,1fr);gap:2rem;padding-block:1.65rem;display:grid}.timeline-item__marker{border:1px solid var(--line);width:44px;height:44px;color:var(--accent);font-family:var(--mono-font);border-radius:50%;place-items:center;font-size:.75rem;display:grid}.timeline-item__meta p,.timeline-item__company{color:var(--accent);font-family:var(--mono-font);font-size:.75rem}.timeline-item__meta span{color:var(--muted);font-size:.8rem}.timeline-item__content h3{margin-top:.3rem;font-size:clamp(1.55rem,3vw,2.35rem)}.timeline-item__content>p:not(.timeline-item__company){max-width:740px;color:var(--muted);margin-top:.8rem}.timeline-item__content ul{gap:.55rem;margin-top:1rem;padding:0;list-style:none;display:grid}.timeline-item__content li{color:var(--muted);padding-left:1.3rem;position:relative}.timeline-item__content li:before{border:1px solid var(--accent);content:"";width:6px;height:6px;position:absolute;top:.7em;left:0;transform:rotate(45deg)}.skills-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.skill-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(135deg, var(--surface) 0%, transparent 78%);min-height:260px;padding:clamp(1.4rem,3vw,2.1rem);transition:background-color .18s;position:relative}.skill-card:hover{background-color:var(--surface-soft)}.skill-card__number{color:var(--accent);font-family:var(--mono-font);font-size:.72rem}.skill-card h3{margin-top:1rem;font-size:clamp(1.5rem,2.5vw,2rem)}.skill-card>p{max-width:480px;color:var(--muted);margin-top:.9rem}.skill-card ul,.tag-list{flex-wrap:wrap;gap:.45rem;margin-top:1.1rem;padding:0;list-style:none;display:flex}.skill-card li,.tag-list li{border:1px solid var(--line);color:var(--muted);font-family:var(--mono-font);border-radius:6px;padding:.37rem .55rem;font-size:.68rem}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.work-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:18px 18px 18px 4px;flex-direction:column;min-height:0;transition:border-color .18s,transform .18s;display:flex;position:relative;overflow:hidden}.work-card:hover{border-color:color-mix(in srgb, var(--accent) 55%, transparent);transform:translateY(-4px)}.architecture-mark{border-bottom:1px solid var(--line);background:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px), radial-gradient(circle at 75% 30%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 35%);background-size:28px 28px,28px 28px,auto;min-height:135px;position:relative;overflow:hidden}.architecture-mark span{border:1px solid var(--accent);background:var(--surface);border-radius:16px 16px 16px 3px;width:62px;height:62px;position:absolute;top:50%;transform:translateY(-50%)rotate(45deg)}.architecture-mark span:first-child{left:14%}.architecture-mark span:nth-child(2){left:calc(50% - 31px)}.architecture-mark span:nth-child(3){right:14%}.architecture-mark:after{background:var(--accent);content:"";height:1px;position:absolute;top:50%;left:18%;right:18%}.work-card__body{flex-direction:column;flex:1;padding:clamp(1.25rem,2.5vw,1.8rem);display:flex}.work-card__meta{color:var(--accent);font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;font-size:.7rem;display:flex}.work-card h3{margin-top:.8rem;font-size:clamp(1.55rem,2.5vw,2.1rem)}.work-card__body>p{color:var(--muted);margin-top:.65rem;font-size:.92rem}.work-card__impact{border-left:2px solid var(--accent);padding-left:1rem;font-size:.9rem;color:var(--text)!important}.work-card__links{margin-top:auto;padding-top:1.2rem}.work-card__links a{color:var(--text);font-family:var(--mono-font);align-items:center;gap:.4rem;font-size:.75rem;display:inline-flex}.work-card__links a:hover{color:var(--accent)}.private-label{color:var(--muted);font-family:var(--mono-font);font-size:.72rem}.contact{padding-bottom:2rem}.contact__card{border:1px solid var(--accent);background:var(--surface-raised);border-radius:28px 28px 28px 6px;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);gap:3rem;padding:clamp(2rem,6vw,5rem);display:grid;position:relative;overflow:hidden}.contact__card:after{border:35px solid color-mix(in srgb, var(--accent) 12%, transparent);content:"";border-radius:50%;width:300px;height:300px;position:absolute;bottom:-100px;right:-80px}.contact__card h2{max-width:760px;margin-top:.8rem;font-size:clamp(2.4rem,5.4vw,5.4rem)}.contact__card>div:first-child>p:last-child{max-width:650px;color:var(--muted);margin-top:1.3rem}.contact__actions{z-index:1;flex-direction:column;justify-content:flex-end;align-items:flex-start;display:flex;position:relative}.contact__actions>p{color:var(--muted);margin-top:.4rem;font-size:.8rem}.site-footer{color:var(--muted);font-family:var(--mono-font);justify-content:space-between;gap:1rem;padding-block:2rem 0;font-size:.7rem;display:flex}.site-footer a:hover{color:var(--accent)}}@layer utilities{.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (width<=1040px){.hero__layout{grid-template-columns:1fr;gap:3rem}.hero__copy{max-width:830px}.status-panel{max-width:680px}.about__grid{gap:3rem}.timeline-item{grid-template-columns:55px minmax(0,1fr)}.timeline-item__meta,.timeline-item__content{grid-column:2}.work-grid,.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){:root{--rail-width:0px}section[id]{scroll-margin-top:66px}.skip-link{left:1rem}.site-rail{border-right:0;border-bottom:1px solid var(--line);width:100%;height:68px;padding:0;display:block;inset:0 0 auto}.rail-header{z-index:3;background:color-mix(in srgb, var(--background) 96%, black);flex-direction:row;justify-content:space-between;height:68px;padding-inline:1rem;position:relative}.brand-mark{border-radius:12px 12px 12px 3px;width:42px;height:42px}.menu-button{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--text);cursor:pointer;border-radius:12px;place-items:center;display:grid}.rail-navigation{z-index:2;border-bottom:1px solid var(--line);background:var(--background);opacity:0;pointer-events:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:1rem;transition:opacity .16s,transform .16s;display:grid;position:fixed;inset:68px 0 auto;transform:translateY(-12px)}.site-rail--open .rail-navigation{opacity:1;pointer-events:auto;transform:translateY(0)}.rail-link{border:1px solid var(--line);justify-content:flex-start;gap:.7rem;width:100%;height:48px;padding-inline:.8rem;display:flex}.rail-link>span{color:inherit;opacity:1;background:0 0;border:0;padding:0;position:static;transform:none}.rail-footer{z-index:2;border-bottom:1px solid var(--line);background:var(--background);opacity:0;pointer-events:none;flex-direction:row;justify-content:space-between;padding:0 1rem 1rem;transition:opacity .16s,transform .16s;display:flex;position:fixed;top:282px;left:0;right:0;transform:translateY(-12px)}.site-rail--open .rail-footer{opacity:1;pointer-events:auto;transform:translateY(0)}main{margin-left:0;padding-top:68px}.page-shell{width:min(calc(100% - 2rem), var(--page-width))}.hero{min-height:calc(100svh - 68px)}.hero__layout{padding-block:4rem 6rem}.hero h1{font-size:clamp(2.1rem,9.5vw,3.2rem)}.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .button{width:100%}.about__grid,.contact__card{grid-template-columns:1fr}.portrait-frame{width:min(100%,350px)}.skills-grid,.work-grid{grid-template-columns:1fr}.work-card{min-height:0}.work-card__links{margin-top:1.5rem}.site-footer{flex-direction:column}}@media (width<=520px){.section{padding-block:3.5rem}.status-panel__body{padding:1.3rem}.education-item{grid-template-columns:1fr}.education-item p{grid-row:auto}.timeline-item{grid-template-columns:1fr;gap:.8rem}.timeline-item__meta,.timeline-item__content{grid-column:1}.timeline-item__marker{width:36px;height:36px}.skill-card{min-height:0}.architecture-mark span{width:62px;height:62px}.architecture-mark span:nth-child(2){left:calc(50% - 31px)}.work-card__meta{flex-direction:column;align-items:flex-start;gap:.25rem}.contact__card{padding:1.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
