:root{--paper:#ffffff;--ink:#102639;--green:#102639;--muted:#63727b;--line:#dce2e7;--sand:#f7f5ee;--accent:#d9b875}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;font-size:15px}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--accent);color:var(--ink)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d9b875;outline-offset:6px}.shell{width:min(1180px,88%);margin:auto}.skip{position:fixed;top:-90px;left:12px;z-index:50;background:white;padding:12px}.skip:focus{top:10px}header{position:sticky;top:0;z-index:30;background:#102639f5;backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.nav-shell{width:min(1320px,92%);margin:auto;min-height:90px;display:flex;align-items:center;gap:24px}.wordmark{font:bold 42px Georgia,serif;letter-spacing:-4px;line-height:1}.wordmark span{color:#d9b875}.domain{font-size:10px;letter-spacing:1.3px;font-weight:bold;margin-left:5px}.domain span{display:block;font-size:8px;font-weight:400;color:var(--muted);letter-spacing:1.5px;margin-top:3px}nav{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:12px}nav a:hover,nav a[aria-current]{color:#d9b875}.nav-contact{border:1px solid #102639;padding:10px 16px}.nav-contact span{margin-left:22px}.menu{display:none;min-height:44px}.hero{padding-top:43px}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow,.hero-index,.section-label,.project-meta{font:10px 'Courier New',monospace;letter-spacing:1.3px}.eyebrow{margin:0 0 22px;font-weight:bold}.dot{display:inline-block;width:7px;height:7px;background:#b08b4b;border-radius:50%;margin-right:10px}.hero-index{color:#63727b;font-size:9px}.hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:center;padding:48px 0 65px}.hero h1{font:normal clamp(63px,6.6vw,91px)/1.02 Georgia,'Times New Roman',serif;letter-spacing:-4.5px;margin:0 0 29px}em{font-style:italic;color:#102639}.intro{font-size:17px;line-height:1.9;color:#63727b;max-width:550px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;gap:35px;padding:14px 20px;background:var(--green);color:white;font-size:12px}.button:hover{background:#102639}.quiet-link{font-size:12px;border-bottom:1px solid #a9b7c2;padding:12px 0}.quiet-link span{margin-left:10px}.profile-card{background:#102639;border:1px solid #102639;padding:23px 27px;box-shadow:9px 9px 0 #dce2e7;transform:rotate(1.3deg);align-self:center}.card-top{display:flex;justify-content:space-between;font:9px monospace;letter-spacing:1.2px}.monogram{height:180px;display:flex;align-items:center;justify-content:center;font:italic 130px Georgia,serif;letter-spacing:-18px;position:relative;overflow:hidden;color:#d9b875}.monogram>span{color:#d9b875}.monogram svg{position:absolute;width:100%;height:100%;inset:0;opacity:.22}.monogram path{fill:none;stroke:#d9b875;stroke-width:1}.profile-bottom{border-top:1px solid #102639;padding-top:19px}.profile-bottom h2{font:normal 28px Georgia,serif;margin:0}.profile-bottom>p{font-size:11px;color:var(--muted);margin:6px 0 23px}dl{margin:0}dl>div{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #102639;padding:9px 0;gap:10px}dt{font:8px monospace;letter-spacing:1px;color:#a9b7c2}dd{margin:0;font-size:10px}.hero-foot{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0;display:flex;justify-content:space-between;gap:20px;font:9px monospace;letter-spacing:.6px}.hero-foot>a{font-size:8px;color:#63727b}.section{padding-top:94px;padding-bottom:94px}.section-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:48px;color:#63727b;font-size:9px}.section-label>span:last-child{color:#63727b;font-size:8px}h2{font:normal clamp(33px,3.5vw,48px)/1.15 Georgia,serif;letter-spacing:-1.5px;margin:0 0 30px}h3{font-size:22px;letter-spacing:-.5px;font-weight:500;line-height:1.35;margin:0 0 12px}p{margin:0 0 20px}.about{display:grid;grid-template-columns:.42fr 1fr;gap:60px}.about .section-label{align-items:start;justify-content:space-between}.about .section-label>span:last-child{font-size:30px;line-height:1;color:#d9b875}.two-copy{display:grid;grid-template-columns:1fr 1fr;gap:35px;font-size:14px;color:var(--muted)}.about-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);gap:20px;margin-top:20px;padding-top:22px}.about-facts strong{display:block;font:normal 22px Georgia,serif}.about-facts span{display:block;font-size:9px;color:var(--muted);margin-top:6px;line-height:1.6}.experience{background:#f7f5ee}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading h2{margin:0}.section-heading>p{font-size:13px;color:var(--muted);max-width:295px;margin:0}.timeline{border-top:1px solid #dce2e7}.timeline article{display:grid;grid-template-columns:.36fr 1fr;gap:40px;border-bottom:1px solid #dce2e7;padding:33px 0}.timeline-date{font:10px monospace;letter-spacing:1px;color:#63727b;padding-top:6px}.timeline h3{font-size:22px;margin-bottom:5px}.organization{font-size:12px;color:#102639;margin-bottom:15px}.timeline article>div>p:last-of-type{font-size:14px;color:var(--muted);max-width:720px}.pill{display:inline-block;font-size:9px;padding:4px 9px;border:1px solid #dce2e7;border-radius:20px;margin:0 6px 4px 0;color:#102639}.lab-note{display:flex;gap:25px;border:1px solid #dce2e7;padding:28px 30px;margin-top:35px}.note-icon{font-size:28px;color:#d9b875}.lab-note h3{font-size:17px}.lab-note p{font-size:13px;color:var(--muted);margin-bottom:12px}.lab-note small{font-size:10px;color:#63727b;display:block;line-height:1.7}.project-feature{display:grid;grid-template-columns:1fr 1.1fr;border:1px solid var(--line)}.cipher-art{padding:28px;background:var(--green);color:#f7f5ee;min-height:395px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.cipher-art:after{content:'';position:absolute;width:280px;height:280px;border:1px solid #d9b87520;border-radius:50%;right:-120px;top:-100px;box-shadow:0 0 0 40px #d9b87508,0 0 0 80px #d9b87508,0 0 0 120px #d9b87508}.art-label{font:9px monospace;letter-spacing:1.2px}.cipher-lines{font:12px/2 monospace;letter-spacing:4px;color:#63727b;margin-top:22px}.cipher-art strong{font:normal 76px Georgia,serif;letter-spacing:2px}.cipher-art strong span{color:var(--accent)}.art-footer{display:flex;justify-content:space-between;gap:15px;font:8px monospace;letter-spacing:1px}.project-copy{padding:34px 38px}.project-copy h3{font:normal 32px/1.2 Georgia,serif;letter-spacing:-.7px;margin-bottom:23px}.project-copy p{font-size:13px;color:var(--muted)}.project-copy .eyebrow{font-size:8px;color:#102639;margin-bottom:17px}details{border-top:1px solid var(--line);padding-top:14px}summary{cursor:pointer;font-size:11px;color:#102639}summary>span{float:right}details p{font-size:11px!important;margin:16px 0 0}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.small-project{padding:30px;border:1px solid var(--line);background:#f7f5ee}.small-project.radio{background:#f7f5ee}.project-meta{font-size:8px;display:flex;justify-content:space-between;margin-bottom:29px;gap:20px;color:#63727b}.project-meta>span:last-child{font-size:22px;line-height:1}.small-project h3{font:normal 29px/1.2 Georgia,serif;letter-spacing:-.6px;margin-bottom:20px}.small-project>p{font-size:13px;color:var(--muted)}.project-detail{border-top:1px solid #dce2e7;padding-top:20px;margin-top:30px}.project-detail>span{display:block;font:8px monospace;letter-spacing:1px;margin-bottom:8px;color:#63727b}.project-detail strong{font-size:13px;font-weight:500}.project-detail p{font-size:10px;color:var(--muted);margin-top:8px;margin-bottom:0}.skills{background:#102639;color:#f7f5ee}.skills .section-label{color:#a9b7c2}.skills .section-label>span:last-child{color:#63727b}.skills h2{color:#ffffff}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:45px}.skill-grid article+article{border-left:1px solid #102639;padding-left:35px}.skill-number{font:9px monospace;color:#d9b875;display:block;margin-bottom:22px}.skill-grid h3{font-size:17px;color:#f7f5ee}.skill-grid p{font-size:12px;color:#a9b7c2;line-height:1.9}.skills-note{font-size:11px;color:#a9b7c2;border-top:1px solid #102639;padding-top:23px;margin-top:24px;margin-bottom:0}.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.education-grid>div:first-child>p{font-size:13px;color:var(--muted);max-width:310px}.education-list article{padding-bottom:25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.education-list article:last-child{margin-bottom:0}.education-list .eyebrow{color:#63727b;font-size:9px;margin-bottom:12px}.education-list h3{font-size:21px}.education-list p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:10px}.education-note{font-size:11px;color:#102639}.leadership{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.leadership>span{font:9px monospace;letter-spacing:1px;color:#63727b}.leadership p{font-size:12px;color:var(--muted);margin:0}.contact{padding:70px 0;background:#dce2e7}.contact .section-label{margin-bottom:40px}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.contact h2{font-size:48px;margin:0}.contact-grid p{font-size:14px;color:#63727b;max-width:330px}.email{display:inline-flex;gap:35px;align-items:center;font-size:21px;border-bottom:1px solid #a9b7c2;padding-bottom:10px;letter-spacing:-.4px}.email:hover{color:#102639}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 0;font:9px monospace;color:#63727b}footer .wordmark{font-size:32px;color:var(--ink)}footer>span:nth-of-type(2){font-size:8px;letter-spacing:.8px}footer>a:last-child{font:11px Arial,sans-serif}
@media(max-width:1050px){.hero-grid{gap:50px}.hero h1{font-size:74px}.hero-foot{font-size:8px}.domain span{display:none}nav{gap:22px}.about{gap:35px;grid-template-columns:.28fr 1fr}.project-copy{padding:28px}.education-grid{gap:50px}.contact-grid{gap:40px}.contact h2{font-size:41px}.skill-grid{gap:25px}.skill-grid article+article{padding-left:25px}}
@media(max-width:760px){html{scroll-padding-top:85px}.nav-shell{width:88%;min-height:76px;flex-wrap:wrap;gap:16px}.wordmark{font-size:35px}.domain{font-size:9px;margin-left:2px;letter-spacing:1px}.menu{display:flex;align-items:center;gap:14px;margin-left:auto;border:1px solid #102639;background:none;padding:7px 11px;font-size:11px;color:var(--ink)}nav{display:none;width:100%;margin:0;padding:8px 0 22px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:10px 0}.nav-contact{margin-top:8px;padding:10px 12px}.hero{padding-top:27px}.hero-top .eyebrow{font-size:8px;letter-spacing:1px;margin:0}.hero-index{font-size:7px;letter-spacing:.6px}.hero-grid{grid-template-columns:1fr;gap:40px;padding:40px 0 43px}.hero h1{font-size:clamp(58px,13vw,85px);letter-spacing:-3px;margin-bottom:25px}.intro{font-size:15px;line-height:1.9;max-width:550px}.hero-actions{gap:23px;flex-wrap:wrap}.button{gap:25px;padding:13px 17px;font-size:11px}.quiet-link{font-size:11px}.profile-card{max-width:440px;width:100%;justify-self:center;padding:22px 25px;transform:rotate(.8deg)}.monogram{height:160px;font-size:115px}.hero-foot{flex-wrap:wrap;font-size:7px;gap:12px 17px;line-height:1.7}.hero-foot span:last-of-type{display:none}.hero-foot>a{width:100%;padding-top:5px;font-size:7px}.section{padding-top:60px;padding-bottom:60px}.section-label{margin-bottom:30px;font-size:8px}.section-label>span:last-child{font-size:7px;max-width:140px;text-align:right}.about{display:block}.about .section-label>span:last-child{font-size:24px}.about h2{font-size:35px}.two-copy{grid-template-columns:1fr;gap:0;font-size:14px}.about-facts{grid-template-columns:1fr;gap:15px;margin-top:7px;padding-top:20px}.about-facts>div{display:flex;justify-content:space-between;gap:15px;align-items:center}.about-facts strong{font-size:20px;white-space:nowrap}.about-facts span{font-size:9px;max-width:165px;text-align:right}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:100%}h2{font-size:36px}.timeline article{grid-template-columns:1fr;gap:15px;padding:27px 0}.timeline h3{font-size:21px}.timeline-date{font-size:9px}.lab-note{padding:22px;gap:13px}.note-icon{font-size:22px}.lab-note p{font-size:12px}.lab-note small{font-size:9px}.project-feature{grid-template-columns:1fr}.cipher-art{min-height:300px;padding:25px}.cipher-lines{font-size:10px;letter-spacing:3px}.cipher-art strong{font-size:65px}.project-copy{padding:26px}.project-copy h3{font-size:30px}.project-pair{grid-template-columns:1fr;gap:20px;margin-top:20px}.small-project{padding:26px}.skill-grid{grid-template-columns:1fr;gap:24px;margin-top:30px}.skill-grid article+article{border-left:0;border-top:1px solid #102639;padding-left:0;padding-top:23px}.skill-number{margin-bottom:13px}.skill-grid p:last-child{margin-bottom:0}.education-grid{grid-template-columns:1fr;gap:25px}.education-grid>div:first-child>p{max-width:100%}.education-list h3{font-size:21px}.leadership{grid-template-columns:1fr;gap:15px;margin-top:15px;padding-top:25px}.contact{padding:55px 0}.contact-grid{grid-template-columns:1fr;gap:25px}.contact h2{font-size:37px}.contact-grid p{font-size:13px}.email{font-size:21px;gap:28px}footer{flex-wrap:wrap;gap:20px}footer>span:nth-of-type(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared navy, paper, teal and gold palette from the library and inventory sites. */
header{color:#dce2e7}.domain span{color:#a9b7c2}nav a{color:#a9b7c2}.wordmark span{color:#d9b875}.menu{color:#dce2e7}.profile-card{color:#dce2e7}.card-top{color:#a9b7c2}.profile-bottom>p{color:#a9b7c2}.profile-bottom h2{color:#ffffff}.hero-index{color:#63727b}.dot{background:#b08b4b}.cipher-art strong{color:#ffffff}.cipher-art strong span{color:#d9b875}.small-project .project-meta{color:#63727b}.skip{color:#102639}.quiet-link:hover{color:#102639}

.outside-work{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.outside-work h3{font:normal 24px/1.3 Georgia,serif;margin-bottom:12px}.outside-work p{font-size:14px;color:var(--muted);max-width:700px}

/* Shared Daher palette: navy, warm gold, ivory. */
:root{--daher-navy:#102639;--daher-gold:#d9b875;--daher-paper:#f7f5ee;--daher-muted:#63727b;--daher-line:#dce2e7;accent-color:#102639}
:root{--ink:#102639;--green:#102639;--accent:#d9b875;--paper:#f7f5ee;--muted:#63727b;--line:#dce2e7;--sand:#edf0f3;}
body{background-color:var(--daher-paper);color:var(--daher-navy)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--daher-gold)}
.primary,.btn-primary,.brandmark,.brand-icon{background-color:var(--daher-navy);color:#fff}
aside,.sidebar{background-color:var(--daher-navy);color:#e5e8eb;border-color:#294254}
aside .brand,.sidebar .brand{color:var(--daher-gold)}
aside nav :is(a,button),.sidebar nav :is(a,button){color:#dce2e7}
aside nav :is(a,button).active,.sidebar nav :is(a,button).active{background-color:#ffffff16;color:var(--daher-gold)}
aside :is(p,small,.small,.nav-label,.side-label,.space-label,.aside-bottom),.sidebar :is(p,small,.side-label,.side-bottom){color:#b8c5cf}
aside .side-card,.sidebar .side-card{background-color:#1d3549;border-color:#3c5365}

/* Sharing and mobile accessibility polish. */
:root{--muted:#59656c}
.hero-index,.hero-foot>a,footer{color:#59656c}
.section-label,.section-label>span:last-child,.timeline-date,.project-meta,.small-project .project-meta,.project-detail>span,.education-list .eyebrow,.leadership>span{color:#506571}
a,button{-webkit-tap-highlight-color:#b7985e40}
nav a,.wordmark,.quiet-link,.hero-foot>a,footer>a{min-height:44px;display:inline-flex;align-items:center}
nav a{padding:10px 4px}
.nav-contact{padding:10px 16px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#916c2f}
header a:focus-visible,header button:focus-visible,.skills a:focus-visible{outline-color:#e0c994}
.email{overflow-wrap:anywhere;max-width:100%}
@media(max-width:760px){.menu{min-width:72px;justify-content:center}nav a{min-height:48px;padding:12px}.hero-index{font-size:9px}.hero-top{gap:12px;flex-wrap:wrap}.profile-card{transform:none}.hero-foot>a{font-size:10px}.email{font-size:clamp(17px,5.3vw,21px);gap:16px}footer>a:last-child{padding:8px}.domain{min-height:44px}}
@media(max-width:360px){.nav-shell{gap:10px}.domain{font-size:8px;letter-spacing:.5px}.hero h1{font-size:52px}.project-copy,.small-project{padding:20px}}

.hero-actions{flex-wrap:wrap}.resume-contact{margin-top:22px}.resume-contact small{font-size:11px;color:#506571}

/* Personal portrait in the introduction. */
.profile-card{transform:none}.portrait{display:block;width:100%;height:auto;aspect-ratio:5/6;object-fit:cover;margin:20px 0 24px;border-radius:2px}.hero-grid{align-items:center}.profile-card{padding:23px 27px}@media(max-width:760px){.profile-card{max-width:380px}.portrait{margin:18px 0 22px}}

.project-photo{margin:22px 0 0}.project-photo a{display:block}.project-photo img{display:block;width:100%;height:auto;border-radius:2px}.project-photo figcaption{margin-top:9px;font-size:11px;color:#506571;line-height:1.6}

/* Keep the mobile portrait compact without cropping the photograph. */
@media(max-width:760px){.profile-card{max-width:380px;padding:20px 22px}.profile-card .portrait{width:140px;max-width:100%;height:auto;aspect-ratio:auto;margin:16px auto 20px}.hero-grid{gap:28px}}

img{max-width:100%;height:auto}.hero-grid>*{min-width:0}.profile-card{max-width:100%;overflow:hidden}@media(max-width:760px){.profile-card{max-width:380px}.profile-card img.portrait{width:140px!important;max-width:100%!important;height:auto!important}}

/* Official institution marks retain their original proportions. */
.timeline-meta{min-width:0}.institution-logo{display:flex;align-items:center;justify-content:center;width:100%;max-width:225px;height:96px;margin-top:25px}.institution-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.institution-logo--msu img{max-width:145px}.institution-logo--icc{background:#172e43;padding:16px;border-radius:3px}@media(max-width:700px){.timeline-meta{display:flex;align-items:center;justify-content:space-between;gap:20px}.institution-logo{width:155px;height:64px;margin-top:0;flex-shrink:0}.institution-logo--msu img{max-width:105px}.institution-logo--icc{padding:10px}}
/* Education logos sit beside the school details without cropping. */
.education-list article{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:24px;align-items:center}.education-copy{min-width:0}.education-logo{display:flex;align-items:center;justify-content:center;width:150px;height:70px}.education-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.education-logo--msu img{max-width:105px}.education-logo--icc{background:#172e43;border-radius:3px;padding:12px}@media(max-width:700px){.education-list article{grid-template-columns:minmax(0,1fr);gap:16px}.education-logo{grid-row:1;width:155px;height:55px;justify-content:flex-start}.education-logo--msu img{max-width:82px}.education-logo--icc{justify-content:center;padding:10px}}
@media(min-width:701px) and (max-width:1100px){.education-list article{grid-template-columns:minmax(0,1fr);gap:16px}.education-logo{grid-row:1;justify-content:flex-start}.education-logo--icc{justify-content:center}}
.menu{background:#172e43;color:#ffffff;border:1px solid #9bafbd;border-radius:3px;font-weight:600;cursor:pointer}.menu:hover,.menu[aria-expanded="true"]{background:#29465d;border-color:#d9b875}.menu:focus-visible{outline:3px solid #d9b875;outline-offset:3px}.menu span{color:#d9b875}

/* Signal motif and larger, readable typography. */
.hero-signal{width:100%;height:150px;display:flex;align-items:center;margin-bottom:14px;opacity:.7}.hero-signal svg{display:block;width:100%;height:auto;max-height:135px}
body{font-size:18px}nav{font-size:15px;gap:22px}.domain{font-size:12px}.domain span{font-size:11px}.intro{font-size:20px;line-height:1.8}.button,.quiet-link{font-size:15px}.eyebrow,.hero-index,.section-label,.section-label>span:last-child,.project-meta,.project-copy .eyebrow,.education-list .eyebrow,.timeline-date,.hero-foot,.hero-foot>a,.card-top,dt,.project-detail>span,.leadership>span,.art-label,.art-footer,.skill-number{font-size:12px}.hero-top{gap:20px}.hero-foot,.section-label,.project-meta{flex-wrap:wrap}.profile-bottom>p,dd{font-size:14px}.two-copy,.outside-work p,.timeline article>div>p:last-of-type,.lab-note p,.project-copy p,.small-project>p,.skill-grid p,.education-grid>div:first-child>p,.education-list p:not(.eyebrow),.leadership p,.contact-grid p,.section-heading>p{font-size:17px;line-height:1.8}.organization{font-size:16px}.pill{font-size:12px}.lab-note h3,.skill-grid h3{font-size:21px}.lab-note small,.project-detail p,.skills-note,.education-note,.resume-contact small,.project-photo figcaption,footer,footer>span:nth-of-type(2),footer>a:last-child{font-size:14px}.project-detail strong{font-size:17px}summary,details p{font-size:15px!important}.hero-actions{gap:20px}.phone{display:flex;align-items:center;gap:30px;width:fit-content;margin-top:18px;font-size:23px;border-bottom:1px solid #a9b7c2;padding:8px 0;min-height:44px}.phone:hover{color:#916c2f}.contact-grid p{max-width:400px}
@media(max-width:1050px){nav{gap:14px}.domain{letter-spacing:.8px}.nav-shell{gap:18px}}
@media(max-width:760px){body{font-size:17px}.domain{font-size:11px}.menu{font-size:14px}.hero-top .eyebrow,.hero-index{font-size:11px}.intro{font-size:18px}.button,.quiet-link{font-size:15px}.hero-foot,.hero-foot>a,.section-label,.section-label>span:last-child,.timeline-date,.about-facts span{font-size:12px}.about-facts>div{align-items:flex-start;flex-wrap:wrap}.about-facts span{max-width:none;text-align:left}.hero-signal{height:105px;margin-bottom:10px}.section-heading>p{max-width:100%}.phone{font-size:22px}.section-label>span:last-child{max-width:180px}.profile-bottom>p,dd{font-size:14px}.hero-foot span:last-of-type{display:block}}

/* Larger reading scale across the whole portfolio. */
body{font-size:20px;line-height:1.8}
.intro{font-size:23px;line-height:1.75}
nav{font-size:18px;gap:18px}.domain{font-size:15px}.domain span{font-size:13px}.button,.quiet-link{font-size:18px}.hero-actions{gap:18px}.button{gap:22px}
.two-copy,.outside-work p,.timeline article>div>p:last-of-type,.lab-note p,.project-copy p,.small-project>p,.skill-grid p,.education-grid>div:first-child>p,.education-list p:not(.eyebrow),.leadership p,.contact-grid p,.section-heading>p{font-size:20px;line-height:1.8}
.eyebrow,.hero-index,.section-label,.section-label>span:last-child,.project-meta,.project-copy .eyebrow,.education-list .eyebrow,.timeline-date,.hero-foot,.hero-foot>a,.card-top,dt,.project-detail>span,.leadership>span,.art-label,.art-footer,.skill-number{font-size:15px;letter-spacing:.7px}
.profile-bottom>p,dd,.about-facts span,.pill,.lab-note small,.project-detail p,.skills-note,.education-note,.resume-contact small,.project-photo figcaption,footer,footer>span:nth-of-type(2),footer>a:last-child{font-size:17px;line-height:1.7}
.organization,.project-detail strong{font-size:20px}summary,details p{font-size:18px!important}.cipher-lines{font-size:16px;letter-spacing:2px}
h2{font-size:52px}h3,.timeline h3,.education-list h3{font-size:28px}.lab-note h3,.skill-grid h3,.outside-work h3{font-size:26px}.profile-bottom h2{font-size:34px}.about-facts strong{font-size:27px}.contact h2{font-size:52px}.email,.phone{font-size:27px}.profile-card dl>div{flex-wrap:wrap;align-items:flex-start;gap:5px 12px}.section-heading>p{max-width:370px}.education-grid>div:first-child>p,.contact-grid p{max-width:440px}.section-heading{align-items:start}.skill-grid{gap:28px}.skill-grid article+article{padding-left:24px}
@media(min-width:761px) and (max-width:1100px){.nav-shell{flex-wrap:wrap;padding:16px 0;gap:10px 20px}nav{width:100%;justify-content:flex-end;flex-wrap:wrap;gap:10px 22px}.domain span{display:none}.section-heading{display:block}.section-heading>p{max-width:100%;margin-top:22px}.hero-grid{gap:35px}.education-grid{gap:35px}.skill-grid{grid-template-columns:1fr}.skill-grid article+article{border-left:0;padding-left:0}.hero h1{font-size:68px}}
@media(max-width:760px){body{font-size:19px}.intro{font-size:21px}.domain{font-size:14px}.menu{font-size:17px}.hero-top .eyebrow,.hero-index,.hero-foot,.hero-foot>a,.section-label,.section-label>span:last-child,.timeline-date,.education-list .eyebrow{font-size:14px}.button,.quiet-link{font-size:17px}.two-copy,.outside-work p,.timeline article>div>p:last-of-type,.lab-note p,.project-copy p,.small-project>p,.skill-grid p,.education-grid>div:first-child>p,.education-list p:not(.eyebrow),.leadership p,.contact-grid p,.section-heading>p{font-size:19px}.profile-bottom>p,dd,.about-facts span{font-size:16px}.hero-index{display:none}.hero-top .eyebrow{letter-spacing:.5px}.section-label{gap:12px}.section-label>span:last-child{max-width:none;text-align:left}.section-label{flex-direction:column}.about .section-label{flex-direction:row}.about h2,h2{font-size:40px}.contact h2{font-size:41px}.project-copy h3,.small-project h3{font-size:31px}.timeline h3,.education-list h3{font-size:26px}.about-facts>div{display:block}.about-facts span{margin-top:5px}.email,.phone{font-size:24px}.project-meta{gap:10px}.project-meta>span:first-child{max-width:85%}.art-footer{flex-wrap:wrap}.hero-foot{gap:15px}.profile-card{padding:22px}.domain{margin-left:0}.nav-shell{gap:14px}.hero-actions{gap:15px}}
@media(max-width:360px){.domain{font-size:12px}.nav-shell{gap:10px}.menu{min-width:64px;padding:7px}.email,.phone{font-size:21px}}

/* Prominent, generously sized top header. */
html{scroll-padding-top:150px}header .nav-shell{min-height:124px;gap:26px}header .wordmark{font-size:64px}header .domain{font-size:22px;letter-spacing:1.5px;line-height:1.4}header .domain span{font-size:14px;letter-spacing:1.4px}header nav{font-size:24px;gap:20px;line-height:1.4}header nav a{padding:14px 4px}header .nav-contact{padding:14px 20px}header .nav-contact span{margin-left:14px}
@media(min-width:761px) and (max-width:1100px){html{scroll-padding-top:210px}header .nav-shell{padding:18px 0;gap:10px 24px}header nav{gap:12px 26px;justify-content:flex-start}header nav a{padding:10px 4px}header .domain span{display:block}}
@media(max-width:760px){html{scroll-padding-top:110px}header .nav-shell{min-height:94px;gap:16px}header .wordmark{font-size:50px}header .domain{font-size:18px;letter-spacing:1px}header .domain span{display:none}header .menu{font-size:20px;min-height:48px;padding:9px 12px}header nav{font-size:23px;gap:0}header nav a{min-height:52px;padding:12px}header .nav-contact{padding:12px}}
@media(max-width:360px){header .nav-shell{gap:10px}header .wordmark{font-size:44px}header .domain{font-size:16px;letter-spacing:.5px}header .menu{font-size:18px;padding:8px;gap:8px;min-width:64px}}
@media(max-width:760px){header .nav-shell{width:94%;gap:10px}header .domain{font-size:17px;letter-spacing:.6px}header .menu{font-size:18px;padding:9px 10px;gap:10px}}@media(max-width:360px){header .domain{font-size:15px}header .wordmark{font-size:42px}header .menu{font-size:17px;padding:8px;gap:8px}}
/* Slim header, preserving the larger type. */ html{scroll-padding-top:110px}header .nav-shell{min-height:84px;padding-top:6px;padding-bottom:6px}header nav a{padding-top:6px;padding-bottom:6px}header .nav-contact{padding-top:8px;padding-bottom:8px}@media(min-width:761px) and (max-width:1100px){html{scroll-padding-top:165px}header .nav-shell{padding:8px 0;gap:0 24px}header nav{padding:0;gap:8px 26px}header nav a{padding-top:6px;padding-bottom:6px}}@media(max-width:760px){html{scroll-padding-top:90px}header .nav-shell{min-height:72px;padding-top:4px;padding-bottom:4px}header nav{padding:4px 0 10px}header nav a{padding:10px 12px}header .nav-contact{padding:10px 12px}header .menu{min-height:44px;padding-top:6px;padding-bottom:6px}}
/* Bring the introduction closer to the top of the hero. */ .hero-grid{padding-top:16px;align-items:start}.hero-copy{align-self:start}.hero-signal{height:110px;margin-bottom:8px}.profile-card{align-self:start}@media(max-width:760px){.hero-grid{padding-top:18px}.hero-signal{height:85px;margin-bottom:6px}}
/* Stronger reading contrast on light surfaces. */ :root{--muted:#3e505c}.intro,.two-copy,.outside-work p,.section-heading>p,.timeline article>div>p:last-of-type,.lab-note p,.project-copy p,.small-project>p,.project-detail p,.education-grid>div:first-child>p,.education-list p:not(.eyebrow),.leadership p,.contact-grid p{color:#3e505c}
