/* ==== 5.15.0 Mobile rhythm + readability (phones <=720px). Spacing only; no content change. ==== */
@media (max-width:720px){
  /* Section vertical rhythm: desktop 76-120px -> 52-56px on phones */
  main section.asm-help,main section.asm-houston,main section.asm-mission,main section.asm-pillars,
  main section.asm-blog,main section.asm-splits,main section.asm-testimonials,main section.asm-related,
  main section.sec,
  main section.tp-sec,main section.tw-sec,main section.katy-sec,main section.da-sec,main section.wt-sec,main section.wh-sec,main section.sl-sec{
    padding-top:52px !important;padding-bottom:52px !important}
  html body.cine-p18 :is(#hseo-cine,.cine-blocks) section.sec{padding-top:52px !important;padding-bottom:52px !important}
  main section.asm-testimonials.asm-testimonials--photo{padding-bottom:40px !important}
  /* Silo links band: 112px of stacked margin -> 32px */
  html body .asm-silo-links{margin:28px 14px !important;padding:24px 20px !important;border-radius:16px}
  html body .asm-silo-links h2{font-size:19px !important;margin-bottom:12px !important}
  main section.asm-innercta{padding-top:48px !important;padding-bottom:48px !important}
  main section.asm-cta{padding-top:40px !important;padding-bottom:40px !important}
  /* Section heads: tighter gap to the content below */
  .sec-head,.asm-sec-head,.asm-help__head{margin-bottom:26px !important}
  .asm-sec-head--center{margin-bottom:24px !important}
  /* Point-card grid top gap */
  .asm-pts-wrap{margin-top:22px !important}
  .asm-pts{gap:12px !important}
  /* Related: boxes — nested wrappers doubled the margins; empty comment-only <p> showed as blank bars */
  .asm-relbox{margin-top:20px !important;margin-bottom:20px !important;gap:10px !important}
  .asm-relbox .asm-relbox{display:contents !important}
  .asm-related__nav{margin-top:18px !important}
  .asm-relmore--guides{margin-top:24px !important}
  /* Prose rhythm */
  .asm-prose p,.prose-slot p{margin-bottom:14px}
  .asm-prose > :last-child,.prose-slot > :last-child{margin-bottom:0 !important}
}
/* Any width: hide empty paragraphs (e.g. <p><!-- auditpro-inlink --></p>) inside link boxes */
.asm-relbox p:empty,.asm-relbox > p:empty,.asm-linkcloud p:empty{display:none !important}

/* Readability: "invert" prose sits on the dark navy mission band in BOTH themes — list text was dark-on-dark */
section.asm-mission .asm-prose--invert :is(li,ol,ul,p),
section.asm-mission.asm-mission--solo .asm-prose--invert :is(li,p){color:rgba(232,242,241,.86) !important}
section.asm-mission .asm-prose--invert :is(li,p) strong{color:#fff !important}
section.asm-mission .asm-prose--invert a{color:#5eead4 !important}

/* 5.15.2 Phones: nothing wider than the screen; no text touching the edges */
@media (max-width:720px){
  main :is(.asm-houston__grid,.asm-help__cards,.asm-read__grid,.asm-mission__grid,.asm-pillars__grid){grid-template-columns:minmax(0,1fr) !important}
  main :is(.asm-houston__copy,.asm-hcard,.asm-read__body,.asm-read__side,.asm-mission__copy,.asm-mission__figure,.asm-pillar){min-width:0 !important;max-width:100% !important}
  main :is(.asm-prose,.asm-hcard,.asm-houston__copy,.asm-faq-item,.asm-read__body) {overflow-wrap:anywhere}
  main :is(.asm-houston__copy,.asm-hcard,.asm-faq-item) :is(summary,p,li,h2,h3){white-space:normal !important;max-width:100%}
  main :is(.asm-prose,.asm-hcard) table{display:block;max-width:100%;overflow-x:auto}
  /* containers that had 0 side padding */
  .asm-open__panel,
  .asm-ai-article section.sec > .wrap,
  .ol-premium .auto-container,
  .ol-premium section.ol-lower,
  .asm-live-premium .auto-container{padding-left:20px !important;padding-right:20px !important;box-sizing:border-box}
  .asm-open__panel{margin-left:0 !important;margin-right:0 !important;width:auto !important;max-width:100% !important}
}
/* "More … Resources" block nested inside a link cloud: was a 1400px flex item */
.asm-linkcloud > .asm-more-resources{flex:1 1 100% !important;width:100% !important;max-width:100% !important;min-width:0 !important;box-sizing:border-box}
.asm-more-resources ul{max-width:100%}
@media (max-width:720px){.asm-more-resources ul{columns:1 !important}}
@media (max-width:720px){ .asm-relbox{margin-top:10px !important;margin-bottom:10px !important} }

/* 5.16.1 Office pages: centre the "What we do from this office" intro over the service grid (desktop + mobile) */
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]){text-align:center}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > [class*=service-grid]{text-align:left}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > h2{margin-left:auto;margin-right:auto;max-width:920px}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > p{max-width:780px;margin-left:auto !important;margin-right:auto !important}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > [class*=eyebrow]{justify-content:center}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > h2 + [class*=rule],
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > [class*=divider]{margin-left:auto;margin-right:auto}
/* "More Helpful Resources" recovery block */
section.cine-recover{padding-left:20px;padding-right:20px}
section.cine-recover .sec-head{text-align:center;margin-left:auto;margin-right:auto;max-width:900px}
section.cine-recover .cine-recover__list{max-width:860px;margin-left:auto;margin-right:auto}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > h2{margin-left:auto !important;margin-right:auto !important}
section.cine-recover .cine-recover__list{margin-left:auto !important;margin-right:auto !important}

/* 5.16.4 asm-houston split: no huge top padding on the prose, image vertically centred */
.asm-houston__copy .asm-prose{padding-top:0 !important;padding-bottom:0 !important}
.asm-houston__grid{align-items:center}
/* tall infographics in the mission figure: show whole, capped */
.asm-mission__figure img{width:100%;height:auto !important;max-height:720px;object-fit:contain}
section:is(.tp-sec,.tw-sec,.katy-sec,.da-sec,.wt-sec,.wh-sec,.sl-sec):has(> [class*=service-grid]) > :not(h2):not(p):not([class*=grid]):not([class*=eyebrow]){margin-left:auto !important;margin-right:auto !important}

/* 5.16.8 check icons: one clear 20px teal circle + white tick (old mask rule made it a speck) */
:is(.asm-prose,.p18x) ul:not([class]) > li::before,.asm-prose ul li::before{-webkit-mask:none !important;mask:none !important;box-shadow:none !important;width:20px !important;height:20px !important;border-radius:50% !important;top:.22em !important;background:#0E9E8E url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat !important}
:is(.asm-prose,.p18x) ul:not([class]) > li,.asm-prose ul > li{padding-left:32px !important}
/* wrapper <li> that only holds a nested list: no second tick, no extra indent */
:is(.asm-prose,.p18x) li:has(> ul,> ol){padding-left:0 !important;list-style:none}
:is(.asm-prose,.p18x) li:has(> ul,> ol)::before{display:none !important}
:is(.asm-prose,.p18x) li > :is(ul,ol){padding-left:0 !important;margin-top:0}
.asm-prose ul[style*="padding-left"]{padding-left:0 !important}
