/*************** HERO **************/
.hero-section {
	padding: 80px 0;
	background: var(--secondary-bg);
}
.hero-container {
	align-items: center;
}

.hero-content__h1 {
	font-size: 50px;
	line-height: 66px;
	letter-spacing: -1px;
	margin: 0 0 38px;
}

.hero-content__subtitle {
	font-size: 20px;
	line-height: 33px;
	margin: 0 0 40px;
}

.bg--secondary{
	background: var(--secondary-bg) !important;
}

.bg--light-blue{
	background: var(--light-blue-bg) !important;
}

.bg--white{
	background: var(--color-light) !important;
}

.btn--primary-cta {
	min-width: 220px;
	font-weight: 700;
	color: var(--color-dark);
	border-radius: 6px;
	background: var(--primary-cta-color);
}

.btn--secondary-cta {
	min-width: 220px;
	font-weight: 700;
	color: var(--color-light);
	border-radius: 6px;
	background: var(--secondary-cta-color);
}

.btn--secondary-border{
	border: 2px solid var(--secondary-cta-color);
}

.btn--primary-cta:hover,
.btn--primary-cta:focus {
	background: var(--primary-cta-hover-color);
	color: var(--color-dark);
}

.btn--secondary-cta:hover,
.btn--secondary-cta:focus {
	background: var(--secondary-cta-hover-color);
	color: var(--color-light);
}


.hero-content__cta__btn-wrapper {
	display: flex;
	column-gap: 8px;
	margin: 16px 0;
}

.hero-content__cta {
	font-size: 18px;
	padding: 12px 24px;
	text-align: center;
}
a.hero-content__gr-btn {
	padding: 0;
	border-radius: 8px;
	transition: all .3s;
	position: relative;
}
a.hero-content__gr-btn:hover {
	background: var(--color-dark);
}

.hero-content__gr-image {
	height: auto;
	width: 220px;
	object-fit: contain;
}

.hero-images {
	display: grid;
	width: 100%;
	height: 100%;
	grid-template-areas:
		"i1 i2"
		"i3  i2";
	grid-gap: 30px;
	grid-template-rows: 1fr 1fr;
	grid-template-columns: 1fr 2fr;
}

.hero-image--shape-1 {
	grid-area: i1;
	border-radius: 50%;
	overflow: hidden;
	aspect-ratio: 1 / 1;
}

.hero-image--shape-2 {
	grid-area: i2;
	grid-area: i2;
	border-radius: 80px;
	overflow: hidden;
}
.hero-image--shape-3 {
	grid-area: i3;
	grid-area: i3;
	border-radius: 50% 0 0 50%;
	overflow: hidden;
}

/********* BADGES ****************/

.badges-section {
	padding: 57px 0 83px;
}

.badges-wrap {
	justify-content: space-between;
	align-items: center;
}

/************* ABOUT **********/

.about-section {
	padding-bottom: 90px;
}

.about-img-holder {
	padding-right: 0;
}

.about-content {
	padding-left: 52px;
}

.about-content__h2 {
	margin-bottom: 32px;
}

.about-content p {
	margin-bottom: 20px;
}

.img-about {
	border-radius: 20px;
}

.btn--read-more {
	color: var(--secondary-cta-color);
	font-weight: 700;
	line-height: 30px;
}

.btn--read-more:hover,
.btn--read-more:active {
	color: var(--secondary-cta-hover-color);
}

.about-link {
	font-size: 18px;	
}
.facts-section {
	margin-bottom: -38px;
}


/************ Features *********/

.features-section {
	background: var(--secondary-bg);
	padding: 180px 0 150px;
}

/************ Success STORIES *********/

.success-stories-section {
	padding: 195px 0 150px;
}
.h2--sun {
	position: relative;
}

.h2--sun:before {
	content: url(/wp-content/uploads/2023/09/half_sun_icon_above_titles.png);
	position: absolute;
	top: -70px;
	left: 50%;
	transform: translatex(-50%);
}
.success-content__h2 {
	margin: 0 0 20px;
}

.success-content__p {
	max-width: 832px;
	margin: 0 auto 60px;
	font-size: 20px;
	line-height: 30px;
}

.s-story__video-holder {
	position: relative;
	overflow: hidden;
	border-radius: 30px;
	height: 320px;
}

