/* ION ENERGY — GLOBAL 15PX RESPONSIVE GUTTERS v1.1
 * Scope: public content only. Full-bleed section backgrounds remain full width.
 * Tablet + mobile normal content gutter: exactly 15px.
 */

/* Tablet: normalize the outer ION content shells themselves, then use padding
   for the 15px content edge. */
@media (min-width: 768px) and (max-width: 1024px) {
  body :is(
    .ion-hero__inner,
    .ione-hero__inner,
    .ion-calc__head,
    .ion-stats__inner,
    .ion-header-container,
    .ion-partner-header,
    .ionexec-wrap,
    .ion-inverter-intro-v1__inner,
    .ion-comparison__inner,
    .ion-benefits__inner,
    .ion-inverter-size__container,
    .ion-faq-plain-v4__container,
    .ion-latest-posts-v1__inner,
    .ion-check__wrap,
    .ion-compare__wrap,
    .ion-inv10__wrap,
    .ion-kw__container,
    .ion-warranty__container,
    .ion-why-clean__container,
    .abcw-container,
    .ionc-wrap,
    .ionwr-wrap,
    .iw-in,
    .abcs-in,
    .ione-why__inner,
    .ione-port__inner,
    .ion-service-area__inner,
    .ione-steps__inner,
    .ion-kb-intro-container,
    .ion-kb-digital-container,
    .ion-kb-cyber-safe-container,
    .ion-kb-weather-container,
    .ion-kb-roi-container,
    .ion-kb-fit-container,
    .ion-kb-fluid-container,
    .ion-kb-trust-container,
    .ion-trust-container,
    .ion-v5-container,
    .ion-v5-compare-container,
    .ion-v5-features-container,
    .ion-v5-pricing-container,
    .ion-v5-showcase-container,
    .ion-v5-steps-container,
    .ion-container,
    .ion-precheck-container,
    .ion-stage__inner,
    .ion-steps-container,
    .ion-table-container,
    .ion-tier-container
  ) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  body :is(.solar-ultimate-card, .solar-premium-canvas) {
    box-sizing: border-box !important;
    width: calc(100% - 30px) !important;
    max-width: none !important;
    margin-left: 15px !important;
    margin-right: 15px !important;
  }

  body.page-id-258 .site-main .elementor > .e-con-boxed > .e-con-inner,
  body.page-id-2510 .site-main .elementor > .e-con-boxed > .e-con-inner,
  body.page-id-26 .site-main .elementor > .e-con-boxed > .e-con-inner,
  body.page-id-26 .site-main .elementor > .elementor-element.elementor-element-47cd367 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/* Legacy content templates that had no responsive side gutter. */
@media (max-width: 1024px) {
  body.page-id-9862 .page-content,
  body.page-id-2461 .page-content,
  body.page-id-2422 .page-content,
  body.postid-1841 .page-content,
  body.postid-1843 .page-content {
    box-sizing: border-box !important;
    width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  body.page-id-9862 .page-content :is(p, h1, h2, h3, img),
  body.page-id-2461 .page-content :is(p, h1, h2, h3, img),
  body.page-id-2422 .page-content :is(p, h1, h2, h3, img),
  body.postid-1841 .page-content :is(p, h1, h2, h3, img),
  body.postid-1843 .page-content :is(p, h1, h2, h3, img) {
    box-sizing: border-box !important;
    max-width: 100% !important;
    overflow-wrap: anywhere;
  }
}

/* Package-and-product: keep full-width section surfaces while aligning their
   boxed content and lead form. */
@media (max-width: 1024px) {
  body.page-id-2510 .site-main .elementor > .e-con-boxed > .e-con-inner,
  body.page-id-2510 .elementor-form {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/* News index: cards and lower content were full width without a mobile gutter. */
@media (max-width: 767px) {
  body.page-id-26 .site-main .elementor > .elementor-element > .e-con-inner,
  body.page-id-26 .site-main .elementor > .elementor-element.elementor-element-47cd367 {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}
