/*** Z-Front Page Custom Styles
Last Edited 3-27-2026 ***/

/* DLSLAB Healthcare System Font Stack (Privacy First, no external web fonts) */
:root {
  --dls-sans:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    "Helvetica Neue",
    Arial,
    "Noto Sans",
    sans-serif;
}

body {
  font-family: var(--dls-sans);
}

/* Apply to this template scope (safe) */
body, p, h1, h2, h3, h4, h5, h6, .entry-content, .comment-content, .entry-summary{
  font-family: var(--dls-sans);
}

p {
  font-size: medium;
}

/* =========================================================
   Z-HOME FEATURE IMAGE (Desktop Right Column)
   Clean, Stable, and Polished
   Last Edited: 3-21-2026
   ========================================================= */

/* Wrapper: controls layout, spacing, and stability */
.z-home-feature-image-wrap {
    width: 100%;
    border-radius: 10px;
    overflow: hidden;

    /* Prevent layout shift (VERY IMPORTANT) */
    margin-top: 1.5rem;
    aspect-ratio: 16 / 9;
    background: #dfe5ea;

    /* Visual polish */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Hover effect (subtle lift, matches card UI) */
.z-home-feature-image-wrap:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.10);
}

/* Image itself */
.z-home-feature-image {
    display: block;
    width: 100%;

    /* Ensures proper cropping without distortion */
    object-fit: cover;

    /* Match wrapper rounding */
    border-radius: 10px;
}

/* =========================================================
   Responsive adjustments
   ========================================================= */

/* Tablet and down */
@media (max-width: 1024px) {
    .z-home-feature-image-wrap {
        border-radius: 8px;
		max-width: 420px;
        margin: 0 auto;
    }
    
.z-jump-link-style-1 {
    display: none;
}
    
/* =========================================================
   Center homepage feature image on smaller screens
   ========================================================= */

    /* Make the column full width */
    .gca-column.one-third {
        width: 100% !important;
        float: none !important;
    }

    /* Center the wrapper */
    .z-home-feature-image-wrap {
        max-width: 420px;   /* controls visual size */
        margin: 0 auto;  /* centers horizontally */
    }
}

/* Small mobile */
@media (max-width: 767px) {
    .z-home-feature-image-wrap {
		max-width: 320px;
		margin: 16px auto;
        border-radius: 6px;

        /* Slightly shorter visual height for mobile reuse */
        aspect-ratio: 16 / 10;
    }
}

/* =========================================================
   Lightweight Mobile Homepage Slider
   Last Edited: 3-21-2026
   ========================================================= */

.z-mobile-hero-slider {
	position: relative;
	overflow: hidden;
	background: #dfe6ec;
}

.z-mobile-hero-slides {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	min-height: 220px;
}

.z-mobile-hero-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 1.2s ease-in-out;
	z-index: 1;
}

.z-mobile-hero-slide.is-active {
	opacity: 1;
	z-index: 2;
}

.z-mobile-hero-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Keep overlay working above slides */
.z-mobile-hero-slider .darken-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0.12) 0%,
		rgba(0, 0, 0, 0.20) 100%
	);
}

/* Mobile-first: show this slider only where your mobile image normally appears */
@media only screen and (min-width: 801px) {
	.z-mobile-hero-slider {
		display: none;
	}
}

/* Small phone tuning */
@media only screen and (max-width: 479px) {
	.z-mobile-hero-slides {
		min-height: 190px;
	}
}

/* =========================================================
   Homepage CTA Grid
   ========================================================= */

.z-home-cta-grid {
	display: grid;
	gap: 10px 14px;
	width: 100%;
	margin: 18px 0 12px;
}

.z-home-cta-grid-desktop {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.z-home-cta-grid-mobile {
	grid-template-columns: 1fr;
}

.z-home-cta-item {
	margin: 0;
	padding: 0;
}

.z-home-cta-button,
.z-home-cta-button:visited {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	width: 100%;
	min-height: 54px;
	padding: 14px 16px;
	background: #575c61;
	color: #ffffff;
	text-decoration: none;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	border-radius: 4px;
	border: 1px solid rgba(0,0,0,0.18);
	box-shadow: none;
	transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box;
}

.z-home-cta-button i {
	flex: 0 0 auto;
	font-size: 16px;
	line-height: 1;
	color: #ffffff;
}

.z-home-cta-button span {
	display: block;
	color: #ffffff;
}

.z-home-cta-button:hover,
.z-home-cta-button:focus {
	background: #4a4f54;
	color: #ffffff;
	text-decoration: none;
	box-shadow: 0 2px 8px rgba(0,0,0,0.12);
	transform: translateY(-1px);
}

.z-home-cta-button:hover i,
.z-home-cta-button:hover span,
.z-home-cta-button:focus i,
.z-home-cta-button:focus span {
	color: #ffffff;
}

.z-mobile-message .z-home-cta-grid {
	margin-top: 10px;
	margin-bottom: 18px;
}

.z-hide-on-mobile .z-home-cta-grid {
	margin-top: 18px;
	margin-bottom: 14px;
}

/* Desktop / mobile visibility */
.z-mobile-message {
	display: none;
}

.z-hide-on-mobile {
	display: block;
}

@media only screen and (max-width: 800px) {
	.z-mobile-message {
		display: block;
	}

	.z-hide-on-mobile {
		display: none;
	}

	.z-home-cta-button,
	.z-home-cta-button:visited {
		min-height: 52px;
		padding: 13px 14px;
		font-size: 15px;
	}
}

/* Optional: give the intro section a little breathing room */
.dls-intro-text .z-home-cta-grid + #z-home-intro-text,
.dls-intro-text #z-home-intro-text + .z-home-cta-grid {
	margin-top: 12px;
}

