/* Text must fit its own column, rather than disappear behind an overflow mask. */
body.site-page main { --reading-gutter:clamp(16px,3vw,48px); }
body.site-page main :is(section,article,div,aside,li,blockquote) { min-inline-size:0; }
body.site-page main :is(h1,h2,h3,h4) {
  min-inline-size:0; max-inline-size:100%; white-space:normal !important;
  overflow-wrap:anywhere !important; word-break:normal; text-wrap:pretty;
}
body.site-page main :is(h1,h2,h3,h4) > span { white-space:normal; overflow-wrap:inherit; }
body.site-page main :is(p,li,blockquote,label,summary,a,button) { overflow-wrap:anywhere; }
body.site-page main :is(a,button) { min-inline-size:0; max-inline-size:100%; }
body.site-page main > section > .content-inner { max-inline-size:calc(100% - var(--reading-gutter) * 2); margin-inline:auto; }
body.site-page .accordion-trigger { min-inline-size:0; max-inline-size:100%; white-space:normal; }
body.site-page .accordion-trigger > span:first-child { min-inline-size:0; overflow-wrap:anywhere; }
body.site-page .accordion-trigger > span:last-child { flex-shrink:0; }
/* Preserve readable space when zoom/font preferences make the normal columns too tight. */
body.reading-compact main :is(.content-grid,.content-inner,.cas-hero-grid,.cas-intro-grid,.cas-recognition-stage,.cas-included-intro,.cas-included-list,.cas-example-grid,.cas-faq-grid,.cas-contact-grid,.website-hero-grid,.benefit-grid,.website-process-list,.redevelopment-intro-grid,.redevelopment-grid,.redevelopment-cta,.redevelopment-process-grid,.website-after-launch-intro,.website-after-launch-route,.website-faq-grid,.website-contact-grid,.about-hero-grid,.about-approach-grid,.audit-promotion-grid,.audit-hero__grid,.audit-human__grid,.audit-credit__inner,.audit-review__list,.audit-scope__list,.audit-deliverables__items,.thomas-stage-steps,.md-testimonials__stage,.md-testimonial,.home-faq-categories,.home-question-grid) {
  grid-template-columns:minmax(0,1fr) !important;
  gap:clamp(16px,3vw,40px);
}
body.reading-compact main :is(.cas-process-step,.redevelopment-process-card,.website-process-card) { grid-template-columns:minmax(0,1fr); }
body.reading-compact main :is(.cas-intro-copy,.cas-process-step,.cas-faq-heading,.website-faq-grid > div,.redevelopment-intro-grid > div,.md-testimonial,.audit-promotion-copy) { min-inline-size:0; max-inline-size:100%; }
body.reading-compact .md-testimonial { padding:clamp(16px,3vw,40px); }
body.reading-compact .md-testimonial__portrait { width:min(100%,10rem); justify-self:start; }
body.reading-compact .md-testimonials__people { display:flex; flex-wrap:wrap; gap:8px; }
body.reading-compact .md-testimonials__person { flex:0 0 auto; width:auto; max-width:100%; }
body.reading-compact .cas-recognition-stage { grid-template-areas:none; }
body.reading-compact .cas-recognition-stage > * { grid-area:auto; grid-column:auto; grid-row:auto; }
body.reading-compact .cas-recognition-stage :is(.cas-recognition-bridge,.cas-recognition-connections) { display:none; }
body.reading-compact :is(.cas-process-step,.redevelopment-process-card) > * { grid-column:auto; grid-row:auto; }
body.reading-compact :is(.cas-included-list,.cas-example-grid,.redevelopment-grid,.website-after-launch-route) > * { grid-column:auto; grid-row:auto; }
body.reading-compact .marcoplay-race-facts { grid-template-columns:minmax(0,1fr); }
@media(max-width:48rem) {
  body.site-page main :is(.cas-process-step,.cas-recognition-choice,.cas-recognition-problem,.cas-audience-list li) { padding-inline:clamp(12px,3vw,24px); }
}
/* Reset explicit desktop placements as well as the column count. */
body.reading-compact main :is(.content-inner,.content-grid,.cas-hero-grid,.cas-intro-grid,.cas-recognition-stage,.cas-included-intro,.cas-included-list,.cas-example-grid,.cas-faq-grid,.cas-contact-grid,.website-hero-grid,.benefit-grid,.website-process-list,.redevelopment-intro-grid,.redevelopment-grid,.redevelopment-cta,.redevelopment-process-grid,.website-after-launch-intro,.website-after-launch-route,.website-faq-grid,.website-contact-grid,.about-hero-grid,.about-approach-grid,.audit-promotion-grid,.audit-hero__grid,.audit-human__grid,.audit-credit__inner,.audit-review__list,.audit-scope__list,.audit-deliverables__items,.thomas-stage-steps,.md-testimonials__stage,.md-testimonial,.home-faq-categories,.home-question-grid) > * {
  grid-column:auto !important; grid-row:auto !important; grid-area:auto !important;
}
body.reading-compact .cas-intro :is(.cas-section-heading,.cas-intro-copy,.cas-intro-image) { transform:none !important; opacity:1 !important; }
body.site-page .cas-recognition-choice.is-active,body.site-page .cas-recognition-choice:hover,body.site-page .cas-recognition-problem.is-active,body.site-page .cas-recognition-problem.is-match { transform:translateY(-.08rem); }
body.site-page.page-not-found .not-found-main { padding-inline:var(--reading-gutter); }
body.site-page main :is(h1,h2,h3,h4) span { min-inline-size:0; max-inline-size:100%; white-space:normal !important; overflow-wrap:anywhere !important; }
body.site-page main :is(.page-button,.audit-button,.text-link) { white-space:normal !important; overflow-wrap:anywhere !important; flex-wrap:wrap; }
body.site-page main :is(.page-button,.audit-button,.text-link) > span { min-inline-size:0; max-inline-size:100%; white-space:normal !important; overflow-wrap:anywhere; }
body.reading-compact { --site-inline:clamp(16px,3vw,48px); --page-padding:clamp(16px,3vw,48px); }
body.reading-compact main .content-section { margin-inline:clamp(8px,1.2vw,16px); padding-inline:var(--reading-gutter) !important; }
body.reading-compact main :is(.cas-recognition-panel,.cas-intro-copy,.cas-process-step,.website-process-card,.redevelopment-process-card,.about-hero-copy,.redevelopment-cta,.audit-promotion-card,.audit-case__comparison-card,.audit-case__comparison-note,.home-story-copy) { padding-inline:clamp(12px,3vw,32px) !important; }
body.reading-compact :is(.cas-recognition-choice,.cas-recognition-problem) { grid-template-columns:auto minmax(0,1fr); gap:8px; padding-inline:12px !important; }
body.reading-compact :is(.cas-recognition-choice,.cas-recognition-problem) strong { min-inline-size:0; overflow-wrap:anywhere; }
body.reading-compact .audit-promotion-card { max-inline-size:100%; }
body.reading-compact .audit-promotion-card li { padding-inline-start:0; }
body.reading-compact #home-enquiry .actions { grid-template-columns:minmax(0,1fr); }
body.reading-compact #home-enquiry .discovery { height:auto !important; max-height:none; min-height:32rem; }
body.reading-compact #home-enquiry .chat-footer { max-height:none; }
body.reading-compact .section-2 :is(.content-card,.content-item,.content-grid,.content-inner) { min-inline-size:0; max-inline-size:100%; }
body.reading-compact .section-2 .content-card .home-section-heading span { display:inline; }
body.site-page main :is(h1,h2,h3,h4) { max-inline-size:100% !important; }
body.site-page main :is(.page-button,.audit-button,.text-link) { min-inline-size:0 !important; max-inline-size:100% !important; }
body.reading-compact :is(.cas-process-step,.redevelopment-process-card) > div { padding:clamp(12px,3vw,32px) !important; }
body.reading-compact .cas-process-list { padding-inline-start:0 !important; }
body.reading-compact .cas-process-route { display:none; }
body.reading-compact .cas-process-step::before { display:none; }
body.reading-compact :is(.marcoplay-invitation,.cas-pricing-copy,.cas-ownership-note) { padding-inline:clamp(12px,3vw,32px) !important; }
body.reading-compact .cas-ownership-note { grid-template-columns:minmax(0,1fr); }
body.reading-compact .cas-pricing-copy strong { display:inline; white-space:normal; overflow-wrap:anywhere; }
body.site-page main :is(h1,h2,h3,h4) { min-inline-size:0 !important; }
body.reading-compact .website-faq h2 { padding-inline:clamp(12px,3vw,32px); }
/* Tall text cards cannot safely tilt or slide beyond their gutters at high zoom. */
body.reading-compact main :is([data-reveal],.audit-hero__price,.md-testimonial,.cas-recognition-panel) { transform:none !important; }
body.reading-compact :is(.faq-category-panel-inner,.home-accordion-panel-inner,.faq-question-trigger,.home-faq-question-trigger,.faq-question-panel p,.home-faq-question-panel p) { padding-inline:clamp(12px,2.5vw,24px) !important; }
body.reading-compact :is(.faq-question-trigger,.home-faq-question-trigger) { gap:8px; }
body.reading-compact :is(.faq-question-trigger,.home-faq-question-trigger) > span:last-child { display:grid; place-items:center; inline-size:24px; block-size:24px; font-size:0; line-height:1; transform:none !important; }
body.reading-compact :is(.faq-question-trigger,.home-faq-question-trigger) > span:last-child::after { content:'+'; font-size:24px; }
body.reading-compact :is(.faq-question-trigger,.home-faq-question-trigger)[aria-expanded='true'] > span:last-child::after { content:'−'; }
