/**
 * VLMS Global Fix Stylesheet
 * Fixes for static PHP export — replaces missing LiteSpeed/WordPress/Elementor runtime behaviors
 * Covers: nav dropdowns, logo, header, footer, visual consistency, image loading
 */

/* ===================================================
   0. GOOGLE FONTS — exact fonts used on valiantlifecare.com
   Primary/headings: DM Sans
   Display/hero: Forum
   Decorative: Nothing You Could Do
   =================================================== */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,200;0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Forum&family=Nothing+You+Could+Do&display=swap');

/* ===================================================
   1. BRAND VARIABLES — exact values from elementor-kit-5
      sourced from live elementor-post-5 CSS
   =================================================== */
:root {
  /* Elementor global colors (exact from live site) */
  --e-global-color-vamtam_accent_1:          #0045AA;
  --e-global-color-vamtam_accent_2:          #C8F8A9;
  --e-global-color-vamtam_accent_3:          #C1DBFF;
  --e-global-color-vamtam_accent_4:          #F8F7F3;
  --e-global-color-vamtam_accent_5:          #FFFFFF;
  --e-global-color-vamtam_accent_6:          #000000;
  --e-global-color-vamtam_accent_7:          #0000001A;
  --e-global-color-vamtam_accent_8:          #00000099;
  --e-global-color-vamtam_sticky_header_bg_color: #0045AA;
  --e-global-color-0e53263:                  #FFFFFF80;
  --e-global-color-cd36427:                  #0045AA;
  --e-global-color-597ed21:                  #000000BF;
  --e-global-color-d8fe409:                  #DAE9FF;

  /* Elementor global typography — exact from live site */
  --e-global-typography-vamtam_primary_font-font-family: "DM Sans";
  --e-global-typography-vamtam_primary_font-font-size:   15px;
  --e-global-typography-vamtam_primary_font-font-weight: 400;
  --e-global-typography-vamtam_primary_font-line-height: 1.5em;

  --e-global-typography-vamtam_h1-font-family: "DM Sans";
  --e-global-typography-vamtam_h1-font-size:   46px;
  --e-global-typography-vamtam_h1-font-weight: 400;
  --e-global-typography-vamtam_h1-line-height: 1.2em;

  --e-global-typography-vamtam_h2-font-family: "DM Sans";
  --e-global-typography-vamtam_h2-font-size:   40px;
  --e-global-typography-vamtam_h2-font-weight: 300;
  --e-global-typography-vamtam_h2-line-height: 1.2em;

  --e-global-typography-vamtam_h3-font-family: "DM Sans";
  --e-global-typography-vamtam_h3-font-size:   30px;
  --e-global-typography-vamtam_h3-font-weight: 400;
  --e-global-typography-vamtam_h3-line-height: 1.2em;

  --e-global-typography-vamtam_h4-font-family: "DM Sans";
  --e-global-typography-vamtam_h4-font-size:   24px;
  --e-global-typography-vamtam_h4-font-weight: 300;
  --e-global-typography-vamtam_h4-line-height: 1.4em;

  --e-global-typography-vamtam_h5-font-family: "DM Sans";
  --e-global-typography-vamtam_h5-font-size:   20px;
  --e-global-typography-vamtam_h5-font-weight: 400;
  --e-global-typography-vamtam_h5-line-height: 1.4em;

  --e-global-typography-vamtam_h6-font-family: "DM Sans";
  --e-global-typography-vamtam_h6-font-size:   16px;
  --e-global-typography-vamtam_h6-font-weight: 400;
  --e-global-typography-vamtam_h6-line-height: 1.2em;

  /* Forum — display/hero typography */
  --e-global-typography-1c16242-font-family: "Forum";
  --e-global-typography-1c16242-font-size:   56px;
  --e-global-typography-1c16242-font-weight: 400;
  --e-global-typography-1c16242-line-height: 1em;

  --e-global-typography-aa3d2ee-font-family: "Forum";
  --e-global-typography-aa3d2ee-font-size:   21px;
  --e-global-typography-aa3d2ee-font-weight: 400;
  --e-global-typography-aa3d2ee-line-height: 1.4em;

  /* Nothing You Could Do — decorative */
  --e-global-typography-8f74279-font-family: "Nothing You Could Do";
  --e-global-typography-8f74279-font-size:   20px;
  --e-global-typography-8f74279-font-weight: 400;
  --e-global-typography-8f74279-line-height: 1.2em;

  /* Other Elementor typography tokens */
  --e-global-typography-47d0553-font-family: "DM Sans";
  --e-global-typography-47d0553-font-size:   16px;
  --e-global-typography-47d0553-font-weight: 500;
  --e-global-typography-47d0553-line-height: 1.2em;

  --e-global-typography-6cc3f6e-font-family: "DM Sans";
  --e-global-typography-6cc3f6e-font-size:   14px;
  --e-global-typography-6cc3f6e-font-weight: 500;
  --e-global-typography-6cc3f6e-line-height: 1em;

  --e-global-typography-798d94d-font-family: "DM Sans";
  --e-global-typography-798d94d-font-size:   12px;
  --e-global-typography-798d94d-font-weight: 500;
  --e-global-typography-798d94d-line-height: 1em;

  --e-global-typography-82eb0df-font-family: "DM Sans";
  --e-global-typography-82eb0df-font-size:   66px;
  --e-global-typography-82eb0df-font-weight: 200;
  --e-global-typography-82eb0df-line-height: 1em;

  --e-global-typography-d778ca5-font-size:   12px;
  --e-global-typography-d778ca5-line-height: 1.4em;

  --e-global-typography-0c1fb19-font-size:   17px;
  --e-global-typography-0c1fb19-font-weight: 400;
  --e-global-typography-0c1fb19-line-height: 1.5em;

  /* VLMS utility aliases */
  --vlms-blue:       #0045AA;
  --vlms-green:      #C8F8A9;
  --vlms-teal:       #0F3D3A;
  --vlms-white:      #FFFFFF;
  --vlms-black:      #000000;
  --vlms-text:       #000000;
  --vlms-light-bg:   #F8F7F3;
  --vlms-shadow:     0 8px 32px rgba(0,0,0,.12);
  --vlms-radius:     8px;
}

