/* Surface-specific text colors after the move from a light shell to graphite. */
:root{--shell-text:#f5f6f8;--shell-muted:#c1c7cd;--text:#f5f6f8;--muted:#bbc3cd;--on-dark-title:#f5f6f8;--on-dark-body:#c1c7cd;--on-dark-label:#75e5d6}
body{color:#f5f6f8}
body main[id$="View"]{color:#f5f6f8}
body main[id$="View"]>header{color:#f5f6f8}
body main[id$="View"]>header :is(h1,h2,h3,strong){color:#f5f6f8!important}
body main[id$="View"]>header :is(p,small){color:#c1c7cd!important}
body main[id$="View"]>header .eyebrow{color:#75e5d6!important}
body .academy-home-view :is(.home-shelf-heading,.home-shelf-title,.home-start,.home-next) :is(h2,h3){color:#f5f6f8!important}
body .academy-home-view :is(.home-shelf-heading,.home-shelf-title) :is(p,span){color:#c1c7cd!important}
body .academy-home-view .home-shelf-heading .home-step,body .academy-home-view .eyebrow{color:#75e5d6!important}
body .academy-home-view .home-shelf-title{border-color:#454b51}
body .academy-home-view :is(.home-practice ol,.home-practice li,.journey-saved-list>p){color:#c1c7cd!important}
body .academy-home-view .home-practice li::marker{color:#75e5d6!important}
body .academy-home-view :is(.home-goals,.home-next,.home-practice,.home-journey,.home-human-guidance) :is(h2,h3,strong){color:#f5f6f8!important}
body .academy-home-view :is(.home-goals,.home-next,.home-practice,.home-journey,.home-human-guidance)>p{color:#c1c7cd!important}
body :is(.controls,.chord-workspace,.progression-workspace,.studies-workspace,.theory-tool,.formation-map,.mentor-shell,.library-card,.metronome-shell,.trail-featured,.trail-step,.theory-book-hero,.theory-book-shell>aside,.theory-chapter){color:#f5f6f8}
body :is(.mentor-info,.chat-head,.book-index-head) :is(h2,h3,strong){color:#f5f6f8!important}
body :is(.trail-featured,.trail-step,.theory-chapter)>p{color:#c1c7cd!important}
body :is(.controls,.metro-controls) label{color:#c1c7cd!important}
/* These surfaces intentionally remain light, including search and planner. */
body :is(.planner-config,.planner-insights,.schedule-section,.academy-search-dialog){color:#17271f!important;--shell-text:#17271f;--shell-muted:#4b6055;--muted:#4b6055;--text:#17271f}
body :is(.planner-config,.planner-insights,.schedule-section,.academy-search-dialog) :is(h1,h2,h3,h4,legend){color:#17271f!important}
body :is(.planner-config,.planner-insights,.schedule-section)>.section-heading :is(small,p){color:#4b6055!important}
body .planner-config :is(label,legend),body .planner-insights>p{color:#4b6055!important}
body .access-page{color:#f5f6f8}
body .access-page :is(.audience-results,.public-plans,.academy-capabilities,.sales-faq)>header :is(h2,h3){color:#f5f6f8!important}
body .access-page :is(.audience-results,.public-plans,.academy-capabilities,.sales-faq)>header p{color:#c1c7cd!important}
body .access-page .audience-grid article{color:#f5f6f8!important}
body .access-page .audience-grid article p{color:#c1c7cd!important}
body .access-page .results-strip :is(strong,span){color:#c1f2e9!important}
body .access-page .faq-grid details{background:#222226!important;color:#f5f6f8!important}
body .access-page .faq-grid summary{color:#f5f6f8!important}
body .access-page .faq-grid p{color:#c1c7cd!important}
body .access-page .sales-instructor-proof>span{color:#c1c7cd!important}
body .access-page .sales-instructor-proof b{color:#a6e4be!important}
body .access-page .sales-legal{color:#bfc7cf}
body .access-page .sales-legal a{color:#a6e4be}
body :is(.billing-card,.returning){color:#f5f6f8}
/* Straight edges, equal thumbnail widths, and an aligned professor section. */
body :is(.sales-instructor,.home-instructor){align-items:start!important}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage{display:grid!important;grid-template-columns:minmax(0,2.25fr) minmax(0,1fr);grid-template-rows:repeat(3,minmax(0,1fr));gap:12px;height:540px;align-self:start;align-items:stretch;padding:0!important;margin:0!important}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage:before{inset:8% 12% 8% -3%;background:radial-gradient(ellipse,#17383d 35%,#2397a3 62%,#59dedc 69%,transparent 71%);box-shadow:0 0 65px #36dadb40}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage img{position:static!important;inset:auto!important;transform:none!important;width:100%!important;height:100%!important;min-height:0;object-fit:cover;border-radius:12px!important}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage .stage-portrait-main{grid-column:1;grid-row:1/4;border-radius:150px 12px 12px 150px!important;object-position:48% 24%}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage img:nth-child(2){grid-column:2;grid-row:1}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage img:nth-child(3){grid-column:2;grid-row:2}
body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage img:nth-child(4){grid-column:2;grid-row:3;object-position:82% 30%}
body :is(.sales-instructor-proof,.home-instructor-proof) .award-proof{display:grid;grid-template-columns:100px minmax(0,1fr)!important;gap:16px;padding:16px;text-align:left;align-items:center}
body :is(.sales-instructor-proof,.home-instructor-proof) .award-image-link{width:100px!important;display:block}
body :is(.sales-instructor-proof,.home-instructor-proof) .award-proof img{width:100px!important;height:auto!important;max-height:120px;object-fit:contain;margin:0}
body :is(.sales-instructor-proof,.home-instructor-proof) .award-proof>span{min-width:0;text-align:left}
@media(max-width:900px){body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage{height:500px;max-width:650px}}
@media(max-width:500px){body :is(.sales-instructor,.home-instructor)>.stage-portrait-collage{height:350px;gap:8px}body :is(.sales-instructor-proof,.home-instructor-proof) .award-proof{grid-template-columns:72px minmax(0,1fr)!important;gap:12px}body :is(.sales-instructor-proof,.home-instructor-proof) .award-image-link,body :is(.sales-instructor-proof,.home-instructor-proof) .award-proof img{width:72px!important}}
/* A single photo frame replaces the overlapping halo composition. */
body :is(.sales-instructor,.home-instructor)>figure.stage-professor-photos{grid-column:2;grid-row:1;display:block;align-self:start;margin:0;min-width:0;padding:0;background:transparent;border:0;overflow:hidden;border-radius:14px}
body :is(.sales-instructor,.home-instructor)>figure.stage-professor-photos img{position:static;display:block;width:100%!important;max-width:100%;height:auto!important;transform:none!important;border-radius:12px;object-fit:cover}
body :is(.sales-instructor,.home-instructor)>figure.stage-professor-photos>.professor-portrait{aspect-ratio:1;object-fit:contain;border:1px solid #3d484b;box-shadow:0 8px 24px #0004}
.professor-live-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
body :is(.sales-instructor,.home-instructor)>figure.stage-professor-photos .professor-live-strip img{aspect-ratio:4/3;height:auto!important;object-fit:cover;object-position:center 24%;border:1px solid #3d484b}
body :is(.sales-instructor,.home-instructor)>.stage-teacher-award{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,442px) minmax(0,1fr);gap:36px;align-items:center;padding:28px;margin-top:8px;border:1px solid #41474d;border-radius:14px;background:#222629;color:#c1c7cd}
.stage-teacher-award>.award-image-link{display:block;width:100%;max-width:442px;padding:0;background:none}
.stage-teacher-award>.award-image-link img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:10px}
.stage-teacher-award>span{display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:1rem;line-height:1.6}
.stage-teacher-award>span>b{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.15;color:#f5f6f8}
.stage-teacher-award .award-open{display:inline-block;color:#93edcb;font-weight:700;overflow-wrap:anywhere}
@media(max-width:900px){body :is(.sales-instructor,.home-instructor)>figure.stage-professor-photos{grid-column:1;grid-row:2;width:100%;max-width:600px;justify-self:center}body :is(.sales-instructor,.home-instructor)>.stage-teacher-award{grid-template-columns:minmax(0,1fr);gap:22px;padding:20px}.stage-teacher-award>.award-image-link{justify-self:center}.stage-teacher-award>span{align-items:center;text-align:center}}
@media(max-width:500px){.professor-live-strip{gap:8px;margin-top:8px}body :is(.sales-instructor,.home-instructor)>.stage-teacher-award{padding:12px}}
