@charset "UTF-8";
:root{--paper:#f6f5f0;--ink:#202c29;--muted:#5d6963;--green:#22664f;--line:#d9dfd7;--white:#fffef9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:6px}p,h1,h2,h3{margin:0}p{color:var(--muted)}.wrap{width:min(1200px,calc(100% - 112px));margin:auto}.header{width:min(1320px,calc(100% - 80px));height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:40px;font-weight:bold;letter-spacing:-4px}.brand span{color:var(--green)}nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:600}nav a{padding:8px 0}nav a:hover,nav a[aria-current]{color:var(--green)}.nav-contact{border-bottom:1px solid var(--ink)}.menu-toggle{display:none}.skip-link{position:absolute;top:-100px;left:16px;background:var(--ink);color:white;padding:12px;z-index:10}.skip-link:focus{top:10px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding-top:72px;padding-bottom:70px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--green);display:flex;align-items:center;gap:10px}.status-dot{width:7px;height:7px;background:var(--green);border-radius:50%;display:inline-block;flex-shrink:0;box-shadow:0 0 0 4px #22664f0c}.role{font-size:12px;margin:14px 0 22px}.role span{padding:0 8px;color:#9aa39b}h1{font-size:clamp(50px,5.8vw,78px);line-height:1.04;letter-spacing:-4px;font-weight:500}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--green)}.hero-description{max-width:450px;margin-top:25px;font-size:16px;line-height:1.8}.positioning{font-size:12px;margin-top:18px;line-height:1.9}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;padding:15px 23px;font-size:13px;font-weight:600;border-radius:3px;transition:background .2s,transform .2s}.primary{background:var(--green);color:white}.primary:hover{background:#164b39;transform:translateY(-2px)}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid var(--line);padding:6px 0}.text-link:hover{border-color:var(--green);color:var(--green)}.system-art{height:500px;position:relative;overflow:hidden;border:1px solid #d9e1d6;background-color:#edf0e7;background-image:radial-gradient(#9ba99570 .7px,transparent .7px);background-size:17px 17px;border-radius:160px 160px 8px 8px}.art-top{position:absolute;top:49px;left:45px;right:45px;display:flex;justify-content:space-between;font-family:monospace;font-size:9px;color:#657461;letter-spacing:1px}.orbit{position:absolute;left:50%;top:50%;border:1px solid #c3cfba;border-radius:50%;transform:translate(-50%,-50%) rotate(-35deg);width:400px;height:235px}.orbit-two{transform:translate(-50%,-50%) rotate(40deg);width:420px;height:220px}.diagram-node{position:absolute;background:var(--white);border:1px solid #d6ddd0;box-shadow:0 10px 25px #354c3210;border-radius:7px;display:flex;align-items:center;gap:13px;padding:16px 20px;font-size:13px;z-index:2}.diagram-node small{display:block;font-family:monospace;font-size:8px;letter-spacing:1px;margin-top:4px;color:var(--muted)}.node-icon{color:var(--green);font-size:25px}.input-node{top:110px;left:35px;transform:rotate(-5deg)}.core-node{top:207px;left:50%;transform:translateX(-50%);background:var(--green);color:white;width:226px;height:157px;align-items:flex-start;flex-direction:column;gap:5px;padding:21px 25px}.core-symbol{font-size:26px;line-height:1}.core-node strong{font-size:22px;line-height:1.2;font-weight:500;letter-spacing:-.5px}.core-node small{color:#c5d6be;font-size:7px}.ai-node{bottom:61px;right:21px;transform:rotate(5deg)}.flow-line{position:absolute;border-left:1px dashed #749579;z-index:1}.line-one{height:90px;left:39%;top:170px;transform:rotate(-30deg)}.line-two{height:80px;right:31%;bottom:115px;transform:rotate(-30deg)}.art-bottom{position:absolute;bottom:22px;left:28px;font-size:9px;color:#52664e;display:flex;align-items:center;gap:8px}.company-strip{display:flex;justify-content:space-between;align-items:center;gap:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.company-strip>span{font-size:9px;letter-spacing:1.3px;color:var(--muted)}.company-strip>div{font-size:24px;font-weight:650;letter-spacing:-1px;color:#556259}.company-strip small{display:block;font-size:8px;letter-spacing:.5px;font-weight:400}.section{padding-top:100px;padding-bottom:100px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}h2{font-size:clamp(32px,3.4vw,46px);line-height:1.16;font-weight:450;letter-spacing:-1.8px;margin-top:18px}.section-heading>p{max-width:310px;font-size:14px;line-height:1.8}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:5px;overflow:hidden}.metric{padding:28px 22px;background:#fafaf5}.metric+.metric{border-left:1px solid var(--line)}.metric-label{font-family:monospace;font-size:9px;letter-spacing:.6px;color:var(--muted)}.metric strong{display:block;font-weight:450;font-size:42px;letter-spacing:-2px;margin:17px 0 12px;line-height:1.2;white-space:nowrap}.metric strong span{font-size:18px;letter-spacing:-.5px}.metric p{font-size:12px;line-height:1.8}.leadership{display:flex;gap:20px;align-items:center;padding-top:26px}.leadership>span:first-child{font-size:28px;color:var(--green)}.leadership p{font-size:13px;flex:1}.leadership strong{color:var(--ink)}.pill{display:inline-block;font-size:8px;letter-spacing:1px;padding:5px 9px;border:1px solid #c8d4c6;border-radius:3px;white-space:nowrap;color:var(--green)}.experience-section{background:#ecefe8}.job{display:grid;grid-template-columns:240px 1fr;gap:50px;position:relative}.job-date{font-family:monospace;font-size:11px;letter-spacing:.5px;padding-top:6px;color:var(--muted)}.job-date .pill{display:block;width:fit-content;margin-top:12px}.job-content{border-left:1px solid #cbd5c7;padding:0 0 44px 38px;position:relative}.job-content:before{content:"";position:absolute;width:7px;height:7px;border:3px solid #ecefe8;background:var(--green);border-radius:50%;left:-7px;top:7px;box-shadow:0 0 0 1px #b8c9b3}.job-title{display:flex;justify-content:space-between;align-items:center;gap:20px}h3{font-weight:550;font-size:23px;letter-spacing:-.5px}.job-title>span{font-size:12px;color:var(--muted)}.job-summary{margin:9px 0 16px;font-size:15px;color:var(--ink)}.job ul{padding-left:17px;margin:0 0 20px;color:var(--muted);font-size:13px}.job li{padding-left:4px;margin-bottom:8px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{font-size:10px;border:1px solid #d5ddd0;padding:3px 8px;border-radius:3px;color:#4a5d4f}.compact .job-content{padding-bottom:32px}.compact p{font-size:13px;margin-top:9px}.job:last-child .job-content{padding-bottom:0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{border:1px solid var(--line);border-radius:5px;padding:26px;display:flex;flex-direction:column;background:var(--white)}.featured{background:#e8eee3;border-color:#c8d4bf}.project-top{display:flex;justify-content:space-between;align-items:center;font-family:monospace;font-size:11px;color:#667760}.project-icon,.skillloop-visual{height:133px;display:flex;align-items:center;color:var(--green)}.project-icon{font-size:54px}.skillloop-visual{gap:9px;flex-wrap:wrap}.skillloop-visual span{background:#f6f8f1;border:1px solid #cdd9c4;border-radius:20px;padding:8px 12px;font-size:12px}.skillloop-visual b{font-weight:400;font-size:22px}.project h3{font-size:23px}.project .project-subtitle{font-size:12px;color:var(--green);margin:5px 0 18px}.project>p:not(.project-subtitle){font-size:13px;line-height:1.85}.project .tags{margin:22px 0}.project .text-link,.project .project-note{margin-top:auto;align-self:flex-start}.project .project-note{font-size:10px!important;padding-top:8px}.github-row{display:flex;justify-content:space-between;align-items:center;padding:25px 0;border-bottom:1px solid var(--line);gap:30px}.github-row strong{display:block;font-size:15px;font-weight:600}.github-row span{font-size:12px;color:var(--muted)}.github-row>span{font-size:28px;color:var(--green)}.github-row:hover strong{color:var(--green)}.skills-section{background:#253c32;color:#f2f4eb}.skills-section .eyebrow{color:#becfa8}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:35px 70px}.skills-grid article{border-top:1px solid #526358;padding-top:22px;position:relative;padding-left:38px}.skill-index{position:absolute;left:0;top:24px;font-family:monospace;font-size:10px;color:#b4c6a1}.skills-grid h3{font-size:18px;font-weight:450;margin-bottom:10px}.skills-grid p{color:#c0ccc1;font-size:13px;line-height:2}.credentials{margin-top:42px;padding-top:22px;border-top:1px solid #526358}.credentials p{font-size:11px;color:#bdcbbc;margin:7px 0}.credentials strong{color:#edf0e7;margin-right:16px;font-weight:500}.contact{display:flex;justify-content:space-between;align-items:center;gap:35px}.contact h2{font-size:clamp(35px,4vw,54px)}.contact p:not(.eyebrow){margin-top:24px;font-size:14px}.email{display:inline-block;font-size:12px;color:var(--muted);margin-top:22px}.email:hover{color:var(--green)}.contact-star{font-size:200px;line-height:1;color:#ccd8bf}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:30px;font-size:10px;color:var(--muted)}footer a{color:var(--green)}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}h1{font-size:60px}.system-art{height:460px}.art-top{left:30px;right:30px}.input-node{left:18px}.ai-node{right:12px}.metric{padding:22px 16px}.metric strong{font-size:33px}.job{grid-template-columns:190px 1fr;gap:25px}.project{padding:21px}.project-grid{gap:12px}.skillloop-visual{gap:5px}.skillloop-visual span{padding:6px 9px}.contact-star{font-size:150px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{width:calc(100% - 40px);height:auto;min-height:76px;flex-wrap:wrap}.brand{font-size:34px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:3px;padding:7px 12px;font-size:12px}.js .menu-toggle{display:block}nav{width:100%;flex-wrap:wrap;gap:12px 24px;padding:12px 0 20px}.js nav{display:none}.js nav.is-open{display:flex}.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:40px;gap:38px}h1{font-size:clamp(49px,10vw,72px);letter-spacing:-2.5px}.hero-description{font-size:15px;max-width:490px}.role{font-size:11px}.system-art{height:420px;width:100%;max-width:450px;justify-self:center;border-radius:110px 110px 5px 5px}.art-top{top:35px}.input-node{top:79px;left:28px}.core-node{top:166px}.ai-node{bottom:49px;right:25px}.art-bottom{bottom:16px}.company-strip{flex-wrap:wrap;justify-content:center;gap:15px 27px;padding:23px 0}.company-strip>span{width:100%;text-align:center}.company-strip>div{font-size:20px}.section{padding-top:65px;padding-bottom:65px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:440px;font-size:13px}h2{letter-spacing:-1px}.metrics{grid-template-columns:1fr 1fr}.metric{padding:24px 18px}.metric:nth-child(3){border-left:0}.metric:nth-child(n+3){border-top:1px solid var(--line)}.metric strong{font-size:34px}.metric strong span{font-size:15px}.metric-label{font-size:8px}.leadership{gap:13px;align-items:flex-start}.leadership .pill{display:none}.leadership p{font-size:12px}.job{display:block}.job-date{padding:0 0 15px 25px;font-size:10px}.job-date .pill{display:inline-block;margin:0 0 0 10px}.job-content{padding-left:25px;padding-bottom:30px;margin-bottom:25px}.job-title{display:block}.job-title>span{display:block;margin-top:3px}.job-summary{font-size:14px}.job ul{font-size:12px}.project-grid{grid-template-columns:1fr;gap:18px}.project{padding:25px}.project-icon,.skillloop-visual{height:100px}.skills-grid{grid-template-columns:1fr;gap:26px}.credentials strong{display:block}.contact-star{display:none}.contact .actions{gap:20px}.contact p:not(.eyebrow){font-size:13px}.desktop-break{display:none}footer{flex-wrap:wrap;font-size:9px}footer>span:nth-child(2){display:none}}
/* Blue and black theme. */
:root{--paper:#080d16;--ink:#eef4ff;--muted:#a8b8d0;--green:#78adff;--line:#26364e;--white:#101b2d}
body{background:radial-gradient(ellipse at 90% 4%,#122e57 0,transparent 33%),var(--paper)}
.primary{background:#2966d4;color:#fff}.primary:hover{background:#3479ed}
.skip-link{background:#2966d4;color:#fff}
.system-art{background-color:#0b1c35;background-image:radial-gradient(#659bea50 .7px,transparent .7px);border-color:#29456c}
.art-top,.art-bottom{color:#afc8eb}.orbit{border-color:#2b4a73}
.diagram-node{border-color:#34547d;box-shadow:0 10px 25px #0005}
.core-node{background:#2059b3;border-color:#568de0}.core-node small{color:#d3e4ff}
.flow-line{border-color:#6999da}.company-strip>div{color:#c2d1e8}
.metric{background:#0d1829}.leadership strong{color:var(--ink)}
.pill{border-color:#385578;color:#a8cbff}
.experience-section{background:#0d1727}.job-content{border-color:#304562}
.job-content:before{border-color:#0d1727;box-shadow:0 0 0 1px #527ab0}
.tags span{border-color:#334b69;color:#bdd3ef}
.featured{background:#112544;border-color:#365c8f}.project-top{color:#b6cdec}
.skillloop-visual span{background:#152e51;border-color:#3b608e}
.skills-section{background:#07101f}.skills-section .eyebrow{color:#9ec5ff}
.skills-grid article,.credentials{border-color:#2c4260}.skill-index{color:#9ec5ff}
.skills-grid p,.credentials p{color:#b6c8e0}.credentials strong{color:#eef4ff}
.contact-star{color:#244d83}.menu-toggle{color:var(--ink)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
