@font-face{font-family:TanayHand;src:url('assets/TanayHand-Regular.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{background:#faf9f6;color:#292825;font-family:Helvetica,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}body{margin:0}body:has(dialog[open]){overflow:hidden}::selection{background:#d5edef}a{color:inherit;text-decoration-color:#bdb9af;text-underline-offset:4px}a:hover{color:var(--accent);text-decoration-color:currentColor}:root{--accent:#007f8b;--muted:#78746c;--rule:#e3e0d8}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.shell{max-width:680px;margin:0 auto;padding:0 28px}.shell.wide{max-width:900px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:49px 0 0;font-size:13px}.name{font-size:15px;font-weight:600;text-decoration:none;letter-spacing:-.25px}nav{display:flex;gap:23px}nav a{text-decoration:none;color:var(--muted);padding:8px 0}nav a[aria-current]{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}main{padding-top:70px}h1,h2,p{margin:0}h1{font-size:27px;line-height:1.4;font-weight:400;letter-spacing:-.7px}h2{font-size:16px;font-weight:600;letter-spacing:-.2px;margin-bottom:20px}p,li,dd{font-size:15px;line-height:1.75}section+section{margin-top:47px}.portrait{display:block;width:192px;height:192px;object-fit:contain;margin-bottom:31px}.intro h1{max-width:560px;margin-bottom:14px}.intro p{line-height:1.8}.accent{color:var(--accent)}.muted{color:var(--muted)}ul{margin:0;padding-left:17px}li{padding-left:4px;margin-bottom:15px}li:last-child{margin-bottom:0}li::marker{color:#a5a093;font-size:9px}.truths li{margin-bottom:19px}.paths{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-top:25px;margin-top:50px;font-size:14px}.paths a{text-decoration:none}.paths span{color:var(--accent);margin-left:9px}.hand{font-family:TanayHand,cursive;font-weight:400}footer{border-top:1px solid var(--rule);margin-top:75px;padding:23px 0 33px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}footer a{text-decoration:none}footer .hand{color:var(--accent);font-size:22px;transform:rotate(-4deg)}.page-intro{margin-bottom:48px}.page-intro h1{font-size:32px;line-height:1.2;margin-bottom:12px}.page-intro p{font-size:14px}.subline{display:block;color:var(--muted);font-size:12px;margin-top:5px}.writing-list li{padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--rule);margin:0}.writing-list{list-style:none;padding:0}.writing-list li:first-child{padding-top:0}.writing-list li:last-child{border-bottom:0}.section-heading{display:flex;align-items:baseline;justify-content:space-between}.section-heading h2{margin-bottom:8px}.section-heading .hand{font-size:24px;color:var(--accent);transform:rotate(-5deg)}.library-description{font-size:13px;color:var(--muted);margin-bottom:34px}.books{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:33px;row-gap:40px}.book{background:none;padding:0;border:0;cursor:pointer;text-align:left;display:flex;flex-direction:column;min-width:0}.jacket{display:block;position:relative;width:100%;aspect-ratio:2/3;background:var(--cover);box-shadow:1px 2px 5px #25231e20,4px 5px 0 -2px #ece8de,5px 6px 0 -2px #c7c3b8;transition:transform .24s,box-shadow .24s;transform-origin:left bottom;overflow:hidden}.jacket::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0003,transparent 3%,#fff3 4%,transparent 7%,transparent 97%,#0001);pointer-events:none}.jacket img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.jacket img[hidden]{display:none}.fallback-title{position:absolute;inset:0;padding:20% 13%;display:flex;flex-direction:column;justify-content:space-between;font-family:Georgia,serif;font-size:23px;line-height:1.18;color:#fff8e8}.fallback-title small{font-family:Helvetica,Arial,sans-serif;font-size:10px;line-height:1.5}.book-title{display:block;font-size:12px;line-height:1.4;margin-top:15px}.book-author{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:4px}.book:hover .jacket,.book:focus-visible .jacket{transform:translateY(-6px) rotate(-1deg);box-shadow:2px 9px 12px #25231e25}.reading-width{max-width:624px;margin-top:68px}.reading-width section+section{margin-top:42px}.music{margin:0}.music dt{font-size:13px;font-weight:600;margin-top:24px;margin-bottom:6px}.music dd{margin:0}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:#fff;z-index:10}.skip:focus{top:10px}dialog{padding:0;border:0;background:transparent;color:#292825;width:min(870px,calc(100% - 40px));max-height:calc(100dvh - 40px);overflow:auto}dialog::backdrop{background:#27251f87;backdrop-filter:blur(5px)}.reader-toolbar{display:flex;justify-content:space-between;align-items:center;color:#fff;gap:20px;margin-bottom:19px;font-size:13px}.reader-toolbar button,.reader-footer button{border:0;padding:9px 0;background:none;cursor:pointer;color:inherit;font-size:12px;min-height:36px}.reader-toolbar button span{margin-left:12px;font-size:20px}.spread{display:grid;grid-template-columns:1fr 1fr;min-height:470px;perspective:1500px;filter:drop-shadow(0 15px 18px #0003)}.paper{margin:0;position:relative;padding:45px 39px;background:#f7f3e8}.note-page{background:linear-gradient(90deg,#f8f4eb 92%,#e2dcca 100%);border-radius:3px 0 0 3px;display:flex;flex-direction:column;min-height:470px}.note-label{text-transform:uppercase;font-size:9px;letter-spacing:1.3px;color:#969084}.inscription{font-size:36px;line-height:1.5;color:#424d6c;margin-top:63px;transform:rotate(-3deg);white-space:pre-wrap}.signature{color:#424d6c;font-size:30px;margin-top:30px;align-self:flex-end;transform:rotate(-5deg)}.note-status{font-size:10px;color:#8a8479;margin-top:auto;padding-top:35px}.stamp-page{background:linear-gradient(90deg,#e7e1d3,#f8f4eb 7%);border-radius:0 3px 3px 0;display:flex;align-items:center;justify-content:center;flex-direction:column}.stamp-page svg{width:165px;color:var(--accent);opacity:.83;transform:rotate(7deg)}.stamp-caption{font-size:10px;line-height:1.7;text-align:center;color:#948d80;margin-top:27px}.reader-footer{display:flex;justify-content:space-between;align-items:center;color:#fff;margin-top:15px;font-size:11px}.reader-footer button:disabled{opacity:.35;cursor:default}dialog[open] .spread{animation:open-book .45s ease-out}@keyframes open-book{from{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:none}}@media(min-width:1100px){.shell{transform:translateX(-18px)}}@media(max-width:650px){.shell,.shell.wide{padding:0 24px}header{padding-top:26px;gap:18px}nav{gap:16px;font-size:12px}.name{font-size:14px}main{padding-top:49px}h1{font-size:25px}.portrait{width:168px;height:168px;margin-bottom:27px}p,li,dd{font-size:14px}section+section{margin-top:39px}.paths{font-size:12px;gap:15px}.paths span{margin-left:3px}.books{column-gap:23px;row-gap:31px;grid-template-columns:repeat(3,minmax(0,1fr))}.fallback-title{font-size:18px}.book-title{font-size:11px}.book-author{font-size:9px}.page-intro{margin-bottom:36px}.page-intro h1{font-size:29px}.library-description{font-size:12px;max-width:260px}.paper{padding:25px 20px}.spread,.note-page{min-height:365px}.inscription{font-size:27px;margin-top:45px}.signature{font-size:26px}.stamp-page svg{width:130px;max-width:100%}.stamp-caption{font-size:9px}.note-label{font-size:8px}.note-status{font-size:9px}dialog{width:calc(100% - 24px)}.reader-toolbar{font-size:12px}.reader-toolbar span{max-width:75%}footer{margin-top:60px}}@media(max-width:390px){.shell,.shell.wide{padding:0 20px}nav{gap:12px}.name{font-size:13px}.books{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.paths{flex-direction:column;gap:17px}.paper{padding:23px 14px}.inscription{font-size:25px}.stamp-page svg{width:110px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* A quiet two-column reading layout. */
.shell,.shell.wide{max-width:1080px;padding:0 40px;transform:none}
header{padding-top:42px;gap:32px}
.name{font-family:TanayHand,cursive;font-size:30px;font-weight:400;letter-spacing:0;line-height:1.2}
nav{gap:25px;font-size:13px}
.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:66px;align-items:start;margin-top:66px}
.photo-panel{position:sticky;top:48px}
.portrait{width:240px;height:240px;margin:0;display:block}
.content-column{min-width:0}
main{padding-top:0}
h1.bio-line,.intro p{font-size:16px;line-height:1.75;font-weight:400;letter-spacing:0;max-width:none;margin:0;text-wrap:pretty}
.intro p{margin-top:0}
p,li,dd{font-size:15px;line-height:1.7;text-wrap:pretty}
h2{font-size:15px;line-height:1.5;margin-bottom:16px}
section+section{margin-top:36px}
li,.truths li{margin-bottom:14px;padding-left:3px}
ul{padding-left:15px}
.paths{margin-top:37px;padding-top:21px}
footer{margin-top:52px;padding-top:20px}
.page-intro{margin-bottom:35px}
.page-intro h1{font-size:24px;font-weight:400;letter-spacing:-.4px}
.books{column-gap:25px;row-gap:33px;grid-template-columns:repeat(3,minmax(0,1fr))}
.book-title{text-wrap:pretty}
.book-author{text-wrap:pretty}
.reading-width{margin-top:48px}
.reading-width section+section{margin-top:36px}
.library-description{margin-bottom:28px}
.term{padding:0;border:0;border-bottom:1px dotted currentColor;background:none;cursor:help;font:inherit;color:var(--accent);line-height:1.2;white-space:nowrap}
.definition{position:fixed;z-index:20;width:300px;max-width:calc(100vw - 32px);padding:16px 18px;background:#fffefa;border:1px solid #d9ddd9;box-shadow:0 6px 20px #25231e12;color:#454641;font-size:13px;line-height:1.6;white-space:normal}
.definition[hidden]{display:none}
.definition a{display:inline-block;margin-top:8px;color:var(--accent);font-size:11px}
.definition p{font-size:13px;line-height:1.6}
.fallback-title{font-size:20px}
@media(max-width:900px){
 .shell,.shell.wide{padding:0 30px}
 .layout{grid-template-columns:190px minmax(0,1fr);gap:42px;margin-top:51px}
 .portrait{width:190px;height:190px}
 .books{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .shell,.shell.wide{padding:0 24px}
 header{padding-top:26px;gap:16px;align-items:center}
 .name{font-size:25px;white-space:nowrap}
 nav{gap:15px;font-size:12px}
 .layout{display:block;margin-top:42px}
 .photo-panel{position:static;margin-bottom:28px}
 .portrait{width:180px;height:180px}
 h1.bio-line,.intro p{font-size:15px;line-height:1.7}
 p,li,dd{font-size:14px;line-height:1.7}
 section+section{margin-top:31px}
 h2{font-size:14px}
 .page-intro h1{font-size:23px}
 .paths{font-size:12px}
 .books{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px}
 footer{margin-top:43px}
}
@media(max-width:420px){
 .shell,.shell.wide{padding:0 20px}
 .name{font-size:24px}
 nav{gap:12px;font-size:11px}
 .books{grid-template-columns:repeat(2,minmax(0,1fr))}
 .paths{flex-direction:column;gap:16px}
}
/* Keep short statements from ending in isolated words. */
li,.intro p{text-wrap:balance}

/* Penn navy for definitions and links; red for small marks. */
.name{display:block;line-height:0}
.name img{display:block;width:140px;height:auto}
.hand{font-feature-settings:"calt" 1,"dlig" 1;font-synthesis:none}
.portrait{height:auto;aspect-ratio:4/3}
nav a[aria-current]{color:var(--accent);text-decoration-color:var(--accent)}
.paths span,.section-heading .hand,footer .hand,.stamp-page svg{color:var(--accent)}
.term{border-bottom-color:var(--accent)}
.photos-space{height:175px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.inscription{margin-top:46px}
@media(max-width:700px){
 .name img{width:114px}
 .photos-space{height:140px}
 .inscription{margin-top:40px}
}
@media(max-width:360px){
 header{align-items:flex-start;flex-direction:column;gap:12px}
 nav{gap:19px}
}


/* Turquoise ink and a text-only bookshelf. */
a{text-decoration-color:var(--accent)}
nav a[aria-current],.term{color:var(--accent)}
.book-list{list-style:none;padding:0}
.book-list li{padding:0;margin-bottom:10px}
.book-list a{font-size:15px;text-decoration:none;line-height:1.7}

.coming-soon{font-size:12px;color:var(--muted)}
.back-to-books{display:inline-block;font-size:12px;margin-bottom:26px}
.book-heading{margin-bottom:25px}
.book-heading h1{font-size:20px;line-height:1.4;font-weight:400;letter-spacing:-.3px;text-wrap:pretty}
.book-heading p{font-size:12px;margin-top:7px}
.inscription-sheet{position:relative;background:#f7f3e8;border:1px solid #e7e0d2;box-shadow:0 4px 14px #25231e09;min-height:490px;padding:49px 42px 170px}
.inscription-sheet .inscription{margin-top:0;color:var(--accent);font-size:34px;line-height:1.65}
.inscription-sheet .signature{display:block;font-size:28px;color:var(--accent);margin-top:28px;max-width:190px;text-align:right}
.page-stamp{position:absolute;bottom:28px;right:30px;width:120px;color:var(--accent);opacity:.78;transform:rotate(-7deg)}
.page-stamp svg{display:block;width:100%;height:auto}
@media(max-width:700px){
 .book-list a{font-size:14px}
 .inscription-sheet{min-height:440px;padding:35px 29px 155px}
 .inscription-sheet .inscription{font-size:29px}
 .page-stamp{width:105px;right:22px;bottom:24px}
}

.definition-title{display:block;font-size:13px;font-weight:600;margin-bottom:5px}
.book-list{margin-top:19px}
.book-list li{margin-bottom:10px}
.book-list .shelf-link{display:flex;align-items:baseline;gap:20px;text-decoration:none}
.shelf-details{min-width:0;text-wrap:pretty}
.shelf-author{font-size:12px;color:var(--muted);line-height:1.65}
.shelf-review{margin-left:auto;color:var(--accent);font-size:11px;white-space:nowrap}
.book-list .shelf-link:hover,.book-list .shelf-link:focus-visible{text-decoration:none}
.shelf-link:hover .shelf-review,.shelf-link:focus-visible .shelf-review{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){
 .book-list .shelf-link{gap:12px}
 .shelf-author{font-size:11px}
 .shelf-review{font-size:10px}
}
.shelf-author{white-space:nowrap}

.cognition-name{white-space:nowrap}
/* The supplied image has 465px of ink in a 512px canvas, with 24px below. */
.cognition-mark{width:1.38cap;height:1.38cap;object-fit:contain;vertical-align:-.19cap;margin-left:.14em}

/* Engraved library seal: lettering outlined from IM FELL English SC. */
.page-stamp{width:148px;opacity:.86;mix-blend-mode:multiply}
@media(max-width:700px){.page-stamp{width:125px}}

.paths .link-arrow{display:inline-block;vertical-align:-1px;margin-left:9px;color:var(--accent)}

/* Collected artworks, with complete images and discreet source captions. */
.art-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:29px 25px;margin-top:28px}
.artwork{margin:0;min-width:0}
.art-image{display:flex;align-items:flex-end;height:255px}
.art-image img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.artwork figcaption{margin-top:12px;font-size:12px;line-height:1.5}
.art-title{display:block}
.art-credit{display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:5px}
.art-credit a{text-decoration-color:#bdb9af}
@media(max-width:700px){.art-gallery{gap:25px 19px}.art-image{height:210px}.artwork figcaption{font-size:11px}.art-credit{font-size:9px}}
@media(max-width:420px){.art-gallery{grid-template-columns:1fr;gap:30px}.art-image{height:auto;max-height:360px}.art-image img{max-height:360px}.artwork figcaption{font-size:12px}.art-credit{font-size:10px}}

/* Consistent rhythm for the separate personal statements. */
.truths li{text-wrap:pretty;margin-bottom:18px}
.truths li:last-child{margin-bottom:0}

/* Quiet contact links, shared by every page. */
footer{flex-wrap:wrap;row-gap:15px}
footer .contact-links{flex-basis:100%;display:flex;flex-wrap:wrap;gap:19px;font-size:11px;line-height:1.5}
footer .contact-links a{padding:5px 0;color:var(--muted);text-decoration:none}
footer .contact-links a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