/* ===================================================
   1b. ELEMENTOR ANIMATION FIX — make invisible elements visible
   Static export lacks Elementor's IntersectionObserver JS that
   triggers scroll animations. Without it, elements with
   'elementor-invisible' stay hidden forever = blank spaces.
   =================================================== */
.elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Apply DM Sans as base font everywhere — matches live site body */
body,
.elementor-widget-container,
.elementor-element {
  font-family: "DM Sans", sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title {
  font-family: "DM Sans", sans-serif;
}

/* Forum for display headings */
.elementor-element[data-settings*="1c16242"] .elementor-heading-title,
.elementor-element[data-settings*="aa3d2ee"] .elementor-heading-title {
  font-family: "Forum", serif;
}

/* Nothing You Could Do for cursive decorative elements */
.elementor-element[data-settings*="8f74279"] .elementor-heading-title,
.elementor-element[data-settings*="8f74279"] * {
  font-family: "Nothing You Could Do", cursive;
}

/* ===================================================
   2. LOGO FIX — crisp SVG, correct size, alt
   =================================================== */
.vlms-header__logo img,
.elementor-location-header img[src*="Valiant-Lifecare-Logo"],
header img[src*="Valiant-Lifecare-Logo"] {
  width: auto !important;
  max-width: 138px !important;
  height: auto !important;
  max-height: 64px !important;
  object-fit: contain;
  display: block;
}

/* Prevent placeholder grey boxes on any remaining lazy images */
img[src=""],
img:not([src]) {
  min-height: 1px;
  visibility: hidden;
}

/* ===================================================
   3. NAV — old Elementor nav hidden, custom header takes over
   (See vlms-header.css for the replacement)
   =================================================== */

/* Old Elementor nav/header CSS removed — replaced by vlms-header.css */

/* ===================================================
   5. FOOTER — consistent across all pages
   =================================================== */

.elementor-location-footer a {
  transition: color 0.15s;
}
.elementor-location-footer a:hover {
  color: var(--vlms-green) !important;
  text-decoration: none;
}

/* Social icons in footer — make them visible if missing images */
.elementor-location-footer .elementor-social-icon {
  background-color: rgba(255,255,255,0.15) !important;
  border-radius: 50%;
  transition: background 0.2s;
}
.elementor-location-footer .elementor-social-icon:hover {
  background-color: var(--vlms-green) !important;
}
.elementor-location-footer .elementor-social-icon i {
  color: var(--vlms-white) !important;
}

/* Certification badges */
.elementor-location-footer img[src*="Certification"] {
  filter: brightness(0) invert(1);
  opacity: 0.85;
  transition: opacity 0.2s;
}
.elementor-location-footer img[src*="Certification"]:hover {
  opacity: 1;
}

/* ===================================================
   6. BUTTONS — scoped CTA styling
   Only style specific CTA buttons green, NOT all .elementor-button
   (live site leaves most in-page buttons transparent/default)
   =================================================== */

/* Reset: ensure in-page elementor buttons keep their original style */
.elementor-button-wrapper .elementor-button,
a.elementor-button,
button.elementor-button {
  transition: background 0.2s, color 0.2s, border-color 0.2s, transform 0.1s;
}

/* Service category pills (services.php) — transparent bg, black text, no border
   These are the horizontal navigation pills: Business Consulting, Marketing & Sales, etc.
   Live site: background-color: rgba(0,0,0,0), color: rgb(0,0,0), border: none */
.elementor-element[data-id="b3395fd"] .elementor-button,
.elementor-element[data-id="4ff241b"] .elementor-button,
.elementor-element[data-id="93d766d"] .elementor-button,
.elementor-element[data-id="f576585"] .elementor-button {
  background-color: transparent !important;
  color: #000 !important;
  border: none !important;
  border-bottom: 1px solid transparent !important;
  border-radius: 0 !important;
  padding: 0 30px 20px 30px !important;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.2;
}
.elementor-element[data-id="b3395fd"] .elementor-button:hover,
.elementor-element[data-id="4ff241b"] .elementor-button:hover,
.elementor-element[data-id="93d766d"] .elementor-button:hover,
.elementor-element[data-id="f576585"] .elementor-button:hover {
  background-color: transparent !important;
  color: #0045AA !important;
  border-bottom-color: #0045AA !important;
}

/* General reset: vamtam-icon-pos-row buttons (category pills with left icon)
   should NOT get green CTA styling. Only vamtam-icon-pos-row-REVERSE gets green. */
.vamtam-icon-pos-row:not(.vamtam-icon-pos-row-reverse) .elementor-button {
  background-color: transparent !important;
  color: #000 !important;
  border: none !important;
  border-radius: 0 !important;
}

/* Green CTA buttons — only in the bottom CTA strip (Schedule a Consultation)
   and specific standalone CTA widgets with vamtam-icon-pos-row-reverse */
.elementor-element[data-id="50ab1c16"] .elementor-button,
.vamtam-icon-pos-row-reverse .elementor-button {
  background-color: var(--vlms-green) !important;
  color: var(--vlms-blue) !important;
  border: 2px solid var(--vlms-green) !important;
  border-radius: 6px !important;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.elementor-element[data-id="50ab1c16"] .elementor-button:hover,
.vamtam-icon-pos-row-reverse .elementor-button:hover {
  background-color: var(--vlms-blue) !important;
  color: var(--vlms-white) !important;
  border-color: var(--vlms-blue) !important;
  transform: translateY(-1px);
}

/* ===================================================
   7. FORMS — visual consistency
   =================================================== */

.elementor-form .elementor-field-group input,
.elementor-form .elementor-field-group select,
.elementor-form .elementor-field-group textarea {
  border: 1.5px solid #D0D7E5 !important;
  border-radius: 6px !important;
  padding: 10px 14px !important;
  font-size: 15px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.elementor-form .elementor-field-group input:focus,
.elementor-form .elementor-field-group select:focus,
.elementor-form .elementor-field-group textarea:focus {
  border-color: var(--vlms-blue) !important;
  box-shadow: 0 0 0 3px rgba(0,69,170,.12) !important;
  outline: none;
}

/* Form submit button - green bg with blue text (matches live site) */
.elementor-form button[type="submit"],
.elementor-form input[type="submit"] {
  background-color: var(--vlms-green) !important;
  color: var(--vlms-blue) !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 32px !important;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s, transform 0.1s;
}
.elementor-form button[type="submit"]:hover,
.elementor-form input[type="submit"]:hover {
  background-color: var(--vlms-blue) !important;
  color: var(--vlms-white) !important;
  transform: translateY(-1px);
}

/* Form success/error messages */
.elementor-message.elementor-message-success {
  background: #E6F9E6;
  border: 1px solid #5CB85C;
  color: #2D6A2D;
  border-radius: 6px;
  padding: 12px 16px;
  margin-top: 16px;
}
.elementor-message.elementor-message-danger {
  background: #FFF0F0;
  border: 1px solid #E74C3C;
  color: #B03A2E;
  border-radius: 6px;
  padding: 12px 16px;
  margin-top: 16px;
}

/* ===================================================
   8. PAGE HERO SECTIONS — consistency
   =================================================== */

/* Ensure hero headings are sharp and large */
.elementor-widget-heading h1,
.elementor-widget-heading h2 {
  line-height: 1.2;
}

/* Page hero on inner pages */
.elementor-location-archive .elementor-widget-heading,
.elementor-page .elementor-widget-heading {
  letter-spacing: -0.02em;
}

/* ===================================================
   9. CARDS & SERVICE BOXES — visual consistency
   =================================================== */

/* Hover lift on cards */
.elementor-widget-image-box,
.elementor-widget-icon-box {
  transition: transform 0.2s, box-shadow 0.2s;
}
.elementor-widget-image-box:hover,
.elementor-widget-icon-box:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,69,170,.12);
}

/* ===================================================
   10. GENERAL UTILITY FIXES
   =================================================== */

/* Prevent horizontal scroll from broken elements */
body {
  overflow-x: hidden;
}

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Fix broken icon fonts that might display as squares */
.vamtam-theme-icon:empty,
.eicon:empty {
  display: none;
}

/* Fix missing icomoon icon font — icon-medicine-1 used in homepage USP bar.
   The icomoon font wasn't fully exported from WordPress; glyph \eadb is missing.
   Replace with an inline SVG medical cross icon that inherits color via CSS filter. */
.icon.icon-medicine-1 {
  font-family: inherit !important;  /* override broken icomoon reference */
}
.icon.icon-medicine-1::before {
  content: "" !important;
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230045AA'%3E%3Cpath d='M9 2v7H2v6h7v7h6v-7h7V9h-7V2z'/%3E%3C/svg%3E") no-repeat center/contain;
  vertical-align: middle;
}

/* Video widget placeholder (if video file is missing, hide gracefully) */
.st_trigger_button_container {
  z-index: 999;
}
.st_trigger_button_container video[src=""] {
  display: none;
}

/* WordPress admin bar — hide in production */
#wpadminbar {
  display: none !important;
}
html {
  margin-top: 0 !important;
}

