/* fv-container-compat.css — generated, pilot only.
   Re-targets the theme's legacy section/column selectors at Elementor containers.
   section->.e-con  container->.e-con-inner  column->.e-con  widget-wrap->collapsed */

/* Containers ship a KIT-DEFAULT 10px padding on every side; legacy sections
   and columns defaulted to 0 (columns got their gutter from the gap rule).
   Zero only the DEFAULT FALLBACK variable: explicit per-element padding sets
   --padding-top at (0,4,0) on the element itself and is untouched, and every
   theme rule keeps its original cascade position. */
.elementor .e-con { --container-default-padding-top: 0px; --container-default-padding-right: 0px;
  --container-default-padding-bottom: 0px; --container-default-padding-left: 0px; }

/* Reproduce Elementor's LEGACY column-gap rules against the converted DOM.
   Legacy: .elementor-column-gap-X > .elementor-column > .elementor-element-populated { padding: Npx }
   The converter tags each section container with fvgap-<name>; same (0,3,0)
   specificity as the legacy rule, so the theme's own overrides keep winning
   or losing exactly as they did. */
.fvgap-default > .e-con-inner > :where(.e-con-full) { --padding-top:10px; --padding-right:10px; --padding-bottom:10px; --padding-left:10px; }
.fvgap-default > :where(.e-con.e-con-full) { --padding-top:10px; --padding-right:10px; --padding-bottom:10px; --padding-left:10px; }
.fvgap-narrow > .e-con-inner > :where(.e-con-full) { --padding-top:5px; --padding-right:5px; --padding-bottom:5px; --padding-left:5px; }
.fvgap-narrow > :where(.e-con.e-con-full) { --padding-top:5px; --padding-right:5px; --padding-bottom:5px; --padding-left:5px; }
.fvgap-extended > .e-con-inner > :where(.e-con-full) { --padding-top:15px; --padding-right:15px; --padding-bottom:15px; --padding-left:15px; }
.fvgap-extended > :where(.e-con.e-con-full) { --padding-top:15px; --padding-right:15px; --padding-bottom:15px; --padding-left:15px; }
.fvgap-wide > .e-con-inner > :where(.e-con-full) { --padding-top:20px; --padding-right:20px; --padding-bottom:20px; --padding-left:20px; }
.fvgap-wide > :where(.e-con.e-con-full) { --padding-top:20px; --padding-right:20px; --padding-bottom:20px; --padding-left:20px; }
.fvgap-wider > .e-con-inner > :where(.e-con-full) { --padding-top:30px; --padding-right:30px; --padding-bottom:30px; --padding-left:30px; }
.fvgap-wider > :where(.e-con.e-con-full) { --padding-top:30px; --padding-right:30px; --padding-bottom:30px; --padding-left:30px; }
.fvgap-no > .e-con-inner > :where(.e-con-full) { --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px; }
.fvgap-no > :where(.e-con.e-con-full) { --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px; }

/* ELEMENTOR LEGACY RESPONSIVE DEFAULT (frontend.min.css):
   @media(max-width:1024px){ .elementor-section .elementor-container { flex-wrap: wrap } }
   Container-land is nowrap, so children with tablet width:100% get flex-SHRUNK
   side-by-side instead of wrapping onto their own lines (cards squeezed to 50%,
   doc -2,807px @1024, 2026-08-08). Only converted sections (tagged fvgap-*) get
   the emulation. --flex-wrap at (0,2,0): beats .elementor-element{--flex-wrap:initial}
   (0,1,0), loses to element-level settings (0,3,0) — same cascade as legacy. */
@media (max-width: 1024px) {
  .e-con[class*='fvgap-'] { --flex-wrap: wrap; }
  .e-con[class*='fvgap-'] > .e-con-inner { flex-wrap: wrap; }
}

/* Legacy .elementor-widget-wrap was flex ROW + WRAP with widgets at width:100%
   unless they opted into __width-auto — which is how button rows sat inline.
   A converted column container is flex-direction:column, so those rows stack.
   Scoped with :has() so only containers that actually hold an auto-width widget
   flip; a blanket flip cost +388px elsewhere. Axis is forced back to start because
   the column's vertical justify-content becomes HORIZONTAL once direction flips. */
/* Non-auto widgets in a row-flipped container span the row like legacy wrap
   children did — but at ZERO specificity, so per-element width rules win. */
