/* V19 final layout guard — loads AFTER all per-page CSS */
html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
@media (min-width:1001px){
  .of-shell{width:min(1180px,calc(100% - 40px))!important}
  .oa-layout{grid-template-columns:minmax(0,930px) 210px!important;gap:28px!important}
  .oa-article{width:100%!important;max-width:930px!important}
  .oa-article>h1,.oa-article>h2,.oa-article>p,.oa-lead,.oa-dialogues,.oa-sitemap,.oa-faq,.oa-stats,.oa-proposal,.oa-nav,.oa-real-media,.of-insight{max-width:930px!important}
}
@media (max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body{font-size:16px!important}
  .of-shell{width:calc(100% - 24px)!important;max-width:none!important;margin:0 auto!important;padding:14px 0 40px!important}
  .oa-layout,.oa-article{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .oa-side{display:none!important}

  /* Hard-disable the desktop information diagram on phones. */
  .of-insight,.of-insight[class],[class~="of-insight"],[class*="of-insight--"]{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}

  .oa-article h1{max-width:100%!important;margin:0 0 18px!important;font-size:clamp(38px,11vw,54px)!important;line-height:1!important;letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:normal!important}
  .oa-kicker{margin:0 0 26px!important;font-size:9px!important;line-height:1.55!important}
  .oa-article h2{max-width:100%!important;margin:36px 0 14px!important;padding-top:14px!important;font-size:clamp(27px,8vw,38px)!important;line-height:1.08!important;letter-spacing:-.04em!important;overflow-wrap:normal!important;word-break:normal!important}
  .oa-article h3{font-size:22px!important;line-height:1.2!important}
  .oa-article p,.oa-lead,.speech p,.prevent p,.oa-siteitem p,.oa-faq details p{max-width:100%!important;font-size:16px!important;line-height:1.72!important;overflow-wrap:break-word!important;word-break:normal!important}
  .oa-lead{font-size:18px!important;line-height:1.68!important}

  /* Media becomes a plain vertical editorial card. */
  .oa-real-media,.oa-real-media--overview,.oa-real-media--service,.oa-real-media--trust{
    display:block!important;width:100%!important;max-width:100%!important;margin:22px 0 32px!important;border-radius:18px!important;overflow:hidden!important
  }
  .oa-real-media .oa-media-frame,.oa-real-media--overview .oa-media-frame,.oa-real-media--service .oa-media-frame,.oa-real-media--trust .oa-media-frame{
    display:block!important;position:relative!important;order:initial!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:4/3!important;border:0!important
  }
  .oa-real-media .oa-media-frame img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .oa-real-media figcaption,.oa-real-media--service figcaption,.oa-real-media--trust figcaption{
    display:flex!important;flex-direction:column!important;order:initial!important;width:100%!important;max-width:100%!important;padding:18px!important;border:0!important;border-top:1px solid var(--line)!important;background:#fffaf4!important
  }
  .oa-real-media figcaption:before{display:none!important}
  .oa-media-note{display:block!important;width:100%!important;margin:0 0 10px!important;padding:0!important;font-size:9px!important;line-height:1.35!important;letter-spacing:.14em!important}
  .oa-real-media figcaption>strong{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;font-size:25px!important;line-height:1.12!important;letter-spacing:-.035em!important}
  .oa-media-context,.oa-media-detail{display:block!important;width:100%!important;max-width:100%!important;margin:12px 0 0!important;padding:0!important;font-size:16px!important;line-height:1.68!important}
  .oa-media-chips,.oa-media-source,.oa-context-source{display:none!important}

  .oa-list,.oa-sitemap,.oa-stats,.oa-dialogues,.oa-faq,.oa-proposal,.oa-nav{width:100%!important;max-width:100%!important}
  .oa-list,.oa-sitemap,.oa-stats{grid-template-columns:1fr!important}
  .oa-list li,.oa-siteitem,.oa-stat{min-width:0!important}
  .oa-siteitem{grid-template-columns:34px minmax(0,1fr)!important;column-gap:12px!important;padding:16px!important}
  .oa-siteitem strong{font-size:17px!important}
  .dialogue-head{align-items:flex-start!important;flex-direction:column!important}
  .speech{margin:12px!important;padding:14px!important}
  .speaker{font-size:10px!important}
  .oa-proposal-head{align-items:flex-start!important;flex-direction:column!important}
  .oa-line,.oa-total{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}
}