/* ===================================================
   11. BLOG PAGES
   =================================================== */

/* Blog card thumbnails */
.elementor-post__thumbnail {
  overflow: hidden;
  border-radius: var(--vlms-radius) var(--vlms-radius) 0 0;
}
.elementor-post__thumbnail img {
  transition: transform 0.3s;
}
.elementor-post__thumbnail:hover img {
  transform: scale(1.04);
}

/* Blog post read more link */
.elementor-post__read-more {
  color: var(--vlms-blue) !important;
  font-weight: 600;
}
.elementor-post__read-more:hover {
  color: var(--vlms-teal) !important;
}

/* ===================================================
   12. RESPONSIVE FIXES
   =================================================== */

/* ===================================================
   13. CONTACT INFO CARDS — icon-box + arrow layout fix
   The card is an <a> flex container with two children:
     1. elementor-widget-icon-box  (icon + label + value)
     2. elementor-widget-icon      (arrow →)
   Without theme JS the flex direction defaults to column,
   stacking them vertically with a large gap.
   Fix: row layout, push arrow to the right, align center.
   =================================================== */

/* Card container — the clickable <a> wrapper */
a.e-con.e-flex[href].e-child:has(.elementor-widget-icon-box),
.e-con.e-flex.e-child:has(.elementor-widget-icon-box + .elementor-widget-icon) {
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 20px 20px !important;
  min-height: unset !important;
}

