@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--bg:#0c0d0d;--panel:#111313;--ink:#e8e9e2;--muted:#777d79;--line:#292e2c;--accent:#c5ee68;--mono:"DM Mono",monospace;--sans:"Manrope",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shell{max-width:1280px;margin:0 auto;padding:0 64px}.topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font:10px var(--mono);letter-spacing:.08em}.wordmark{font:600 20px var(--sans);letter-spacing:-.08em}.wordmark span{color:var(--accent)}.topbar nav{display:flex;gap:38px;color:#a5aaa5}.availability,.topbar nav a{transition:color .2s}.footer-bottom a:hover,.topbar nav a:hover{color:var(--accent)}.availability{display:flex;align-items:center;gap:9px;color:#a5aaa5}.availability i{width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 12px #c5ee6870}.hero{position:relative;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:600px;padding:80px 0 86px}.education>span,.eyebrow,.footer-bottom,.project-type,.signal,.stack{font:10px var(--mono);letter-spacing:.1em}.eyebrow{color:var(--accent);margin:0 0 23px}.hero h1{font-size:clamp(64px,9vw,112px);line-height:.92;letter-spacing:-.085em;margin:0;font-weight:600}.about-section h2 em,.hero h1 em{font-style:normal;color:#777d79}.intro{max-width:410px;color:#a3a9a4;font-size:16px;line-height:1.7;margin:34px 0 29px}.hero-links{display:flex;gap:27px;font:10px var(--mono);letter-spacing:.08em}.email-link span,.hero-links a span{color:var(--accent);margin-left:6px}.hero-mark{height:360px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #313632;border-radius:50%;transform:rotate(-22deg)}.orbit-one{width:280px;height:280px}.orbit-two{width:410px;height:190px}.orbit-three{width:235px;height:375px;transform:rotate(37deg)}.mark-core{font-size:76px;font-weight:700;letter-spacing:-.12em;z-index:1}.mark-core span{color:var(--accent);font-size:34px;vertical-align:middle;padding:0 7px}.mark-caption,.mark-index{position:absolute;font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.mark-caption{bottom:19px}.mark-index{right:4px;top:32px;line-height:1.8;text-align:right}.signal{border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:54px;display:flex;align-items:center;justify-content:space-between;color:#979d97;font-size:9px}.signal-line{height:1px;background:var(--line);flex:1 1;margin:0 24px}.section{padding:130px 0}.section-heading h2,.skills-band h2{font-size:clamp(40px,6vw,68px);letter-spacing:-.075em;line-height:1.02;font-weight:500;margin:0}.section-heading h2 span{font:12px var(--mono);letter-spacing:0;color:var(--accent);vertical-align:top;margin-left:8px}.section-note{font-size:13px;color:var(--muted);max-width:380px;line-height:1.7;margin:20px 0 58px}.project{border-top:1px solid var(--line);padding:29px 0 31px;display:grid;grid-template-columns:70px 1fr 35px;grid-gap:18px;gap:18px;transition:padding .2s}.project:last-child{border-bottom:1px solid var(--line)}.project:hover{padding-left:10px;padding-right:10px}.project-number{color:var(--accent);font:11px var(--mono);padding-top:4px}.project-type{color:var(--muted);font-size:9px;margin:0 0 10px}.project h3{font-size:24px;letter-spacing:-.04em;font-weight:500;margin:0 0 10px}.project-description{color:#a1a7a1;max-width:650px;font-size:13px;line-height:1.7;margin:0}.stack{font-size:9px;color:#737a74;margin:16px 0 0}.project-arrow{color:var(--muted);justify-self:end;font-size:18px;transition:color .2s,transform .2s}.project:hover .project-arrow{color:var(--accent);transform:translate(3px,-3px)}.about-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;grid-gap:12%;gap:12%;align-items:start}.about-section h2{font-size:clamp(42px,5.5vw,65px);letter-spacing:-.075em;font-weight:500;line-height:1.06}.about-content{padding-top:27px;max-width:485px}.about-content>p{font-size:13px;line-height:1.9;color:#a0a6a0;margin:0 0 21px}.about-content .about-lead{font-size:18px;line-height:1.65;color:var(--ink);letter-spacing:-.02em}.education{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--line);margin-top:38px;padding-top:20px}.education>span{color:var(--accent);font-size:9px}.education p{margin:0;font-size:12px;line-height:1.8}.education small{font-size:10px;color:var(--muted)}.skills-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:48px 0;display:grid;grid-template-columns:1fr 1.3fr;align-items:center;grid-gap:50px;gap:50px}.skills-band .eyebrow{margin-bottom:13px}.skills-band h2{font-size:32px}.skill-list{display:flex;flex-wrap:wrap;gap:8px}.skill-list span{font:10px var(--mono);color:#adb2ac;border:1px solid #343a36;padding:9px 12px}footer{padding:105px 0 24px}.footer-top{padding-bottom:88px}.email-link{display:inline-block;font-size:clamp(42px,7vw,78px);letter-spacing:-.07em;font-weight:500}.email-link span{font-size:.55em;vertical-align:top}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:8px;color:var(--muted)}.footer-bottom div{display:flex;gap:18px}.footer-bottom a{transition:color .2s}@media(max-width:800px){.shell{padding:0 28px}.hero{min-height:auto;padding:90px 0 75px;grid-template-columns:1fr}.hero-mark{position:absolute;right:0;top:80px;width:38%;height:290px;opacity:.55;transform:scale(.8);transform-origin:right center}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(62px,12vw,95px)}.hero .intro{max-width:370px}.section{padding:95px 0}.about-section{gap:45px}.skills-band{grid-template-columns:1fr;gap:25px}.footer-bottom{flex-wrap:wrap}.footer-bottom span:nth-child(2){order:3;width:100%}}@media(max-width:540px){.shell{padding:0 20px}.topbar{height:70px}.topbar nav{gap:15px;font-size:9px}.availability{font-size:0}.availability i{width:7px;height:7px}.hero{padding:80px 0 66px}.hero-mark{top:82px;right:-10px;width:45%;transform:scale(.68);opacity:.36}.hero .eyebrow{font-size:8px}.hero h1{font-size:clamp(57px,16vw,82px)}.intro{font-size:14px;max-width:300px;margin-top:24px}.signal{font-size:7px;height:47px}.signal-line{margin:0 10px}.section{padding:78px 0}.section-heading h2{font-size:45px}.section-note{margin-bottom:38px}.project{grid-template-columns:33px 1fr 18px;gap:9px;padding:24px 0}.project h3{font-size:20px}.project-description{font-size:12px}.project-type{font-size:8px}.about-section{grid-template-columns:1fr;gap:24px}.about-content{padding-top:0}.about-section h2{font-size:48px}.about-content .about-lead{font-size:16px}.education{grid-template-columns:86px 1fr}.skills-band{padding:38px 0}.footer-top{padding-bottom:65px}.email-link{font-size:48px}.footer-bottom{font-size:7px}.footer-bottom div{gap:12px}}