.s-story__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
	transition: all .3s ease-in-out;
	display: flex;
	justify-content: center;
	align-items: center;
}

.s-story__video-holder:hover .s-story__overlay {
	background: rgba(0,0,0, 0.2);
}
.s-story video {
	width: 100%;
	height: 100%;
	border-radius: 30px;
	object-fit: cover;
	transition: all .3s ease-in-out;
}
img.s-story__play-btn {
	cursor: pointer;
}

.s-story__title {
	font-size: 22px;
	line-height: 30px;
	margin-top: 15px;
}

.s-story__author {
	font-weight: 300;
}

.dd-slick .slick-dots li button:before {
	display: none;
}

.dd-slick .slick-dots {

}

.dd-slick .slick-dots li {
	border-radius: 100px;
	background: #DCD6C3;
	width: 37px;
	height: 4px;
}

.dd-slick .slick-dots li.slick-active {
	width: 80px;
	height: 4px;
	border-radius: 100px;
	background:var(--secondary-cta-color);
}

/************* TEAM ************/

.home-team-section{
	padding: 127px 0 115px;
}

.home-team-section__container{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.home-team-section__grid{
	max-width: 1000px;
	margin: auto;
}

.home-team-section__h2{
	margin-bottom: 60px;
}

.ae-box-inner{
	background-color: #FFF;
	border-radius: 30px;
	padding: 2.8rem;
}

.ae-box-inner__name {
	font-size: 24px;
	margin: 10px 0 3px;
}

.ae-box-inner__position {
	font-size: 20px;
	font-weight: 300;
	margin-bottom: 12px;
}

.ae-box-inner__bio {
	font-size: 16px;
	max-width: 50ch;
	text-align: left;
	margin: auto;
}

.team-wrap {
	padding: 50px 0 40px;
}
.team-title {
	width: 100%;
}
.ae-box-inner.t-center {
	margin-bottom: 40px;
}

img.ae-box-inner__image {
	border-radius: 200px;
}



/************* CTA ************/


.home-cta-banner {
	margin-top: -80px;
  position: relative;
  max-width: 900px;
  border-radius: 18px;
  overflow: hidden;
  padding: 64px 48px;        /* roomy inner spacing */
  text-align: center;
}

/* Background image fills the card */
.home-cta-banner .banner__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Darken the image for contrast */
.home-cta-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);   /* adjustable darkness */
}

/* Lift content above background/overlay */
.home-cta-banner > *:not(img) {
  position: relative;
  z-index: 1;
}

.cta-banner {
  position: relative;
  max-width: 900px;
  border-radius: 18px;
  overflow: hidden;
  padding: 64px 48px;       
  text-align: center;
  margin-bottom: 2.5em;
}

/* Background image fills the card */
.cta-banner .banner__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Darken the image for contrast */
.cta-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);   /* adjustable darkness */
}

/* Lift content above background/overlay */
.cta-banner > *:not(img) {
  position: relative;
  z-index: 1;
}


/* Title + copy */
.banner__title {
  margin: 0 0 16px;
  font-weight: 700;
  line-height: 1.3;
  font-size: 40px;            /* ~like screenshot; adjust if needed */
  color: #fff;
}

.banner__text {
  max-width: 780px;
	font-size: 16px;
  margin: 0 auto 22px;
  color: #e6eef2;             /* softer white for body copy */
}

/* Button: teal pill with sun tile on the left */
.banner__cta {

}

/* Left sun tile */
.banner__cta::before {
  content: "";
  width: 48px;
  height: 48px;
  border-radius: 6px;
  background: #fff url("/wp-content/uploads/2023/09/sun-dark.svg") center/28px 28px no-repeat;
  box-shadow: 0 2px 6px rgba(0,0,0,.18);
}


/* ===== Responsive tweaks ===== */
@media (max-width: 991px) {
  .home-cta-banner { padding: 40px 28px; }
  .cta-banner { padding: 40px 28px; }
  .banner__title { font-size: 26px; }
}

@media (max-width: 575px) {
  .home-cta-banner { border-radius: 16px; padding: 28px 20px; }
  .cta-banner { border-radius: 16px; padding: 28px 20px; }
  .banner__title { font-size: 22px; }
  .banner__cta { gap: 10px; padding: 12px 18px; }
  .banner__cta::before { width: 42px; height: 42px; background-size: 24px 24px; }
}


