:root{--paper:#fafaf8;--ink:#3e3a36;--muted:#736d66;--accent:#9a8774;--soft:#eeeae4;--line:#dfdad3;--white:#fff;--radius:28px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.05;letter-spacing:-.055em}h1{font-size:clamp(54px,6.7vw,94px)}h2{font-size:clamp(34px,4vw,56px)}h3{font-size:26px;letter-spacing:-.035em}p{color:var(--muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.wrap{max-width:var(--max);margin-inline:auto;width:calc(100% - 80px)}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,250,248,.94);backdrop-filter:blur(20px);border-bottom:1px solid rgba(62,58,54,.08)}.nav-wrap{width:calc(100% - 80px);max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:30px}.brand{width:190px;flex-shrink:0}.brand img{width:100%;height:auto}#main-nav{display:flex;gap:28px;font-size:13px;font-weight:500;align-items:center}#main-nav a{padding:12px 0;color:var(--muted)}#main-nav a:hover,#main-nav [aria-current]{color:var(--ink)}#main-nav [aria-current]{box-shadow:0 1px var(--ink)}.menu-button{display:none}.skip{position:fixed;top:-100px;left:20px;z-index:50;background:white;padding:15px}.skip:focus{top:8px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:24px}.page-intro{padding-block:90px 65px}.lead{font-size:clamp(19px,2vw,25px);line-height:1.5;letter-spacing:-.025em;margin-top:28px;max-width:760px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;background:var(--ink);color:#fff;padding:14px 24px;border-radius:999px;font-size:14px;font-weight:500;transition:background .2s,transform .2s;min-height:48px}.button:hover{background:#5a5048;transform:translateY(-2px)}.button.secondary{color:var(--ink);background:transparent;box-shadow:inset 0 0 0 1px #c8bfb5}.button.secondary:hover{background:var(--soft)}.text-link{font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:5px}.section{padding-block:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:38px}.section-heading>p{max-width:420px;font-size:17px}.section-heading .eyebrow{margin-bottom:15px}.feature-work .landscape{height:590px;display:block;border-radius:var(--radius);overflow:hidden;background:#28231f;position:relative}.landscape img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.landscape:hover img{transform:scale(1.025)}.feature-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;align-items:start;padding:44px;color:#fff;background:linear-gradient(transparent 35%,rgba(0,0,0,.65))}.feature-overlay .eyebrow{color:#e9e1d8}.feature-title{font-size:clamp(38px,5vw,66px);letter-spacing:-.055em;font-weight:600;line-height:1.1}.watch{display:flex;align-items:center;gap:18px;margin-top:20px;font-size:14px}.circle-play{width:38px;height:38px;border-radius:50%;border:1px solid #fff8;display:grid;place-items:center;font-size:12px}.work-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px}.video-link{display:block;position:relative;overflow:hidden;border-radius:var(--radius);background:#e7e2db}.work-pair .video-link{height:490px}.video-link>img{width:100%;height:100%;object-fit:cover}.play{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#ffffffeb;color:var(--ink);font-size:16px;transition:transform .2s}.video-link:hover .play{transform:scale(1.1)}.work-caption{padding:22px 3px 0}.work-caption p{margin-top:10px;font-size:16px}.archive-section{background:var(--soft);padding:54px 0}.archive>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer}.archive>summary::-webkit-details-marker{display:none}.archive .eyebrow{margin-bottom:12px}.summary-title{font-size:clamp(28px,3.5vw,44px);font-weight:600;letter-spacing:-.045em;line-height:1.2}.summary-action{font-size:14px;display:flex;gap:28px;align-items:center}.summary-action>span{font-size:32px}.video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px 22px;padding-top:48px}.video-grid .video-link{aspect-ratio:3/4;border-radius:18px}.video-grid h3{font-size:18px;line-height:1.2;letter-spacing:-.02em}.video-grid .work-caption{padding-top:14px}.video-grid .play{width:40px;height:40px;right:14px;bottom:14px}.contact-band{text-align:center;padding-block:105px}.contact-band p:not(.eyebrow){font-size:19px;margin-top:24px}.contact-band .button{margin-top:28px}.site-footer{padding-block:48px 24px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:35px;font-size:13px}.footer-name{font-size:20px;font-weight:600;letter-spacing:-.03em}.site-footer p{margin-block:5px 18px}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:14px}.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;display:flex;gap:24px;color:var(--muted);font-size:12px}.footer-bottom span{margin-right:auto}.training-strip{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px;height:395px}.training-strip img{height:100%;width:100%;object-fit:cover;border-radius:22px}.jump-links{display:flex;gap:34px;padding-block:30px;border-bottom:1px solid var(--line);font-size:13px;flex-wrap:wrap}.jump-links a:hover{text-decoration:underline;text-underline-offset:6px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:start}.course{background:white;border-radius:24px;overflow:hidden}.course>img{width:100%;height:240px;object-fit:cover;object-position:center 45%}.course-body{padding:26px}.course h3{font-size:26px;line-height:1.14;min-height:60px}.course p{font-size:15px;margin-top:18px;line-height:1.6}.course summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding-top:24px;font-size:14px;font-weight:500;gap:16px}.course summary::-webkit-details-marker{display:none}.course summary span{font-size:24px}.course details[open] summary span{transform:rotate(45deg)}.course details .text-link{display:inline-block;margin-top:20px}.soft-section{background:var(--soft);padding-block:85px}.editorial-split{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:90px}.editorial-split>div>p:not(.eyebrow){font-size:18px;margin-top:28px}.editorial-split>img{width:100%;height:620px;object-fit:cover;border-radius:24px}.service-list{margin-top:30px}.service-list a{display:flex;justify-content:space-between;gap:18px;padding-block:20px;border-bottom:1px solid #d3cbc1;font-size:16px}.service-list a:hover{color:#806950}.family-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.family-card img{width:100%;height:280px;object-fit:cover;border-radius:22px}.family-card h3{font-size:20px;line-height:1.2;letter-spacing:-.025em;display:flex;justify-content:space-between;gap:12px;padding-top:20px}.mini-brochure{padding:40px 48px;background:var(--soft);border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:40px}.mini-brochure h2{font-size:40px}.mini-brochure p:not(.eyebrow){margin-top:15px}.compact{padding-bottom:50px}.publication{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.cover-stage{background:var(--soft);border-radius:28px;padding:50px;display:grid;place-items:center;min-height:560px}.cover-stage img{width:100%;height:auto;box-shadow:0 18px 40px #3e3a361b;transition:transform .4s}.cover-stage:hover img{transform:translateY(-5px)}.badge{display:inline-block;font-size:11px;font-weight:600;color:#655542;border:1px solid #c3b29d;border-radius:999px;padding:7px 12px;margin-bottom:28px}.publication h2{font-size:clamp(48px,5vw,70px)}.publication-subtitle{font-size:24px;line-height:1.4;margin-top:20px;letter-spacing:-.035em}.publication-copy>p:not(.publication-subtitle){margin-top:20px}.publication-copy .file-info{font-size:12px;color:var(--muted)}.contents{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.contents-links a{display:flex;align-items:center;gap:22px;padding:26px 0;border-bottom:1px solid var(--line)}.contents-links a:first-child{padding-top:0}.number{font-size:12px;color:var(--muted);letter-spacing:.1em}.contents-links strong{display:block;font-size:20px;font-weight:500;letter-spacing:-.025em}.contents-links small{display:block;font-size:14px;color:var(--muted);margin-top:5px}.contents-links a>span:last-child{margin-left:auto}.old-publication{display:grid;grid-template-columns:180px 1fr;gap:60px;align-items:center}.old-publication>img{border-radius:12px;width:180px;height:auto}.old-publication h2{font-size:34px}.old-publication p:not(.eyebrow){margin-top:14px}.old-publication .eyebrow{margin-bottom:14px}.profile-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;padding-block:85px 30px}.profile-hero h1{font-size:clamp(48px,6vw,84px)}.profile-hero .lead{font-size:22px}.profile-hero .button{margin-top:30px}.portrait{border-radius:28px;overflow:hidden;aspect-ratio:4/5;background:var(--soft)}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center}.profile-story{display:grid;grid-template-columns:1fr 1fr;gap:65px}.profile-story h2{font-size:40px;line-height:1.13}.story-copy p{font-size:17px;margin-bottom:22px}.story-copy .large-copy{font-size:24px;line-height:1.48;color:var(--ink);letter-spacing:-.025em}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.principles h3{margin-block:26px 18px;font-size:30px}.principles p{font-size:17px}.profile-links{display:grid;grid-template-columns:1fr 1fr;gap:65px}.profile-links .service-list{margin:0}.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}dialog{width:min(960px,94vw);max-height:92vh;padding:20px;border:0;border-radius:22px;background:#191816;color:white}dialog::backdrop{background:#151310ce;backdrop-filter:blur(8px)}.dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:16px}.dialog-bar h2{font-size:22px;letter-spacing:-.03em}.close-video{background:#ffffff15;color:#fff;border:1px solid #ffffff40;border-radius:999px;padding:9px 18px;cursor:pointer}dialog video{display:block;width:100%;max-height:75vh;background:#000}details[open]>.summary-action span{transform:rotate(45deg)}
@media(min-width:1600px){.feature-work .landscape{height:660px}}
@media(max-width:1000px){#main-nav{gap:18px}.brand{width:165px}.editorial-split{gap:40px}.course-grid{grid-template-columns:repeat(2,1fr)}.family-grid{grid-template-columns:repeat(2,1fr)}.publication{gap:40px}.cover-stage{padding:30px;min-height:440px}.profile-hero{gap:30px}.principles{gap:26px}.work-pair .video-link{height:420px}}
@media(max-width:760px){.wrap,.nav-wrap{width:calc(100% - 40px)}.nav-wrap{min-height:74px;flex-wrap:wrap;gap:0;padding-block:12px}.brand{width:158px}.menu-button:not([hidden]){display:flex;gap:16px;background:transparent;border:0;padding:12px 0 12px 15px;align-items:center;font-size:13px;cursor:pointer}#main-nav{width:100%;flex-wrap:wrap;gap:6px 22px;padding-block:15px}.js #main-nav{display:none}.js #main-nav.open{display:flex}.js #main-nav a{flex:0 0 calc(50% - 15px);padding:10px 0}.page-intro{padding-block:58px 40px}h1{font-size:57px}.lead{font-size:20px;margin-top:24px}.eyebrow{font-size:10px;margin-bottom:20px}.actions{gap:16px}.button{font-size:13px;padding:13px 20px;gap:20px}.feature-work .landscape{height:480px}.feature-overlay{padding:28px}.feature-title{font-size:40px}.feature-overlay .eyebrow{font-size:10px}.section{padding-block:65px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;font-size:16px}.work-pair{gap:38px;grid-template-columns:1fr}.work-pair .video-link{height:440px}.work-caption h3{font-size:25px}.archive-section{padding-block:36px}.archive>summary{align-items:start;flex-direction:column;gap:18px}.summary-action{width:100%;justify-content:space-between}.summary-title{font-size:30px}.video-grid{grid-template-columns:repeat(2,1fr);gap:26px 14px}.video-grid h3{font-size:16px}.video-grid .play{width:34px;height:34px;font-size:12px}.contact-band{padding-block:70px}.contact-band p:not(.eyebrow){font-size:17px}.site-footer{grid-template-columns:1fr;gap:30px}.site-footer nav{row-gap:18px}.footer-bottom{gap:18px}.training-strip{height:270px;gap:10px;grid-template-columns:1.2fr 1fr}.training-strip img{border-radius:16px}.training-strip img:last-child{display:none}.jump-links{gap:16px 26px;font-size:12px}.course-grid{grid-template-columns:1fr;gap:24px}.course>img{height:300px}.course h3{min-height:0;font-size:29px}.course-body{padding:28px}.editorial-split{grid-template-columns:1fr;gap:38px}.editorial-split>img{height:440px}.soft-section{padding-block:60px}.family-grid{gap:30px 16px}.family-card img{height:235px;border-radius:16px}.family-card h3{font-size:18px;display:block}.family-card h3 span{margin-left:8px}.mini-brochure{padding:30px;display:block}.mini-brochure .button{margin-top:24px}.mini-brochure h2{font-size:35px}.publication{grid-template-columns:1fr;gap:35px}.cover-stage{min-height:0;padding:32px}.publication h2{font-size:60px}.publication h2 br{display:none}.publication-subtitle{font-size:25px}.publication-copy{padding-inline:4px}.contents{grid-template-columns:1fr;gap:40px}.old-publication{grid-template-columns:1fr;gap:30px}.old-publication>img{width:150px}.old-publication h2{font-size:30px}.profile-hero{grid-template-columns:1fr;padding-block:55px 0;gap:40px}.profile-hero h1{font-size:60px}.profile-hero .lead{font-size:20px}.portrait{aspect-ratio:1/1}.profile-story{grid-template-columns:1fr;gap:30px}.profile-story h2{font-size:36px}.story-copy .large-copy{font-size:23px}.principles{grid-template-columns:1fr;gap:38px}.principles article+article{padding-top:30px;border-top:1px solid #d4cbc0}.principles h3{margin-block:15px;font-size:29px}.profile-links{grid-template-columns:1fr;gap:25px}.desktop-only{display:none}dialog{padding:14px}.dialog-bar h2{font-size:18px}.close-video{font-size:12px;padding:9px 13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* New portrait videos retain the full composition. */
.latest-pair .video-link{height:560px;background:#fff}.latest-pair .video-link>img{object-fit:contain}.recent-archive{margin-top:50px;padding-top:30px;border-top:1px solid var(--line)}.new-video-grid .video-link{aspect-ratio:9/16;background:#fff}.new-video-grid .video-link>img{object-fit:contain}@media(max-width:760px){.latest-pair .video-link{height:auto;aspect-ratio:9/16}.recent-archive .summary-title{font-size:28px}}

/* Shared corrections: grid items must not grow beyond their assigned track. */
.training-strip{grid-template-rows:minmax(0,1fr);overflow:hidden}.training-strip>img{min-height:0;min-width:0;max-height:100%}
.course-grid,.family-grid,.work-pair,.publication,.profile-hero,.contents,.editorial-split{min-width:0}
.course-grid>*,.family-grid>*,.publication>*,.profile-hero>*,.contents>*,.editorial-split>*{min-width:0}
.family-card{display:block}.family-card img{min-height:0}.jump-links{position:relative;margin-top:8px;align-items:center}.jump-links a{display:block;padding:12px 0}
h1,h2,h3{overflow-wrap:break-word}.footer-bottom{flex-wrap:wrap}.site-footer a{overflow-wrap:anywhere}
.services-page .intro,.book-page .intro{max-width:850px;margin-top:26px;font-size:18px}.kpi{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.kpi span{padding:8px 14px;border:1px solid var(--line);border-radius:24px;font-size:13px;color:var(--muted)}
.service{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.service>*{min-width:0}.service h2{font-size:clamp(32px,3.5vw,48px)}.service p{margin-top:24px}.service video{display:block;width:100%;max-height:580px;aspect-ratio:4/5;object-fit:contain;background:var(--soft);border-radius:24px}.services-page .section{border-top:1px solid var(--line);padding-block:70px}.services-page .contact-band .actions{justify-content:center}
.book-page .cta{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:var(--soft);border-radius:22px}.note{font-size:14px;color:var(--muted)}.book-page .service img{border-radius:24px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.gallery-grid a{display:block}.gallery-grid img{width:100%;border:1px solid var(--line);border-radius:14px}.reading-page{max-width:800px;padding-block:70px 100px}.reading-page h1{font-size:clamp(42px,6vw,70px);margin-bottom:36px}.reading-page h2{font-size:28px;margin:36px 0 16px}.reading-page p,.reading-page li{margin-block:16px;line-height:1.8}.reading-page a,.form-note a{text-decoration:underline;text-underline-offset:3px}.thanks-page{min-height:65vh}
.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding-top:0}.contact-layout>*{min-width:0}.contact-form{padding:40px;background:white;border:1px solid var(--line);border-radius:28px}.contact-form h2,.contact-direct h2{font-size:36px}.contact-form form{margin-top:32px}.contact-form label{display:block;margin:22px 0 8px;font-size:14px;font-weight:600}.contact-form input:not([type=hidden]),.contact-form textarea{box-sizing:border-box;display:block;width:100%;padding:15px 16px;border:1px solid #c8bfb5;border-radius:12px;background:var(--paper);font:inherit;color:var(--ink)}.contact-form textarea{resize:vertical;min-height:180px}.contact-form .button{border:0;margin-top:26px;cursor:pointer}.form-note{font-size:12px;line-height:1.7;margin-top:22px}.contact-direct{padding-top:40px}.contact-direct>p:not(.eyebrow){margin-top:24px}.contact-email{display:inline-block;margin-top:24px;font-size:clamp(18px,2.2vw,26px);letter-spacing:-.02em;overflow-wrap:anywhere}.contact-more{padding-top:24px;border-top:1px solid var(--line)}
.home-page .hero{position:relative;isolation:isolate;min-height:660px;display:flex;align-items:center;background:#302c28;color:white;overflow:hidden}.bg-hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.home-page .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#15120f9c,#15120f22);z-index:-1}.overlay{padding-block:90px}.overlay .lead{color:white;max-width:560px}.overlay p:last-child{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.overlay .button{background:#fff;color:var(--ink)}.hero-pause{position:absolute;right:30px;bottom:24px;border:1px solid #ffffff88;background:#25221faa;color:white;border-radius:24px;padding:10px 18px;cursor:pointer;font-size:13px}.book-banner{background:var(--soft);padding-block:85px}.book-banner-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.book-copy .subtitle{font-size:23px;margin-top:24px}.book-copy .desc{margin-top:22px}.book-actions{margin-top:30px}.book-single img{width:100%;border-radius:24px}.home-page>section:not(.hero):not(.book-banner){padding-block:85px}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:36px}.tile{display:block;min-width:0}.tile img{width:100%;height:280px;object-fit:cover;border-radius:22px}.tile-title{display:block;font-size:19px;font-weight:500;line-height:1.3;padding-top:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}.grid-3 .card{background:var(--soft);padding:30px;border-radius:24px}.card p{margin-top:20px}.chi-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;align-items:center;margin-top:36px}.chi-grid img{width:100%;max-width:380px;border-radius:24px}.bio p{margin-bottom:26px}
@media(max-width:1000px){.contact-layout,.service,.book-banner-inner,.chi-grid{gap:36px}.tiles{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr}.contact-form{padding:28px}}
@media(max-width:760px){h1{font-size:clamp(40px,11vw,57px)}.profile-hero h1{font-size:clamp(42px,11vw,60px)}.publication h2{font-size:clamp(42px,11vw,60px)}.contact-layout,.service,.book-banner-inner,.chi-grid{grid-template-columns:1fr;gap:34px}.contact-form{padding:24px}.contact-direct{padding-top:0}.contact-layout{padding-top:0}.contact-form h2,.contact-direct h2{font-size:32px}.service.reverse .media{order:-1}.service video{max-height:460px}.book-page .cta{align-items:start;flex-direction:column}.gallery-grid{grid-template-columns:1fr}.reading-page{padding-block:50px 65px}.reading-page h2{font-size:25px}.home-page .hero{min-height:620px}.overlay{padding-block:65px 100px}.book-banner,.home-page>section:not(.hero):not(.book-banner){padding-block:60px}.book-banner-inner{gap:35px}.tiles{gap:26px 16px}.tile img{height:210px}.tile-title{font-size:17px}.chi-grid img{max-width:100%}.family-card img{height:210px}.footer-bottom span{flex-basis:100%}.training-strip{height:270px}.section-heading>div{min-width:0}}
/* Covers include typography: show the whole artwork. */
.home-page .tile img{object-fit:contain;background:var(--soft)}
