/* Mobile editorial layouts: read on a stable inset, widen photographs at chapter changes.
   The accepted desktop layout, home page, pricing comparison and forms stay independent. */
.mobile-chapter-photo{display:none}
.lower-trainer .trainer-role wbr{display:none}
@media(max-width:767px){
 .lower-page{--story-inset:45px;--story-rail:32px;--story-gap:13px}
 .lower-page :is(.program-detail,.profile-card,.reason-story){scroll-margin-top:100px}
 .lower-page :is(.lower-hero__copy,.program-detail__copy,.profile-copy){min-width:0}
 .lower-page:is(.lower-about,.lower-program,.lower-trial) .lower-hero__photo{margin-left:var(--story-inset);width:calc(100% - var(--story-inset) + 22px);max-height:none;aspect-ratio:8/5;border-radius:4px 0 0 4px}
 .lower-page:is(.lower-program,.lower-trainer) .lower-hero p{margin-left:var(--story-inset);max-width:none}
 .lower-page:is(.lower-about,.lower-program,.lower-trial) .lower-hero.has-photo{padding-bottom:60px}
 /* The concept is read beside its vertical headline, then opens onto the studio. */
 .lower-about .concept-section .editorial-rail{grid-template-columns:var(--story-rail) minmax(0,1fr);gap:var(--story-gap);align-items:start}
 .lower-about .concept-section .editorial-rail>.sh{position:relative;top:0;padding-top:28px}
 .lower-about .concept-section .sh__k{position:absolute;top:0;left:var(--story-inset);margin:0;white-space:nowrap;font-size:13px}
 .lower-about .concept-section .sh h2{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;font-size:21px;line-height:1.5;letter-spacing:.06em;margin:0}
 .lower-about .concept-section .editorial-rail>div:last-child{padding-top:28px}
 .lower-about .concept-section p{margin:0;line-height:1.9}
 .lower-about .concept-section p+p{margin-top:18px}
 .lower-about main .concept-section{padding-bottom:40px}
 .lower-about main .studio-section{padding-top:0;padding-bottom:40px;border-radius:0;background:var(--c-bg)}
 .lower-about .studio-section .editorial-split{gap:26px}
 .lower-about .studio-section .editorial-split>.photo-slot{width:calc(100% + 44px);margin-inline:-22px;aspect-ratio:3/2;border-radius:0}
 .lower-about .studio-section .editorial-split>div{margin-left:var(--story-inset)}
 .lower-about .studio-section .sh h2{font-size:var(--mobile-subhead);margin:0}
 .lower-about .studio-section .fact-list{margin-top:18px}
 .lower-about .studio-section .more{display:flex;width:fit-content;margin-left:auto}
 /* Five stories share a rail, without a sticky title or five large cards. */
 .lower-about .reason-stories{gap:38px}
 .lower-about .reason-story{position:relative;display:grid;grid-template-columns:var(--story-rail) minmax(0,1fr);column-gap:var(--story-gap);row-gap:16px;align-items:start}
 .lower-about .reason-story>div{display:contents}
 .lower-about .reason-story .sh__k{grid-column:1;grid-row:1 / 4;writing-mode:vertical-rl;margin:3px 0 0;font-size:13px;line-height:1;letter-spacing:.025em;justify-self:start;color:var(--c-text)}
 .lower-about .reason-story h3{grid-column:2;grid-row:1;font-size:var(--mobile-subhead);line-height:1.7;margin:0;text-wrap:pretty}
 .lower-about .reason-story>.photo-slot{grid-column:2;grid-row:2;aspect-ratio:4/3;border-radius:4px}
 .lower-about .reason-story p{grid-column:2;grid-row:3;margin:0;line-height:1.85}
 .lower-about .reason-stories+.more{display:flex;width:fit-content;margin:28px 0 0 auto}
 /* Program titles are the entry points; details share the inset photo's left edge. */
 .lower-program .program-details{gap:48px}
 .lower-program .program-detail{display:grid;grid-template-columns:var(--story-rail) minmax(0,1fr);column-gap:var(--story-gap);row-gap:0;background:transparent;border:0;border-radius:0;overflow:visible}
 .lower-program .program-detail.pigment::before{display:none}
 .lower-program .program-detail__copy{display:contents}
 .lower-program .program-detail .sh{grid-column:1/-1;grid-row:1;position:relative;margin:0 0 18px}
 .lower-program .program-detail h2{font-size:var(--mobile-heading);line-height:1.6;margin:0;text-wrap:pretty}
 .lower-program .program-detail .sh__k{position:absolute;top:calc(100% + 20px);left:0;writing-mode:vertical-rl;white-space:nowrap;margin:0;font-size:13px;line-height:1;letter-spacing:.015em;color:var(--c-text)}
 .lower-program .program-detail>.photo-slot{grid-column:2;grid-row:2;aspect-ratio:8/5;min-height:0;height:auto;border-radius:4px}
 .lower-program #program-1>.photo-slot img{object-position:var(--photo-position,50% 50%)}
 .lower-program #program-0>.photo-slot img{object-position:var(--photo-position,50% 50%)}
 .lower-program #program-2>.photo-slot img{object-position:var(--photo-position,50% 50%)}
 .lower-program .program-detail .program-badge{grid-column:2;grid-row:3;justify-self:start;margin-top:12px;background:var(--c-brand-tint24);color:var(--c-primary-text);border:0;font-size:13px;padding:3px 10px}
 .lower-program .program-detail .program-audience{grid-column:2;grid-row:4;margin-top:18px}
 .lower-program .program-audience p{margin-bottom:9px;font-weight:700}
 .lower-program .program-detail .program-pill{background:var(--c-brand-tint18);font-size:13px}
 .lower-program .program-detail .program-description{grid-column:2;grid-row:5;margin:16px 0 0;line-height:1.85}
 .lower-program .program-detail .fact-list{grid-column:2;grid-row:6;margin-top:16px}
 .lower-program .program-detail .fact-list>div{padding:0;grid-template-columns:72px minmax(0,1fr);gap:10px}
 .lower-program .program-detail .fact-list dd{font-size:var(--mobile-body)}
 .lower-program .program-detail .more{grid-column:2;grid-row:7;justify-self:end;margin-top:22px}
 .lower-program main .program-detail-section{padding-top:36px;padding-bottom:48px}
 /* Portraits remain aligned person to person; the profile is a compact reading unit. */
 .lower-trainer .trainer-role wbr{display:initial}
 .lower-trainer .profiles{gap:38px}
 .lower-trainer .profile-card{position:relative;display:grid;grid-template-columns:minmax(100px,.86fr) minmax(0,1.14fr);column-gap:18px;row-gap:0;margin-left:var(--story-inset);background:transparent;border-radius:0;overflow:visible;align-items:start}
 .lower-trainer .profile-copy{display:contents}
 .lower-trainer .profile-card>.photo-slot{grid-column:1;grid-row:1 / 4;aspect-ratio:3/4;width:100%;height:auto;min-height:0;max-height:none;border-radius:4px}
 .lower-trainer .profile-copy .sh__k{position:absolute;left:calc(-1 * var(--story-inset));top:2px;writing-mode:vertical-rl;margin:0;line-height:1;letter-spacing:.015em;font-size:13px}
 .lower-trainer .profile-copy h2{grid-column:2;grid-row:1;margin:0 0 10px;font-size:var(--mobile-subhead);font-weight:700;line-height:1.5;text-wrap:nowrap}
 .lower-trainer .trainer-role{word-break:keep-all;overflow-wrap:anywhere;grid-column:2;grid-row:2;margin:0;font-size:var(--mobile-body);line-height:1.85;min-height:0}
 .lower-trainer .trainer-draft{grid-column:1/-1;grid-row:4;margin:18px 0 0;padding:0;border:0}
 .lower-trainer .trainer-draft h3{font-size:13px;font-weight:700;line-height:1.7;margin:0 0 5px}
 .lower-trainer .trainer-draft p{font-size:var(--mobile-body);line-height:1.8;margin:0}
 .lower-trainer .mobile-chapter-photo{display:block;margin-top:2px}
 .lower-trainer .mobile-chapter-photo .photo-slot{display:block;width:100%;aspect-ratio:3/2;border-radius:0;max-height:360px}
 .lower-trainer .mobile-chapter-photo img{object-position:var(--photo-position,50% 50%)}
 .lower-trainer .lower-sheet{padding-bottom:0}
 /* Apply the same hierarchy where the page is a story, not to fees or form fields. */
 .lower-trial main>.lower-sheet>.sec:first-of-type .editorial-split{gap:25px}
 .lower-trial main>.lower-sheet>.sec:first-of-type .editorial-split>.photo-slot{width:calc(100% + 44px);margin-inline:-22px;aspect-ratio:3/2;border-radius:0}
 .lower-trial main>.lower-sheet>.sec:first-of-type .editorial-split>div{margin-left:var(--story-inset)}
 .lower-trial .editorial-split .sh h2{font-size:var(--mobile-subhead)}
 .lower-trial .editorial-split .more{display:flex;width:fit-content;margin-left:auto}
 .lower-voice .voice-composition{gap:0;background:transparent}
 .lower-voice .voice-composition>.photo-slot{width:calc(100% + 44px);margin-inline:-22px;aspect-ratio:3/2;border-radius:0}
 .lower-voice .voice-empty{margin-left:var(--story-inset);padding:24px 0 0;background:transparent;border-radius:0}
 .lower-voice .voice-empty::before{display:none}
 .lower-voice .voice-empty h2{font-size:var(--mobile-subhead)}
 .lower-voice .voice-empty .more{align-self:flex-end}

}
@media(min-width:500px) and (max-width:767px){
 .lower-trainer .profile-card{grid-template-columns:150px minmax(0,1fr);column-gap:24px}
 .lower-trainer .trainer-draft{grid-column:2;grid-row:3;margin-top:20px}
 .lower-program .program-detail>.photo-slot,.lower-about .reason-story>.photo-slot{max-height:320px}
 .lower-page:is(.lower-about,.lower-program,.lower-trial) .lower-hero__photo{max-height:300px}
 .lower-about .studio-section .editorial-split>.photo-slot,.lower-trial main>.lower-sheet>.sec:first-of-type .editorial-split>.photo-slot,.lower-voice .voice-composition>.photo-slot{max-height:360px}
}
