/* The approved portfolio's typography and shared navigation, confined to personal pages. */
@font-face{font-family:PortfolioInter;src:url('/assets/personal/approved/inter-latin.woff2?v=v-7bc54702f465') format('woff2');font-weight:100 900;font-display:swap}
:root{--sans:PortfolioInter,Arial,sans-serif;--display:var(--sans);--serif:var(--sans);--ui:var(--sans);--gutter:clamp(22px,4.15vw,94px);--pad:var(--gutter);--ink:#f6f2f8;--fog:#c1bacb;--inkline:#3f3943;--warm:#ffc18c;--violet:#dbacff;--orange:#ffb26b;--s-med:#ffbc76;--s-law:#dfb7ff;--s-ai:#c1a1ff;--line:#37323f;--bg:#060508;--text:#f8f5fc;--muted:#c1bacb}
[hidden]{display:none!important}html{scroll-padding-top:24px}body{font-family:var(--sans)}button,a,summary,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font-family:inherit}button{cursor:pointer}img{max-width:100%}.studyJump{display:block;scroll-margin-top:24px}.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{z-index:99}.spine{display:none}
.hdr{height:clamp(62px,5.2vw,90px);position:relative;z-index:8;display:flex;align-items:center;gap:26px;margin:0 var(--pad);padding:0;border:0;border-bottom:1px solid #716977;background:var(--bg);width:auto;max-width:none}
.hdr .mark{font:650 clamp(21px,1.95vw,36px)/1.1 var(--sans);letter-spacing:-.055em;text-decoration:none;border:0;padding:0;margin-right:auto;max-width:none}.hdr .nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,46px)}.hdr .nav a{font:500 clamp(14px,1.28vw,24px)/1.2 var(--sans);padding:12px 0;min-height:44px;display:flex;align-items:center;text-decoration:none}.hdr .nav a:hover{text-decoration:underline}.nav-ind{display:none}.hdr .menu-btn{display:grid;place-items:center;min-height:44px;min-width:36px;background:none;border:0!important;color:var(--text);padding:0}.menu-glyph{display:grid;gap:5px}.menu-glyph i{width:23px;height:1px;background:currentColor}.menu-glyph i:last-child{display:none}
.menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(560px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:80px 34px 30px;color:var(--text);background:#0e0b12;border:0;border-left:1px solid var(--line);overflow:auto}.menu::backdrop,.palette::backdrop{background:#000b;backdrop-filter:blur(7px)}.menu .close{position:absolute;right:28px;top:22px;padding:10px 16px;border:1px solid #82758b;color:var(--text);background:none;min-height:44px}.menu .inner{display:grid;margin-top:24px;padding:0}.menu .inner>a{font:500 30px/1.2 var(--sans);letter-spacing:-.04em;text-decoration:none;padding:10px 0;border-bottom:1px solid #302637}.menu .inner>a:hover{color:var(--violet)}.menu .inner>.sub{font-size:16px;margin-top:20px}.menu-search{background:none;color:var(--violet);border:0;padding:10px 0;min-height:44px}.menu .eyebrow{font-size:11px;letter-spacing:.12em}
.palette{position:fixed;inset:14vh 0 auto;margin:auto;width:min(720px,calc(100% - 32px));max-height:78vh;padding:0;border:1px solid #72647d;background:#100c16;color:var(--text);overflow:auto}.palette .box{padding:24px}.palette-close{float:right;border:0;color:var(--muted);background:none;min-height:44px}.palette input{width:100%;padding:14px 0;margin:5px 0 16px;background:none;border:0;border-bottom:1px solid var(--violet);color:var(--text);font-size:20px;border-radius:0}.palette ul{list-style:none;margin:0;padding:0}.palette li{padding:12px;border-left:2px solid transparent;cursor:pointer}.palette li[aria-selected=true]{border-color:var(--warm);background:#271b32}.palette li>span{display:block}.palette li>span:first-child{font-size:21px;letter-spacing:-.03em}.palette .k{color:var(--warm);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.palette .d{font-size:13px;color:var(--muted)}.palette .hint{display:flex;gap:16px;font-size:11px;color:var(--muted);margin-top:16px}
.ftr{display:block;max-width:none;width:auto;margin:0 var(--pad);padding:42px 0 24px;border-top:1px solid #56495f;color:var(--muted);font-size:13px}.ftr .top{display:flex;justify-content:space-between;gap:28px}.ftr .name{font-size:25px;font-weight:550;letter-spacing:-.045em;color:var(--text);margin-bottom:16px}.ftr .links{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:baseline}.ftr .top>div:first-child{max-width:78%}.ftr a{text-decoration:none}.ftr a:hover{text-decoration:underline}.ftr button{font:inherit;background:none;color:inherit;min-height:44px;border:0;padding:8px 0}.ftr .copy{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.ftr .kbd{margin-left:8px;font-size:11px}.ftr .footer-pages{display:flex;flex-wrap:wrap;gap:8px 24px;padding:22px 0;border-bottom:1px solid var(--line)}.footer-pages a{display:inline-flex;min-height:36px;align-items:center}.ftr .bottom{display:flex;justify-content:space-between;gap:16px;padding-top:20px;font-size:11px}.toggle i{display:inline-block;width:6px;height:6px;border-radius:100%;background:var(--violet);margin-right:8px}.toggle[aria-pressed=false] i{background:#777}.approved-page .fnotes{display:none}
/* Reading pages retain the audited data, citations, timeline and search controls. */
@media screen{
.record-page{background:#060508}.record-page .opening{padding-top:64px}.record-page .title{font-weight:550;letter-spacing:-.06em;line-height:1.02}.record-page .h2,.record-page .h3,.record-page .h4{font-weight:500;letter-spacing:-.04em}.record-page .lede{font-size:clamp(18px,1.6vw,23px);line-height:1.5}.record-page .eyebrow{color:var(--warm)}.record-page .sec{padding-block:70px}.record-page .opening .eyebrow{margin-bottom:20px}.record-page .program .work{gap:30px 60px}.record-page .program .item{padding-top:20px;border-top:1px solid #5e4256}.record-page .program .h4{font-size:26px}.record-page .program .d{font-size:16px;line-height:1.6}.record-page .pubhead{gap:6vw;padding-bottom:40px}.record-page .pubhead .title{font-size:clamp(36px,3.5vw,62px);line-height:1.08;max-width:25ch}.record-page .pubhead .paper{background:#130e19;border:0;border-left:1px solid #785b8b;padding:24px}.record-page .pubhead .authors{line-height:1.7}.record-page .findings li{max-width:68ch;font-size:20px}.record-page .cv-open .title{font-size:clamp(54px,6vw,94px)}.record-page .cv-open .lede{font-size:18px}.record-page .cv .entry .what{max-width:76ch}.record-page .cv .entry{padding-block:20px}.record-page .cv .cv-h{font-size:36px}.record-page .cv .entry .h4{font-size:23px}.record-page .cv .entry .b{font-size:16px;line-height:1.6}.record-page .about-open .tight{border:0;padding:0;border-radius:2px;overflow:hidden;max-width:390px}.record-page .about-open .tight img{filter:none;object-position:center 10%}.record-page .about-open .title{font-size:clamp(60px,6.5vw,100px)}.record-page .about-open .intro .lede{font-size:22px}.record-page .contact-end{min-height:65vh}.record-page .paper-obj .pt{font-weight:500;letter-spacing:-.045em}.record-page .paper-obj .no{font-size:32px;color:var(--warm)}.record-page .pubs .pub>.card>summary>.t{font-weight:500;letter-spacing:-.035em}.record-page .pubs .badge{color:var(--warm)}.record-page .pubs .full{border-color:#5e4256}.record-page .pubs .pub{border-color:#4b3b52}.record-page .teach-open .title{font-size:clamp(50px,6vw,88px)}
}
.reading-art{display:block;position:relative;overflow:hidden;margin:0;isolation:isolate}.reading-art img{display:block;width:100%;height:100%;object-fit:cover}.reading-art figcaption{position:absolute;left:22px;bottom:16px;font-size:10px;color:#e1d5e9;background:#060508c9;padding:3px 7px}.page-cover{height:clamp(180px,24vw,340px);margin:0 var(--pad);border-bottom:1px solid #543c60}.page-cover img{object-position:50% 48%}.page-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#060508ab,transparent 45%)}.study-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center;padding-block:50px}.study-lead h2{font-size:clamp(36px,4vw,64px);letter-spacing:-.055em;line-height:1.03;margin:12px 0 20px}.study-lead p{max-width:60ch;color:var(--muted);font-size:17px}.study-lead .reading-art{aspect-ratio:1.5}.study-lead .go{color:var(--warm)}
.evidence-notes{margin-top:24px;border-top:1px solid #624b6b;padding-top:18px;display:grid;gap:16px}.evidence-notes p{font-size:15px;line-height:1.6;color:#d9cedf}.evidence-notes b{display:block;color:var(--warm);font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}.source-rail{display:flex;flex-wrap:wrap;gap:10px 24px;padding:22px 0;color:var(--violet);font-size:14px}.source-rail a{padding:8px 0;min-height:44px}.case-takeaway{border-left:2px solid var(--warm);padding:8px 0 8px 24px;margin:28px 0;color:#dfd5e5;font-size:17px;max-width:70ch}.rubric-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.rubric-grid>div{padding-top:18px;border-top:1px solid #695077}.rubric-grid h3{font-size:22px;letter-spacing:-.04em;margin-bottom:10px}.rubric-grid p{font-size:15px;color:var(--muted)}.approved-page .instrumentBody .reading p{line-height:1.5}.approved-page .nextbar{margin-top:40px}.legacy-anchor{display:block;scroll-margin-top:24px}.record-page .nextbar{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid var(--line);padding:36px var(--pad);font-size:26px;letter-spacing:-.035em}.nextbar>span{font-size:12px;color:var(--muted);letter-spacing:0}.record-page .nextbar b{font-weight:500}
html[data-motion=off] *,html[data-motion=off] *::before,html[data-motion=off] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:760px){.hdr{height:53px;gap:16px}.hdr .mark{font-size:20px;letter-spacing:-.055em}.hdr .nav{gap:0}.hdr .nav a{font-size:14px}.hdr .nav a:not(:last-of-type){display:none}.hdr .menu-btn{min-width:23px}.menu .inner>a{font-size:27px}.ftr .top{display:block}.ftr .top>div:first-child{max-width:100%}.ftr .top>.links{margin-top:20px}.ftr .bottom{flex-wrap:wrap}.palette .box{padding:18px}.palette input{font-size:17px}.palette li>span:first-child{font-size:19px}.record-page .opening{padding-top:34px}.record-page .sec{padding-block:42px}.record-page .pubhead .title{font-size:36px}.record-page .pubhead .paper{border-left:0;border-top:1px solid #785b8b}.record-page .program .work{gap:28px}.record-page .about-open .title{font-size:58px}.record-page .about-open .intro .lede{font-size:19px}.record-page .about-open .tight{max-width:100%}.record-page .about-open .tight img{aspect-ratio:1.1;object-fit:cover;object-position:center 19%}.page-cover{margin:0;height:210px}.study-lead{grid-template-columns:1fr;gap:22px;padding-block:34px}.study-lead .reading-art{grid-row:1;aspect-ratio:1.8}.study-lead h2{font-size:40px}.rubric-grid{grid-template-columns:1fr}.record-page .nextbar{flex-wrap:wrap;font-size:24px}.record-page .nextbar>span{flex-basis:100%}.approved-page .instrumentBody .reading p{font-size:13px}}
@media(max-width:360px){.hdr .mark{font-size:18px}.hdr{gap:12px}.record-page .pubhead .title{font-size:31px}}
@media print{.hdr,.menu,.palette,.spine,.page-cover,.reading-art,.ftr,.nextbar,.chapterExhibit,.studyJump{display:none!important}:root{color-scheme:light}body{background:white!important;color:black!important}.record-page .title{font-family:Arial,sans-serif}.approved-page main{color:black;background:white;padding:0}.approved-page .chapterhero{min-height:0;display:block}.approved-page .chapterhero .art{display:none}.approved-page .chaptertext{padding:0;max-width:100%}.approved-page .chaptertext h1{font-size:28pt}.approved-page p{color:black}}
/* Contrast repairs at luminous intersections; placement and approved artwork stay fixed. */
.hero .pin{background:#08050bee;box-shadow:0 0 0 4px #08050bee}.hero .joint{background:#08050bf5!important;color:#fff!important}.approved-page .chaptertext .kicker{color:#ffd4a8;background:#08050bf0;padding:4px 7px;display:inline-block}
@media(max-width:700px){.approved-page .chapterhero:after{background:linear-gradient(0deg,#060508 0,#060508fa 29%,#060508c7 49%,#06050800 74%)}.approved-page .chaptertext h1{text-shadow:0 2px 18px #000,0 0 3px #000}.approved-page .chaptertext .deck{color:#e4dce8}}
.approved-page .rm{display:inline-grid;place-items:center;margin-left:9px;vertical-align:middle;min-width:32px;min-height:32px;border:1px solid #766283;background:none;color:var(--violet)}.approved-page .rm svg{width:15px;height:15px}.approved-page .receipt{position:fixed;inset:auto;margin:0;padding:20px;width:min(360px,calc(100vw - 32px));background:#1b1222;color:#f8f5fc;border:1px solid #9674a9;box-shadow:0 10px 40px #000b;font-size:14px}.approved-page .receipt .t,.approved-page .receipt .m,.approved-page .receipt .k{display:block;margin-bottom:8px}.approved-page .receipt .t{font-size:20px;font-weight:500;letter-spacing:-.025em}.approved-page .receipt .m{font-size:12px;color:var(--muted)}.approved-page .receipt a{color:var(--violet)}
/* Preserve the opening at the target sizes; keep the work link in view on wide, short windows. */
@media(min-width:1500px) and (max-height:900px){.hero h1{font-size:min(clamp(80px,8.45vw,173px),calc((100svh - 270px)/3.6))}}
/* The dark screen palette must never leak through inherited variables into the white print CV. */
@media print{:root{--text:#000;--muted:#222;--subtle:#222;--cream:#000;--violet:#222;--orange:#222;--warm:#222;--fog:#222;--ink:#000;--s-med:#222;--s-law:#222;--s-ai:#222;--strand:#222}body,main{color:#000!important;background:#fff!important}}
.legacy-anchor{position:absolute;width:0;height:0;pointer-events:none}
@media(max-width:760px){.hero h1{margin-bottom:24px}}
@media(max-width:760px){.hero h1{margin-top:.38em}}
@media(min-width:761px) and (max-width:1120px){.hero h1{letter-spacing:-.055em}}
/* Keep the longer published-series annotation inside the phone's illustration. */
@media(max-width:760px){.instrument.medicine[data-selection="2"] .caseIndicator span{left:auto;right:-24px;width:52vw;max-width:190px;white-space:normal}}
