:root{--paper:#f4f6f1;--ink:#163e38;--teal:#087f70;--muted:#536b64;--line:#cedbd2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 Arial,Helvetica,sans-serif}.shell{width:min(1160px,calc(100% - 96px));margin:auto}a{color:inherit;text-underline-offset:6px;text-decoration-thickness:1px}a:hover{color:var(--teal)}a:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:6px}.skip{position:absolute;top:-100px;background:white;padding:12px}.skip:focus{top:0;z-index:5}header{min-height:102px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.wordmark{font:bold 29px/1 Arial;text-decoration:none;letter-spacing:-2px}.wordmark span,h1 span{color:var(--teal)}.edition,.eyebrow,.index-label{font-size:11px;letter-spacing:1.6px}.edition{color:var(--muted)}.top-link{margin-left:auto;font-size:14px;text-decoration:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:76px 0 68px}.eyebrow{color:var(--teal);font-weight:600;margin:0 0 20px}h1{font:normal clamp(88px,10vw,144px)/.94 Georgia,'Times New Roman',serif;letter-spacing:-7px;margin:0}.hero-note{padding-top:18px}.hero-note>p{font:normal clamp(25px,2.6vw,36px)/1.35 Georgia,serif;margin:0 0 20px}.hero-note em{color:var(--teal);font-weight:normal}.hero-note>span{font-size:15px;color:var(--muted)}.index-label{display:flex;justify-content:space-between;color:var(--muted);padding:0 0 18px}.index-label span:last-child{letter-spacing:0;font-size:13px}.chapters{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:26px;cursor:pointer;list-style:none;padding:27px 0;min-height:99px}summary::-webkit-details-marker{display:none}summary .number{font-size:12px;color:var(--teal);width:35px;font-variant-numeric:tabular-nums}h2{font:normal clamp(26px,3vw,38px)/1.2 Georgia,serif;letter-spacing:-.7px;margin:0;transition:color .2s}summary:hover h2{color:var(--teal)}.hint{font-size:14px;color:var(--muted);margin-left:auto}.toggle{font:normal 28px/1 Arial;color:var(--teal);width:26px;text-align:center;transition:transform .2s}details[open] .toggle{transform:rotate(45deg)}details[open] summary{padding-bottom:25px}.chapter-body{padding:8px 0 48px 61px}.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:54px}.statement{font:normal 29px/1.45 Georgia,serif;margin:0 0 24px}.chapter-body p:not(.statement):not(.eyebrow){color:var(--muted);margin:0 0 20px}.links{display:flex;flex-wrap:wrap;gap:12px 26px}.chapter-body a{font-size:15px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.image-link{display:block;overflow:hidden;background:#e2ebe5;margin-bottom:22px}.image-link img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .35s}.image-link:hover img{transform:scale(1.025)}h3{font:normal 28px/1.3 Georgia,serif;margin:0 0 14px}h3 span{font:14px Arial;color:var(--muted);display:block;margin-top:6px}.project-grid .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:12px}.classroom-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.editorial-note{max-width:620px}footer{padding:44px 0 32px}footer>p{font:normal 24px Georgia,serif;margin:0 0 24px}footer>div{display:flex;flex-wrap:wrap;gap:16px 30px;font-size:13px;color:var(--muted)}footer>div>span{margin-right:auto}
@media(max-width:760px){.shell{width:calc(100% - 40px)}header{min-height:80px;gap:18px}.edition{display:none}.hero{padding:46px 0;gap:28px;grid-template-columns:1fr}.hero-note{padding:0}.hero-note>p{font-size:29px}.hero-note>span{font-size:15px}h1{font-size:100px;letter-spacing:-5px}.hero .eyebrow{font-size:10px}.hint{display:none}summary{gap:12px;padding:24px 0;min-height:90px}summary .number{width:25px}.toggle{margin-left:auto}h2{font-size:29px}.chapter-body{padding:4px 0 32px 0}.about-grid,.project-grid,.classroom-grid{grid-template-columns:1fr;gap:24px}.statement{font-size:26px}.index-label{font-size:10px}.index-label span:last-child{font-size:12px}footer>div>span{width:100%}}
.hero-with-portrait{grid-template-columns:1.35fr .8fr;gap:70px;padding-block:48px}.hero-with-portrait .hero-note{padding-top:30px}.portrait{margin:0;width:100%;max-width:340px;justify-self:end}.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%;border-radius:3px}
@media(max-width:760px){.hero-with-portrait{grid-template-columns:1fr auto;gap:18px;padding-block:36px}.hero-with-portrait h1{font-size:76px}.portrait{width:125px;align-self:start;margin-top:28px}.hero-with-portrait .hero-note{padding-top:24px}.hero-with-portrait .hero-note>p{font-size:24px}.hero-with-portrait .eyebrow{max-width:190px}.hero-with-portrait .hero-note>span{font-size:14px}.hero-copy{min-width:0}}
.hero-with-portrait .eyebrow{font-size:16px;letter-spacing:1.2px;line-height:1.65;max-width:none}
@media(max-width:760px){.hero-with-portrait .eyebrow{font-size:15px;letter-spacing:1px}}
@media(max-width:400px){.hero-with-portrait{grid-template-columns:1fr}.portrait{grid-row:1;width:100px;margin:0;justify-self:start}.hero-with-portrait h1{font-size:86px}}
.workshop-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:28px 0 32px}.workshop-topics article{border-top:1px solid var(--line);padding-top:20px}.workshop-topics h3{font-size:23px}.workshop-topics .eyebrow{font-size:10px;letter-spacing:1px}.chapter-body .workshop-note{font-size:13px;margin-top:18px}
@media(max-width:760px){.workshop-topics{grid-template-columns:1fr;gap:16px}#workshops h2{font-size:clamp(20px,5vw,29px)}}
.brand-slogan{color:var(--teal);font-style:italic;line-height:1.35}.contact-section{padding:38px 0;border-bottom:1px solid var(--line);max-width:760px}.contact-section h2{margin-bottom:16px}.contact-section p{color:var(--muted);margin:0 0 12px}.contact-section p:last-child{margin-bottom:0}
.cv-entry{border-top:1px solid var(--line);padding-top:22px;margin-top:24px;margin-bottom:24px}.cv-entry h3{margin-bottom:12px}.cv-entry .eyebrow{margin-bottom:12px}
.speech-video{position:relative;width:100%;max-width:900px;aspect-ratio:16/9;background:#e2ebe5;margin:22px 0}.speech-video iframe{display:block;width:100%;height:100%;border:0}
.teacher-guide{margin:0 0 40px 61px;padding:28px;border:1px solid var(--line);background:#edf2ec;display:grid;grid-template-columns:minmax(140px,210px) 1fr;gap:32px;align-items:start}.guide-cover{display:block}.guide-cover img{display:block;width:100%;height:auto}.teacher-guide h3{margin-bottom:14px}.teacher-guide p{margin:0 0 16px}.teacher-guide .eyebrow{color:var(--teal)}.guide-routine{padding-left:22px;margin:20px 0 24px}.guide-routine li{padding:4px 0}.teacher-guide .links{gap:14px 24px}
@media(max-width:760px){.teacher-guide{margin-left:0;padding:22px;grid-template-columns:1fr;gap:24px}.guide-cover{max-width:170px}}
/* One type family across the homepage; hierarchy comes from size and weight. */
:root{--font:"Times New Roman","Songti SC",SimSun,serif}
body,h1,h2,h3,h3 span,.wordmark,.hero-note>p,.statement,.toggle,footer>p{font-family:var(--font)}
h1{font-weight:600;letter-spacing:-.055em;line-height:1.05}h2,h3{font-weight:500;letter-spacing:-.025em}.statement{font-weight:400;letter-spacing:-.015em}footer>p{font-weight:400}.hero-with-portrait h1{letter-spacing:-.055em}
.section-nav{display:flex;flex-wrap:nowrap;gap:28px;padding:0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.section-nav a{display:flex;flex:0 0 auto;align-items:center;min-height:58px;padding:12px 0;border:0;border-bottom:2px solid transparent;text-decoration:none;background:transparent;white-space:nowrap}.section-nav a:hover,.section-nav a:focus-visible,.section-nav a[aria-current="location"]{color:var(--teal);border-bottom-color:var(--teal)}
body,body *{font-family:var(--font);font-size:14pt!important;letter-spacing:normal!important}body{line-height:1.65}h1,h2,h3{font-weight:700}.hero-with-portrait h1{line-height:1.4}.hero-with-portrait .eyebrow{font-weight:700}.hero-with-portrait{padding-block:32px}.section-nav{scroll-margin-top:16px}details{scroll-margin-top:24px}
@media(max-width:760px){.section-nav{display:flex;gap:24px;margin-right:-20px;padding-right:20px}.section-nav a{padding:12px 0}.hero-with-portrait .eyebrow{max-width:none}.hint{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.shell{width:100%}.skip,.top-link,.toggle{display:none}.hero{padding:24px 0}h1{font-size:60px}.chapter-body{display:block!important}.hint{display:none}body{background:white}}
