:root{--ink:#171715;--paper:#f4f1eb;--muted:#787770;--line:#d7d3ca;--orange:#e76c3f;--yellow:#f2b544;--sans:'Manrope',sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px}a{color:inherit;text-decoration:none}.site-shell{overflow:hidden}.topbar{height:86px;max-width:1240px;margin:auto;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-weight:800;font-size:1.35rem;letter-spacing:-.08em}.wordmark span{color:var(--orange)}.nav-links{display:flex;gap:34px;font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.nav-links a,.nav-resume{transition:color .2s}.nav-links a:hover,.nav-resume:hover{color:var(--orange)}.nav-resume{font-family:var(--mono);font-size:.7rem;text-transform:uppercase}.nav-resume span{color:var(--orange);font-size:1rem}.section-grid{max-width:1240px;margin:auto;padding:112px 38px 126px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:80px}.eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 25px}.status-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#5f9b67;box-shadow:0 0 0 4px #d5e1d2}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.8rem,8vw,7.6rem);line-height:.94;letter-spacing:-.085em;margin:0 0 35px;max-width:840px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.hero-intro{max-width:490px;font-size:1.15rem;line-height:1.65;color:#5f5c55}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:43px}.button{display:inline-flex;align-items:center;gap:28px;padding:16px 20px;font-family:var(--mono);font-size:.7rem;text-transform:uppercase}.button-dark{background:var(--ink);color:var(--paper);transition:background .2s,transform .2s}.button-dark:hover{background:var(--orange);transform:translateY(-3px)}.text-link{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:8px}.text-link span{color:var(--orange);font-size:1rem;margin-left:8px}.hero-aside{align-self:end;border-left:1px solid var(--line);padding-left:27px;color:var(--muted);font-size:.82rem;line-height:1.65}.signal-mark{display:flex;gap:5px;align-items:flex-end;height:53px;margin-bottom:24px}.signal-mark span{display:block;width:8px;background:var(--orange);animation:signal 1.7s ease-in-out infinite alternate}.signal-mark span:nth-child(1){height:18px}.signal-mark span:nth-child(2){height:34px;animation-delay:.2s}.signal-mark span:nth-child(3){height:51px;animation-delay:.4s}.signal-mark span:nth-child(4){height:29px;animation-delay:.6s}.signal-mark span:nth-child(5){height:42px;animation-delay:.8s}.hero-index{margin-top:85px;font-family:var(--mono);font-size:.68rem;color:var(--ink)}.hero-index span{color:var(--orange);margin:0 5px}.marquee{background:var(--orange);color:var(--paper);overflow:hidden;padding:18px 0;white-space:nowrap;font-family:var(--mono);font-size:.75rem;text-transform:uppercase}.marquee div{animation:marquee 28s linear infinite}.marquee span{color:var(--yellow);margin:0 22px}.content-section{max-width:1240px;margin:auto;padding:125px 38px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:60px;border-bottom:1px solid var(--line);padding-bottom:25px}.section-heading .eyebrow{margin:0}.section-heading h2{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.08em;line-height:.95;margin:0 0 -7px}.experience-item{display:grid;grid-template-columns:180px 1fr;gap:50px;padding:33px 0;border-bottom:1px solid var(--line)}.experience-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.68rem;color:var(--muted);text-transform:uppercase}.experience-item h3{font-size:1.45rem;letter-spacing:-.05em;margin-bottom:5px}.company{color:var(--orange);font-size:.8rem;margin-bottom:19px}.experience-item>div:last-child>p:not(.company){color:#66635d;max-width:680px;line-height:1.65;margin-bottom:20px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span,.project-label{font-family:var(--mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.04em}.tags span{border:1px solid var(--line);padding:6px 8px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.project-card{min-height:320px;padding:28px;position:relative;display:flex;flex-direction:column;transition:transform .25s}.project-card:hover{transform:translateY(-6px)}.project-card-featured{background:var(--ink);color:var(--paper)}.project-card-light{background:var(--yellow)}.project-card-outline{border:1px solid var(--line)}.project-card-accent{background:var(--orange);color:var(--paper)}.project-number{font-family:var(--mono);font-size:.7rem;opacity:.6}.project-card h3{font-size:2.35rem;line-height:.95;letter-spacing:-.08em;margin:53px 0 16px}.project-card p{font-size:.82rem;line-height:1.6;max-width:300px;opacity:.72}.card-arrow{position:absolute;right:27px;top:25px;font-size:1.5rem}.project-label{margin-top:auto}.writing-section{padding-bottom:135px}.writing-heading{align-items:center}.articles{border-top:1px solid var(--line)}.article{display:grid;grid-template-columns:180px 1fr 90px;gap:45px;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .2s}.article:hover{padding-left:10px;padding-right:10px}.article-date{font-family:var(--mono);font-size:.67rem;color:var(--muted);text-transform:uppercase}.article h3{font-size:1.45rem;letter-spacing:-.05em;margin:0 0 8px}.article p{font-size:.82rem;line-height:1.5;color:var(--muted);margin:0;max-width:600px}.article-arrow{text-align:right;color:var(--orange);font-size:1.25rem}.article-state{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;color:var(--muted);padding:32px 0}.contact-section{background:var(--ink);color:var(--paper);padding:118px max(38px,calc((100% - 1164px)/2))}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact-section .eyebrow{color:#9d9a91}.contact-section h2{font-size:clamp(3rem,6.5vw,6.4rem);line-height:.92;letter-spacing:-.08em;margin:0}.contact-details{align-self:end}.contact-details>p{color:#aaa79e;line-height:1.7;max-width:380px;margin-bottom:38px}.contact-email{display:inline-block;font-size:1.25rem;border-bottom:1px solid #68665f;padding-bottom:12px}.contact-email span{color:var(--orange);margin-left:15px}.social-links{display:flex;gap:20px;margin-top:55px;font-family:var(--mono);font-size:.65rem;text-transform:uppercase;color:#aaa79e}.social-links a:hover{color:var(--orange)}footer{max-width:1240px;margin:auto;padding:28px 38px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:.62rem;text-transform:uppercase;color:var(--muted)}footer a:hover{color:var(--orange)}@keyframes signal{to{transform:scaleY(.55);opacity:.55}}@keyframes marquee{to{transform:translateX(-50%)}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay{transition-delay:.15s}@media(max-width:720px){.topbar{height:72px;padding:0 20px}.nav-links{display:none}.nav-resume{font-size:.62rem}.section-grid{display:block;padding:76px 20px 88px}.hero-aside{margin-top:75px;padding-left:18px;max-width:260px}.hero-index{margin-top:35px}h1{font-size:clamp(3.7rem,17vw,6rem)}.hero-intro{font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.content-section{padding:80px 20px}.section-heading{display:block;margin-bottom:34px}.section-heading h2{margin-top:28px}.writing-heading .text-link{display:inline-block;margin-top:30px}.experience-item{grid-template-columns:1fr;gap:17px;padding:28px 0}.experience-meta{max-width:120px}.experience-item h3{font-size:1.3rem}.project-grid{grid-template-columns:1fr}.project-card{min-height:285px}.project-card h3{font-size:2.1rem;margin-top:45px}.article{grid-template-columns:1fr 30px;gap:10px}.article-date{grid-column:1 / -1}.article p{padding-right:5px}.article-arrow{grid-column:2;grid-row:2 / span 2}.contact-section{padding:83px 20px}.contact-grid{display:block}.contact-details{margin-top:65px}.social-links{flex-wrap:wrap;margin-top:38px}footer{padding:25px 20px;gap:18px;flex-wrap:wrap}footer span:nth-child(2){display:none}}