/* v955 — Terms Conditions icon alignment root fix
   Problem: v936 removed/upsized direct heading icons with font-size:2.15em while v859/v860 still used the old framed-icon flex sizing.
   Result: icons visually overlapped heading text and sat too far left/down.
   Fix: final page-scoped rule loaded last; keep plain larger icons, but give them a stable flex box and alignment. */

html body.terms-icon-align-fix-v955 main .terms-article-section-v859 h2{
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 14px !important;
  margin: 0 0 12px !important;
  line-height: 1.22 !important;
}

/* Section heading icons: no square frame, but stable footprint so they don't hit text */
html body.terms-icon-align-fix-v955 main .terms-article-section-v859 h2 > span[aria-hidden="true"]{
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  flex: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
  font-size: 34px !important;
  line-height: 1 !important;
  transform: none !important;
  position: static !important;
}

/* Prevent old direct-icon global rule from making nav/breadcrumb icons oversized */
html body.terms-icon-align-fix-v955 main .terms-article-nav-v859 a span{
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* Keep compact spacing between sections after icon footprint correction */
html body.terms-icon-align-fix-v955 main .terms-article-section-v859{
  padding-top: 26px !important;
  padding-bottom: 26px !important;
}

/* Mobile: a bit smaller but same stable grid */
@media (max-width: 700px){
  html body.terms-icon-align-fix-v955 main .terms-article-section-v859 h2{
    grid-template-columns: 36px minmax(0, 1fr) !important;
    column-gap: 11px !important;
  }

  html body.terms-icon-align-fix-v955 main .terms-article-section-v859 h2 > span[aria-hidden="true"]{
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    font-size: 28px !important;
  }
}
