/* Offline archive repairs. Page-layout rules are scoped to pages whose
   Elementor-generated stylesheet was not captured by the Wayback Machine. */

/* Cookie consent has no purpose in the offline archive and obscures content. */
.cc-container {
  display: none !important;
}

.archive-missing-media {
  background-color: #b8b8b8 !important;
  background-image: none !important;
  color: transparent !important;
}

/* The older white pattern was not retained by either archive. Use the site's
   recovered light pattern locally so these decorative sections never make a
   remote or missing-file request. */
.section-white-pattern .elementor-background-overlay {
  background-image: url("/wp-content/uploads/2022/04/lightbackground_pattern1.png") !important;
}

.e-gallery-image.archive-gallery-preview {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

img.archive-missing-media {
  display: block;
  width: 100%;
  min-width: 160px;
  min-height: 180px;
  max-height: 560px;
  object-fit: contain;
  border: 0;
}

video.archive-missing-media {
  min-height: 280px;
}

body.archive-layout-fallback {
  overflow-x: hidden;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] > .elementor-inner > .elementor-section-wrap {
  width: 100% !important;
}

/* The sidebar script reserves 22vw even when its page-specific positioning
   styles are missing. A full-width archive is much more usable in that case. */
body.archive-layout-fallback .archive-sticky-sidebar-section {
  display: none !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child) {
  padding: 90px 6vw;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-section-boxed > .elementor-container {
  width: 100%;
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-widget-wrap {
  align-content: center;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-column > .elementor-column-wrap {
  padding: 18px 28px;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-widget {
  margin-bottom: 22px;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-widget:last-child {
  margin-bottom: 0;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-widget-image img {
  width: 100%;
  height: auto;
  max-height: 680px;
  object-fit: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .border-image img {
  min-height: 340px;
}

/* Mastheads share the same ProWidgets markup on nearly every service page. */
body.archive-layout-fallback [data-elementor-type="wp-page"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:first-child {
  padding: 0;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full-wrapper {
  min-height: 720px;
  height: 100vh !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full {
  background-position: center center;
  background-size: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__overlay {
  background: #000;
  opacity: .42 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text {
  width: 58%;
  max-width: 900px;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text > h1,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text > h2 {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text > h2 {
  font-size: clamp(48px, 5.7vw, 82px) !important;
  line-height: .95 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__cta {
  width: 50%;
  color: #fff;
  background: rgba(99, 66, 86, .88);
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-light {
  background-color: #f5f5f5 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern {
  background-color: #634256 !important;
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark .elementor-widget-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark .elementor-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern .elementor-widget-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern .elementor-text-editor {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark h4,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-pattern h4 {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content {
  min-height: 580px;
  padding: 80px 6vw !important;
  background-position: center;
  background-size: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content > .elementor-container > .elementor-row > .elementor-column:first-child > .elementor-column-wrap {
  padding: 48px !important;
  color: #fff !important;
  background: rgba(99, 66, 86, .92);
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content h4 {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content .elementor-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content .elementor-text-editor p,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content .elementor-icon-list-item,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content .elementor-icon-list-text {
  color: #fff !important;
}

@media (min-width: 1024px) {
  /* These sections exist only to provide the mobile image used by the next
     full-width desktop band. Generic section padding previously turned each
     one into a 216px empty white strip. */
  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}

/* Card sections retain their column backgrounds in Elementor's base CSS,
   but their page-specific text colors were stored in the missing generated
   stylesheet. Restore readable contrast consistently across the template. */
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern {
  background-color: #f4f2f2 !important;
  background-image: url("/wp-content/uploads/2022/04/lightbackground_pattern1.png");
  background-position: center;
  background-size: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section .elementor-column-wrap,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section .elementor-column-wrap {
  color: #fff !important;
  background-color: #634256;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section .elementor-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section .elementor-text-editor p,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section .elementor-text-editor,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section .elementor-text-editor p {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards .elementor-inner-section h4,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-dark-cards-pattern .elementor-inner-section h4 {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form {
  padding: 90px 8vw !important;
  color: #fff;
  background-color: #291721 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form > .elementor-container {
  padding: 38px;
  border: 2px solid #80b8b2;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form h2,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form h3,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form h4,
body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form label {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-field,
body.archive-layout-fallback [data-elementor-type="wp-page"] select,
body.archive-layout-fallback [data-elementor-type="wp-page"] textarea {
  min-height: 48px;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-accordion .elementor-tab-title {
  padding: 20px 0;
  border-bottom: 1px solid #80b8b2;
}

body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-accordion .elementor-tab-content {
  padding: 22px 0 32px;
}

@media (max-width: 1024px) {
  body.archive-layout-fallback [data-elementor-type="wp-page"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child) {
    padding: 70px 45px;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full,
  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full-wrapper {
    min-height: 560px;
    height: 62vh !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text {
    width: 100%;
  }
}

@media (max-width: 1023px) {
  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section,
  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section > .elementor-container,
  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section .elementor-column-wrap {
    padding: 0 !important;
    margin: 0 !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section .elementor-widget {
    margin-bottom: 0 !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .archive-background-source-section img {
    display: block;
    width: 100%;
    height: auto;
  }
}

@media (max-width: 767px) {
  body.archive-layout-fallback [data-elementor-type="wp-page"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child),
  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content,
  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form {
    padding: 54px 20px !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .elementor-column > .elementor-column-wrap {
    padding: 12px 6px;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full,
  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full-wrapper {
    min-height: 500px;
    height: 58vh !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-masthead .video-full__headline-text > h2 {
    font-size: clamp(36px, 12vw, 56px) !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-form > .elementor-container {
    padding: 22px 12px;
  }

  body.archive-layout-fallback [data-elementor-type="wp-page"] .section-fw-img-content > .elementor-container > .elementor-row > .elementor-column:first-child > .elementor-column-wrap {
    padding: 30px 22px !important;
  }
}

/* Retired marketing surveys; these hooks can be replaced with contact forms later. */
.archive-hidden-form-embed,
.elementor-widget-html:has(.archive-hidden-form-embed),
.elementor-widget-html:has(iframe[src*="leadconnector"]),
.elementor-widget-html:has(iframe[src*="msgsndr"]),
iframe[src*="leadconnector"],
iframe[src*="msgsndr"] {
  display: none !important;
}


/* Patient stories use Elementor's wp-post root but the same component set. */
body.archive-layout-fallback [data-elementor-type="wp-post"] > .elementor-inner > .elementor-section-wrap {
  width: 100% !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child) {
  padding: 90px 6vw;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .elementor-section-boxed > .elementor-container {
  width: 100%;
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .elementor-column > .elementor-column-wrap {
  padding: 18px 28px;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .elementor-widget {
  margin-bottom: 22px;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .elementor-widget-image img {
  width: 100%;
  height: auto;
  max-height: 680px;
  object-fit: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full,
body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full-wrapper {
  min-height: 720px;
  height: 100vh !important;
  background-position: center;
  background-size: cover;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__overlay {
  background: #000;
  opacity: .42 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text {
  width: 58%;
  max-width: 900px;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text > h1,
body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text > h2 {
  color: #fff !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text > h2 {
  font-size: clamp(48px, 5.7vw, 82px) !important;
  line-height: .95 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-light {
  background-color: #f5f5f5 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-dark,
body.archive-layout-fallback [data-elementor-type="wp-post"] .section-dark-pattern {
  color: #fff !important;
  background-color: #634256 !important;
}

body.archive-layout-fallback [data-elementor-type="wp-post"] .section-form {
  padding: 90px 8vw !important;
  color: #fff;
  background-color: #291721 !important;
}

@media (max-width: 1024px) {
  body.archive-layout-fallback [data-elementor-type="wp-post"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child) {
    padding: 70px 45px;
  }

  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full,
  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full-wrapper {
    min-height: 560px;
    height: 62vh !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text {
    width: 100%;
  }
}

@media (max-width: 767px) {
  body.archive-layout-fallback [data-elementor-type="wp-post"] > .elementor-inner > .elementor-section-wrap > .elementor-top-section:not(:first-child),
  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-form {
    padding: 54px 20px !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-post"] .elementor-column > .elementor-column-wrap {
    padding: 12px 6px;
  }

  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full,
  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full-wrapper {
    min-height: 500px;
    height: 58vh !important;
  }

  body.archive-layout-fallback [data-elementor-type="wp-post"] .section-masthead .video-full__headline-text > h2 {
    font-size: clamp(36px, 12vw, 56px) !important;
  }
}