/*.za-header-container .entry-content img,
.za-header-container img.wp-post-image {
  width: 100%;
  height: auto;
  position: unset;
  transform: translateY(-10px);
}*/

.za-header-container {
  width: 100%;
  /* overflow: hidden; */
  position: relative;
}

.za-header-container:hover {
  cursor: pointer;
}

.za-header-container .z-gradient-overlay {
  background: linear-gradient(0deg, rgb(0 0 0 / 33%) 0%, rgba(255, 255, 255, 0) 100%);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.za-header-container .z-page-title-content {
  width: 1200px;
  margin: 0 auto;
  background: none;
}

.za-header-container .z-page-title {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.za-header-container .z-page-title img {}

.za-header-container:hover h1,
.za-header-container:hover img,
.za-header-container:hover .z-sub-ttl h5 {
  /* background: #015caa; */
  /* background: #494d50; */
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.za-header-container h1 {
  /* background: #015caa; */
  /* background: #015caac4; */
  /* background: #494d50; */
  /* background: #494d50e0; */
  color: white;
  font-size: xxx-large;
  font-size: -webkit-xxx-large;
  letter-spacing: 0.5px;
  padding: 20px 18px 10px;
  width: 100%;
  min-width: 260px;
  max-width: 620px;
  margin-top: 5em;
  margin-top: 250px;
  margin-left: 0;
}

.za-header-container .z-sub-ttl h5 {
  background: #494d50;
  background: #494d50e0;
  color: #eeeeee;
  font-size: large;
  padding: 0px 18px 12px;
  max-width: 620px;
}

/* Page Bottom UI */
.z-page-bottom-ui {
  background: #eee;
  min-height: 88px;
  margin-top: 30px;
  border-bottom: solid #c0c0c0 1px;
  background: #f1f1f1;
  /* Old browsers */
  background: -moz-linear-gradient(top,
      #ffffff 24%,
      #eeeeee 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top,
      #ffffff 24%,
      #eeeeee 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,
      #ffffff 24%,
      #eeeeee 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
  /* IE6-9 */
}

.za-ui-button-1 {
  text-decoration: none;
  display: block;
}

.za-ui-button-1 a {
  text-decoration: none;
}

.za-ui-button-1:hover {
  text-decoration: none;
}

.z-page-bottom-ui a h4 {
  background: #454545;
  text-align: center;
  display: block;
  padding: 15px 25px 15px 0px;
  color: #fff;
  color: rgb(238 238 238);
  margin: 15px;
}

.z-page-bottom-ui a h4:hover {
  background: #015caa;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.z-page-bottom-ui i {
  color: #fff;
  font-size: 15px;
  font-size: 1.5em;
  padding: 10px 5px 10px 5px;
  margin: 0px 5px 0px 0px;
}

.z-page-bottom-ui i a:hover {
  text-decoration: none;
  color: #fff;
}

/* Mods to Global CSS -- hide standard title, adjust page padding */

#the-title {
  display: none;
}

.z-page-wrap {
  padding: 46px 30px 50px;
  max-width: 1500px;
  margin: 0 auto;
  width: 100%;
}

/* Hide Lightbox Social On homepage */
.pp_details.pp_includes_title .pp_social {
    /*float: left;*/
    /*padding: 4px 60px 0 0;*/
    display: none !important;
}

#jig1 .jig-overlay {
    background: none !important;
    opacity: 0;
    -moz-opacity: 0.2;
    filter: alpha(opacity=20);
    height: 100%;
}

/*** --- START--- Z-Responsive Mods / Media Queries
   ----------------------------------------------------------- ***/


/* for large screens */
@media only screen and (min-width: 1550px) {
 /*body {
    background: #015caa;
    background: rgb(0,93,171);
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwNWRhYiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top, rgba(0,93,171,1) 0%, rgba(0,0,0,1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,93,171,1)), color-stop(100%,rgba(0,0,0,1)));
    background: -webkit-linear-gradient(top, rgba(0,93,171,1) 0%,rgba(0,0,0,1) 100%);
    background: -o-linear-gradient(top, rgba(0,93,171,1) 0%,rgba(0,0,0,1) 100%);
    background: -ms-linear-gradient(top, rgba(0,93,171,1) 0%,rgba(0,0,0,1) 100%);
    background: linear-gradient(to bottom, rgba(0,93,171,1) 0%,rgba(0,0,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005dab', endColorstr='#000000',GradientType=0 );
  }*/

  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: 36px;
    font-size: 5em;
    letter-spacing: 0.5px;
  }

  /* adjust header image postion */
  .za-header-container .entry-content img,
  .za-header-container img.wp-post-image {
    width: 100%;
    height: auto;
    position: unset;
    transform: translateY(-100px);
  }

}

@media only screen and (min-width: 1080px) {
  body {
    /*background: #eee;*/
  }

  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: 40px;
    font-size: 5em;
    letter-spacing: 0.5px;
  }

  .entry-header {
    display: none;
  }

  .z-page-wrap {
    padding: 30px 30px 50px;
    max-width: 1530px;
    background: #fff;
    margin: 0 auto;
    margin-top: 40px;
    margin-bottom: 40px;
    width: 100%;
  }

  .entry-content h2,
  .comment-content h2 {
    font-size: 35px;
    font-size: 2.5rem;
    line-height: 1.5;
    margin-bottom: 5px;
  }

  .entry-content p,
  .entry-summary p,
  .comment-content p {
    margin: 0;
    line-height: 1.714285714;
    font-size: medium;
  }
}

