@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--bg: #f5f3ef;--surface: #fffdfa;--surface-2: #ebe8e0;--text: #171714;--muted: #706d65;--line: #d8d4cb;--accent: #ce5b37;--accent-2: #194d4a;--shadow: 0 18px 60px #1818120d;color-scheme:light}:root[data-theme=dark]{--bg: #151614;--surface: #1d1f1c;--surface-2: #282b27;--text: #eeece3;--muted: #a1a49b;--line: #383c36;--accent: #f18d62;--accent-2: #8bc7b5;--shadow: 0 18px 60px #00000029;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.site-shell{width:min(1160px,calc(100% - 40px));margin:0 auto}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.04em;font-size:1.08rem}.wordmark-mark{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:var(--bg);background:var(--text);font-family:Georgia,serif;font-size:1.2rem}.muted,.eyebrow,.meta{color:var(--muted)}nav{display:flex;gap:30px;font-size:.9rem;font-weight:700}nav a{padding:10px 0;color:var(--muted)}nav a.active,nav a:hover{color:var(--text)}.nav-arrow{color:var(--accent)}.nav-social{display:flex;gap:18px;margin-left:12px;padding-left:24px;border-left:1px solid var(--line);font-size:.78rem}.theme-toggle{border:1px solid var(--line);background:transparent;border-radius:99px;width:38px;height:30px;color:var(--text);cursor:pointer}main{min-height:calc(100vh - 158px)}.hero{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;padding:116px 0 108px;border-bottom:1px solid var(--line)}.kicker{color:var(--accent);font:500 .74rem/1.2 DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:800px;margin:18px 0 26px;font-size:clamp(3.2rem,8vw,6.7rem);line-height:.98;letter-spacing:-.08em;font-weight:800}h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.08;letter-spacing:-.06em}h3{line-height:1.15;letter-spacing:-.03em}.hero-copy{max-width:670px;font-size:1.14rem;color:var(--muted)}.hero-copy strong{color:var(--text);font-weight:600}.hero-aside{align-self:end;padding:25px;border-left:1px solid var(--accent);font:.82rem/1.8 DM Mono,monospace;color:var(--muted)}.hero-aside strong{display:block;color:var(--text);font:700 1rem Manrope,sans-serif;margin-bottom:5px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;gap:9px;padding:12px 16px;border:1px solid var(--text);border-radius:3px;font-size:.83rem;font-weight:800}.button.primary{color:var(--bg);background:var(--text)}.button:hover{color:var(--bg);background:var(--accent);border-color:var(--accent)}.section{padding:92px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-note{max-width:350px;color:var(--muted);font-size:.9rem}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.project-card{position:relative;min-height:265px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .2s,border-color .2s}.project-card:hover{transform:translateY(-4px);border-color:var(--accent)}.project-card:nth-child(5){grid-column:span 2;min-height:190px}.project-card h3{font-size:1.45rem;margin:7px 0 12px}.project-card p{max-width:470px;color:var(--muted);font-size:.94rem}.project-stack{margin:20px 0 16px}.stack-label{display:block;margin-bottom:9px;color:var(--accent);font:500 .62rem DM Mono,monospace;letter-spacing:.1em}.stack-tags{display:flex;flex-wrap:wrap;gap:6px}.stack-tags span{padding:4px 7px;border:1px solid var(--line);color:var(--muted);font:.65rem DM Mono,monospace}.project-detail{font:.72rem/1.5 DM Mono,monospace;color:var(--muted)}.project-link{position:absolute;right:22px;top:20px;font-size:1.2rem}.about-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.about-grid p{max-width:560px;color:var(--muted);font-size:1.08rem}.principles{display:grid;gap:18px}.principle{padding-top:15px;border-top:1px solid var(--line)}.principle span{color:var(--accent);font:.72rem DM Mono,monospace}.course-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 24px;padding:0;margin:0;list-style:none;color:var(--muted);font-size:.88rem}.course-list li{padding-top:9px;border-top:1px solid var(--line)}.timeline{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:190px 1fr;gap:35px;padding:25px 0;border-top:1px solid var(--line)}.timeline-item:last-child{border-bottom:1px solid var(--line)}.timeline-item time{color:var(--muted);font:.72rem DM Mono,monospace;text-transform:uppercase;letter-spacing:.03em}.timeline-item h3{margin:0 0 5px;font-size:1.1rem}.timeline-item p{margin:0;color:var(--muted);font-size:.92rem}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.skill-group{padding:20px;background:var(--surface);border:1px solid var(--line)}.skill-group h3{margin:0 0 20px;color:var(--accent);font:500 .73rem DM Mono,monospace;text-transform:uppercase}.skill-group ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}.skill-group li{padding:6px 9px;border:1px solid var(--line);color:var(--muted);font-size:.78rem}.notes-hero{padding:85px 0 60px}.notes-hero h1{font-size:clamp(3rem,7vw,6rem);margin-bottom:16px}.notes-hero p{max-width:570px;color:var(--muted);font-size:1.05rem}.navigator-hero{padding:50px 0 32px;border-bottom:1px solid var(--line)}.navigator-hero h1{margin:14px 0 20px;font-size:clamp(2.8rem,6vw,4.8rem);letter-spacing:-.07em}.navigator-hero p{margin:0;color:var(--muted);font-size:1.18rem}.navigator-icon{font-size:.7em;letter-spacing:0}.domain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:48px 0 95px}.domain-card{min-height:126px;border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden;transition:border-color .2s,background .2s}.domain-card:hover,.domain-card[open]{border-color:var(--accent)}.domain-card summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:126px;padding:28px 34px;color:var(--text);cursor:pointer;list-style:none;font-size:1.22rem;font-weight:700;letter-spacing:-.035em}.domain-card summary::-webkit-details-marker{display:none}.domain-card summary:before{content:"▶";color:var(--accent);font-size:.72em;transition:transform .2s}.domain-card[open] summary:before{transform:rotate(90deg)}.domain-card summary span{flex:1}.domain-card summary small{color:var(--muted);font:.68rem DM Mono,monospace;white-space:nowrap}.domain-content{padding:0 34px 30px 60px}.domain-content p{margin:0 0 22px;color:var(--muted);font-style:italic}.domain-notes{display:grid;gap:10px}.domain-notes a{color:var(--text);font:.78rem DM Mono,monospace}.domain-notes a span{margin-right:9px;color:var(--accent)}.empty-domain{color:var(--muted);font:.72rem DM Mono,monospace}.notes-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filter-list{display:flex;flex-wrap:wrap;gap:8px}.filter{padding:7px 11px;border:1px solid var(--line);color:var(--muted);background:transparent;font:.7rem DM Mono,monospace;cursor:pointer}.filter.active,.filter:hover{color:var(--bg);background:var(--text);border-color:var(--text)}.search{width:230px;padding:9px 12px;background:var(--surface);color:var(--text);border:1px solid var(--line);font:.75rem DM Mono,monospace}.notes-list{display:grid}.note-row{display:grid;grid-template-columns:145px 1fr 150px;gap:25px;align-items:baseline;padding:25px 0;border-bottom:1px solid var(--line)}.note-row:hover h2{color:var(--accent)}.note-row time,.note-row .note-category{color:var(--muted);font:.7rem DM Mono,monospace;text-transform:uppercase}.note-row h2{margin:0 0 7px;font-size:1.32rem;transition:color .15s}.note-row p{margin:0;color:var(--muted);font-size:.87rem}.tag-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.tag{color:var(--muted);font:.65rem DM Mono,monospace}.article-wrap{max-width:900px;margin:0 auto;padding:85px 0 110px}.article-header{padding-bottom:45px;border-bottom:1px solid var(--line)}.article-header h1{max-width:800px;font-size:clamp(2.8rem,6vw,5.6rem);margin-bottom:20px}.article-header p{max-width:680px;color:var(--muted);font-size:1.1rem}.article-meta{display:flex;gap:20px;color:var(--muted);font:.72rem DM Mono,monospace;text-transform:uppercase}.prose{max-width:720px;padding-top:48px;font-size:1.02rem}.prose h2{margin-top:2.2em}.prose h3{margin-top:2em}.prose p,.prose ul,.prose ol{color:var(--muted)}.prose li{margin:7px 0}.prose strong{color:var(--text)}.prose code{padding:2px 5px;background:var(--surface-2);font:.9em DM Mono,monospace}.prose pre{overflow:auto;padding:20px;background:#1a1d1a;color:#e8e5db;border-left:3px solid var(--accent);font:.8rem/1.7 DM Mono,monospace}.prose pre code{padding:0;background:none}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.site-footer{display:flex;justify-content:space-between;padding:30px 0 45px;color:var(--muted);font:.72rem DM Mono,monospace}.footer-links{display:flex;gap:20px}@media(max-width:760px){.site-shell{width:min(100% - 28px,600px)}.site-header{height:70px}nav{gap:13px;font-size:.8rem}.nav-social{gap:10px;margin-left:0;padding-left:12px;font-size:.68rem}.theme-toggle{flex:0 0 34px}.hero{display:block;padding:74px 0 70px}h1{font-size:clamp(3rem,15vw,5rem)}.hero-aside{margin-top:45px}.section{padding:65px 0}.section-heading,.about-grid{display:block}.section-note{margin-top:12px}.project-grid,.skills-grid,.course-list,.domain-grid{grid-template-columns:1fr}.project-card:nth-child(5){grid-column:auto}.timeline-item{grid-template-columns:1fr;gap:8px}.notes-toolbar{display:block}.search{width:100%;margin-top:16px}.note-row{grid-template-columns:1fr;gap:8px}.tag-list{justify-content:flex-start}.domain-card summary{padding:24px;font-size:1rem}.domain-content{padding:0 24px 25px 46px}.site-footer{display:block}.footer-links{margin-top:12px}}