:where(.elementor .e-con.e-con-full:has( > .elementor-widget__width-auto ))
  > :where(.elementor-widget:not([class*='elementor-widget__width-auto']):not([class*='elementor-widget__width-initial'])) { width: 100%; }
.elementor .e-con.e-con-full:has( > .elementor-widget__width-auto ) {
  flex-direction: row; flex-wrap: wrap;
  justify-content: flex-start; align-content: flex-start; align-items: center;
}

.fv-header > .e-con-inner, .fv-header.e-con-full { display: flex; align-items: center; flex-wrap: nowrap; }
.fv-header > .e-con-inner > .e-con, .fv-header.e-con-full > .e-con { width: auto !important; flex: 0 0 auto !important; }
.fv-header > .e-con-inner > .e-con, .fv-header.e-con-full > .e-con { padding: 0 !important; }
.fv-header > .e-con-inner > .e-con:nth-child(2), .fv-header.e-con-full > .e-con:nth-child(2) { margin-left: 42px; transition: margin-left 0.22s var(--ease-standard, cubic-bezier(0.4, 0, 0.2, 1)); }
.fv-header.elementor-sticky--effects > .e-con-inner > .e-con:nth-child(2), .fv-header.elementor-sticky--effects.e-con-full > .e-con:nth-child(2) { margin-left: 26px; }
.fv-header > .e-con-inner > .e-con:nth-child(3), .fv-header.e-con-full > .e-con:nth-child(3) { margin-left: auto; }
.fv-header > .e-con-inner > .e-con:nth-child(4), .fv-header.e-con-full > .e-con:nth-child(4) { margin-left: 12px; }
.e-con.fv-hero > .e-con-inner > .e-con, .e-con.fv-hero.e-con-full > .e-con, .e-con.fv-intro > .e-con-inner > .e-con, .e-con.fv-intro.e-con-full > .e-con, .e-con.fv-stats > .e-con-inner > .e-con, .e-con.fv-stats.e-con-full > .e-con, .e-con.fv-truststrip > .e-con-inner > .e-con, .e-con.fv-truststrip.e-con-full > .e-con, .e-con.fv-programs > .e-con-inner > .e-con, .e-con.fv-programs.e-con-full > .e-con, .e-con.fv-gallery > .e-con-inner > .e-con, .e-con.fv-gallery.e-con-full > .e-con, .e-con.fv-crisis > .e-con-inner > .e-con, .e-con.fv-crisis.e-con-full > .e-con, .e-con.fv-why > .e-con-inner > .e-con, .e-con.fv-why.e-con-full > .e-con, .e-con.fv-conditions > .e-con-inner > .e-con, .e-con.fv-conditions.e-con-full > .e-con, .e-con.fv-approach > .e-con-inner > .e-con, .e-con.fv-approach.e-con-full > .e-con, .e-con.fv-therapies > .e-con-inner > .e-con, .e-con.fv-therapies.e-con-full > .e-con, .e-con.fv-values-h > .e-con-inner > .e-con, .e-con.fv-values-h.e-con-full > .e-con, .e-con.fv-quote > .e-con-inner > .e-con, .e-con.fv-quote.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-hero > .e-con-inner, .e-con.fv-hero.e-con-full, .e-con.fv-hero > .e-con-inner > .e-con, .e-con.fv-hero.e-con-full > .e-con, .e-con.fv-intro > .e-con-inner, .e-con.fv-intro.e-con-full, .e-con.fv-intro > .e-con-inner > .e-con, .e-con.fv-intro.e-con-full > .e-con, .e-con.fv-stats > .e-con-inner, .e-con.fv-stats.e-con-full, .e-con.fv-stats > .e-con-inner > .e-con, .e-con.fv-stats.e-con-full > .e-con, .e-con.fv-programs > .e-con-inner, .e-con.fv-programs.e-con-full, .e-con.fv-programs > .e-con-inner > .e-con, .e-con.fv-programs.e-con-full > .e-con, .e-con.fv-approach > .e-con-inner, .e-con.fv-approach.e-con-full, .e-con.fv-approach > .e-con-inner > .e-con, .e-con.fv-approach.e-con-full > .e-con { position: static; }
.fv-card:hover.fvcol { box-shadow: 0 14px 38px rgba(20, 34, 46, 0.12) !important; }
.fv-programs .e-con > .e-con-inner, .fv-programs .e-con.e-con-full, .e-con.fv-grid > .e-con-inner, .e-con.fv-grid.e-con-full { justify-content: space-between; }
.e-con.fv-gallery { background-color: var(--cream, #FBF1E9) !important; }
.e-con.fv-testimonials > .e-con-inner > .e-con, .e-con.fv-testimonials.e-con-full > .e-con, .e-con.fv-team > .e-con-inner > .e-con, .e-con.fv-team.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-testimonials { background-color: var(--bg-page, #FFFFFF) !important; }
.e-con.fv-team { background-color: var(--cream, #FBF1E9) !important; }
.e-con.fv-insurance > .e-con-inner > .e-con, .e-con.fv-insurance.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-insurance { background-color: var(--sage-50, #F4F9F6) !important; }
.e-con.fv-faq > .e-con-inner > .e-con, .e-con.fv-faq.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; padding-left: 28px !important; padding-right: 28px !important; }
.e-con.fv-faq { background-color: var(--bg-page, #FFFFFF) !important; }
.e-con.fv-resources > .e-con-inner > .e-con, .e-con.fv-resources.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-resources { background-color: var(--bg-subtle, #F7FAFC) !important; }
.e-con.fv-contact > .e-con-inner > .e-con:not(.fv-contact-card), .e-con.fv-contact.e-con-full > .e-con:not(.fv-contact-card) { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-contact > .e-con-inner, .e-con.fv-contact.e-con-full { align-items: center; }
.e-con.fv-contact { overflow: hidden; isolation: isolate; }
.e-con.fv-contact::after { content: ''; position: absolute; width: 360px; height: 360px; bottom: -80px; left: -50px; background: url('mark-white.png') no-repeat center / contain; opacity: 0.07; transform: rotate(8deg); pointer-events: none; z-index: 1; }
.fv-contact > .e-con-inner, .fv-contact.e-con-full { position: relative; z-index: 2; }
.fv-contact-card.fvcol { background: #fff; border-radius: 28px; box-shadow: 0 30px 70px rgba(10, 26, 40, 0.35); }
.e-con.fv-newsletter > .e-con-inner > .e-con, .e-con.fv-newsletter.e-con-full > .e-con { padding-top: 0 !important; padding-bottom: 0 !important; }
.e-con.fv-newsletter { background-color: var(--sand, #F2E2D4) !important; }
.e-con.fv-truststrip { background-color: var(--cream, #FBF1E9) !important; border-color: var(--sand, #F2E2D4) !important; }
.e-con.fv-hero, .e-con.fv-truststrip, .e-con.fv-gallery, .e-con.fv-team, .e-con.fv-newsletter { transition: none !important; }

@media (max-width: 1024px) {
  .fv-hero > .e-con-inner > .e-con.elementor-element-491c7d53, .fv-hero.e-con-full > .e-con.elementor-element-491c7d53 { margin-top: 56px !important; }
  .fv-hero .elementor-element-a3s0001 > .e-con-inner, .fv-hero .elementor-element-a3s0001.e-con-full { flex-wrap: nowrap; align-items: center; justify-content: flex-start; }
}

.elementor .fv-truststrip > .e-con-inner, .elementor .fv-truststrip.e-con-full { justify-content: space-between; gap: 18px 28px; }
.elementor .fv-truststrip > .e-con-inner > .e-con, .elementor .fv-truststrip.e-con-full > .e-con { width: auto; max-width: 100%; }
.elementor .fv-truststrip > .e-con-inner > .e-con, .elementor .fv-truststrip.e-con-full > .e-con { padding: 0; }

@media (max-width: 600px) {
  .fv-hero > .e-con-inner > .e-con.elementor-element-20e6994b, .fv-hero.e-con-full > .e-con.elementor-element-20e6994b { flex-direction: column !important; align-items: flex-start !important; }
}

@media (max-width: 1024px) {
  .fv-intro > .e-con-inner > .e-con.elementor-element-a3i0300, .fv-intro.e-con-full > .e-con.elementor-element-a3i0300 { margin-top: 64px !important; }
  .fv-stats > .e-con-inner, .fv-stats.e-con-full { row-gap: 24px; }
  .elementor-element-mh3022 > .e-con-inner, .elementor-element-mh3022.e-con-full, .elementor-element-mh3063 > .e-con-inner, .elementor-element-mh3063.e-con-full, .elementor-element-mh8001 > .e-con-inner, .elementor-element-mh8001.e-con-full, .elementor-element-22da7d60 > .e-con-inner, .elementor-element-22da7d60.e-con-full, .elementor-element-5b52c3b1 > .e-con-inner, .elementor-element-5b52c3b1.e-con-full { row-gap: 60px; }
  .fv-programs .elementor-element-a5pg100 > .e-con-inner, .fv-programs .elementor-element-a5pg100.e-con-full { row-gap: 28px; }
  .fv-programs .elementor-element-a5pg200 > .e-con-inner, .fv-programs .elementor-element-a5pg200.e-con-full { gap: 20px; justify-content: center !important; }
  .fv-programs .elementor-element-a5pg200 > .e-con-inner > .e-con, .fv-programs .elementor-element-a5pg200.e-con-full > .e-con { width: calc(50% - 10px) !important; flex-basis: calc(50% - 10px) !important; max-width: calc(50% - 10px) !important; }
  .fv-crisis > .e-con-inner > .e-con.elementor-element-a7cr020, .fv-crisis.e-con-full > .e-con.elementor-element-a7cr020 { margin-top: 56px !important; }
  .fv-why > .e-con-inner > .e-con.elementor-element-a8wd020, .fv-why.e-con-full > .e-con.elementor-element-a8wd020 { margin-top: 64px !important; }
  .fv-conditions .elementor-element-a9cd100 > .e-con-inner, .fv-conditions .elementor-element-a9cd100.e-con-full { row-gap: 28px; }
  .fv-approach > .e-con-inner > .e-con.elementor-element-b1ap020, .fv-approach.e-con-full > .e-con.elementor-element-b1ap020 { margin-top: 60px !important; }
  .fv-therapies .elementor-element-b2th100 > .e-con-inner, .fv-therapies .elementor-element-b2th100.e-con-full, .fv-therapies .elementor-element-b2th200 > .e-con-inner, .fv-therapies .elementor-element-b2th200.e-con-full { row-gap: 20px; }
  .fv-team .elementor-element-d2tm100 > .e-con-inner, .fv-team .elementor-element-d2tm100.e-con-full, .fv-resources .elementor-element-d5rs100 > .e-con-inner, .fv-resources .elementor-element-d5rs100.e-con-full { row-gap: 16px; }
}

@media (max-width: 600px) {
  .fv-programs .elementor-element-a5pg200 > .e-con-inner > .e-con, .fv-programs .elementor-element-a5pg200.e-con-full > .e-con { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
  .fv-therapies .elementor-element-b2th100 > .e-con-inner > .e-con, .fv-therapies .elementor-element-b2th100.e-con-full > .e-con, .fv-therapies .elementor-element-b2th200 > .e-con-inner > .e-con, .fv-therapies .elementor-element-b2th200.e-con-full > .e-con { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
  .fv-values .e-con { padding-left: 0 !important; padding-right: 0 !important; }
}

.e-con.fv-programs .elementor-widget:not(:last-child), .e-con.fv-gallery .elementor-widget:not(:last-child), .e-con.fv-crisis .elementor-widget:not(:last-child), .e-con.fv-why .elementor-widget:not(:last-child), .e-con.fv-conditions .elementor-widget:not(:last-child), .e-con.fv-approach .elementor-widget:not(:last-child), .e-con.fv-therapies .elementor-widget:not(:last-child), .e-con.fv-values-h .elementor-widget:not(:last-child), .e-con.fv-values .elementor-widget:not(:last-child), .e-con.fv-quote .elementor-widget:not(:last-child), .e-con.fv-testimonials .elementor-widget:not(:last-child), .e-con.fv-team .elementor-widget:not(:last-child), .e-con.fv-insurance .elementor-widget:not(:last-child), .e-con.fv-faq .elementor-widget:not(:last-child), .e-con.fv-resources .elementor-widget:not(:last-child), .e-con.fv-contact .elementor-widget:not(:last-child), .e-con.fv-newsletter .elementor-widget:not(:last-child) { --kit-widget-spacing: 0px; }

@media (min-width: 1025px) {
  .fv-programs .e-con.fv-track { width: calc(50% - 14px) !important; }
  .fv-programs .e-con.fv-card:not(.fv-track) { width: calc(33.333% - 13.34px) !important; }
}

.fv-programs .fv-card:not(.fv-track).fvcol { display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto 1fr auto; }
.fv-programs .fv-card:not(.fv-track).fvcol > .elementor-widget { grid-column: 1 / -1; width: auto; }
.fv-gallery-grid.fvcol { display: grid !important; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 150px; gap: 16px; }

@media (max-width: 1024px) {
  .fv-gallery-grid.fvcol { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .fv-gallery-grid.fvcol { grid-template-columns: 1fr; }
}

.fv-why .elementor-element-a8wd020 .e-con, .fv-why .elementor-element-a8wd020 .e-con > .e-con-inner, .fv-why .elementor-element-a8wd020 .e-con.e-con-full, .fv-why .elementor-element-a8wd020 .e-con .e-con { height: 100%; align-content: flex-start; }
.e-con.fv-approach { overflow: hidden; }
.e-con.fv-therapies.e-con-boxed > .e-con-inner { padding-top: 96px !important; }
.e-con.fv-therapies.e-con-full { padding-top: 96px !important; }
.e-con.fv-therapies.e-con-boxed { padding-top: 0 !important; padding-bottom: 0 !important; }

@media (max-width: 767px) {
  .e-con.fv-therapies.e-con-boxed > .e-con-inner { padding-top: 56px !important; }
  .e-con.fv-therapies.e-con-full { padding-top: 56px !important; }
  .e-con.fv-therapies.e-con-boxed { padding-top: 0 !important; padding-bottom: 0 !important; }
}

@media (min-width: 601px) and (max-width: 1024px) {
  .fv-therapies .elementor-element-b2th100 > .e-con-inner > .e-con, .fv-therapies .elementor-element-b2th100.e-con-full > .e-con, .fv-therapies .elementor-element-b2th200 > .e-con-inner > .e-con, .fv-therapies .elementor-element-b2th200.e-con-full > .e-con { width: calc(33.333% - 13.34px) !important; flex-basis: calc(33.333% - 13.34px) !important; max-width: calc(33.333% - 13.34px) !important; }
}

@media (min-width: 981px) {
  .fv-contact > .e-con-inner > .e-con, .fv-contact.e-con-full > .e-con { width: calc(50% - 28px) !important; }
}

@media (max-width: 980px) {
  .fv-contact > .e-con-inner > .e-con, .fv-contact.e-con-full > .e-con { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
  .fv-contact > .e-con-inner > .e-con.fv-contact-card, .fv-contact.e-con-full > .e-con.fv-contact-card { margin-top: 40px; }
}

.fv-contact > .e-con-inner, .fv-contact.e-con-full { justify-content: space-between; }
.e-con.fv-approach { background-color: var(--cream, #FBF1E9) !important; transition: none !important; }
.e-con.fv-cond-section { background-color: var(--cream, #FBF1E9) !important; transition: none !important; }
.page-id-20 .e-con.fv-cond-section, .page-id-22 .e-con.fv-cond-section, .page-id-24 .e-con.fv-cond-section { background-color: #FFFFFF !important; }
.fv-verify-steps .e-con { background-color: var(--cream, #FBF1E9) !important; border-color: var(--sand, #F2E2D4) !important; transition: none !important; }
.elementor .fv-verify-steps > .e-con-inner, .elementor .fv-verify-steps.e-con-full { padding-left: 28px; padding-right: 28px; }
.e-con.fv-subhero-warm { position: relative; }
.e-con.fv-subhero-warm::after { content: ''; position: absolute; width: 500px; height: 500px; top: -60px; right: 10px; background: url('mark-sage.png') no-repeat center / contain; opacity: 0.06; transform: rotate(-8deg); pointer-events: none; z-index: 0; }
.fv-subhero-warm > .e-con-inner, .fv-subhero-warm.e-con-full { position: relative; z-index: 1; }
.fv-faq-card > .e-con-inner, .fv-faq-card.e-con-full { position: relative; z-index: 1; }
.fv-faq-card-btns > .e-con-inner, .fv-faq-card-btns.e-con-full { justify-content: center; gap: 12px; }
.fv-faq-card-btns > .e-con-inner > .e-con, .fv-faq-card-btns.e-con-full > .e-con { width: auto; max-width: none; }

@media (max-width: 480px) {
  .fv-faq-card-btns > .e-con-inner, .fv-faq-card-btns.e-con-full { flex-direction: column; }
}

@media (max-width: 1024px) {
  .e-con.fv-faqs-page, .e-con.fv-faq-mini { padding-left: 24px !important; padding-right: 24px !important; }
}

.fv-faqs-page .fvcol { padding-left: 0 !important; padding-right: 0 !important; }
.fv-contact-page > .e-con-inner, .fv-contact-page.e-con-full { align-items: flex-start; }
.fv-contact-page .fv-contact-form-card.fvcol { height: auto !important; }

@media (max-width: 980px) {
  .fv-contact-page > .e-con-inner > .e-con, .fv-contact-page.e-con-full > .e-con { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
  .fv-contact-page > .e-con-inner > .e-con:not(.fv-contact-form-card), .fv-contact-page.e-con-full > .e-con:not(.fv-contact-form-card) { padding-left: 0 !important; padding-right: 0 !important; }
}

@media (max-width: 1024px) {
  .e-con.fv-contact-page, .e-con.fv-contact { padding-left: 24px !important; padding-right: 24px !important; }
}

.fv-modal-body .e-con, .fv-modal-body .e-con > .e-con-inner > .e-con, .fv-modal-body .e-con.e-con-full > .e-con { padding: 0 !important; }
.elementor .fv-team-roster .e-con { padding: 0 28px; }

@media (max-width: 600px) {
  .elementor .fv-team-roster .e-con { padding: 0 20px; }
}

.e-con.fv-tmb-hero, .e-con.fv-tmb-body { padding-left: 28px !important; padding-right: 28px !important; }
.fv-tmb-hero > .e-con-inner, .fv-tmb-hero.e-con-full { position: relative; z-index: 1; }
.fv-tmb-hero .e-con > .e-con-inner, .fv-tmb-hero .e-con.e-con-full { max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }

@media (max-width: 1024px) {
  .fv-tmb-hero > .e-con-inner .fv-tmb-col-l, .fv-tmb-hero.e-con-full .fv-tmb-col-l, .fv-tmb-hero > .e-con-inner .fv-tmb-col-r, .fv-tmb-hero.e-con-full .fv-tmb-col-r, .fv-tmb-body > .e-con-inner > .fv-tmb-col-l, .fv-tmb-body.e-con-full > .fv-tmb-col-l, .fv-tmb-body > .e-con-inner > .fv-tmb-col-r, .fv-tmb-body.e-con-full > .fv-tmb-col-r { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; padding-left: 0; padding-right: 0; }
  .fv-tmb-hero .e-con > .e-con-inner, .fv-tmb-hero .e-con.e-con-full { row-gap: 52px; }
  .fv-tmb-body > .e-con-inner, .fv-tmb-body.e-con-full { row-gap: 56px; }
  .fv-about-story > .e-con-inner > .e-con, .fv-about-story.e-con-full > .e-con, .fv-about-careers > .e-con-inner > .e-con, .fv-about-careers.e-con-full > .e-con { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
  .fv-about-story > .e-con-inner, .fv-about-story.e-con-full, .fv-about-careers > .e-con-inner, .fv-about-careers.e-con-full { row-gap: 60px; }
}

@media (min-width: 601px) and (max-width: 767px) {
  .fv-stats > .e-con-inner > .e-con, .fv-stats.e-con-full > .e-con, .fv-values > .e-con-inner > .e-con, .fv-values.e-con-full > .e-con { width: 50% !important; max-width: 50% !important; flex: 0 0 50% !important; }
}

.e-con.fv-truststrip { background: linear-gradient(to bottom, var(--blush, #FBEDE6) 0%, var(--cream, #FBF1E9) 100%) !important; }

@media (max-width: 767px) {
  .e-con.fv-hero > .e-con-inner, .e-con.fv-hero.e-con-full { flex-direction: column-reverse; }
}

@media (max-width: 1024px) {
  .fv-header > .e-con-inner > .e-con:nth-child(2), .fv-header.e-con-full > .e-con:nth-child(2) { margin-left: auto !important; }
  .fv-header > .e-con-inner > .e-con:nth-child(3), .fv-header.e-con-full > .e-con:nth-child(3), .fv-header > .e-con-inner > .e-con:nth-child(4), .fv-header.e-con-full > .e-con:nth-child(4) { display: none !important; }
  .fv-header .e-con-inner, .fv-header .e-con, .fv-header .fvcol { position: static !important; }
}

.elementor .e-con:has( > .e-con-inner > .fv-art-prose), .elementor .e-con:has(.e-con-full > .fv-art-prose) { padding-left: 28px; padding-right: 28px; }
.elementor .e-con:has( > .e-con-inner > .fv-cd-aside), .elementor .e-con:has(.e-con-full > .fv-cd-aside) { background: #fff; }

@media (max-width: 980px) {
  .elementor .e-con:has( > .e-con-inner > .fv-cd-aside), .elementor .e-con:has(.e-con-full > .fv-cd-aside) { padding-top: 56px; padding-bottom: 56px; }
}

@media (max-width: 600px) {
  .elementor .e-con:has( > .e-con-inner > .fv-cd-aside), .elementor .e-con:has(.e-con-full > .fv-cd-aside) { padding-top: 40px; padding-bottom: 40px; }
}

.fv-cd-aside.fvcol { display: block !important; }

@media (max-width: 980px) {
  .elementor .e-con-inner:has( > .fv-cd-aside) > .e-con { width: 100%; }
  .fv-cd-aside.fvcol { display: flex !important; }
}


/* overflow rules re-emitted through the .e-con --overflow variable */
.fv-card-img.e-con { --overflow: hidden; }
.fv-tile figure.e-con { --overflow: hidden; }
.fv-tile .elementor-widget-container figure.e-con { --overflow: hidden; }
.fv-insure-card.e-con { --overflow: hidden; }
.fv-res-card.e-con { --overflow: hidden; }
.fv-res-card-img.e-con { --overflow: hidden; }
.fv-faq-card.e-con { --overflow: hidden; }
.fv-cc-map.e-con { --overflow: hidden; }
.fv-modal-panel.e-con { --overflow: hidden; }
.fv-tm-card.e-con { --overflow: hidden; }
.fv-tmb-hero.e-con { --overflow: hidden; }
.fv-tmb-cta.e-con { --overflow: hidden; }
.fv-art-related-card.e-con { --overflow: hidden; }
.fv-art-related-photo.e-con { --overflow: hidden; }
.fv-art-adm-card.e-con { --overflow: hidden; }
.fv-cf7-form .screen-reader-response.e-con { --overflow: hidden; }
.fv-cd-related-card.e-con { --overflow: hidden; }
.fv-cd-related-photo.e-con { --overflow: hidden; }
.fv-pl-hero.e-con { --overflow: hidden; }
.fv-pl-cta.e-con { --overflow: hidden; }
.fv-pl-levels.e-con { --overflow: hidden; }
.fv-pl-contact.e-con { --overflow: hidden; }

/* boxed-section vertical padding re-homed to .e-con-inner (class-only theme rules) */
.fv-topbar.e-con-boxed { padding-top: 0 !important; padding-bottom: 0 !important; } .fv-topbar.e-con-boxed > .e-con-inner { padding-top: 1px !important; padding-bottom: 1px !important; }
.fv-header.e-con-boxed { padding-top: 0 !important; padding-bottom: 0 !important; } .fv-header.e-con-boxed > .e-con-inner { padding-top: var(--fv-hpad, 12px) !important; padding-bottom: var(--fv-hpad, 12px) !important; }
.fv-header.elementor-sticky--effects.e-con-boxed { padding-top: 0 !important; padding-bottom: 0 !important; } .fv-header.elementor-sticky--effects.e-con-boxed > .e-con-inner { padding-top: 8px !important; padding-bottom: 8px !important; }

/* legacy .elementor-background-overlay rules re-emitted on the container ::before */
.fv-contact.e-con::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0; background: linear-gradient(115deg, rgba(15, 40, 64, 0.94) 0%, rgba(20, 52, 82, 0.86) 48%, rgba(34, 66, 52, 0.72) 100%) !important; opacity: 1 !important; } .fv-contact.e-con > .e-con-inner, .fv-contact.e-con > .e-con { position: relative; z-index: 1; }