/* Mobile-first centering + responsive images (added by ChatGPT) */
html, body { max-width: 100%; overflow-x: hidden; }

body{
  margin:0 !important;
  padding:16px !important;
  text-align:center !important;
  font-family: Arial, Helvetica, sans-serif;
}

/* Center all common text blocks and neutralize PDF-export padding/indent */
p, h1, h2, h3, h4, h5, h6,
.s17, .s18, .s19, .s20, .s21, .top_nav, .nav{
  text-align:center !important;
  text-indent:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Keep paragraphs readable */
p{ max-width: 900px; line-height: 1.5; }

/* Responsive images */
img{
  max-width:100% !important;
  height:auto !important;
  display:block;
  margin:0 auto;
}

/* Turn common image rows into responsive flex rows */
p.s21{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:16px !important;
  margin-top:16px !important;
  margin-bottom:6px !important;
}
p.s21 span{ display:block !important; }

/* Keep two-up look on desktop when possible */
@media (min-width: 768px){
  p.s21 img{ max-width: 45% !important; }
}

/* Some exports put labels far right/left; center them */
.s20{ text-align:center !important; padding-left:0 !important; }

/* Global emphasis updates */
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

.label,
.before,
.after {
  font-weight: 700;
}