@media only screen and (max-width: 1079px) {
 body {
    background: #fff;
  }
  .za-header-container {
    display: none;
  }

  .z-home-location-section .za-home-left-image img {
    margin-bottom: 0px;
  }


  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: xxx-large;
    font-size: -web-kit-xxxlarge;
    letter-spacing: 0.5px;
  }

  .z-page-wrap {
    padding: 10px 30px 45px;
  }
	.z-hide-mobile-img {
		display:none;
	}
}

@media only screen and (min-width: 801px) {
  /*body {
    background: #eee;
  }*/

  .z-page-wrap {
    padding: 0px 30px 0px;
    /* max-width: 1170px; */
    background: #f5f5f5;
    background: #fff;
    margin: 0 auto;
    margin-top: 30px;
    /* margin-bottom: 30px; */
    width: 100%;
  }

.z-not-first-section {
    /* padding-top: 10px; */
    /* padding-bottom: 10px; */
  }

  .entry-header {
    display: none;
  }
}

@media only screen and (max-width: 800px) {
  body {
    background: #fff;
  }

  .za-header-container h1 {
    display: none;
  }

  .za-header-container .z-sub-ttl h5 {
    display: none;
  }

  .z-page-wrap {
    padding: 0px 15px 0px;
    max-width: 1440px;
    background: #fff;
    margin: 0 auto;
    margin-top: 20px;
    width: 100%;
  }

  .za-header-container .z-page-title img {
    margin-top: 20px;
    padding: 30px;
  }

  .za-header-container .z-gradient-overlay {
    background: none;
  }

  .za-header-container {
    height: auto;
  }

}

@media only screen and (max-width: 767px) and (min-width: 480px) {

  .entry-header {
    margin-top: 0;
    display: none;
  }

  .za-header-container .entry-content img,
  .za-header-container img.wp-post-image {
    width: 100%;
    height: auto;
    margin-top: 30px;
  }
}

@media only screen and (min-width: 300px) and (max-width: 479px) {

  .entry-header {
    margin-top: 25px;
  }
}

/*** --- END --- Z-Responsive Mods / Media Queries ***/


/*** Z-Featured Header 8 Page Custom Styles
Last Edited 6-22-2024 ***/
.za-header-container {
  width: 100%;
  height: 580px;
  background: #878787;
  overflow: hidden;
  position: relative;
}

.za-header-container:hover {
  cursor: pointer;
}

