@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--accent:#ff8c00;--accent-light:#fff5e6;--text:#111;--text-secondary:#444;--text-muted:#999;--border:#e0e0e0;--font:"Inter", -apple-system, system-ui, sans-serif;--font-mono:"SF Mono", "Fira Code", "Courier New", monospace}[data-theme=dark]{--bg:#0a0a0a;--accent:#ff8c00;--accent-light:#1a1000;--text:#f0f0f0;--text-secondary:#aaa;--text-muted:#666;--border:#2a2a2a}html{font-family:var(--font);background:var(--bg);color:var(--text);scroll-behavior:smooth;transition:background .2s,color .2s}body{background:var(--bg);min-height:100vh}.grid-layout{border-bottom:1px solid var(--border);grid-template-columns:200px 1fr;display:grid}.sidebar-label{border-right:1px solid var(--border);letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);height:fit-content;padding:40px 24px;font-size:11px;font-weight:700;position:sticky;top:64px}.section-content{padding:48px 48px 64px}nav{z-index:100;background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:64px;padding:0 48px;transition:background .2s;display:flex;position:sticky;top:0}.nav-name{letter-spacing:.08em;text-transform:uppercase;color:var(--text);font-size:13px;font-weight:800;text-decoration:none}.nav-logo{align-items:center;text-decoration:none;display:flex}.nav-logo-mark{background-color:var(--text);width:46px;height:30px;transition:background-color .2s;display:block;mask-image:url(/images/pg-mark.svg);mask-position:50%;mask-size:contain;mask-repeat:no-repeat}.nav-logo:hover .nav-logo-mark{background-color:var(--accent)}.nav-links{align-items:center;gap:32px;display:flex}.nav-links a{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--accent)}#theme-toggle{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;padding:6px 10px;font-size:14px;transition:border-color .2s,color .2s}#theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.hero{border-bottom:1px solid var(--border);grid-template-columns:200px 1fr;min-height:85vh;display:grid}.hero-sidebar{border-right:1px solid var(--border);flex-direction:column;gap:32px;padding:40px 24px;display:flex}.hero-manifesto-label{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.hero-manifesto-text{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);margin-top:12px;line-height:1.6}.hero-content{flex-direction:column;justify-content:center;gap:24px;padding:60px 48px;display:flex}.hero-name{letter-spacing:-.04em;text-transform:uppercase;color:var(--text);font-size:clamp(4rem,9vw,8rem);font-weight:900;line-height:.88}.hero-role{letter-spacing:.05em;text-transform:uppercase;color:var(--text);font-size:clamp(1.1rem,2.2vw,1.6rem);font-weight:700}.hero-role .accent{color:var(--accent)}.hero-location{font-size:12px;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.hero-tagline{color:var(--text-secondary);border-left:2px solid var(--accent);max-width:520px;padding-left:16px;font-size:1rem;line-height:1.5}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.btn{letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;padding:14px 28px;font-size:12px;font-weight:700;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.btn-orange{background:var(--accent);color:#fff}.btn-orange:hover{background:#e07a00}.btn-black{background:var(--text);color:var(--bg)}.btn-black:hover{background:#333}.hero-social{align-items:center;gap:20px;display:flex}.hero-social a{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700;text-decoration:none;transition:color .2s}.hero-social a:hover{color:var(--accent)}.typo-list{list-style:none}.typo-list-item{border-top:1px solid var(--border);cursor:default;align-items:flex-start;gap:24px;padding:28px 0;transition:background .15s;display:flex}.typo-list-item:hover .typo-list-title{color:var(--accent)}.typo-list-index{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);min-width:28px;padding-top:4px}.typo-list-body{flex:1}.typo-list-title{color:var(--text);text-transform:uppercase;letter-spacing:.02em;font-size:1.15rem;font-weight:700;text-decoration:none;transition:color .2s;display:block}.typo-list-sub{color:var(--text-muted);margin-top:4px;font-size:13px;line-height:1.5}.typo-list-meta{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);text-align:right;white-space:nowrap;padding-top:4px}.section-headline{letter-spacing:-.03em;text-transform:uppercase;color:var(--text);margin-bottom:40px;font-size:clamp(2rem,4vw,3.5rem);font-weight:900;line-height:.9}.section-headline .accent{color:var(--accent)}.projects-grid{grid-template-columns:repeat(3,1fr);display:grid}.project-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text);padding:28px 24px;text-decoration:none;transition:background .15s;display:block}.project-cell:nth-child(3n){border-right:none}.project-cell:hover{background:var(--accent-light)}.project-cell:hover .project-cell-title{color:var(--accent)}.project-cell-index{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);margin-bottom:12px}.project-cell-title{color:var(--text);letter-spacing:.01em;margin-bottom:8px;font-size:1rem;font-weight:700;line-height:1.3;transition:color .2s}.project-cell-desc{color:var(--text-secondary);margin-bottom:16px;font-size:13px;line-height:1.5}.tech-tags{flex-wrap:wrap;gap:6px;display:flex}.tech-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-light);border:1px solid #ffd199;border-radius:0;padding:3px 8px;font-size:10px;font-weight:700}[data-theme=dark] .tech-tag{border-color:#4a2800}.about-text p{color:var(--text-secondary);max-width:620px;margin-bottom:16px;font-size:1rem;line-height:1.7}.about-text p:last-child{margin-bottom:0}.writing-item{border-top:1px solid var(--border);align-items:baseline;gap:16px;padding:22px 0;text-decoration:none;display:flex}.writing-item:hover .writing-title{color:var(--accent)}.writing-index{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);min-width:24px}.writing-title{color:var(--text);flex:1;font-size:1rem;font-weight:600;transition:color .2s}.writing-badge{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:var(--accent-light);border:1px solid #ffd199;padding:2px 7px;font-size:9px;font-weight:700}[data-theme=dark] .writing-badge{border-color:#4a2800}.writing-date{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.view-all-link{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--accent);margin-top:24px;padding-bottom:2px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:32px 48px;display:flex}.footer-name{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.footer-links{gap:24px;display:flex}.footer-links a{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}#email,#email a{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600;font-family:var(--font-mono);cursor:pointer;text-decoration:none;transition:color .2s}#email a:hover,#email:hover{color:var(--accent)}@media (width<=768px){.hero,.grid-layout{grid-template-columns:1fr}.hero-sidebar,.sidebar-label{border-right:none;border-bottom:1px solid var(--border);padding:20px 24px;position:static}.hero-content,.section-content{padding:32px 24px}nav{padding:0 24px}.projects-grid{grid-template-columns:1fr}.project-cell,.project-cell:nth-child(3n){border-right:none}footer{flex-direction:column;gap:16px;padding:24px}}
