/* WORK-23 | Editorial composition and media fidelity across all public pages.
 * Chapter spacing responds to VIEWPORT HEIGHT without requiring content to fit
 * artificially into one screen. Documentary media is never object-fit:cover.
 * This stylesheet loads LAST to replace earlier competing crop/height rules. */
.platform-ready:not(.member-mode) .public-route {
  --mma-composition-gap:clamp(92px,12svh,140px);
  --mma-composition-min:clamp(510px,72svh,800px);
}
.platform-ready:not(.member-mode) .public-route :is(.page-heading,.about-page,.audience-page) {
  min-width:0;
}
.platform-ready:not(.member-mode) .public-route :is(h1,h2,h3) {
  text-wrap:balance;
  overflow-wrap:normal;
}
.platform-ready:not(.member-mode) .public-route :is(p,li,figcaption) {
  overflow-wrap:anywhere;
}
.platform-ready:not(.member-mode) .public-route :is(
  .about-hero-portrait,.founder-introduction figure,.school-founder,
  .mma-mission-visual figure,.mma-prevention-spotlight figure,
  .organisation-feature-media,.service-illustration,
  .mma-institutional-figure
) {max-width:100%;min-width:0}
.platform-ready:not(.member-mode) .public-route :is(
  .about-hero-portrait,.founder-introduction figure,.school-founder,
  .mma-mission-visual figure,.mma-prevention-spotlight figure,
  .organisation-feature-media,.service-illustration,
  .mma-institutional-figure
) img {
  display:block;
  width:100%;
  height:auto!important;
  max-width:100%;
  object-fit:contain!important;
  object-position:center!important;
  aspect-ratio:auto!important;
  filter:none;
}
/* Full-height photographic assets can be contained, never cut to fill a frame. */
.platform-ready:not(.member-mode) .public-route :is(
 .about-hero-portrait,.school-founder,.service-illustration
) img {max-height:min(640px,74svh)}
.platform-ready:not(.member-mode) .public-route :is(
 .mma-mission-visual figure,.mma-prevention-spotlight figure
) img {max-height:min(610px,75svh)}
.platform-ready:not(.member-mode) .public-route :is(.section,.audience-page) > figure {
  overflow:visible;
}
.platform-ready:not(.member-mode) .public-route :is(
 .mma-institutional-figure,.organisation-feature-media,.service-illustration
) figcaption {position:static;max-width:66ch;font-size:12px;line-height:1.6}
/* Top Organisations introduction — statement on the left, whole artwork on right. */
.public-route-organisations .audience-page > .page-heading {
  min-width:0;
  align-self:center;
  max-width:700px;
}
.public-route-organisations .audience-page > .page-heading p {
  max-width:58ch;
  line-height:1.76;
}
.public-route-organisations .audience-page > .organisation-feature-media {
  box-sizing:border-box;
  min-width:0;
  width:100%;
  max-width:560px;
  justify-self:end;
  align-self:center;
  margin:0!important;
  padding:clamp(14px,1.8vw,24px)!important;
  border:1px solid rgba(206,176,111,.32);
  background:linear-gradient(145deg,#202820,#171d18);
  overflow:visible;
}
.public-route-organisations .organisation-feature-media img {
  width:100%;
  height:auto!important;
  max-height:min(530px,70svh);
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#151c16;
}
.public-route-organisations .organisation-feature-media figcaption {
  padding:14px 2px 1px;
  margin:0;
  color:#ddd6c5;
  line-height:1.55;
}
@media(min-width:1200px) {
 .public-route-organisations .audience-page {
   column-gap:clamp(38px,5vw,90px);
 }
 .public-route-organisations .audience-page > .page-heading {
   padding-block:clamp(50px,7svh,115px);
 }
}
/* Schools: introduction is a readable chapter, proof is a full-width gallery,
 * not an exceptionally tall two-column sidebar. */
.public-route-organisations .audience-page > .mma-org-schools {
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(40px,6svh,86px);
  min-height:0;
  padding-block:clamp(92px,12svh,142px);
}
.public-route-organisations .mma-org-schools > .mma-institutional-copy {
  max-width:900px;
  align-self:start;
}
.public-route-organisations .mma-org-schools .mma-institutional-proof {
  max-width:720px;
}
.public-route-organisations .mma-org-school-media {
  width:100%;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  align-items:start;
  gap:clamp(22px,3vw,42px);
}
.public-route-organisations .mma-org-school-media .mma-institutional-figure {
  min-width:0;
  max-width:100%;
  width:100%;
  justify-self:stretch;
  margin:0;
  padding:clamp(12px,1.5vw,22px);
  border:1px solid #696f5d;
  background:#232b25;
}
.public-route-organisations .mma-org-school-media .mma-institutional-figure:nth-child(1) {
  grid-column:span 5;
  max-width:none;
}
.public-route-organisations .mma-org-school-media .mma-institutional-figure:nth-child(2) {
  grid-column:span 7;
}
.public-route-organisations .mma-org-school-media .mma-institutional-figure:nth-child(3) {
  grid-column:span 7;
}
.public-route-organisations .mma-org-school-media .mma-org-school-reel {
  grid-column:span 5;
  max-width:none;
}
/* Reserve a real clickable frame for the full-size newsletter BEFORE lazy
 * image decoding. The all-page QA caught an occasional 1–5px anchor in this
 * position on phone/ultrawide screens. */
.public-route-organisations .mma-org-school-media a[href$="mma-st-columbas-newsletter.jpeg"] {
  display:block;
  width:100%;
  min-height:48px;
  aspect-ratio:1087/550;
}
.public-route-organisations .mma-org-school-media img,
.public-route-organisations .mma-org-school-media video {
  display:block;
  box-sizing:border-box;
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center;
  background:#151c17;
}
.public-route-organisations .mma-org-school-media .mma-institutional-figure img {
  width:100%;
  height:auto!important;
  max-height:clamp(300px,55svh,690px);
  object-fit:contain!important;
  aspect-ratio:auto!important;
}
.public-route-organisations .mma-org-school-reel video {
  max-height:clamp(350px,75svh,710px);
  aspect-ratio:576/1024;
}
/* Keep each institutional chapter independently legible without overlong
 * dead zones on 720p laptops and zoomed-in displays. */
.public-route-about .about-page > :is(
 .mma-mission,.mma-mission-visual,.about-intro,.philosophy-grid,
 .practice-explainer,.founder-introduction
),
.public-route-schools .school-section,
.public-route-one-to-one .audience-page > :is(
 .one-to-one-intro,.one-to-one-details,.availability-note
),
.public-route-organisations .audience-page > :is(
 .organisation-intro,.mma-setting-evidence,.mma-visit-feedback,
 .mma-workshop-example,.delivery-options,.organisation-settings
) {
  min-height:var(--mma-composition-min);
  padding-block:var(--mma-composition-gap);
}
.public-route-organisations .audience-page > :is(
 .mma-setting-evidence,.organisation-settings
) {padding-block:clamp(92px,12svh,142px)}
.public-route-schools .school-hero {
  min-height:clamp(540px,76svh,830px);
  padding-block:clamp(70px,10svh,140px);
}
/* Homepage remains cinematic. Constrain subsequent editorial scenes only. */
.mma-home > :is(
 .mma-home-paths,.mma-home-method,.mma-home-anton,
 .mma-home-practice,.mma-home-programmes,.mma-home-real,
 .mma-home-online,.mma-home-close
) {
  min-height:clamp(530px,73svh,820px);
  padding-block:clamp(92px,12svh,142px);
}
.public-route-support .section,
.public-route-privacy .section,
.public-route-workbook .section {
  row-gap:clamp(38px,7svh,105px);
  padding-block:clamp(70px,10svh,125px);
}
@media(max-width:1199px) {
 .public-route-organisations .audience-page > .organisation-feature-media {
   justify-self:start;
   max-width:min(560px,100%);
 }
}
@media(max-width:900px) {
 .public-route-organisations .mma-org-school-media {
   grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 }
 .public-route-organisations .mma-org-school-media .mma-institutional-figure:nth-child(n) {
   grid-column:span 1;
 }
 .public-route-organisations .mma-org-school-media .mma-institutional-figure:first-child {
   grid-column:1/-1;
   max-width:480px;
 }
 .public-route-organisations .mma-org-school-media .mma-org-school-reel {
   max-width:360px;
 }
}
@media(max-width:700px) {
 .platform-ready:not(.member-mode) .public-route {
   --mma-composition-gap:clamp(54px,9svh,94px);
   --mma-composition-min:0px;
 }
 .public-route-organisations .mma-org-school-media {
   grid-template-columns:minmax(0,1fr);
   gap:24px;
 }
 .public-route-organisations .mma-org-school-media .mma-institutional-figure:nth-child(n) {
   grid-column:1;
   justify-self:start;
 }
 .public-route-organisations .mma-org-school-media .mma-institutional-figure:first-child {
   max-width:410px;
 }
 .public-route-organisations .mma-org-school-media .mma-org-school-reel {
   max-width:360px;
 }
 .public-route-organisations .organisation-feature-media {
   padding:12px!important;
 }
 .mma-home > :is(.mma-home-paths,.mma-home-method,.mma-home-anton,
  .mma-home-practice,.mma-home-programmes,.mma-home-real,.mma-home-online,.mma-home-close) {
   min-height:0;
   padding-block:clamp(64px,10svh,100px);
 }
}
@media(prefers-reduced-motion:reduce) {
 .public-route img,.mma-home img {transition:none!important}
}
