.elementor-13 .elementor-element.elementor-element-3dee863{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13 .elementor-element.elementor-element-3dee863:not(.elementor-motion-effects-element-type-background), .elementor-13 .elementor-element.elementor-element-3dee863 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAF3F1;}.elementor-13 .elementor-element.elementor-element-3dee863.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-13 .elementor-element.elementor-element-3dee863{--width:89.433%;}}/* Start custom CSS for html, class: .elementor-element-dcb7ec6 */body.home .elementor-section.elementor-section-boxed > .elementor-container,
body.home .elementor-section-wrap {
  max-width: auto !important;
  width: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html {
  overflow-x: hidden;
}
body {
  overflow-x: hidden;
  margin: 0 !important;
  padding: 0 !important;
  background-color: #EAF3F1 !important;
}

/* Elementor outer wrappers - kill imposed max-width/centering causing side gaps */
body .elementor,
body .elementor-section-wrap,
body .elementor-top-section,
body .elementor-section,
body > .elementor-element,
body .e-con,
body .e-con-inner,
body #page,
body #content,
body .site-content,
body main,
body #site-main {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Elementor's boxed content-width setting on the section itself */
body .elementor-section.elementor-section-boxed > .elementor-container {
  max-width: 100% !important;
}

#site-main, #site-main section {
  width: 100%;
}

/* Inner content max-widths — unchanged from original design */
#site-main .max-w-7xl,
#site-main .max-w-5xl,
#site-main .max-w-4xl,
#site-main .max-w-3xl,
#site-main .max-w-2xl,
#site-main .max-w-xl {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#site-main .max-w-7xl,
#site-main .max-w-5xl,
#site-main .max-w-4xl,
#site-main .max-w-3xl,
#site-main .max-w-2xl,
#site-main .max-w-xl,
#site-main .px-6,
#site-main .lg\:px-8 {
  padding-left: clamp(1rem, 4vw, 2.5rem) !important;
  padding-right: clamp(1rem, 4vw, 2.5rem) !important;
}

/* Remove gap behind navbar, match hero background */
header, .site-header, #masthead {
  margin-bottom: 0 !important;
  box-shadow: none !important;
}
#site-main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
#site-main > section:first-of-type {
  padding-top: 0 !important;
  margin-top: 0 !important;
  background-color: #EAF3F1 !important;
}
#home {
  background-color: #EAF3F1 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.btn-shadow-pop {
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.btn-shadow-pop:hover,
.btn-shadow-pop:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22), 0 4px 8px rgba(0, 0, 0, 0.15);
}

.nicu-explore-btn {
  background-color: #0E7C6F;
  color: #ffffff;
}
.nicu-explore-btn:hover,
.nicu-explore-btn:focus-visible {
  background-color: #0E7C6F;
  color: #ffffff;
}

.link-underline-teal {
  background: transparent;
  color: #1F6F68;
  text-decoration: none;
  text-underline-offset: 4px;
}
.link-underline-teal:hover,
.link-underline-teal:focus-visible {
  color: #1F6F68;
  text-decoration: underline;
  text-decoration-color: #1F6F68;
}

.link-green-underline-teal {
  background: transparent;
  color: #0E7C6F;
  text-decoration: none;
  text-underline-offset: 4px;
}
.link-green-underline-teal:hover,
.link-green-underline-teal:focus-visible {
  color: #0E7C6F;
  text-decoration: underline;
  text-decoration-color: #F27E1B;
}

.link-plain {
  background: transparent;
  color: #1F6F68;
  text-decoration: none;
  text-underline-offset: 4px;
}
.link-plain:hover,
.link-plain:focus-visible {
  color: #1F6F68;
  text-decoration: underline;
  text-decoration-color: #F27E1B;
}

.hero-call-btn {
  background-color: #ffffff;
  color: #14324a;
  transition: color 0.25s ease;
}
.hero-call-btn:hover,
.hero-call-btn:focus-visible {
  background-color: #ffffff;
  color: #1F6F68;
}

.why-card {
  border: 1px solid #e5e9ea;
  border-radius: 1rem;
  padding: 1.5rem !important;
}

/* ===== Emergency CTA styles ===== */
.emergency-call-btn {
  background-color: #14B8A6;
  color: #ffffff;
}
.emergency-call-btn:hover,
.emergency-call-btn:focus-visible {
  background-color: #0d9488;
  color: #ffffff;
}
.emergency-directions-btn {
  background-color: transparent;
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.25);
  transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease, color 0.25s ease;
}
.emergency-directions-btn:hover,
.emergency-directions-btn:focus-visible {
  background-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
  transform: translateY(-2px);
  color: #ffffff !important;
}

/* ---- Emergency CTA: white background + smaller, centered width ---- */
#emergency {
  background-color: #ffffff !important;
}

#site-main #emergency .max-w-4xl {
  max-width: 700px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 768px) {
  #site-main #emergency .max-w-4xl {
    max-width: 100% !important;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
}

#facilities-grid .img-zoom {
  overflow: hidden;
  cursor: zoom-in;
}
#facilities-grid .zoom-target {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.35s ease;
}
#facilities-grid .img-zoom:hover .zoom-target,
#facilities-grid .img-zoom:active .zoom-target {
  transform: scale(1.06);
}

#facility-lightbox {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(11, 31, 58, 0.92);
  padding: 1.25rem;
  cursor: zoom-out;
}
#facility-lightbox.is-open {
  display: flex;
}
#facility-lightbox img {
  max-width: 100%;
  max-height: 82vh;
  border-radius: 1rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
  animation: facilityZoomIn 0.22s ease;
}
#facility-lightbox .facility-lightbox-caption {
  position: absolute;
  bottom: 2.25rem;
  left: 0;
  right: 0;
  text-align: center;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}
#facility-lightbox .facility-lightbox-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  height: 2.5rem;
  width: 2.5rem;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}
@keyframes facilityZoomIn {
  from { transform: scale(0.9); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

#reviews-prev,
#reviews-next {
  background-color: #1F6F68;
  border-color: #1F6F68;
  color: #ffffff;
}
#reviews-prev:hover,
#reviews-next:hover,
#reviews-prev:focus-visible,
#reviews-next:focus-visible {
  background-color: #1F6F68 !important;
  border-color: #1F6F68 !important;
  color: #ffffff !important;
}/* End custom CSS */