/* Icon-box side: grow to fill remaining space */
a.e-con.e-flex[href].e-child .elementor-widget-icon-box,
.e-con.e-flex.e-child .elementor-widget-icon-box {
  flex: 1 1 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Arrow icon: shrink to natural size, no margin push */
a.e-con.e-flex[href].e-child .elementor-widget-icon:last-child,
.e-con.e-flex.e-child .elementor-widget-icon:last-child {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: center !important;
}

/* Prevent the icon-box internal wrapper from going full-width and wrapping */
a.e-con.e-flex[href].e-child .elementor-icon-box-wrapper,
.e-con.e-flex.e-child .elementor-icon-box-wrapper {
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 12px !important;
}

/* Keep icon-box icon (phone/email/map) from stretching */
a.e-con.e-flex[href].e-child .elementor-icon-box-icon,
.e-con.e-flex.e-child .elementor-icon-box-icon {
  flex-shrink: 0 !important;
  margin: 0 !important;
}

/* Title and description tight, no extra margin */
a.e-con.e-flex[href].e-child .elementor-icon-box-content,
.e-con.e-flex.e-child .elementor-icon-box-content {
  margin: 0 !important;
  padding: 0 !important;
}
a.e-con.e-flex[href].e-child .elementor-icon-box-title,
.e-con.e-flex.e-child .elementor-icon-box-title {
  margin: 0 0 2px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--vlms-teal) !important;
}
a.e-con.e-flex[href].e-child .elementor-icon-box-description,
.e-con.e-flex.e-child .elementor-icon-box-description {
  margin: 0 !important;
  font-size: 15px !important;
  color: var(--vlms-text) !important;
  line-height: 1.4 !important;
}

