/* ==============================================================
   IIC OVERRIDE LAYER (priority 9999)
   Defeats Avada/Fusion column padding on mobile
   ============================================================== */

html, body {
  max-width: 100vw !important;
  overflow-x: hidden !important;
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}

@media (max-width: 768px) {
  /* Cancel Avada wrapper padding */
  body #wrapper #content,
  body #wrapper .fusion-row,
  body .fusion-fullwidth,
  body .fusion-builder-row,
  body .fusion-builder-row-inner,
  body .fusion-layout-column,
  body .fusion-column-wrapper,
  body.avada-responsive #main,
  body #main,
  body .post-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Container tight on mobile */
  .iic-container,
  .iic-nav-inner,
  .iic-hero-grid,
  .iic-about-grid,
  .iic-manpower-layout,
  .iic-maint-grid,
  .iic-pex-layout,
  .iic-aim-layout,
  .iic-insp-layout,
  .iic-ndt-explorer,
  .iic-training-layout,
  .iic-certs-inner,
  .iic-contact-grid,
  .iic-footer-grid,
  .iic-hero-strip,
  .iic-band-content,
  .iic-footer-bar,
  .iic-section-head {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* Section backgrounds edge-to-edge */
  .iic-hero,
  .iic-about,
  .iic-manpower,
  .iic-maintenance,
  .iic-project-exec,
  .iic-integrity,
  .iic-inspection,
  .iic-ndt,
  .iic-training,
  .iic-certs,
  .iic-contact,
  .iic-footer,
  .iic-band {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    width: 100vw !important;
    max-width: 100vw !important;
  }

  /* Navbar full-width */
  .iic-navbar {
    width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
  }

  /* Mobile navigation dropdown */
  .iic-nav-links {
    display: none !important;
    position: fixed;
    top: 60px;
    left: 0; right: 0;
    flex-direction: column !important;
    background: #fff;
    border-bottom: 1px solid var(--iic-line);
    padding: 12px 16px 20px !important;
    gap: 2px;
    z-index: 999;
    box-shadow: 0 8px 24px rgba(15, 23, 36, 0.1);
  }
  .iic-nav-links.open { display: flex !important; }
  .iic-nav-links a { padding: 14px 16px !important; font-size: 15px; border-radius: 4px; min-height: 48px; }
  .iic-nav-cta { margin-top: 8px; justify-content: center !important; }

  /* Hero buttons full-width */
  .iic-hero-actions {
    flex-direction: column !important;
    width: 100%;
  }
  .iic-btn-solid, .iic-btn-ghost {
    width: 100% !important;
    justify-content: center;
  }

  /* Hero panel — no inner margin on mobile */
  .iic-hero-panel {
    margin: 12px !important;
  }

  /* Angular frames narrower on mobile */
  .iic-angular-frame {
    width: 20px !important;
  }

  /* Sticky images → normal flow on mobile */
  .iic-manpower-visual,
  .iic-training-visual {
    position: relative !important;
    top: auto !important;
    height: 240px !important;
    min-height: 240px !important;
  }

  /* iOS fixed bg bug */
  .iic-band-bg,
  .iic-hero-visual {
    background-attachment: scroll !important;
  }

  /* Form inputs — prevent iOS zoom */
  .iic-field input,
  .iic-field select,
  .iic-field textarea {
    font-size: 16px !important;
  }

  /* Touch targets */
  .iic-btn-solid,
  .iic-btn-ghost,
  .iic-nav-links a,
  .iic-form-submit,
  .iic-contact-row,
  .iic-discipline summary,
  .iic-ndt-tab {
    min-height: 48px !important;
  }

  /* NDT tabs stack on mobile */
  .iic-ndt-tabs {
    grid-template-columns: 1fr !important;
  }

  /* Hero image visual — ensure it doesn't overflow */
  .iic-hero-right {
    min-height: 320px;
  }

  /* Hero title spacing tighter */
  .iic-hero {
    padding-top: 90px !important;
    padding-bottom: 40px !important;
  }
}

@media (max-width: 480px) {
  /* Really tight mobile */
  .iic-hero-strip {
    grid-template-columns: 1fr 1fr !important;
  }
  .iic-hero-title {
    font-size: 30px !important;
  }
  .iic-h2 {
    font-size: 26px !important;
  }
  .iic-logo-text-short { font-size: 13px !important; }
}