.za-header-container .z-gradient-overlay {
  background: linear-gradient(0deg, rgb(0 0 0 / 33%) 0%, rgba(255, 255, 255, 0) 100%);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.za-header-container .z-page-title-content {
  width: 1200px;
  margin: 0 auto;
  background: none;
}

.za-header-container .z-page-title {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.za-header-container .z-page-title img {}

.za-header-container:hover h1,
.za-header-container:hover h2,
.za-header-container:hover p,
.za-header-container:hover img,
.za-header-container:hover .z-sub-ttl h5,
.za-header-container:hover .z-sub-ttl h4,
.za-header-container:hover .z-sub-ttl h3,
.za-header-container:hover .z-sub-ttl p {
  /*background: #015caa;*/
  /* background: #454545; */
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.za-header-container h1,
.za-header-container h2, .za-header-container p {
  /* background: #015caa; */
  /* background: #015caac4; */
  /* background: #454545; */
  /* background: #454545e0; */
  color: white;
  font-size: 24px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight:600;
  font-size: xxx-large;
  font-size: -webkit-xxx-large;
  letter-spacing: 0.5px;
  padding: 20px 18px 10px;
  width: 100%;
  min-width: 260px;
  max-width: 720px;
  margin-left: 0;
}

#particles-js2 .qcld_hero_content_area {
    max-width: 730px !important;
}

.za-header-container .z-sub-ttl p, .za-header-container .z-sub-ttl h3, .za-header-container .z-sub-ttl h4, .za-header-container .z-sub-ttl h5 {
  background: #454545;
  background: #454545e0;
  font-weight: 600;
  color: #eeeeee;
  font-size: large;
  padding: 0px 18px 12px;
  /* width: 100%; */
  /* min-width: 260px; */
  max-width: 620px;
}

/* Mods to Global CSS -- hide standard title, adjust page padding */

#the-title {
  display: none;
}

.z-page-wrap {
  padding: 46px 30px 50px;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
}

/*** --- START--- Z-Responsive Mods / Media Queries
   ----------------------------------------------------------- ***/


/* for large screens */
@media only screen and (min-width: 1550px) {
  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: 36px;
    font-size: 5em;
    letter-spacing: 0.5px;
  }

  /* adjust header image postion */
  .za-header-container .entry-content img,
  .za-header-container img.wp-post-image {
    width: 100%;
    height: auto;
    position: unset;
    transform: translateY(-100px);
  }
  .entry-content p,
  .entry-summary p,
  .comment-content p {
    font-size: 1.4rem;
    line-height: 1.55em;
    margin-top: 1px;
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 1080px) {
  body {
    background: #eee;
  }

  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: 40px;
    font-size: 5em;
    letter-spacing: 0.5px;
  }

  .entry-header {
    display: none;
  }

  .z-page-wrap {
    padding: 0px 30px 0px;
    max-width: 1200px;
    background: #fff;
    margin: 0 auto;
    width: 100%;
  }

 .entry-content h2, .comment-content h2 {
    font-size: x-large;
    font-size: 1.9rem;
    line-height: 1.9rem;
    margin-bottom: 8px;
}
  .entry-content p,
  .entry-summary p,
  .comment-content p {
    line-height: 1.55em;
    margin-top: 1px;
    margin-bottom: 8px;
  }
}

@media only screen and (max-width: 1079px) {
  .z-hero-text h1 {
    text-align: center;
    color: white;
    font-size: xxx-large;
    font-size: -web-kit-xxxlarge;
    letter-spacing: 0.5px;
  }

  .z-page-wrap {
    padding: 10px 30px 45px;
  }
  .z-overview-container .z-home-fb-like {
    max-width: 72px;
    /* min-height: 12px; */
    float: left;
}
  .z-overview-container .addtoany_content {
    clear: both;
    margin: 0 auto;
    text-align: left;
}
	.z-share-1 {
    padding: 7px 0px 0px;
    margin-bottom: 3px;
    text-align: left;
    width: 100%;
    display: block;
    font-weight: 600;
}
}

@media only screen and (min-width: 801px) {
  body {
    background: #fff;
  }

  .z-page-wrap {
    padding: 30px 30px 20px;
    background: #fff;
    margin: 0 auto;
    width: 100%;
  }

  .entry-header {
    display: none;
  }

}

@media only screen and (max-width: 800px) {
  body {
    background: #fff;
  }

  .z-home-fb-like-area {
    height: 12px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 0;
}

  .za-header-container h1,
.za-header-container h2, .za-header-container p {
  display: none;
}

  .za-header-container .z-sub-ttl h5 {
    display: none;
  }

  .z-page-wrap {
    padding: 0px 15px 0px;
    max-width: 1200px;
    background: #fff;
    margin: 0 auto;
    /* margin-top: 20px; */
    /* margin-bottom: 50px; */
    width: 100%;
  }

  .za-header-container .z-page-title img {
    margin-top: 20px;
    padding: 30px;
  }

  .za-header-container .z-gradient-overlay {
    background: none;
  }

  .za-header-container {
    height: auto;
  }

}

@media only screen and (max-width: 767px) and (min-width: 480px) {

  .entry-header {
    margin-top: 21px;
    display: block;
  }

  .za-header-container .entry-content img,
  .za-header-container img.wp-post-image {
    width: 100%;
    height: auto;
    margin-top: 30px;
  }
}

@media only screen and (min-width: 300px) and (max-width: 479px) {

  .entry-header {
    margin-top: 25px;
  }
}

/*** --- END --- Z-Responsive Mods / Media Queries ***/