/* src/styles/compat.css — minimal reset for injected Elementor HTML */
.injected-html, .injected-html * { box-sizing: border-box; }

.injected-html img { max-width: 100%; height: auto; display: block; }
.injected-html h1, .injected-html h2, .injected-html h3,
.injected-html h4, .injected-html h5, .injected-html h6 { margin: 1em 0 .5em; }
.injected-html p { margin: .75rem 0; line-height: 1.6; }
.injected-html ul, .injected-html ol { padding-left: 1.25rem; margin: .75rem 0; }
.injected-html a { text-decoration: underline; }

.injected-html .elementor-section { margin: 1.25rem 0; }
.injected-html .elementor-row { margin-left: 0; margin-right: 0; }
.injected-html .elementor-column, 
.injected-html .elementor-container { max-width: 100%; }

/* Kill leftover "Skip to content" artifacts and visual-only bits */
.injected-html .skip-link,
.injected-html .elementor-screen-only { display: none !important; }
.injected-html .elementor-widget-wrap { width: 100%; }

/* If theme used light text on dark backgrounds, neutralize */
.injected-html [style*="color: #fff"], 
.injected-html [style*="color:#fff"] { color: inherit !important; }

/* Elementor grid basics */
.injected-html .elementor-section { 
  padding: 2rem 0; 
  clear: both;
  width: 100%;
}
.injected-html .elementor-container {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
  padding: 0 15px;
}
.injected-html .elementor-row { 
  display: flex; 
  flex-wrap: wrap; 
  margin: 0 -15px;
}
.injected-html .elementor-column {
  padding: 0 15px;
  width: 100%;
  box-sizing: border-box;
}
.injected-html .elementor-col-50 { flex: 0 0 50%; max-width: 50%; }
.injected-html .elementor-col-33 { flex: 0 0 33.333%; max-width: 33.333%; }
.injected-html .elementor-col-25 { flex: 0 0 25%; max-width: 25%; }
.injected-html .elementor-col-100 { flex: 0 0 100%; max-width: 100%; }
.injected-html .elementor-widget-wrap { width: 100%; }

/* Typography */
.injected-html h1, .injected-html h2, .injected-html h3,
.injected-html h4, .injected-html h5, .injected-html h6 {
  margin: 1em 0 .5em;
}
.injected-html p { margin: .75rem 0; line-height: 1.7; }

/* Buttons */
.injected-html a.elementor-button {
  display: inline-block;
  padding: .65rem 1rem;
  border: 1px solid currentColor;
  text-decoration: none;
}

/* Images */
.injected-html img { max-width: 100%; height: auto; display: block; }

/* Strip nav/header junk */
.injected-html .skip-link,
.injected-html .elementor-screen-only,
.injected-html .elementor-widget-navigator,
.injected-html nav, 
.injected-html header { display: none !important; }

/* Hard guard: even if markup lost some Elementor classes, make common blocks behave */
.injected-html [class*="elementor-container"] { display:flex; flex-wrap:wrap; gap:1rem; max-width:1200px; margin:0 auto; }
.injected-html [class*="elementor-row"] { display:flex; flex-wrap:wrap; gap:1rem; }
.injected-html [class*="elementor-column"] { flex:1 1 300px; padding:0 1rem; min-width:260px; }
.injected-html [class*="elementor-widget"] { margin:0 0 1rem 0; }

/* Reset potential Tailwind conflicts */
.injected-html,
[class*="elementor-"] {
  box-sizing: border-box !important;
}

/* Elementor container and row styles */
.elementor-container,
[class*="elementor-container"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 15px !important;
  width: 100% !important;
}

.elementor-row,
[class*="elementor-row"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1rem !important;
  margin: 0 !important;
  width: 100% !important;
}

.elementor-column,
[class*="elementor-column"] {
  flex: 1 1 300px !important;
  min-width: 260px !important;
  padding: 0 1rem !important;
  box-sizing: border-box !important;
}

/* Specific column widths */
.elementor-col-50,
[class*="elementor-col-50"] {
  flex: 0 0 calc(50% - 0.5rem) !important;
  max-width: calc(50% - 0.5rem) !important;
}

.elementor-col-33,
[class*="elementor-col-33"] {
  flex: 0 0 calc(33.333% - 0.67rem) !important;
  max-width: calc(33.333% - 0.67rem) !important;
}

.elementor-col-25,
[class*="elementor-col-25"] {
  flex: 0 0 calc(25% - 0.75rem) !important;
  max-width: calc(25% - 0.75rem) !important;
}

.elementor-col-100,
[class*="elementor-col-100"] {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

/* Widget and image styling */
.elementor-widget,
[class*="elementor-widget"] {
  margin: 0 0 1rem 0 !important;
}

.elementor-widget-image img,
[class*="elementor-widget-image"] img {
  display: block !important;
  margin: 0 auto !important;
}

.elementor-section {
  padding: 2rem 0 !important;
  clear: both !important;
  width: 100% !important;
}

/* Ensure images and badges are centered */
.injected-html .elementor-image,
[class*="elementor-image"] {
  text-align: center !important;
}

/* Tighten hero spacing and center badges a bit */
.injected-html .elementor-widget-image img { display:block; margin:0 auto; }
.injected-html .elementor-image { text-align:center; }

/* Hide leftover social/nav fragments at top */
.injected-html .elementor-social-icons,
.injected-html nav, .injected-html header { display:none !important; }