/* Wider fallback for browsers without :has() support */
@supports not selector(:has(*)) {
  .elementor-widget-icon-box ~ .elementor-widget-icon {
    flex: 0 0 auto !important;
    align-self: center !important;
    margin-top: 0 !important;
  }
  .e-con.e-flex.e-child:not(.e-con-full--no-card) {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
}

@media (max-width: 1024px) {
  .elementor-location-header img[src*="Valiant-Lifecare-Logo"] {
    max-width: 138px !important;
  }
}

@media (max-width: 767px) {
  /* Mobile nav toggle — make sure it's visible */
  .elementor-menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  /* Mobile header padding */
  .elementor-location-header {
    padding: 8px 16px;
  }
}

/* ===================================================
   14. FOR-PROVIDERS PAGE — bottom section fixes
   Fixes broken "Our Impact" stats bar, feature cards,
   and full-bleed image section (elementor-2190)
   =================================================== */

/* --- "Our Impact" blue stats bar ---
   Parent: 89b6676 → blue box c5d8753, inner row c65ceb4
   Alternating structure: [divider 85b8783] [stat 8e6f684] [divider 26174ec] [stat c58fe90] [divider 3718971] [stat 625196f]
   Dividers are empty gradient containers used as vertical separators.
   Stats need flex-grow to fill space; dividers should be narrow lines. */
.elementor-2190 .elementor-element-c5d8753 {
  background-color: var(--e-global-color-vamtam_accent_1) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
.elementor-2190 .elementor-element-c65ceb4 {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 32px 40px !important;
}
/* Stat containers — grow to fill equal thirds */
.elementor-2190 .elementor-element-8e6f684,
.elementor-2190 .elementor-element-c58fe90,
.elementor-2190 .elementor-element-625196f {
  flex: 1 1 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 20px !important;
}
.elementor-2190 .elementor-element-8e6f684 h5,
.elementor-2190 .elementor-element-c58fe90 h5,
.elementor-2190 .elementor-element-625196f h5 {
  font-size: 42px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 6px !important;
  line-height: 1 !important;
}
/* The "Average revenue uplift" text is inside a stray <section> — strip it */
.elementor-2190 .elementor-element-75af312 section {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-2190 .elementor-element-75af312 section .max-w-6xl,
.elementor-2190 .elementor-element-75af312 section .grid {
  display: block !important;
  max-width: none !important;
  padding: 0 !important;
}
/* Stat label/description text */
.elementor-2190 .elementor-element-8e6f684 .muted,
.elementor-2190 .elementor-element-c58fe90 .muted,
.elementor-2190 .elementor-element-625196f .muted,
.elementor-2190 .elementor-element-75af312 .muted {
  font-size: 14px !important;
  color: rgba(255,255,255,0.8) !important;
  font-family: "DM Sans", sans-serif !important;
}
/* Divider lines between stats */
.elementor-2190 .elementor-element-85b8783,
.elementor-2190 .elementor-element-26174ec,
.elementor-2190 .elementor-element-3718971 {
  flex: 0 0 1px !important;
  width: 1px !important;
  min-width: 1px !important;
  max-width: 1px !important;
  background: rgba(255,255,255,0.25) !important;
  align-self: stretch !important;
  margin: 8px 0 !important;
}
/* "Our Impact" label — shown at start of the stats row */
.elementor-2190 .elementor-element-6ee6ec1 {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 20px 0 0 !important;
}
.elementor-2190 .elementor-element-a85312f .elementor-heading-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,0.7) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
}

/* --- Light blue divider band (9170197 / bcf9bb9) --- */
.elementor-2190 .elementor-element-9170197 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.elementor-2190 .elementor-element-bcf9bb9 {
  background-color: var(--e-global-color-vamtam_accent_3) !important; /* #C1DBFF */
  min-height: 80px !important;
  border-radius: 0 !important;
}

/* --- Feature cards grid (682a6a8 section) ---
   Structure: 682a6a8 > e-con-inner > 5cc16de > [15e4a24 (HEDIS left), d500c08 (right col)]
   5cc16de is flex column, but we override to 2-col grid for 15e4a24 + d500c08 */
.elementor-2190 .elementor-element-682a6a8 {
  margin-bottom: 60px !important;
}
.elementor-2190 .elementor-element-5cc16de {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
  align-items: stretch !important;
}
/* Left HEDIS card — blue background + image */
.elementor-2190 .elementor-element-15e4a24 {
  background-color: var(--e-global-color-vamtam_accent_1) !important;
  background-image: url(assets/images/GettyImages-1364777011-1.png) !important;
  background-size: cover !important;
  background-position: center right !important;
  border-radius: 8px !important;
  padding: 30px !important;
  min-height: 300px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  position: relative !important;
}
.elementor-2190 .elementor-element-15e4a24::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0,69,170,0.75) !important;
  border-radius: 8px !important;
  z-index: 0 !important;
}
.elementor-2190 .elementor-element-15e4a24 > * {
  position: relative !important;
  z-index: 1 !important;
}
.elementor-2190 .elementor-element-15e4a24 h2 {
  color: #fff !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
.elementor-2190 .elementor-element-15e4a24 strong {
  color: var(--e-global-color-vamtam_accent_2) !important;
}
/* Right column — 3 cards stacked */
.elementor-2190 .elementor-element-d500c08 {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}
/* Increased Profitability card (42a3d07 inner, dbd27b0 outer) */
.elementor-2190 .elementor-element-42a3d07,
.elementor-2190 .elementor-element-dbd27b0 {
  background-color: var(--e-global-color-vamtam_accent_3) !important; /* #C1DBFF light blue */
  border-radius: 8px !important;
  padding: 28px !important;
  min-height: 160px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
/* Image card (3ce8357 — has bg-image) */
.elementor-2190 .elementor-element-3ce8357 {
  background-image: url(assets/images/valiant-lifecare-for-providers.jpeg) !important;
  background-size: cover !important;
  background-position: center right !important;
  border-radius: 8px !important;
  padding: 28px !important;
  min-height: 180px !important;
}
/* Clinical text + Risk Reduction (b52f813 / 120db83) */
.elementor-2190 .elementor-element-120db83 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
}
.elementor-2190 .elementor-element-b52f813 {
  background-color: var(--e-global-color-vamtam_accent_2) !important; /* green #C8F8A9 */
  border-radius: 8px !important;
  padding: 28px !important;
  min-height: 200px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
.elementor-2190 .elementor-element-b52f813 h5 {
  color: #0F3D3A !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}
/* Strip stray Tailwind wrappers (p-6, bg-blue-50, rounded-xl, py-16) */
.elementor-2190 .p-6,
.elementor-2190 .p-6.rounded-xl {
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}
.elementor-2190 section.py-8,
.elementor-2190 section.py-16 {
  padding: 0 !important;
  background: transparent !important;
}
.elementor-2190 section.py-8 .max-w-6xl,
.elementor-2190 section.py-16 .max-w-6xl {
  max-width: none !important;
  padding: 0 !important;
}
.elementor-2190 section.py-8 .grid,
.elementor-2190 section.py-16 .grid {
  display: block !important;
}
/* Muted/small text utility classes */
.elementor-2190 .muted {
  color: rgba(0,0,0,0.55) !important;
  font-family: "DM Sans", sans-serif !important;
}
.elementor-2190 .text-sm {
  font-size: 14px !important;
  line-height: 1.5 !important;
}
/* Feature card headings */
.elementor-2190 .elementor-element-dbd27b0 h4,
.elementor-2190 .elementor-element-b52f813 h4 {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #1a1a2e !important;
  margin: 0 0 10px !important;
}
.elementor-2190 .elementor-element-dbd27b0 .muted {
  color: #555 !important;
}

/* --- Full-bleed image section (bfcf61a / 5c0249a) --- */
.elementor-2190 .elementor-element-5c0249a {
  background-image: url(assets/images/valiant-lifecare-for-providers.jpeg) !important;
  background-size: cover !important;
  background-position: center center !important;
  min-height: 60vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}
.elementor-2190 .elementor-element-5c0249a .elementor-element-33cb11a {
  position: relative !important;
  z-index: 2 !important;
}
/* Hexagon SVG decorations — make them visible */
.elementor-2190 .elementor-element-5c0249a .elementor-icon svg path[fill="#"] {
  fill: rgba(255,255,255,0.3) !important;
}

/* Responsive */
@media (max-width: 1024px) {
  .elementor-2190 .elementor-element-5cc16de {
    grid-template-columns: 1fr !important;
  }
  .elementor-2190 .elementor-element-120db83 {
    grid-template-columns: 1fr !important;
  }
  .elementor-2190 .elementor-element-c65ceb4 {
    padding: 24px 20px !important;
  }
  .elementor-2190 .elementor-element-8e6f684 h5,
  .elementor-2190 .elementor-element-c58fe90 h5,
  .elementor-2190 .elementor-element-625196f h5 {
    font-size: 32px !important;
  }
}

/* ===================================================
   15. REVENUE CYCLE MANAGEMENT PAGE — bottom section
       Elementor page ID: elementor-250
       Fixes: "Our Experts" contact section, blue form box,
       Tailwind inline classes (text-slate-600, leading-relaxed, etc.)
   =================================================== */

/* --- Tailwind utility fallbacks (RCM page inline classes) --- */
.elementor-250 .text-slate-600 { color: #475569; }
.elementor-250 .leading-relaxed { line-height: 1.625; }
.elementor-250 .mb-6 { margin-bottom: 1.5rem; }
.elementor-250 .mb-2 { margin-bottom: 0.5rem; }
.elementor-250 .mt-3 { margin-top: 0.75rem; }
.elementor-250 .font-semibold { font-weight: 600; }
.elementor-250 .text-blue-100 { color: #dbeafe; }
.elementor-250 .bg-blue-50 { background-color: #eff6ff; }
.elementor-250 .p-6 { padding: 1.5rem; }
.elementor-250 .rounded-xl { border-radius: 0.75rem; }
.elementor-250 .text-sm { font-size: 0.875rem; }
.elementor-250 .grid { display: grid; }
.elementor-250 .gap-6 { gap: 1.5rem; }
.elementor-250 .bg-white { background-color: #fff; }
.elementor-250 .shadow-sm { box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05); }

/* --- f53b1cb: outer "Our Experts" section — two-column row layout --- */
.elementor-250 .elementor-element-f53b1cb {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 40px !important;
  max-width: 1280px !important;
  margin: 60px auto !important;
  padding: 0 32px !important;
  box-sizing: border-box !important;
}
.elementor-250 .elementor-element-f53b1cb > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 40px !important;
  width: 100% !important;
}

/* --- 448b4b0: left column — heading + email contact cards (55% wide) --- */
.elementor-250 .elementor-element-448b4b0 {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 400px !important;
  min-width: 0 !important;
  padding: 0 !important;
  min-height: unset !important;
}

/* --- ee99cab: "Contact Us" label chip --- */
.elementor-250 .elementor-element-ee99cab .elementor-widget-container {
  display: inline-block !important;
  background: var(--e-global-color-vamtam_accent_3) !important;
  padding: 2px 10px 3px !important;
  border-radius: 4px !important;
  margin-bottom: 12px !important;
}
.elementor-250 .elementor-element-ee99cab .elementor-heading-title {
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: #0045AA !important;
  margin: 0 !important;
}

/* --- aee7f60: "Our Experts Are Ready to Work With You" heading --- */
.elementor-250 .elementor-element-aee7f60 {
  width: 100% !important;
  max-width: 600px !important;
}
.elementor-250 .elementor-element-aee7f60 .elementor-heading-title {
  font-family: "Forum", serif !important;
  font-size: 42px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #0F3D3A !important;
  margin: 0 0 16px !important;
}

/* --- 7f9ea1d: subheading text under main heading --- */
.elementor-250 .elementor-element-7f9ea1d .elementor-heading-title {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #555 !important;
  line-height: 1.6 !important;
  margin: 0 0 28px !important;
}

/* --- 9a9c269: email contact cards column wrapper --- */
.elementor-250 .elementor-element-9a9c269 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 0 !important;
  width: 100% !important;
}

/* --- fb723ef / fe2048b / bd90836: individual contact link cards --- */
.elementor-250 .elementor-element-fb723ef,
.elementor-250 .elementor-element-fe2048b,
.elementor-250 .elementor-element-bd90836 {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  border-radius: 8px !important;
  padding: 20px !important;
  margin: 0 !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: background-color 0.2s !important;
}
.elementor-250 .elementor-element-fb723ef,
.elementor-250 .elementor-element-bd90836 {
  background-color: var(--e-global-color-vamtam_accent_3) !important; /* #C1DBFF */
}
.elementor-250 .elementor-element-fe2048b {
  background-color: var(--e-global-color-vamtam_accent_5) !important; /* #fff */
  border: 1px solid #e8eff9 !important;
  margin-top: 0 !important;
}
.elementor-250 .elementor-element-fb723ef:hover,
.elementor-250 .elementor-element-fe2048b:hover,
.elementor-250 .elementor-element-bd90836:hover {
  background-color: var(--e-global-color-vamtam_accent_2) !important; /* #C8F8A9 */
}

/* --- e0a86fa: right column — consultation box wrapper (45% wide) --- */
.elementor-250 .elementor-element-e0a86fa {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 320px !important;
  min-width: 0 !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: unset !important;
  order: 0 !important; /* remove the -99999 order hack */
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 5px 20px rgba(0,0,0,.10) !important;
}

/* --- 70533a6: blue header of consultation box --- */
.elementor-250 .elementor-element-70533a6 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  background-color: #0045AA !important;
  border-radius: 8px 8px 0 0 !important;
  padding: 20px !important;
  min-height: unset !important;
}
.elementor-250 .elementor-element-70533a6 img {
  height: 40px !important;
  width: auto !important;
}
.elementor-250 .elementor-element-70533a6 h5.elementor-heading-title {
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  margin: 0 !important;
}
/* Hide the decorative send icon (it's absolutely-positioned and floats oddly) */
.elementor-250 .elementor-element-e2e5f90 {
  display: none !important;
}

/* --- 10bbdd9: form container (white area below blue header) --- */
.elementor-250 .elementor-element-10bbdd9 {
  background-color: #fff !important;
  border-radius: 0 0 8px 8px !important;
  padding: 24px 28px !important;
  box-shadow: none !important;
  margin: 0 !important;
}

/* --- Form field styling inside the consultation form --- */
.elementor-250 .elementor-element-10bbdd9 .elementor-form-fields-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px 16px !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-field-group {
  margin-bottom: 0 !important;
}
/* Full-width fields: email, phone, message, submit */
.elementor-250 .elementor-element-10bbdd9 .elementor-field-group-email,
.elementor-250 .elementor-element-10bbdd9 .elementor-field-group-field_1dac9e8,
.elementor-250 .elementor-element-10bbdd9 .elementor-field-group-message,
.elementor-250 .elementor-element-10bbdd9 .elementor-field-type-submit {
  grid-column: 1 / -1 !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-field-label {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #333 !important;
  margin-bottom: 4px !important;
  display: block !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-field-textual {
  width: 100% !important;
  padding: 9px 12px !important;
  font-size: 14px !important;
  font-family: "DM Sans", sans-serif !important;
  border: 1.5px solid #d1d9e8 !important;
  border-radius: 6px !important;
  background: #f8f9fc !important;
  color: #1a1a2e !important;
  outline: none !important;
  box-sizing: border-box !important;
  transition: border-color .2s !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-field-textual:focus {
  border-color: #0045AA !important;
  background: #fff !important;
}
.elementor-250 .elementor-element-10bbdd9 textarea.elementor-field-textual {
  min-height: 90px !important;
  resize: vertical !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-button {
  width: 100% !important;
  padding: 12px 24px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  font-family: "DM Sans", sans-serif !important;
  background: #C8F8A9 !important;
  color: #0F3D3A !important;
  border: none !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: background .2s !important;
}
.elementor-250 .elementor-element-10bbdd9 .elementor-button:hover {
  background: #b5f095 !important;
}

/* --- c6c1626: blue CTA banner "Call Us Today to Schedule a Free Consultation" --- */
.elementor-250 .elementor-element-c6c1626 {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 20px !important;
  background-color: #0045AA !important;
  border-radius: 8px !important;
  padding: 25px !important;
  min-height: unset !important;
  border: 0.5px solid rgba(0,0,0,.1) !important;
  box-sizing: border-box !important;
}
.elementor-250 .elementor-element-bfa456c .elementor-heading-title {
  font-family: "Forum", serif !important;
  font-size: 32px !important;
  font-weight: 400 !important;
  color: #fff !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  max-width: 485px !important;
}

/* --- Responsive --- */
@media (max-width: 900px) {
  .elementor-250 .elementor-element-f53b1cb,
  .elementor-250 .elementor-element-f53b1cb > .e-con-inner {
    flex-direction: column !important;
  }
  .elementor-250 .elementor-element-448b4b0,
  .elementor-250 .elementor-element-e0a86fa {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .elementor-250 .elementor-element-aee7f60 .elementor-heading-title {
    font-size: 32px !important;
  }
  .elementor-250 .elementor-element-bfa456c .elementor-heading-title {
    font-size: 26px !important;
  }
}