/************* CONTACT ************/

.contact-section {
	border-top: 1px solid #D9DBE1;
	border-bottom: 1px solid #D9DBE1;
	    overflow: hidden;
}
.contact-left {
	background: var(--light-blue-bg);
	padding: 54px 0 60px;
	position: relative;
	border-right: 1px solid #D9DBE1;
}

.contact-title {
	line-height: 46px;
	max-width: 450px;
	margin: 0 auto 30px;
}

.contact__phone {
	font-size: 33px;
	font-weight: 700;
	color: var(--secondary-cta-color);
	margin: 0 auto 70px;
}

.contact__phone:hover,
.contact__phone:active {
	color: var(--secondary-cta-hover-color);
}

.dd-contact-form {
	position: relative;
	padding: 60px 78px 0;
}

.dd-contact-form:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 1px;
	width: 100%;
	background: #C6DADD;
}

.dd-contact-form__sun {
	position: absolute;
	top: -24px;
	left: 50%;
	transform: translatex(-50%);
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield_label {
	font-size: 15px;
	font-weight: 600;
	font-family: "Nunito Sans";
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield_description {
	border: none;
	background: transparent;
	padding: 5px 0;
	margin: 0;
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield_required {
	display: none;
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield input,
.dd-contact-form .gform_wrapper.gravity-theme .gfield select {
	border: 1px solid #C6DADD;
	background: #FFF;
	font-size: 16px;
	padding: 15px 20px;
	height: 58px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: "Nunito Sans";
	border-radius: 4px;
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield select {
	background-image: url(/wp-content/uploads/2023/10/arrow_for_form.svg);
	background-position: 95%;
	background-repeat: no-repeat;
	padding-right: 50px;
}

.dd-contact-form .gform_wrapper.gravity-theme .gfield textarea.medium {
	height: 128px;
	border: 1px solid #C6DADD;
	background: #FFF;
	font-size: 16px;
	padding: 12px 20px;
	font-family: "Nunito Sans";
	border-radius: 4px;
}

.dd-contact-form .gform_wrapper.gravity-theme .gform_footer input {
	margin-bottom: 8px;
	border-radius: 6px;
	background: var(--primary-cta-color);
	font-size: 20px;
	font-weight: 700;
	border: var(--primary-cta-color);
	height: 76px;
	line-height: 1;
	margin: 0;
	font-family: "Nunito Sans";
}

.dd-contact-form .gform_wrapper.gravity-theme .gform_footer input:hover,
.dd-contact-form .gform_wrapper.gravity-theme .gform_footer input:active {
	background: var(--primary-cta-hover-color);
	border: var(--primary-cta-hover-color);
}

.contact-right {
	padding: 125px 15px 114px;
}
.contact-right__h2 {
	margin-bottom: 15px;
}
.contact-right__h3 {
	font-size: 30px;
	font-weight: 300;
	line-height: 30px;
	margin-bottom: 40px;
}

.contact-right__p {
	max-width: 590px;
	margin: 0 auto 50px;
}

.contact-right__ae-wrap {
	justify-content: center;
}

.ae-box {
	padding: 0 11px;
}

.ae-box__name {
	margin: 13px 0 3px;
}

.ae__position {
	font-weight: 300;
	font-size: 13px;
	letter-spacing: 1px;
}

/********************* PROGRAMS ************/

.programs-section {
	padding: 180px 0 150px;
}

.programs-section__h2 {
	margin: 0 auto 60px;
}

.program-box-holder {
	margin-bottom: 35px;
}

.program-box {
	border-radius: 30px;
	border: 1px solid #C0C0C0;
	background: #FFF;
	height: 100%;
	padding: 64px 15px 48px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	transition: all .3s ease-in-out;
}

.program-box__top {
	max-width: 411px;
	margin: 0 auto;
}

.program-box__number{
	color: var(--secondary-cta-color);
	font-weight: 700;
	font-size: 32px;
}

.program-box__title {
	margin: 30px 0 20px;
	letter-spacing: 0.28px;
}

.program-box__text {
	color: var(--color-dark);
}

.btn--outlined {
	border-radius: 6px;
	border: 2px solid var(--secondary-cta-color);
	color: var(--secondary-cta-color);
	font-size: 18px;
	font-weight: 700;
	transition:0.4s;
}


.btn--outlined:hover,
.btn--outlined:active {
	color: #fff;
	border: 2px solid var(--secondary-cta-color);
	background: var(--secondary-cta-color);
}

.program-box__btn {
	padding: 15px 48px;
	margin-top: 40px;
}

.program-box:hover {
	background: var(--secondary-cta-color);
	border: 1px solid var(--secondary-cta-color);
}


.program-box:hover * {
	color: #fff;
}

.program-box__image{
	height: 100px;
	width: auto;
}

.program-box:hover .program-box__image {
	filter: invert(100%) sepia(97%) saturate(14%) hue-rotate(196deg) brightness(200%) contrast(103%);
}

.program-box:hover .program-box__btn,
.program-box:hover .program-box__btn  {
	color: var(--secondary-cta-color);
	border: 2px solid var(--secondary-cta-color);
	background: #fff;
}
/************** TESTIMONIALS ***************/

.testimonials-section {
	padding: 127px 0 115px;
	background: var(--secondary-bg);
}

.testimonials-section__h2 {
	margin-bottom: 45px;
}
.testimonials-section .testimonial-holder {
	padding: 15px;
}

.testimonial {
	border-radius: 30px;
	padding: 28px 35px 35px;
	border: 1px solid #EBEBEB;
	background: #FFF;
	box-shadow: 4px 4px 20px 0px rgba(94, 73, 5, 0.10);
}

.testimonial__top {
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.testimonial__author {
	font-size: 26px;
	letter-spacing: 0.26px;
	margin-bottom: 5px;
}

.testimonials-sec__cta {
	padding: 15px 68px;
	margin-top: 70px;
	font-size: 18px;
}

/**************** ACCORDIONS ***********/


.accordions-list__item:not(:last-of-type) {
	margin: 0 0 10px;
}

.dd-accordion__top {
	border-radius: 6px;
	background: #FFF;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 17px 20px;
	cursor: pointer;
}

.dd-accordion__title {
	letter-spacing: 0.18px;
	padding-right: 10px;
}

.dd-accordion__arrow {
	cursor: pointer;
}

.dd-accordion__description {
	display: block;
	opacity: 0;
	height: 0;
	overflow: hidden;
	transition: opacity 0.3s, height 0.3s;
}

.acc-visible {  
	opacity: 1;
	height: auto;
	padding: 15px 5px 20px;
}

.dd-accordion__description p {
	margin-bottom: 15px;
}

.dd-accordion__description li {
	font-size: 15px;
	line-height: 25px;
	margin-bottom: 10px;
}

/*************** ADDICTIONS **********/

.addictions-section {
	padding: 130px 0;
}

.addictions-section__h2 {
	margin-bottom: 50px;
}

.addiction__description {
	align-items: flex-start;
	display: flex;
}

.addiction__image {
	margin-right: 15px;
}

/************* FACILITY *****************/

.explore-section {
	border-top:1px solid #D9DBE1;
	border-bottom:1px solid #D9DBE1;
	display: flex;
}

.facility-content {
	padding: 127px 15px 133px;
}

.facility-content__h2 {
	margin: 0 auto 30px;
}

.facility-content__p {
	max-width: 645px;
	margin: 0 auto 30px;
}

.facility-content__cta {
	text-align: center;
	padding: 19px 40px;
}

.facility-video-holder {
	background: var(--light-blue-bg);
	justify-content: center;
	align-items: center;
}

.facility-video {
	border-radius: 30px;
	    height: auto;
	width: 100%;
}

/************** GALLERY **************/

.gallery-section {
	padding: 117px 0 137px;
	    overflow: hidden;
}

.gallery-nav {
	list-style: none;
	display: flex;
	justify-content: center;
	margin: 0 0 50px;
	padding: 0;
}

.gallery-nav__li {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.24px;
	color: #A9ADB7;
	margin: 0 15px;
	cursor: pointer;
}

.gallery-nav__li.active {
	color: var(--color-dark);

}

.gallery-wrap,
.interior-wrap,
.outside-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.gallery .interior-wrap,
.gallery .outside-wrap {
	visibility: hidden;
	height: 0;
}
.gallery__image-holder {
	border-radius: 30px;
	width: 33%;
	padding: 15px;
}

.gallery__image {
	width: 100%;
	height: auto;
	object-fit: contain;
	border-radius: 30px;
}

/************ INSURANCE PROVIDERS ****************/

.insurance-section {
	padding: 178px 0 132px;
}

.insurance-providers__h2 {
	margin: 0 0 30px;
}

.insurance-providers__p {
	max-width: 844px;
	margin: 0 auto 62px;
	font-size: 20px;
	line-height: 30px;
}

.insurance-section .insurance-provider {
	padding: 13px;
}

.insurance-provider__holder {
	border-radius: 30px;
	border: 1px solid #EBEBEB;
	background: #FFF;
	box-shadow: 4px 4px 20px 0px rgba(94, 73, 5, 0.10);
	width: 100%;
	height: 175px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.insurance-section__cta {
	padding: 17px 36px;
	margin-top: 60px;
}

/**************** FAQ ***********************/

.faq-section {
	padding: 150px 0 336px;
}

.faq-section-right {
	padding-left: 0;
}

.faq-left {
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
}

.faq .dd-accordion__title {
	letter-spacing: 0;
}

/************* AREAS ***********/
.areas-section {
	padding: 147px 0 138px;
}

.areas-grid {
	display: grid;
	width: 100%;
	grid-template-areas:
		"atop list"
		"abottom  list";
	grid-template-rows: 1fr 1fr;
	grid-template-columns: 4fr 8fr;
}

.areas-left__h3 {
	font-size: 26px;
	margin-bottom: 20px;
	grid-area: atop;
}

.areas-left__address {
	font-size: 18px;
	max-width: 327px;
}

.areas-left__bottom {
	grid-area: abottom;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding-bottom: 20px;
}
.area-list {
	list-style: none;
	column-count: 2;
}
.areas-right {
	grid-area: list;
}

li.area-list__li {
	position: relative;
	align-items: center;
	margin-bottom: 22px;
	max-width: 290px;
}


.area-list__a {
	font-size: 18px;
	font-weight: 600;
	line-height: 26px;
	letter-spacing: 0.18px;
	color: var(--color-dark);
	margin-left: 15px;
}


.area-list__a:hover {
	color: var(--secondary-cta-hover-color);
}

/***************** MAP *****************/

.map-section {
	margin-top: -230px;
}

.map-section .container {
	background: var(--main-bg);
	border-radius: 30px;
	padding: 15px;
}
.map-section__gmap {
	width: 49%;
	border-radius: 20px;
}

.map-section__video-holder {
	width:49%;
	height: 100%;
	border-radius: 0 30px 30px 0;
	overflow: hidden;
	margin-left: 2%;
}

video.map-video {
    border-radius: 20px;
}

.map-section__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1600px) {

	.container-full {
		width: 90%;
		margin: 0 auto;
		min-width: 1140px;
	}
	.hero-content__h1 {
		font-size: 38px;
		line-height: 50px;
		letter-spacing: -0.76px;
		margin: 0 0 30px;
		max-width: 465px;
	}

	.hero-content__subtitle {
		font-size: 17px;
		line-height: 28px;
		margin: 0 0 35px;
		max-width: 472px;
	}
	.badges-wrap__img {
		width: 13%;
		height: auto;
	}
	.badges-wrap__img.badge--4 {
		width: 18%;
	}
	
	.features-section {
		padding: 158px 0 80px;
	}
	
	.home-team-section {
		padding: 96px 0 105px;
	}

	.success-content__p {
		font-size: 18px;
		line-height: 28px;
		padding-left: 15px;
		padding-right: 15px;
	}
	.contact-left {
		padding: 35px 0 40px;
	}

	.dd-contact-form {
		padding: 48px 38px 0;
	}
	.contact-title {
		line-height: 38px;
		font-size: 30px;
		margin: 0 auto 10px;
	}

	.contact__phone {
		font-size: 26px;
		margin: 0 auto 46px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gform_footer input {
		height: 55px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gfield textarea.medium {
		height: 100px;
	}


	.dd-contact-form .gform_wrapper.gravity-theme .gfield input, 
	.dd-contact-form .gform_wrapper.gravity-theme .gfield select {
		padding: 11px 20px;
		height: 46px;
	}

	.contact-right {
		padding: 70px 15px 79px;
	}

	.contact-right__h3 {
		font-size: 22px;
		margin-bottom: 25px;
	}

	.ae-box__image {
		width: 160px;
		height: 241px;
	}
	.ae-box {
		padding: 0 7px;
	}

	.ae-box__name {
		font-size: 14px;
	}

	.ae__position {
		font-size: 10px;
	}

	.programs-section {
		padding: 158px 0 80px;
	}

	.program-box {
		padding: 36px 15px 45px;
	}

	.program-box__image {
		height: 100px;
		width: auto;
	}

	.program-box__title {
		margin: 20px auto 13px;
		letter-spacing: 0.22px;
		max-width: 214px;
	}

	.program-box__btn {
		padding: 11px 32px;
		margin-top: 35px;
		font-size: 15px;
	}

	.testimonials-section {
		padding: 96px 0 105px;
	}

	.addictions-section {
		padding: 90px 0 110px;
	}

	.facility-content {
		padding: 68px 15px 85px;
	}

	.facility-content__p {
		max-width: 541px;
	}

	.facility-content__cta {
		padding: 14px 31px;
		font-size: 16px;
	}

	.facility-video {
		width: 100%;
		height: auto;
	}

	.gallery-section {
		padding: 100px 0 108px;
	}

	.insurance-section {
		padding: 158px 0 100px;
	}

	.insurance-providers__p {
		font-size: 18px;
	}

	.insurance-provider__holder {
		height: 167px;
	}

	.faq-section {
		padding: 122px 0 320px;
	}

	.faq-left__title {
		max-width: 350px;
	}  

	.areas-section {
		padding: 100px 0 108px;
	}
/* 
	.map-section .container {
		height: 439px;
	} */

/* 	#gmap {
		height: 409px;
	} */

}

@media screen and (max-width: 1200px) {
	.container-full {
		width: 970px;
		min-width: unset;
	}

	.hero-container {
		align-items: flex-start;
	}

	.hero-content__h1 {
		font-size: 34px;
		line-height: 47px;
	}

	.hero-content__subtitle {
		font-size: 16px;
		line-height: 26px;
	}

	.hero-content__cta {
		font-size: 17px;
		padding: 14px 35px;
		margin-right: 10px;
	}

	.hero-content__cta__btn-wrapper {
		display: flex;
		align-items: start;
		flex-direction: column;
		row-gap: 8px;
	}

	.s-story__title {
		font-size: 20px;
		line-height: 28px;
	}
	.about-section {
		padding-bottom: 90px;
	}

	.facts-section {
		margin-bottom: -30px;
	}
	
	.faq-section{
		padding: 95px 0 300px;
	}

	.success-stories-section {
		padding: 195px 0 140px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gfield_label {
		font-size: 14px;
	}

	.contact-right {
		padding: 65px 15px 73px;
	}

	.ae-box__image {
		width: 135px;
		height: auto;
	}
	
	#gmap {
		height: 259px;
	}
}

@media screen and (max-width:991px) {
	.hero-container {
		display: block;
	}

	.container-full {
		width: 750px;
		padding: 0 15px;
	}

	.hero-content {
		margin-bottom: 50px;
	}

	.hero-content__h1,
	.hero-content__subtitle {
		max-width: unset;
	}

	.hero-content__cta {
		font-size: 18px;
	}

	.badges-section {
		padding: 57px 0 57px;
	}

	.about-img-holder {
		padding-right: 15px;
	}

	.img-about {
		height: 410px;
		margin-bottom: 60px;
	}

	.about-content {
		padding-left: 15px;
	}
	.facts-section {
		margin-bottom: -65px;
	}

	.fact-section .fact__image-holder {
		padding: 0 5px;
	}

	.fact__image {
		width: 100%;
		margin-bottom: 10px;
	}
	
	.explore-section__inner{
		display: flex;
		flex-direction: column-reverse;
	}
	
	li.area-list__li img {
		width: 35px;
		height: 35px;
	}
	.success-stories-section {
		padding: 230px 0 120px;
	}	

	.s-story__video-holder {
		height: auto;
		width: 100%;
	}

	.contact-left {
		padding: 70px 0 60px;
	}

	.explore-section {
		display: block;
	}

	.facility-video-holder {
		padding: 95px 15px;
	}
	
	.faq-section{
		padding: 90px 0 290px;
	}
	
	.faq-section .container {
		display: block;
	}

	.faq-section-right {
		padding-left: 15px;
	}

	.faq-left__sun {
		display: none;
	}

	.faq-left__title {
		text-align: center;
		max-width: 100%;
		margin-bottom: 50px;
	}

	.insurance-section .insurance-provider {
		padding: 5px;
	}

	.insurance-provider__holder {
		height: 130px;
		padding: 10px;
	}

	.areas-section {
		padding: 90px 0 103px;
	}

	.areas-section .container {
		display: block;
	}

	.area-list {
		padding: 0;
	}

	.areas-grid {
		grid-template-areas:
			"atop"
			"list"
			"abottom";
		grid-template-rows: auto auto auto;
		grid-template-columns: 1fr;
		padding: 0 15px;
	}

	.areas-left__h2 {
		text-align: center;
		margin-bottom: 50px;
	}

	.areas-left__bottom {
		padding: 50px 0 0;
	}
	
	.map-section {
		margin-top: -180px;
	}
	#gmap {
		height: 200px;
	}
}

@media screen and (max-width:767px) {
	.container-full {
		width: 100%;
	}

	.badges-wrap__img {
		height: 71px;
		    width: auto;
	}


	.program-box-holder {
		width: 50%;
	}

	.program-box__image {
		height: 83px;
		width: auto;
	}

	.program-box__btn {
		margin-top: 23px;
	}
	
	.map-section {
		margin-top: -220px;
	}

	.map-section .container {
		display: block;
	}
	
	#gmap {
		width: 100%;
		height: 300px;
		margin-bottom: 15px;
	}
	
	.map-section__video-holder {
		width: 100%;
		margin-left: 0;
	}
}

@media screen and (max-width: 600px) {
	.hero-section {
		padding: 33px 0 60px;
	}
	.hero-content__h1 {
		font-size: 28px;
		line-height: 36px;
		letter-spacing: -0.56px;
		margin-bottom: 25px;
		text-align: center;
	}

	.hero-content__subtitle {
		font-size: 16px;
		line-height: 26px;
		text-align: center;
	}
	.hero-content__cta {
		font-size: 16px;
		margin-right: 0;
		width: 100%;
		text-align: center;
	}

	.hero-content__gr-btn {
		margin-bottom: 13px;
		left: 50%;
		position: relative;
		transform: translatex(-50%);
	}

	.hero-images {
		grid-template-areas:
			"i2 i2"
			"i3 i1";
		grid-gap: 20px;
		grid-template-rows: 2fr 1fr;
		grid-template-columns: 1fr 1fr;
	}

	.hero-image--shape-2 {
		border-radius: 20px;
	}
	.badges-wrap__img,
	.badges-wrap__img.badge--4 {
		height: auto;
		width: 33%;
		padding: 10px;
	}

	.about-section {
		display: none;
	}

	.facts-section {
		margin-bottom: -33px;
	}

	.success-stories-section {
		padding: 150px 0 80px;
	}

	.success-content__h2 {
		max-width: 322px;
		margin: 0 auto 20px;
	}

	.dd-slick .slick-dots {
		bottom: -35px;
	}
	.dd-slick .slick-dots li {
		width: 28px;
	}

	.dd-slick .slick-dots li.slick-active {
		width: 70px;
	}

	.s-story__overlay {
		display: none!important;
	}

	.s-story__video-holder:hover video {
		transform: none;
	}

	.s-story__title {
		font-size: 16px;
		line-height: 24px;
	}

	.contact-left {
		padding: 65px 0;
	}
	.contact-title {
		line-height: 34px;
		font-size: 26px;
		max-width: 300px;
	}

	.contact__phone {
		font-size: 22px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gform_fields {
		grid-row-gap: 10px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gfield_label {
		font-size: 15px;
		margin-bottom: 4px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gform_footer input {
		font-size: 16px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gfield input, 
	.dd-contact-form .gform_wrapper.gravity-theme .gfield select {
		padding: 8px 15px;
		height: 40px;
		font-size: 15px;
	}

	.dd-contact-form .gform_wrapper.gravity-theme .gfield textarea.medium {
		font-size: 15px;
		height: 90px;
		padding: 8px 15px;
	}

	.contact-right__h2 {
		margin: 0 auto 15px;
	}

	.contact-right__h3 {
		font-size: 18px;
		margin-bottom: 18px;
	}

	.ae-box__image {
		transform: translatex(-50%);
		left: 50%;
		position: relative;
		width: 210px;
	}

	.contact-right {
		padding: 65px 0 87px;
	}

	.contact-right__p {
		padding: 0 30px;
		margin: 0 auto 39px;
	}

	.programs-section {
		padding: 147px 0 65px;
	}
	
	.features-section {
		padding: 147px 0 65px;
	}
	
	.home-team-section {
		padding: 76px 0 91px;
	}

	.programs-section__h2 {
		max-width: 330px;
		margin: 0 auto 37px;
	}
	.program-box__image {
		height: auto;
		width: 100px;
	}
	.testimonials-section {
		padding: 76px 0 91px;
	}
	.program-box-holder {
		width: 100%;
	}

	.testimonials-section__h2 {
		max-width: 214px;
		margin: 0 auto 30px;
	}
	
	.home-team-section__h2 {
		margin: 0 auto 30px;
	}

	.testimonials-sec__cta {
		width: calc(100% - 30px);
		margin-top: 50px;
	}

	.addictions-section {
		padding: 74px 0 78px;
	}

	.addictions-section__h2 {
		max-width: 250px;
		margin: 0 auto 35px;
	}

	.dd-accordion__title {
		font-size: 15px;
	}

	.addiction__description {
		flex-direction: column;
	}

	.addiction__image {
		margin-bottom: 15px;
	}
	.facility-content {
		padding: 65px 30px 76px;
	}

	.facility-content__h2 {
		margin: 0 auto 20px;
		max-width: 290px;
	}

	.facility-content__cta {
		width: 100%;
	}

	.facility-video-holder {
		padding: 60px 15px;
	}

	.facility-video {
		width: 100%;
		height: auto;
	}
	.gallery-section {
		padding: 70px 0 100px;
	}

	.gallery-section .container {
		padding: 0;
	}

	.gallery-nav {
		margin: 0 0 20px;
	}

	.gallery-nav__li {
		font-size: 18px;
		letter-spacing: 0.18px;
		margin: 0 10px;
	}

	.gallery__image-holder {
		padding: 15px;
	}
	.insurance-section {
		padding: 134px 0 83px;
	}
	.insurance-provider__holder {
		height: 52px;
		padding: 3px;
		border-radius: 10px;
	}

	.insurance-providers__p {
		font-size: 16px;
		margin: 0 auto 30px;
	}

	.insurance-section__cta {
		padding: 14px 10px;
		margin-top: 44px;
		font-size: 16px;
		width: calc(100% - 20px);
	}

	.faq-section {
		padding: 74px 0 160px;
	}

	.faq-left__title {;
		margin-bottom: 35px;
	}

	.areas-section {
		padding: 83px 0 83px;
	}
	
	.section{
		padding: 83px 0 83px;
	}

	.areas-left__h2 {
		max-width: 290px;
		margin: 0 0 35px;
		text-align: left;
	}
	.area-list {
		column-count: 1;
	}
	.map-section {
		margin-top: -120px;
		padding: 0 15px;
	}

	.map-section .container {  
		height: auto;
	} 
	.areas-left__h3 {
		font-size: 22px;
		margin-bottom: 10px;
	}
	#gmap {  
		height: 250px;
	}
	.map-section .container {
		flex-direction: column;
	}
	.map-section__img-holder {
		width: 100%;
		height: 242px;
		border-radius: 0 0 20px 20px;
	}

	.s-story video,
	.s-story__video-holder,
	.facility-video {
		border-radius: 20px;
	}
	.ae-box {
		padding: 0 20px;
	}
}

@media screen and (max-width: 500px) {
	.btn--outlined {
		font-size: 16px;
		padding: 12px ;
	}
	
	.btn--outlined.program-box__btn {
		padding: 12px 28px;
	}
	.area-list__a {
		line-height: 23px;
	}
	
	.contact-right{
		display: none;
	}
}

@media screen and (max-width: 420px) {
	.fact__image-holder {
		padding: 0 5px;
	}
}


.gallery__image-holder--outside,
.gallery__image-holder--interior {
	display: block;
	opacity: 1;
	transition: opacity 0.3s ease;
}
.hidden {
	display: none;
	opacity: 0;
}
/* .hero-images .dd-hp-hero-show {
	display:block!important;
} */
