:root{--paper:#f6f5f0;--surface:#fffefa;--ink:#182e2b;--muted:#53615b;--line:#d9ddd3;--green:#1b5c48;--green-dark:#124535;--mint:#dce9dc;--dark:#142b28;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',Arial,sans-serif;--nav-height:81px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 24px)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,ol{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #b17112;outline-offset:5px}::selection{background:#d1e5c8;color:#17382b}[hidden]{display:none!important}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-80px;left:16px;padding:12px 20px;background:var(--green);color:white;z-index:100}.skip:focus{top:12px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.085em;font-weight:500;line-height:1.6}.serif{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-style:italic}.header{position:sticky;top:0;z-index:20;background:rgba(246,245,240,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;font-size:14px;font-weight:650;white-space:nowrap}.brand:hover{text-decoration:none}.monogram{font-size:36px;line-height:1;font-weight:800;letter-spacing:-4px;padding-right:6px}.monogram span{color:var(--green)}.nav-links{display:flex;gap:28px;align-items:center;font-size:13px;font-weight:500}.nav-links a{min-height:44px;display:inline-flex;align-items:center;gap:8px}.nav-links .nav-resume{border:1px solid var(--line);padding:0 14px;border-radius:4px}.hero{padding-block:84px 72px;display:grid;grid-template-columns:1.3fr .9fr;gap:90px;align-items:center}.hero>*{min-width:0}.hero .eyebrow{display:flex;align-items:center;gap:9px}.location-dot{width:7px;height:7px;background:var(--green);border-radius:50%;flex:none}h1{font-size:clamp(52px,5.8vw,80px);line-height:1.045;letter-spacing:-.055em;font-weight:650;margin:22px 0 25px}h1 .serif{color:var(--green);letter-spacing:-.025em}.hero-description{font-size:18px;line-height:1.7;color:var(--muted);max-width:550px}.actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;min-height:48px;padding:12px 19px;border:1px solid var(--green);border-radius:4px;font-size:13px;font-weight:600;transition:background .16s,transform .16s}.button:hover{text-decoration:none;transform:translateY(-2px)}.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green-dark)}.text-link{font-size:13px;font-weight:600}.text-link span{margin-left:6px}.hero-social{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:29px;color:var(--muted);font-size:11px}.hero-social>a{font-weight:600}.hero-social>span[aria-hidden]{color:#a6aca5}.hero-note{border:1px solid #cdd4c8;border-radius:7px;background:linear-gradient(145deg,#ecf0e6,#f3f3ec);padding:24px 25px 19px;position:relative}.note-top{display:flex;justify-content:space-between;gap:12px;padding-bottom:24px;border-bottom:1px solid #cdd4c8}.note-top .eyebrow{font-size:9px;letter-spacing:.06em}.note-top>span:last-child{font-family:var(--mono);font-size:10px;color:var(--muted)}.layer{display:flex;gap:16px;align-items:flex-start;padding:24px 0;border-bottom:1px solid #d4dacf}.layer-number{font-family:var(--mono);color:var(--green);font-size:10px;line-height:27px}.layer h2{font-size:22px;font-weight:550;letter-spacing:-.025em;line-height:1.25}.layer p{font-size:12px;color:var(--muted);line-height:1.6;margin-top:6px}.layer-symbol{font-size:18px;margin-left:auto;color:var(--green)}.note-bottom{font-size:11px;line-height:1.65;color:var(--muted);padding-top:17px;max-width:285px}.credentials{display:flex;align-items:center;gap:25px;justify-content:space-between;padding-block:22px;border-block:1px solid var(--line);font-size:12px;color:var(--muted)}.credentials b{font-weight:400;color:#68766d;margin-right:9px;font-size:10px;font-family:var(--mono);text-transform:uppercase}.credentials>a{font-size:11px;font-weight:600;color:var(--green)}.section{padding-block:86px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}.section-heading .eyebrow{color:var(--green);margin-bottom:15px}h2{font-size:clamp(30px,3.3vw,43px);font-weight:550;line-height:1.14;letter-spacing:-.04em}.section-heading>p{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:3px}.mobile-break{display:none}.featured{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid #cfd6cb;border-radius:8px;overflow:hidden}.project-copy{padding:38px 36px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.project-meta{display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:9px;letter-spacing:.05em;color:var(--muted);flex-wrap:wrap}.pill{background:var(--mint);padding:4px 8px;color:var(--green);border-radius:3px;font-weight:500}.project-copy h3{font-size:48px;letter-spacing:-.055em;font-weight:600;line-height:1.1;margin-top:27px}.project-dot{color:var(--green)}.project-thesis{font-size:24px;font-weight:500;line-height:1.35;letter-spacing:-.025em;margin-top:19px;max-width:340px}.project-copy>p:not(.project-thesis):not(.verification){font-size:14px;color:var(--muted);line-height:1.8;margin-top:18px}.engineering-points{font-size:12px;color:var(--muted);list-style:none;padding:0;margin-top:23px}.engineering-points li{padding:6px 0 6px 17px;position:relative;line-height:1.65}.engineering-points li:before{content:'+';position:absolute;left:0;color:var(--green);font-family:var(--mono)}.project-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.project-links .button{font-size:12px;gap:20px}.essay-link{font-size:11px;color:var(--green);margin-top:19px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}.verification{font-family:var(--mono);font-size:9px;color:var(--muted);margin-top:auto;padding-top:23px}.demo-panel{background:var(--dark);color:#eef4eb;padding:23px 27px 20px;min-width:0;display:flex;flex-direction:column}.demo-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--mono);font-size:8px;letter-spacing:.07em;color:#b9c9bf}.tiny-dot{display:inline-block;width:5px;height:5px;background:#acd39d;border-radius:50%;vertical-align:middle;margin-right:6px}.demo-top>span:last-child{color:#9bb2a6}.demo-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:24px;padding:4px;background:#0d211e;border:1px solid #365149;border-radius:5px}.demo-tabs button{border:0;background:transparent;color:#b4c6bc;padding:10px 8px;font-family:var(--mono);font-size:10px;border-radius:3px;cursor:pointer;min-height:42px;line-height:1.4}.demo-tabs button[aria-selected=true]{background:#d6e6c9;color:#18382a}.demo-tabs button:hover:not([aria-selected=true]){background:#29443b;color:white}.demo-content{padding-top:27px;min-height:434px}.demo-kicker{font-family:var(--mono);font-size:8px;letter-spacing:.12em;color:#b9c9bf}.grant{font-size:17px;font-weight:450;line-height:1.55;margin-top:7px;color:#eaf0e7}.document-count{display:flex;align-items:center;gap:24px;margin-top:22px;margin-bottom:22px}.document-count>div{display:flex;flex-direction:column}.document-count strong{font-size:52px;line-height:1;font-weight:450;letter-spacing:-.055em}.document-count span{font-size:10px;color:#b6c9ba;margin-top:7px}.document-count .count-arrow{font-size:29px;color:#a4b7a9;margin:0 4px}.document-count .expanded strong{color:#eec17e}.permission-line{font-size:10px;color:#cce9b8;padding:10px 0;border-block:1px solid #365149;display:flex;align-items:center;gap:8px;line-height:1.6}.status-icon{color:#cce9b8;font-family:var(--mono);font-size:12px}.rule-list{padding-top:10px}.rule-list>div{display:grid;grid-template-columns:1.15fr 1fr auto;align-items:center;gap:8px;font-size:10px;padding:8px 0;line-height:1.4}.rule-list>div>span:nth-child(2){color:#b9c9bf;font-size:9px}.rule-list b{font:500 9px var(--mono)}.pass{color:#c8e7b3}.fail{color:#ffac94}.wall-note{font-size:9px;color:#c5d1c7;margin-top:11px;line-height:1.65}.decision{border-top:1px solid #54705b;display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:15px;gap:12px}.decision>span{font-family:var(--mono);font-size:8px;letter-spacing:.1em;color:#b9c9bf}.decision>b{color:#ffb39b;font-family:var(--mono);font-size:18px;font-weight:500;letter-spacing:.04em}.decision>b span{margin-left:12px}.demo-footer{margin-top:auto;padding-top:22px;display:flex;flex-direction:column;gap:5px;font-size:9px;line-height:1.6;color:#b9c9bf}.demo-footer strong{font-weight:400;color:#e0e9dc}.digest-pair{display:grid;gap:12px;padding-top:16px}.digest-pair>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.digest-pair span{font:8px var(--mono);color:#b9c9bf}.digest-pair code{font:12px var(--mono)}.tamper-explanation{font-size:12px;color:#c5d1c7;line-height:1.7;margin-top:17px}.tamper-explanation strong{color:#eef4eb;font-weight:500}.supporting-projects{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.project-small{padding:28px 30px;border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;background:#f0f1e9;min-width:0}.project-small .index{font-size:13px;color:var(--green);margin-right:5px}.project-small h3{font-size:26px;letter-spacing:-.025em;font-weight:550;margin-top:18px;display:flex;align-items:center;justify-content:space-between;width:100%}.project-small h3>span{font-size:20px;color:var(--green)}.small-thesis{font-size:18px;line-height:1.5;margin-top:10px;letter-spacing:-.015em}.project-small p:not(.small-thesis){font-size:13px;color:var(--muted);margin-top:15px;line-height:1.75}.award{color:var(--green);background:#e0e8d7;padding:5px 9px;border-radius:3px;font-size:10px;margin-top:16px}.small-project-footer{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;font-size:11px}.project-small .small-project-footer{margin-top:24px}.project-small:last-child .small-project-footer{margin-top:auto;min-height:51px}.small-project-footer>span{font-family:var(--mono);font-size:9px;color:var(--muted)}.small-project-footer a{font-weight:600;white-space:nowrap;color:var(--green)}.experience{background:#e9eee4;border-block:1px solid #d2dace}.experience .section-heading{margin-bottom:47px}.experience-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:76px}.company-name{font-size:52px;letter-spacing:-.05em;font-weight:700}.employer>p{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.8}.role-history{margin-top:30px;padding-left:14px}.role-history>div{position:relative;padding-left:15px;display:flex;flex-direction:column;gap:4px;border-left:1px solid #b9c7b6;padding-bottom:20px}.role-history>div:last-child{border:0;padding-bottom:0}.role-dot{position:absolute;left:-5px;top:7px;background:var(--green);width:9px;height:9px;border:2px solid #e9eee4;border-radius:50%}.role-dot.muted{background:#71856c}.role-history b{font-size:12px;font-weight:550}.role-history>div>span:last-child{font-family:var(--mono);font-size:10px;color:var(--muted)}.employer .promotion{font-size:11px;margin-top:25px;color:var(--green)}.experience-lead{font-size:22px;line-height:1.5;letter-spacing:-.02em}.experience-lead strong{font-weight:650}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-block:26px;border-block:1px solid #c7d2c0;margin-block:28px}.metrics>div{display:flex;flex-direction:column;gap:6px}.metrics strong{font-size:32px;letter-spacing:-.04em;line-height:1.1;font-weight:550}.metrics span{font-size:10px;color:var(--muted)}.ownership{list-style:none;padding:0;display:grid;gap:22px}.ownership>li{display:flex;gap:18px}.ownership>li>span{font-family:var(--mono);font-size:10px;padding-top:3px;color:var(--green)}.ownership h3{font-size:15px;font-weight:600;letter-spacing:-.01em}.ownership p{font-size:13px;color:var(--muted);line-height:1.8;margin-top:5px}.tech-line{font-family:var(--mono);font-size:10px;color:var(--green);margin-top:28px;display:flex;flex-wrap:wrap;gap:10px}.tech-line span{color:#8da187}.story{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:100px}.story-heading h2{font-size:43px;line-height:1.2;margin-top:18px}.story-heading .serif{font-size:46px;letter-spacing:-.02em;color:var(--green);display:inline-block;margin-top:3px}.story-heading>p:last-child{color:var(--muted);font-size:13px;line-height:1.8;margin-top:25px}.story-steps{padding-left:23px;border-left:1px solid var(--line)}.story-steps article{position:relative;padding-bottom:35px}.story-steps article:last-child{padding-bottom:0}.story-steps article:before{content:'';position:absolute;width:9px;height:9px;left:-28px;top:4px;background:var(--paper);border:2px solid var(--green);border-radius:50%}.story-step-label{font-family:var(--mono);font-size:9px;color:var(--green);letter-spacing:.03em;display:block}.story-steps h3{font-size:19px;font-weight:550;line-height:1.4;letter-spacing:-.02em;margin-top:10px}.story-steps p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:11px}.story-steps .story-highlight{border-left:2px solid #7f9b70;padding-left:12px;color:var(--green);font-weight:550}.story-steps .education-note{font-size:11px;margin-top:14px;color:var(--muted)}.contact{background:#dce7d2;padding-block:68px;border-block:1px solid #c3d1b8}.contact-layout{display:flex;align-items:center;justify-content:space-between;gap:55px}.contact h2{font-size:52px;line-height:1.08;margin-top:18px;letter-spacing:-.035em}.contact h2 .serif{font-size:59px;color:var(--green)}.contact p:not(.eyebrow){font-size:13px;line-height:1.9;color:#425c45;margin-top:19px}.contact-email{display:inline-flex;align-items:center;gap:24px;font-size:20px;letter-spacing:-.02em;margin-top:23px;border-bottom:1px solid #8da87e;padding-bottom:6px;overflow-wrap:anywhere}.contact-aside{display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-width:215px}.contact-aside>a:not(.button){font-size:12px;color:var(--green)}.footer{padding-block:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.footer a{color:var(--green)}
@media(min-width:1450px){.hero{padding-top:95px}}
/* Theme tokens retain the original cream/forest direction in both schemes. */
:root {
  --header-bg: rgba(246,245,240,.96);
  --note-start: #ecf0e6; --note-end: #f3f3ec;
  --card-bg: #f0f1e9; --experience-bg: #e9eee4;
  --contact-bg: #dce7d2; --contact-copy: #425c45;
  --on-accent: #ffffff; --focus: #9c6210;
}
.header {background:var(--header-bg)}
.hero-note {background:linear-gradient(145deg,var(--note-start),var(--note-end));border-color:var(--line)}
.note-top,.layer,.featured,.metrics,.role-history>div {border-color:var(--line)}
.credentials b {color:var(--muted)}
.project-small {background:var(--card-bg)}
.experience {background:var(--experience-bg);border-color:var(--line)}
.role-dot {border-color:var(--experience-bg)}
.award {background:var(--mint)}
.contact {background:var(--contact-bg);border-color:var(--line)}
.contact p:not(.eyebrow) {color:var(--contact-copy)}
.primary,.skip {color:var(--on-accent)}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible {outline-color:var(--focus)}
.demo-panel :focus-visible {outline-color:#eec17e}
.theme-switch {min-height:44px;padding:8px 12px;background:transparent;color:var(--green);border:1px solid var(--line);border-radius:4px;font:inherit;cursor:pointer}
.replay {min-height:44px;padding:7px 10px;border:1px solid #54705b;border-radius:4px;background:transparent;color:#e0e9dc;font:11px var(--mono);cursor:pointer}
.replay:hover {background:#29443b}
.replay:disabled {cursor:default;opacity:.7}
.story-heading>p {color:var(--muted);font-size:13px;line-height:1.8;margin-top:25px}
.story-portrait {margin:28px 0 0;max-width:270px}
.story-portrait img {width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 35%;display:block;border-radius:6px}
.story-portrait figcaption {font:10px/1.7 var(--mono);color:var(--muted);margin-top:10px}
@media(max-width:620px) {
  .story-portrait {max-width:260px}
  .footer {align-items:center}
  .footer>span:first-child {flex-basis:100%}
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--paper:#101c19;--surface:#172722;--ink:#edf2e9;--muted:#b1c2b7;--line:#3b5145;--green:#b2d8a7;--green-dark:#c5e6b8;--mint:#2c4336;--dark:#10241f;--header-bg:rgba(16,28,25,.96);--note-start:#20342b;--note-end:#1a2b24;--card-bg:#1b2d25;--experience-bg:#192b23;--contact-bg:#243d2d;--contact-copy:#c2d2c0;--on-accent:#142b20;--focus:#efbd71;}}
:root[data-theme="dark"]{color-scheme:dark;--paper:#101c19;--surface:#172722;--ink:#edf2e9;--muted:#b1c2b7;--line:#3b5145;--green:#b2d8a7;--green-dark:#c5e6b8;--mint:#2c4336;--dark:#10241f;--header-bg:rgba(16,28,25,.96);--note-start:#20342b;--note-end:#1a2b24;--card-bg:#1b2d25;--experience-bg:#192b23;--contact-bg:#243d2d;--contact-copy:#c2d2c0;--on-accent:#142b20;--focus:#efbd71;}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero{gap:42px;grid-template-columns:1.15fr .85fr}.hero-note{padding:20px}.desktop-break{display:none}.project-copy{padding:30px 26px}.demo-panel{padding:22px}.experience-layout{gap:50px;grid-template-columns:.65fr 1.35fr}.story{gap:55px}.project-meta{font-size:8px}.rule-list>div{grid-template-columns:1.05fr 1fr auto;font-size:9px}.rule-list>div>span:nth-child(2){font-size:8px}}
@media(max-width:850px){.hero{padding-block:52px;gap:32px;grid-template-columns:1.2fr .8fr}h1{font-size:56px}.hero-description{font-size:16px}.hero-social{font-size:10px;gap:10px}.hero-note{padding:18px 16px}.note-top>span:last-child{display:none}.layer{gap:10px;padding:20px 0}.layer h2{font-size:19px}.layer p{font-size:11px}.layer-symbol{display:none}.note-top{padding-bottom:16px}.note-bottom{font-size:10px}.credentials{flex-wrap:wrap;gap:12px 20px;font-size:11px}.credentials b{font-size:9px}.section{padding-block:64px}.section-heading>p{font-size:11px}.featured{grid-template-columns:1fr}.project-copy{padding:32px}.project-copy h3{font-size:44px;margin-top:21px}.project-thesis{max-width:500px}.project-copy>p:not(.project-thesis):not(.verification){max-width:600px}.engineering-points{display:grid;gap:0;margin-top:18px}.demo-panel{padding:28px 32px}.demo-content{min-height:440px}.demo-top{font-size:10px}.demo-kicker{font-size:10px}.demo-tabs button{font-size:12px}.rule-list>div{font-size:12px;grid-template-columns:1.15fr 1fr auto;padding-block:9px}.rule-list>div>span:nth-child(2){font-size:11px}.rule-list b{font-size:11px}.permission-line{font-size:12px}.wall-note,.demo-footer{font-size:10px}.document-count strong{font-size:58px}.document-count span{font-size:11px}.decision>span{font-size:10px}.decision>b{font-size:21px}.demo-content{min-height:445px}.digest-pair span{font-size:10px}.digest-pair code{font-size:14px}.tamper-explanation{font-size:14px}.supporting-projects{gap:16px}.project-small{padding:23px}.small-project-footer{align-items:flex-start;flex-direction:column;gap:8px}.experience-layout{grid-template-columns:1fr;gap:35px}.employer{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.company-name{grid-column:1;grid-row:1}.employer>p:not(.promotion){grid-column:1;grid-row:2}.role-history{grid-column:2;grid-row:1/4;margin-top:8px}.employer .promotion{margin-top:10px;grid-column:1}.story{gap:35px;grid-template-columns:.85fr 1.15fr}.story-heading h2{font-size:34px}.story-heading .serif{font-size:39px}.contact h2{font-size:44px}.contact h2 .serif{font-size:49px}.contact-layout{gap:30px}.contact-email{font-size:17px}.contact-aside{min-width:180px}}
@media(max-width:620px){:root{--nav-height:108px}.container{width:calc(100% - 40px)}.nav{min-height:106px;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding-block:9px}.brand{font-size:12px;gap:10px}.monogram{font-size:28px}.nav-links{width:100%;justify-content:space-between;gap:8px;font-size:11px}.nav-links a{min-height:37px}.nav-links .nav-resume{padding:0 10px;min-height:34px}.hero{grid-template-columns:1fr;gap:32px;padding-block:40px}.hero .eyebrow{font-size:9px}h1{font-size:clamp(49px,12vw,68px);margin-top:19px;margin-bottom:20px}.hero-description{font-size:15px;line-height:1.75}.hero .actions{margin-top:25px;gap:23px}.button{min-height:46px;font-size:12px;padding-inline:16px}.hero-social{font-size:10px;gap:10px;margin-top:23px}.hero-social>span:last-child{flex-basis:100%;font-size:10px}.hero-social>span[aria-hidden]:last-of-type{display:none}.hero-note{padding:19px 20px}.note-top{padding-bottom:13px}.note-top .eyebrow{font-size:9px}.note-top>span:last-child{display:block;font-size:9px}.layer{padding-block:16px;gap:13px}.layer h2{font-size:20px}.layer p{font-size:12px;margin-top:3px}.layer-symbol{display:block}.note-bottom{font-size:11px;max-width:none;padding-top:14px}.credentials{display:grid;grid-template-columns:1fr;gap:9px;padding-block:18px;font-size:11px}.credentials b{display:inline-block;min-width:76px;margin-right:0}.credentials>a{margin-top:3px}.section{padding-block:48px}.section-heading{display:block;margin-bottom:24px}.section-heading .eyebrow{font-size:9px;margin-bottom:13px}h2{font-size:32px;line-height:1.16}.section-heading>p{margin-top:14px;font-size:12px}.section-heading>p br{display:none}.mobile-break{display:block}.project-copy{padding:25px 22px}.project-meta{font-size:8px;gap:10px}.project-copy h3{font-size:41px;margin-top:22px}.project-thesis{font-size:22px;margin-top:16px}.project-copy>p:not(.project-thesis):not(.verification){font-size:13px;line-height:1.8;margin-top:15px}.engineering-points{font-size:12px;margin-top:17px}.project-links{gap:20px;margin-top:23px}.text-link{font-size:12px}.essay-link{font-size:11px}.verification{font-size:9px;padding-top:20px}.demo-panel{padding:21px 18px}.demo-top{font-size:8px;gap:8px}.demo-top>span:last-child{font-size:7px}.demo-tabs{margin-top:19px}.demo-tabs button{font-size:10px;padding-inline:5px;min-height:46px}.demo-content{min-height:472px;padding-top:23px}.demo-kicker{font-size:9px}.grant{font-size:17px}.document-count{gap:22px;margin-block:22px}.document-count strong{font-size:56px}.document-count span{font-size:10px}.permission-line{font-size:10px;align-items:flex-start}.rule-list>div{grid-template-columns:1fr auto;gap:2px 10px;font-size:11px;padding-block:8px}.rule-list>div>span:nth-child(2){grid-column:1;grid-row:auto;font-size:10px}.rule-list b{grid-column:2;grid-row:span 2;font-size:10px}.rule-list>div>span:first-child{grid-column:1;grid-row:1}.rule-list>div>b{grid-row:1/3}.wall-note{font-size:10px;margin-top:10px}.wall-note br{display:none}.decision{margin-top:16px}.decision>span{font-size:9px}.decision>b{font-size:19px}.demo-footer{font-size:10px;padding-top:20px}.digest-pair>div{align-items:flex-start;flex-direction:column;gap:4px}.digest-pair code{font-size:15px}.tamper-explanation{font-size:13px}.supporting-projects{grid-template-columns:1fr;gap:14px;margin-top:14px}.project-small{padding:24px 22px}.project-small h3{font-size:25px}.small-thesis{font-size:18px}.project-small p:not(.small-thesis){font-size:13px}.small-project-footer{flex-direction:row;align-items:center;gap:8px;font-size:11px}.small-project-footer>span{font-size:8px}.project-small:last-child .small-project-footer{margin-top:24px}.award{font-size:9px}.experience .section-heading{margin-bottom:30px}.employer{display:block}.company-name{font-size:44px}.employer>p:not(.promotion){font-size:12px}.role-history{margin-top:22px}.employer .promotion{margin-top:22px}.experience-lead{font-size:20px}.metrics{gap:10px;padding-block:22px;margin-block:24px}.metrics strong{font-size:27px}.metrics span{font-size:9px;max-width:80px;line-height:1.5}.ownership>li{gap:12px}.ownership h3{font-size:15px}.ownership p{font-size:13px}.tech-line{gap:8px;font-size:9px}.story{display:block}.story-heading h2{font-size:38px;line-height:1.16}.story-heading .serif{font-size:42px}.story-heading>p:last-child{margin-top:19px}.story-steps{margin-top:35px;margin-left:4px;padding-left:21px}.story-steps article:before{left:-26px}.story-steps h3{font-size:19px}.story-step-label{font-size:9px}.contact{padding-block:45px}.contact-layout{display:block}.contact h2{font-size:44px}.contact h2 .serif{font-size:50px}.contact p:not(.eyebrow){font-size:13px}.contact p br{display:none}.contact-email{font-size:17px;gap:12px}.contact-aside{margin-top:28px;display:flex;flex-direction:row;flex-wrap:wrap;gap:17px 24px}.contact-aside .button{flex-basis:100%;max-width:215px}.contact-aside>a:not(.button){font-size:11px}.footer{padding-block:22px;flex-wrap:wrap;gap:12px;font-size:9px}.footer>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
.demo-top{font-size:10px}.demo-top>span:last-child{font-size:9px}.demo-tabs button{font-size:12px}.demo-kicker{font-size:10px}.rule-list>div{font-size:12px;padding-block:9px}.rule-list>div>span:nth-child(2),.rule-list b{font-size:11px}.permission-line{font-size:12px}.wall-note,.demo-footer{font-size:11px}.decision>span,.verification{font-size:10px}.demo-content{min-height:530px}.digest-pair span{font-size:10px}.digest-pair code{font-size:14px}
.demo-content{min-height:580px}
@media(max-width:620px){.demo-top{font-size:8px}.demo-top>span:last-child{font-size:8px}.demo-tabs button,.permission-line{font-size:11px}.demo-content{min-height:620px}.digest-pair code{font-size:15px}.hero-social>span[aria-hidden]:nth-child(4){display:none}}
/* Photo and story share a section; source order also reads naturally on mobile. */
.story{display:grid;grid-template-columns:.85fr 1.15fr;grid-template-rows:auto 1fr;column-gap:76px;row-gap:28px;align-items:start}
.story-heading{grid-column:2;grid-row:1}
.story .story-heading h2{margin-top:12px}
.story .story-portrait{grid-column:1;grid-row:1/3;margin:0;max-width:420px;width:100%}
.story .story-portrait img{aspect-ratio:4/5;object-position:50% 40%}
.story .story-portrait figcaption{font-size:11px;max-width:340px}
.story .story-steps{grid-column:2;grid-row:2;margin:0}
@media(max-width:850px){.story{column-gap:32px;grid-template-columns:.8fr 1.2fr}}
@media(max-width:620px){.story{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:26px}.story-heading{grid-column:1;grid-row:1}.story .story-portrait{grid-column:1;grid-row:2;max-width:380px}.story .story-portrait img{aspect-ratio:1/1;object-position:50% 30%}.story .story-steps{grid-column:1;grid-row:3;margin-left:4px}}
/* A quieter typographic voice: neutral sans, regular weights, readable copy. */
:root{--sans:'Public Sans','Helvetica Neue',Arial,sans-serif}
.serif{font-family:var(--sans);font-style:normal;font-weight:inherit}
h1{font-size:clamp(52px,5.3vw,72px);font-weight:500;line-height:1.09;letter-spacing:-.045em}
h1 .serif{letter-spacing:inherit}
h2{font-weight:500;letter-spacing:-.03em}
.hero-description{font-size:18px;line-height:1.75}
.eyebrow{font-family:var(--sans);font-weight:500;letter-spacing:.055em}
.brand{font-weight:600}
.layer h2{font-weight:500;letter-spacing:-.02em}
.layer p,.note-bottom{font-size:13px}
.project-copy h3{font-weight:550;letter-spacing:-.035em}
.project-thesis{font-weight:450;letter-spacing:-.015em}
.project-copy>p:not(.project-thesis):not(.verification){font-size:15px;line-height:1.75}
.engineering-points{font-size:13px}
.project-small p:not(.small-thesis),.ownership p,.story-steps p{font-size:14px;line-height:1.75}
.section-heading>p{font-size:13px}
.story-heading .serif{font-size:inherit;letter-spacing:inherit}
.story-heading h2{font-size:40px;font-weight:450;line-height:1.18}
.contact h2{font-size:48px;font-weight:450;line-height:1.14}
.contact h2 .serif{font-size:inherit}
.contact p:not(.eyebrow){font-size:14px}
@media(max-width:850px){h1{font-size:52px}.hero-description{font-size:16px}.story-heading h2{font-size:33px}.layer p{font-size:12px}}
@media(max-width:620px){h1{font-size:clamp(43px,11.8vw,65px);line-height:1.1}.hero-description{font-size:16px}.project-copy>p:not(.project-thesis):not(.verification){font-size:14px}.project-copy h3{font-size:39px}.story-heading h2{font-size:35px}.contact h2{font-size:38px}.section-heading>p{font-size:12px}.story-steps .education-note{font-size:12px}}
@media print{.header,.hero-note,.demo-tabs,.contact,.footer,.hero-social{display:none}.container{width:100%}.hero,.section{padding-block:24px}.hero,.featured,.experience-layout,.story{display:block}.demo-panel{break-inside:avoid}.project-copy{padding:20px 0}.supporting-projects{display:block}.project-small{margin-block:15px}.experience{background:none}body{font-size:11px}}
