.sensei-section{background:var(--white);border-bottom:1px solid var(--line)}
.sensei-grid{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:clamp(40px,7vw,105px);align-items:center}
.sensei-photo{max-width:360px}
.sensei-photo img,.profile-portrait img{width:100%;height:auto;background:white}
.sensei-photo figcaption,.profile-portrait figcaption{font-size:10px;color:var(--muted);padding-top:12px}
.sensei-photo figcaption a,.profile-portrait figcaption a{text-decoration:underline;text-underline-offset:3px}
.sensei-copy h2{margin-top:20px;font-size:clamp(54px,6vw,83px)}
.sensei-degree{font-family:var(--display);font-size:43px;line-height:1;margin-top:22px!important;display:flex;align-items:center;gap:23px;border-bottom:1px solid var(--line);padding-bottom:20px}
.sensei-degree span{font-family:var(--body);font-size:9px;line-height:1.7;letter-spacing:.11em;max-width:135px}
.sensei-copy>p:not(.eyebrow):not(.sensei-degree){font-size:13px;color:var(--muted);line-height:1.9;margin-top:22px;max-width:530px}
.sensei-highlights{padding-left:18px;margin:22px 0 13px;font-size:12px;line-height:1.9}
.sensei-highlights li+li{margin-top:7px}
.sensei-copy .text-link{font-size:12px;gap:18px}
.profile-hero{background:var(--white);padding:35px 0 88px}
.profile-back{display:inline-flex;align-items:center;gap:13px;font-size:9px;font-weight:700;letter-spacing:.09em;min-height:44px;margin-bottom:38px}
.profile-back svg{width:17px;transform:rotate(180deg)}
.profile-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(35px,6vw,90px);align-items:center}
.profile-intro h1{font-size:clamp(70px,8.5vw,122px);margin-top:23px}
.profile-degree{font-family:var(--display);font-size:56px;line-height:1;display:flex;align-items:center;gap:24px;margin-top:28px!important;padding-top:22px;border-top:5px solid var(--red);max-width:400px}
.profile-degree span{font-family:var(--body);font-size:10px;letter-spacing:.1em;font-weight:700}
.profile-intro .profile-lead{font-size:20px;font-weight:700;line-height:1.6;margin-top:28px;max-width:450px}
.profile-intro>p:not(.eyebrow):not(.profile-lead):not(.profile-degree){font-size:13px;line-height:1.95;color:var(--muted);margin-top:20px;max-width:480px}
.profile-intro .text-link{margin-top:18px;font-size:12px}
.profile-portrait{max-width:440px;justify-self:end}
.profile-section{padding:90px 0}
.profile-columns{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(45px,8vw,120px)}
.profile-columns h2{margin-top:20px;font-size:clamp(48px,5.5vw,73px)}
.profile-columns>div>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:420px;color:var(--muted);margin-top:25px}
.section-dark .profile-columns>div>p:not(.eyebrow){color:#c4cdc0}
.profile-roles{padding:0;margin:0;list-style:none}
.profile-roles li{padding:17px 0;border-top:1px solid #465144}
.profile-roles li:last-child{border-bottom:1px solid #465144}
.profile-roles strong{font-size:16px;line-height:1.5;display:block}
.profile-roles span{display:block;font-size:10px;color:#b4c0ae;margin-top:4px}
.profile-columns>div>.profile-sources-inline,.profile-sources-inline{font-size:10px!important;line-height:1.9!important;margin-top:23px!important;max-width:none!important}
.profile-sources-inline a{text-decoration:underline;text-underline-offset:3px}
.profile-columns>div>.profile-historical{font-size:11px!important;border-left:2px solid #ef4d40;padding-left:17px;max-width:none!important}
.profile-timeline{padding:0;margin:0;list-style:none}
.profile-timeline li{display:grid;grid-template-columns:70px minmax(0,1fr);gap:24px;padding:0 0 27px;margin-bottom:25px;border-bottom:1px solid var(--line)}
.profile-timeline li>span{font-family:var(--display);font-size:34px;line-height:1;color:#bd241d}
.profile-timeline h3{font-size:18px;line-height:1.4}
.profile-timeline p{font-size:12px;line-height:1.9;color:var(--muted);margin-top:8px}
.profile-license{padding:23px 25px;background:#e8e6dd;border-left:3px solid var(--red)}
.profile-license+.profile-license{margin-top:18px}
.profile-license h3{font-size:16px;line-height:1.5}
.profile-license p{font-size:12px;line-height:1.9;margin-top:9px}
.profile-teaching{background:#e8e6dd;border-block:1px solid var(--line)}
.profile-teaching-heading{display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:30px;align-items:end;margin-bottom:45px}
.profile-teaching-heading>.eyebrow{align-self:start}
.profile-teaching-heading h2{font-size:clamp(49px,5.4vw,72px)}
.profile-teaching-heading>p:last-child{font-size:12px;line-height:1.9;color:var(--muted);max-width:300px}
.profile-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.profile-course-grid article{border-top:2px solid var(--ink);display:flex;flex-direction:column;padding-top:23px;min-width:0}
.profile-course-grid .mini-label{font-size:9px;color:#a41f19}
.profile-course-grid h3{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin-top:15px}
.profile-course-grid article>p:not(.mini-label){font-size:12px;line-height:1.95;margin-top:17px;color:var(--muted);margin-bottom:18px}
.profile-course-grid .text-link{font-size:10px;gap:15px;margin-top:auto;justify-content:space-between}
.profile-course-grid .text-link svg{width:18px}
.profile-closing{padding:65px 0;background:var(--white)}
.profile-closing>.page-width{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.profile-closing h2{font-size:clamp(50px,6vw,76px);margin-top:20px}
.profile-closing p:not(.eyebrow){font-size:13px;line-height:1.95;max-width:390px;color:var(--muted)}
.profile-closing .button{margin-top:24px;font-size:12px;gap:24px}
.profile-home-link{display:block;width:fit-content;font-size:11px;text-decoration:underline;text-underline-offset:4px;margin-top:18px}
.profile-update{padding-block:26px;border-top:1px solid var(--line)}
.profile-update p{font-size:9px;line-height:1.9;color:var(--muted);max-width:900px}
@media(max-width:1100px){.profile-hero-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:40px}.profile-intro h1{font-size:83px}.profile-intro .profile-lead{font-size:18px}.profile-teaching-heading{grid-template-columns:.6fr 1fr}.profile-teaching-heading>p:last-child{grid-column:2}.profile-course-grid{gap:24px}.profile-course-grid h3{font-size:22px}}
@media(max-width:760px){.sensei-grid{grid-template-columns:1fr;gap:31px}.sensei-photo{max-width:360px;margin-inline:auto}.sensei-copy h2{font-size:62px}.sensei-copy>p:not(.eyebrow):not(.sensei-degree){font-size:12px}.sensei-degree{font-size:39px;gap:24px}.sensei-highlights{font-size:12px}.sensei-copy .text-link{font-size:11px}.profile-hero{padding:22px 0 55px}.profile-back{font-size:8px;margin-bottom:25px;gap:10px}.profile-hero-grid{grid-template-columns:1fr;gap:35px}.profile-intro h1{font-size:clamp(71px,15vw,102px)}.profile-degree{font-size:48px;margin-top:24px!important;padding-top:20px}.profile-degree span{font-size:9px}.profile-intro .eyebrow{font-size:9px}.profile-intro .profile-lead{font-size:19px;line-height:1.6}.profile-intro>p:not(.eyebrow):not(.profile-lead):not(.profile-degree){font-size:12px}.profile-intro .text-link{font-size:11px}.profile-portrait{width:100%;max-width:380px;justify-self:center}.profile-section{padding:58px 0}.profile-columns{grid-template-columns:1fr;gap:31px}.profile-columns h2{font-size:58px}.profile-columns>div>p:not(.eyebrow){font-size:12px;max-width:470px}.profile-roles strong{font-size:16px}.profile-roles li{padding:18px 0}.profile-timeline li{grid-template-columns:63px minmax(0,1fr);gap:18px}.profile-timeline h3{font-size:17px}.profile-timeline p{font-size:12px}.profile-license{padding:21px}.profile-teaching-heading{grid-template-columns:1fr;gap:19px;margin-bottom:32px}.profile-teaching-heading>p:last-child{grid-column:auto;font-size:12px;max-width:450px}.profile-teaching-heading h2{font-size:58px}.profile-course-grid{grid-template-columns:1fr;gap:34px}.profile-course-grid article{padding-top:22px}.profile-course-grid h3{font-size:26px;max-width:370px}.profile-course-grid article>p:not(.mini-label){font-size:12px;max-width:480px}.profile-course-grid .text-link{font-size:11px;min-height:44px}.profile-closing{padding:50px 0}.profile-closing>.page-width{grid-template-columns:1fr;gap:25px}.profile-closing h2{font-size:60px}.profile-closing p:not(.eyebrow){font-size:12px}.profile-closing .button{font-size:11px;gap:20px}.profile-update p{font-size:9px}}
@media(max-width:380px){.sensei-copy h2{font-size:56px}.sensei-copy .text-link{font-size:10px;gap:12px}.profile-intro h1{font-size:19.2vw}.profile-columns h2,.profile-teaching-heading h2{font-size:52px}.profile-degree{gap:17px}}

.profile-events{background:var(--white);border-top:1px solid var(--line)}
.profile-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.profile-event-card{min-width:0;display:flex;flex-direction:column}
.profile-event-photo,.profile-upcoming-photo{display:block;position:relative;width:100%;padding:0;background:var(--ink);overflow:hidden}
.profile-event-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.profile-event-expand{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}
.profile-event-photo:hover .profile-event-expand,.profile-upcoming-photo:hover .profile-event-expand{background:var(--red);color:white;border-color:var(--red)}
.profile-event-body{display:flex;flex-direction:column;flex:1;padding-top:24px}
.profile-event-body .mini-label{color:#a41f19;font-size:9px;line-height:1.8}
.profile-event-body h3{font-size:26px;line-height:1.25;letter-spacing:-.025em;margin-top:12px}
.profile-event-body>p:not(.mini-label):not(.profile-event-credit){font-size:13px;line-height:1.9;color:var(--muted);margin-top:16px}
.profile-event-credit{font-size:10px;line-height:1.8;color:var(--muted);margin-top:17px}
.profile-event-body .text-link{font-size:11px;justify-content:space-between;gap:15px;margin-top:auto;padding-top:20px}
.profile-event-body .profile-event-credit{margin-bottom:12px}
.profile-upcoming{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,70px);align-items:center;margin-top:65px;padding-top:45px;border-top:1px solid var(--line)}
.profile-upcoming-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.profile-upcoming h3{font-family:var(--display);font-size:clamp(35px,4vw,54px);line-height:1.05;margin-top:17px}
.profile-upcoming>div>p:not(.eyebrow):not(.profile-event-credit){font-size:13px;line-height:1.9;color:var(--muted);margin-top:20px}
.profile-event-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:22px}
.profile-event-actions .text-link{font-size:11px}
@media(max-width:1100px){.profile-event-grid{gap:22px}.profile-event-body h3{font-size:23px}.profile-event-body .text-link{font-size:10px;gap:9px}.profile-event-actions{gap:16px}}
@media(max-width:760px){.profile-event-grid{grid-template-columns:1fr;gap:42px}.profile-event-body{padding-top:21px}.profile-event-body h3{font-size:27px}.profile-event-body>p:not(.mini-label):not(.profile-event-credit){font-size:12px}.profile-event-body .text-link{font-size:11px;min-height:44px}.profile-upcoming{grid-template-columns:1fr;gap:28px;margin-top:45px;padding-top:35px}.profile-upcoming h3{font-size:44px}.profile-upcoming>div>p:not(.eyebrow):not(.profile-event-credit){font-size:12px}.profile-event-actions{gap:22px}}

.profile-event-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-bottom:28px}
.profile-travels{background:#eae8df;border-block:1px solid var(--line)}
.profile-travel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.profile-travel-card{display:flex;flex-direction:column;min-width:0;background:var(--white);border:1px solid #bfc1b5}
.travel-destination{position:relative;overflow:hidden;aspect-ratio:2/1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:28px 32px;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.travel-destination>span:first-child{font-size:10px;font-weight:700;letter-spacing:.14em;z-index:1}
.travel-destination strong{font-family:var(--display);font-size:clamp(65px,7vw,100px);line-height:.95;letter-spacing:.02em;z-index:1}
.travel-destination>span:last-child{font-size:11px;font-weight:700;letter-spacing:.12em;z-index:1}
.travel-destination--japan:after{content:"";position:absolute;width:195px;aspect-ratio:1;border-radius:50%;background:#c32d27;right:-35px;top:38px;opacity:.16}
.travel-destination--colombia{background:var(--ink);color:var(--paper)}
.travel-destination--colombia:after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(to right,#f6cf46 0 50%,#3468a7 50% 75%,#d44035 75%)}
.profile-travel-copy{display:flex;flex-direction:column;flex:1;padding:30px 32px}
.profile-travel-copy .mini-label{font-size:10px;color:#a41f19}
.profile-travel-copy h3{font-size:27px;letter-spacing:-.025em;line-height:1.2;margin-top:13px}
.profile-travel-copy>p:not(.mini-label):not(.travel-credit){font-size:13px;line-height:1.9;color:#545a50;margin-top:18px}
.profile-travel-copy .travel-credit{font-size:10px;line-height:1.8;color:var(--muted);margin-top:19px;margin-bottom:20px}
.travel-sources{display:flex;flex-direction:column;gap:7px;margin-top:auto}
.travel-sources .text-link{font-size:12px;justify-content:space-between;gap:14px;min-height:44px}
.sensei-travel-link{margin-top:15px;font-size:12px}
@media(min-width:1001px) and (max-width:1100px){.profile-page .nav-cta{display:none}}
@media(max-width:1100px){.profile-travel-grid{gap:22px}.profile-travel-copy{padding:25px}.travel-destination{padding:25px}.profile-travel-copy h3{font-size:24px}}
@media(max-width:760px){.profile-travel-grid{grid-template-columns:1fr;gap:28px}.travel-destination{padding:25px;aspect-ratio:1.8/1}.travel-destination strong{font-size:clamp(54px,17vw,74px)}.profile-travel-copy{padding:27px 25px}.profile-travel-copy h3{font-size:27px}.profile-travel-copy>p:not(.mini-label):not(.travel-credit){font-size:13px}.sensei-travel-link{font-size:11px}}
.profile-event-toolbar .filters{margin-bottom:0}
.profile-events .filter{font-size:12px;min-height:44px;padding:10px 16px}
.profile-event-toolbar>p{font-size:11px;color:var(--muted)}
@media(max-width:760px){.profile-event-toolbar{align-items:flex-start;flex-direction:column}.profile-events .filter{font-size:11px;padding-inline:13px}}
