/* VARIABLES */
:root {
	/* Fonts & Typography */
	--font-weight: 400;

	--font-size: 1.125rem;
	--line-height: 1.75rem;

	--font-size-lg: 1.25rem;
	--line-height-lg: 1.75rem;

	--font-size-sm: 1rem;
	--line-height-sm: 1.5rem;

	/* Titles */
	--h1-font-size: 5rem;
	--h1-line-height: 5.25rem;
	--h1-font-size-md: 3.75rem;
	--h1-line-height-md: 3.75rem;
	--h1-font-size-sm: 2.813rem;
	--h1-line-height-sm: 2.813rem;

	--h2-font-size: 4.875rem;
	--h2-line-height: 5.125rem;
	--h2-font-size-md: 3.5rem;
	--h2-line-height-md: 3.5rem;
	--h2-font-size-sm: 2.25rem;
	--h2-line-height-sm: 2.25rem;

	--h3-font-size: 4.188rem;
	--h3-line-height: 4.375rem;
	--h3-font-size-md: 2.9065rem;
	--h3-line-height-md: 3.125rem;
	--h3-font-size-sm: 2.25rem;
	--h3-line-height-sm: 2.5rem;

	--h4-font-size: 3.75rem;
	--h4-line-height: 3.75rem;
	--h4-font-size-md: 2.5125rem;
	--h4-line-height-md: 2.875rem;
	--h4-font-size-sm: 2.15rem;
	--h4-line-height-sm: 1.25em;

	--h5-font-size: 2.5rem;
	--h5-line-height: 2.813rem;
	--h5-font-size-md: 2rem;
	--h5-line-height-md: 2.5rem;
	--h5-font-size-sm: 1.75rem;
	--h5-line-height-sm: 2rem;

	--h6-font-size: 1.5rem;
	--h6-line-height: 2rem;
	--h6-font-size-md: 1.28rem;
	--h6-line-height-md: 1.625rem;
	--h6-font-size-sm: 1.25rem;
	--h6-line-height-sm: 1.625rem;

	--title-font-weight: var(--font-weight);
	/* Colors */
	--dark: #000;
	--dark-transoarent: rgba(0, 0, 0, .75);
	--middle: #E2E2E2;
	--light: #9ea2ae;
	--text: #4B4B4B;
	--title: var(--dark);
	--white: #fff;
	--white-transparent: rgba(255, 255, 255, .5);
	--blue: #43A8B4;
	--blue-light: #F6FCFE;
	--pink: #DF4C9C;
	--pink-light: #FEF7F8;
	--grey-light: #b2b2b2;
	--grey: #8f8f8f;
	--grey-dark: #4d4d4d;
	--red: #8f2336;
	/* Other */
	/* Buttons */
	--btn-font-size: 1.125rem;
	--btn-font-size-sm: .875rem;
	--btn-font-weight: 400;
	--btn-line-height: 1.5rem;
	--btn-line-height-sm: 1rem;
	--btn-border-width: 1px;
	--btn-border-radius: 3.75rem;
	/* Gaps & spaces */
	--header-height: 5.688rem;
	--header-height-md: 5.063rem;
	--section-padding: 5.625rem;
	--section-padding-sm: 4.75rem;
	--section-padding-xs: 3rem;
	--content-margin: 1rem;
	--content-margin-sm: .75rem;
	--content-margin-xs: .5rem;
	/* Popups */
	--popup-bg: rgba(25, 25, 25, .84);
	/* Transitions */
	--duration: .7s;
	--delay: var(--duration);
	--easing: cubic-bezier(.14, .72, .18, .84);
	--animation-easing: cubic-bezier(.14, .72, .18, .84);
}

/* MAIN STYLES */
html,
body {
	height: auto
}

body {
	overflow: auto;
}

@media (max-width: 767px) {

	.chess .img,
	.holiday-img.img-responsive,
	.txt-img .bg-dark,
	.txt-img .img > .full-size {
		border-radius: 2.75rem;
	}
}
/* WHY US */
.advantages {
	margin-bottom: -2rem;
}

.advantages.advantages-sm {
	margin-top: 4.375rem;
}

.advantage {
	position: relative;
	margin-bottom: 2rem;
}

.advantage .img {
	width: 12.625rem;
	border-radius: 50%;
	margin: 0 auto 2.5rem;
	background-color: var(--white);
	filter: drop-shadow(0 5px 11px rgba(153, 153, 153, .1)) drop-shadow(0 19px 19px rgba(153, 153, 153, .09)) drop-shadow(0 43px 26px rgba(153, 153, 153, .05)) drop-shadow(0 77px 31px rgba(153, 153, 153, .01));
}

.advantage .img-responsive {
	padding-top: 12.625rem;
}

.advantage .img img {
	top: 50%;
	left: 50%;
	width: 5rem;
	height: 5rem;
	transform: translate(-50%, -50%);
}

.advantage .h6 {
	margin-bottom: .5rem;
	letter-spacing: -1.2px;
}

.advantage.advantage-sm .img {
	width: 2rem;
	margin: 0 0 1.5rem;
	background-color: var(--pink);
}

.advantage.advantage-sm .img-responsive {
	width: 2rem;
	padding-top: 2rem;
}

.advantage.advantage-sm .img img {
	width: 1.25rem;
	height: 1.25rem;
}

@media (max-width: 1599px) {

	.advantage .img {
		width: 10.5rem;
		margin: 0 auto 2rem;
	}

	.advantage:not(.advantage-sm) .img-responsive {
		padding-top: 10.5rem;
	}

	.advantage .img img {
		width: 5rem;
		height: 5rem;
	}
}

@media (max-width: 1199px) {

	.advantages.advantages-sm {
		margin-top: 2.5rem;
	}
}

@media (max-width: 991px) {

	.advantage .img {
		top: -.19rem;
	}
}

@media (max-width: 767px) {

	.advantages.advantages-sm {
		margin-top: 2rem;
	}

	.advantage .img {
		width: 8rem;
		padding-top: 8rem;
		margin: 0 auto 1.5rem;
	}

	.advantage.advantage-sm {
		text-align: center;
	}

	.advantage.advantage-sm .img {
		margin: 0 auto 1rem;
	}
}

/* ACCORDIONS */
.accordion,
.accordion-dropdown {
	border-top: 1px solid var(--middle);
}

.accordion:first-child {
	margin-top: 3.75rem;
}

.accordion.open svg {
	transform: none;
}

.accordion-title {
	font-weight: 400;
	margin-bottom: 0;
	position: relative;
	color: var(--title);
	line-height: var(--h1-font-size-sm);
	padding: .875rem 2.5rem .875rem .625rem;
}

.accordion-title svg {
	top: 50%;
	width: 1.5rem;
	height: 1.5rem;
	right: 1.125rem;
	fill: var(--blue);
	position: absolute;
	margin-top: -.75rem;
	transform: rotate(-90deg);
}

.accordion-dropdown {
	display: none;
	padding: 1.25rem 3.75rem;
}

.accordion-dropdown-answer {
	display: flex;
	align-items: flex-start;
}

.accordion-dropdown-answer .img,
.accordion-dropdown-answer .img:after {
	border-radius: 0 9.375rem 0 9.375rem;
}

.accordion-dropdown-answer .img {
	flex: 0 0 25.933%;
	max-width: 25.933%;
	margin-right: auto;
	border: 1rem solid var(--blue-light);
}

.accordion-dropdown-answer .img.img-responsive {
	padding-top: 25.093%;
}

@media (min-width: 1200px) {

	.accordion-title:hover {
		color: var(--blue);
	}
}

@media (max-width: 1199px) {

	.accordion:first-child {
		margin-top: 1.75rem;
	}

	.accordion-title svg {
		right: .25rem;
	}

	.accordion-dropdown {
		padding: 1.25rem 1.25rem;
	}
}

@media (min-width: 768px) {

	.accordion-dropdown-answer .content {
		flex: 0 0 63.728%;
		max-width: 63.728%;
	}
}

@media (max-width: 767px) {

	.accordion-title {
		line-height: 2rem;
	}

	.accordion-dropdown {
		padding: 1rem 0;
	}

	.accordion-dropdown-answer .img {
		display: none;
	}
}

/* CHESS */
.chess.contact-us .btns-wrap {
	margin-top: 2.5rem;
}

.chess:not(.reverse).contact-us .img.img-responsive {
	padding-top: 90.94%;
	border: solid var(--blue-light);
	border-width: 3.75rem 6.938rem 5.875rem 5rem;
}

@media (min-width: 1200px) {

	.chess-title {
		padding-right: 39%;
		margin-bottom: 5rem;
	}

	.chess.reverse.areas .chess-title {
		padding-right: 63%;
		margin-bottom: 1.5rem;
	}

	.chess.reverse.areas .chess-title + .content {
		padding-right: 56%;
		margin-bottom: 5rem;
	}

	.chess.contact-us:not(.reverse) > .container > .row > div[class^="col-"].img-sm:first-child {
		padding-right: 10.75%;
	}

	.chess:not(.reverse) > .container > .row > div[class^="col-"]:first-child {
		padding-right: .477%;
	}

	.chess:not(.reverse) > .container > .row > div[class^="col-"].img-sm:first-child {
		padding-right: 8.98%;
	}

	.chess:not(.reverse) > .container > .row > div[class^="col-"].img-sm + div[class^="col-"] {
		padding-left: .477%;
	}

	.chess:not(.reverse) > .container > .row > div[class^="col-"]:last-child {
		padding-left: 8.98%;
	}

	.chess.reverse > .container > .row > div[class^="col-"]:first-child {
		padding-left: 8.98%;
	}

	.chess:not(.reverse).contact-us .img.img-responsive {
		margin-left: -11.782%;
	}

	.chess:not(.reverse) > .container > .row > div[class^="col-"].img-sm + div[class^="col-"] {
		padding-left: 0;
	}

	.chess.reverse .img,
	.chess:not(.reverse) .img {
		border-top-right-radius: 12.5rem;
	}

	.chess:not(.reverse) .img {
		border-bottom-left-radius: 12.5rem;
	}
}

@media (max-width: 1199px) {

	.chess-title {
		margin-bottom: 2.5rem;
	}

	.chess:not(.reverse).contact-us .img.img-responsive {
		border-width: 2.25rem 4.3rem 2.75rem 3rem;
	}
}

@media (max-width: 1199px) and (min-width: 768px) {

	.chess .row.align-items-center {
		align-items: stretch;
	}

	.chess .img {
		top: 5rem;
		position: sticky;
	}

	.chess.reverse .img,
	.chess:not(.reverse) .img {
		border-top-right-radius: 6.25rem;
	}

	.chess:not(.reverse) .img {
		border-bottom-left-radius: 6.25rem;
	}
}

@media (min-width: 768px) {

	.chess.reverse > .container > .row > div[class^="col-"]:first-child {
		order: 2;
	}

	.chess.reverse > .container > .row > div[class^="col-"]:last-child {
		order: 1;
	}

	.chess.reverse .img.img-responsive {
		padding-top: 68.795%;
	}

	.chess:not(.reverse) .img.img-responsive {
		padding-top: 89.796%;
	}
}

@media (max-width: 767px) {

	.chess {
		text-align: center;
	}

	.chess-title {
		margin-bottom: var(--content-margin-xs);
	}

	.chess .btns-wrap {
		justify-content: center;
	}

	.chess .img {
		margin-top: 1.5rem;
	}

	.chess:not(.reverse).contact-us .img.img-responsive {
		border: none;
	}
}

/* SERVICES */
.services.row > div[class^="col-"] .service,
.additional-services.row > div[class^="col-"] .service {
	height: 100%;
}

.services.row {
	margin: 0 -.625rem -1.25rem;
}

.services.row > div[class^="col-"] {
	padding:  0 .625rem;
	margin-bottom: 1.25rem;
}

.additional-services.row {
	margin: 2.5rem -.5rem -1rem;
}

.additional-services.row > div[class^="col-"] {
	padding:  0 .5rem;
	margin-bottom: 1rem;
}

.service {
	display: flex;
	position: relative;
	align-items: center;
	border-radius: 2rem;
	background: var(--white);
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .05);
}

.service .img {
	width: 3.25rem;
	height: 3.25rem;
}

.services .service {
	flex-wrap: wrap;
	justify-content: center;
}

.services .service .img {
	margin-bottom: 2rem;
}

.services .service .h6 {
	flex: 0 0 100%;
	max-width: 100%;
}

.service a.full-size {
	opacity: 0;
	font-size: 0;
}

.additional-services .service {
	padding: 1.375rem 2rem;
}

@media (min-width: 1600px) {

	.services-title {
		padding-left: 3%;
		margin-bottom: -9.5rem;
	}

	.service {
		padding: 3.688rem 1rem;
	}
}

@media (max-width: 1599px) {}

@media (max-width: 1599px) and (min-width: 1200px) {

	.services-title {
		padding-left: 5%;
		padding-right: 32%;
		margin-bottom: -5.75rem;
	}

	.service {
		padding: 2.75rem 1rem;
	}
}

@media (min-width: 1200px) {

	.services-text {
		margin-top: -7rem;
	}

	.services.row > div[class^="col-"]:nth-child(7n + 2) {
		margin-right: 50%;
	}

	.services.row > div[class^="col-"]:nth-child(7n + 3) {
		margin-left: 25%;
	}

	.services.row > div[class^="col-"]:nth-child(7n + 6) {
		margin-left: 50%;
	}

	.service:hover {
		box-shadow: 0 0 25px 0 rgba(0, 0, 0, .12);
	}

	.service:hover .h6 {
		color: var(--pink);
	}
}

@media (max-width: 1199px) {

	.service {
		padding: 1.5rem 1rem;
	}

	.services.row {
		margin-bottom: 1rem;
	}

	.additional-services .service {
		padding: 1rem;
		flex-wrap: wrap;
		justify-content: center;
	}

	.additional-services .img {
		margin-top: 0;
		margin-bottom: 2rem;
	}

	.additional-services .service .h6 {
		flex: 0 0 100%;
		max-width: 100%;
		text-align: center;
	}
}

@media (max-width: 1199px) and (min-width: 992px) {

	.services.row > div[class^="col-"]:first-child {
		margin-right: 66%;
		margin-top: -4.625rem;
	}
}

@media (min-width: 992px) {

	.additional-services .service .img {
		margin-right: 1.5rem;
	}

	.additional-services .service .h6 {
		margin-bottom: 0;
	}
}

@media (max-width: 991px) {

	.services-title {
		text-align: center;
	}

	.services.row {
		margin-top: 2rem;
		justify-content: center;
	}

	.services-text {
		text-align: center;
	}
}

/* HOLIDAY CLEANING */
.holiday-img.img-responsive {
	padding-top: 116.086%;
}

@media (min-width: 1200px) {

	.holiday-section {
		overflow: hidden;
	}

	.holiday-img {
		margin-left: -11.245%;
		margin-right: -3.625rem;
		border: solid var(--pink-light);
		border-width: 3.188rem 3.625rem;
		border-top-left-radius: 12.5rem;
	}
}

@media (min-width: 992px) {

	.holiday-content {
		margin-top: 3.75rem;
	}
}

@media (max-width: 1199px) and (min-width: 768px) {

	.holiday-img {
		border-top-left-radius: 6.25rem;
	}

	.holiday-img.img-responsive {
		top: 5rem;
		position: sticky;
	}
}

@media (max-width: 991px) {

	.holiday-content {
		margin-top: 1.5rem;
	}
}

@media (max-width: 767px) {

	.holiday-section {
		text-align: center;
	}

	.holiday-img.img-responsive {
		margin-top: 2rem;
	}
}

/* TEXT-IMAGE SECTION */
@media (min-width: 1200px) {

	.txt-img .bg-dark {
		margin-left: -14.044%;
		border-radius: 12.5rem 0;
		padding: 6.313rem 6.75rem 5.625rem 4.75rem;
	}

	.txt-img .img.img-responsive {
		margin-right: -14.044%;
	}

	.txt-img .img.img-responsive .overflow-hidden {
		border-radius: 0 12.5rem;
	}

	.txt-img .img.img-responsive:before {
		left: -2.625rem;
		bottom: -2.375rem;
		border-radius: 0 12.5rem;
	}
}

@media (max-width: 1199px) and (min-width: 768px) {

	.txt-img .bg-dark {
		margin-left: -2rem;
		border-radius: 6.25rem 0;
		padding: 3.15rem 3.05rem 2.75rem 2.57rem;
	}

	.txt-img .img.img-responsive .overflow-hidden {
		border-radius: 0 6.25rem;
	}

	.txt-img .img.img-responsive {
		margin-right: -2rem;
	}

	.txt-img .img.img-responsive:before {
		left: -1.19rem;
		bottom: -1.19rem;
		border-radius: 0 6.25rem;
	}
}

@media (min-width: 768px) {

	.txt-img .row > div[class^="col-"]:first-child {
		order: 2;
	}

	.txt-img .row > div[class^="col-"]:last-child {
		order: 1;
	}

	.txt-img .bg-dark,
	.txt-img .img.img-responsive {
		top: 5rem;
		position: sticky;
	}

	.txt-img .img.img-responsive {
		padding-top: 87.376%;
	}

	.txt-img .img.img-responsive:before {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		background-color: var(--pink-light);
	}
}

@media (max-width: 767px) {

	.txt-img .bg-dark {
		padding: 2rem 1.5rem;
	}

	.txt-img .bg-dark .h4 {
		text-align: center;
	}

	.txt-img .img {
		margin-top: 1.5rem;
	}
}

/* AREAS WE SERVE */
.areas {
	margin-bottom: -1.5rem;
}

.areas > div[class^="col-"] {
	margin-bottom: 1.5rem;
}

.areas > div[class^="col-"] .area {
	height: 100%;
}

.area {
	border-bottom: var(--btn-border-width) solid var(--middle);
}

@media (min-width: 992px) {

	.area {
		padding: 1rem;
	}
}

/* SLIDERS */
.splide__arrow:focus-visible,
.splide__pagination__page:focus-visible,
.splide.is-focus-in .splide__pagination__page:focus,
.splide.is-focus-in .splide__arrow:focus,
.splide__slide:focus,
.splide__toggle:focus-visible
.splide.is-focus-in .splide__toggle:focus {
	outline: 0;
}

.splide.disabled .splide__pagination,
.splide.disabled .splide__slide:not(.is-visible),
.splide.disabled .splide__slide.splide__slide--clone,
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
	display: none;
}

.splide.disabled .splide__list {
	justify-content: center;
	transform: none !important;
}

.splide__container {
	position: relative;
	box-sizing: border-box;
}

.splide__list {
	backface-visibility: hidden;
	display: flex;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
	display: block;
}

.splide__pagination {
	display: flex;
	margin-top: 1rem;
	justify-content: center;
}

.splide__pagination li {
	margin: 0;
	pointer-events: auto;
	display: inline-block;
	list-style-type: none;
}

.splide__progress__bar {
	width: 0;
}

.splide.is-initialized,
.splide.is-rendered {
	visibility: visible;
}

.splide__slide {
	margin: 0;
	flex-shrink: 0;
	position: relative;
	box-sizing: border-box;
	list-style-type: none !important;
}

.splide__slide img {
	vertical-align: bottom;
}

.splide__spinner {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 20px;
	height: 20px;
	margin: auto;
	contain: strict;
	position: absolute;
	border-radius: 50%;
	display: inline-block;
	border: 2px solid #999;
	border-left-color: transparent;
	animation: splide-loading 1s linear infinite;
}

@keyframes splide-loading {

	0% {
		transform: rotate(0)
	}

	to {
		transform: rotate(1turn)
	}
}

.splide__sr {
	border: 0;
	padding: 0;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	position: absolute;
	clip: rect(0 0 0 0);
}

.splide__toggle.is-active .splide__toggle__pause {
	display: inline;
}

.splide__track {
	z-index: 0;
	overflow: hidden;
	position: relative;
}

.splide__track--draggable {
	user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none;
}

.splide__track--fade > .splide__list > .splide__slide {
	margin: 0 !important;
	opacity: 0;
	z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
	opacity: 1;
	z-index: 1;
}

.splide--rtl {
	direction: rtl;
}

.splide__track--ttb > .splide__list {
	display: block;
}

.splide__arrows {
	display: flex;
	align-items: center;
	justify-content: center;
}

.splide__arrow,
.splide__arrow:before {
	border-radius: 50%;
}

.splide__arrow {
	display: flex;
	width: 1.875rem;
	height: 1.875rem;
	position: relative;
	align-items: center;
	justify-content: center;
}

.splide__arrow:before {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	content: '';
	position: absolute;
	background-color: var(--blue);
	transition: transform .1s var(--easing);
}

.splide__arrow svg {
	width: 1.125rem;
	height: 1.125rem;
	fill: var(--blue);
	transition: fill calc(var(--duration) * 1.5) var(--easing);
}

.splide__arrow.splide__arrow--prev svg {
	margin-right: .125rem;
}

.splide__arrow.splide__arrow--next svg {
	margin-left: .125rem;
}

.splide__arrow.splide__arrow--prev {
	margin-right: 1.5rem;
}

.splide__arrow.splide__arrow--next {
	margin-left: 1.5rem;
}

.splide__arrow:disabled {
	opacity: 0;
}

.splide__arrows .splide__pagination {
	margin: 0;
}

.splide__pagination.light .splide__pagination__page,
.light .splide__pagination .splide__pagination__page {
	background-color: var(--white);
}

.splide__pagination li {
	z-index: 2;
	width: .5rem;
	height: .5rem;
}

.splide__pagination li:not(:last-child) {
	margin-bottom: 0;
	margin-right: .75rem;
}

.splide__pagination__page {
	margin: 0;
	padding: 0;
	opacity: 1;
	width: 100%;
	height: 100%;
	border: none;
	display: block;
	border-radius: 50%;
	background-color: var(--middle);
	transition: background-color var(--duration) var(--easing), transform .1s var(--easing);
}

.splide__pagination__page.is-active {
	background-color: var(--blue);
}

.splide__arrow:active:before,
.splide__pagination__page:active:before {
	transform: scale(1.1);
}

.splide__progress__bar {
	height: 3px;
}

.splide__slide {
	-webkit-tap-highlight-color: transparent;
}

.splide__track--nav > .splide__list > .splide__slide {
	position: relative;
}

.splide__track--nav > .splide__list > .splide__slide:after {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	z-index: 1;
	content: '';
	position: absolute;
	border-radius: var(--btn-border-radius);
	border: calc(var(--btn-border-width) * 2) solid var(--red);
}

.splide__track--nav > .splide__list > .splide__slide.is-active:after {
	opacity: 1;
}

.splide__track--nav > .splide__list > .splide__slide .img.overflow-hidden {
	z-index: 1;
}

.splide__arrows--rtl .splide__arrow--prev {
	left: auto;
	right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
	transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
	left: 1em;
	right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
	transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
	left: 50%;
	transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
	top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
	transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
	bottom: 1em;
	top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
	transform: rotate(90deg);
}

.splide__pagination--ttb {
	bottom: 0;
	display: flex;
	flex-direction: column;
	left: auto;
	padding: 1em 0;
	right: .5em;
	top: 0
}

.splide:not(.disabled) .splide__slide {
	cursor: grab;
}

.splide:not(.disabled) .splide__slide:active {
	cursor: grabbing;
}

.slider.splide {
	margin-top: 3rem;
	position: relative;
}

@media (min-width: 1200px) {

	.splide__pagination__page:hover {
		background-color: var(--dark);
		border: var(--btn-border-width) solid var(--dark);
	}

	.splide__arrow:hover:before {
		opacity: 1;
	}

	.splide__arrow:hover svg {
		fill: var(--white);
	}

	.splide__track--nav > .splide__list > .splide__slide:not(.is-active):hover .img img {
		transform: scale(1.1);
	}
}

@media (max-width: 991px) {

	.splide__arrows {
		margin-top: 1rem;
	}
}

/* REVIEWS */
.reviews-slider {
	margin-top: 4.375rem;
}

.review {
	position: relative;
	text-align: center;
	border-radius: 1.25rem;
	padding: 1.5rem 1rem;
	border: 1px solid var(--middle);
}

.stars {
	font-size: 0;
	line-height: 0;
	padding-bottom: 2rem;
}

.stars svg {
	fill: var(--pink);
	display: inline-block;
}

.stars svg:not(:last-child) {
	margin-right: 1.5rem;
}

.review .h6 {
	margin-bottom: 0;
}

.review .content {
	margin: 0 0 2rem;
}

@media (max-width: 1199px) {

	.reviews-slider {
		margin: 3rem -24% 0;
	}
}

@media (min-width: 992px) {

	.reviews-slider .splide__list .splide__slide {
		display: flex;
		align-items: center;
	}

	.reviews-slider .splide__list .splide__slide .review {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.review {
		border-radius: 2rem;
		padding: 2.5rem 1.5rem;
	}

	.review .img {
		width: 5.813rem;
		right: -1.313rem;
		bottom: -2.813rem;
		position: absolute;
		transform-origin: left top;
		transition: transform var(--duration) var(--easing);
	}

	.reviews-slider .splide__slide:not(.is-active) .review .img {
		transform: scale(0);
	}

	.reviews-slider .splide__track {
		padding-bottom: 3.75rem;
	}

	.reviews-slider .splide__slide .review {
		transition: opacity var(--duration) var(--easing);
	}

	.reviews-slider .splide__slide:not(.is-active) .review {
		opacity: .4;
	}

	.reviews-slider .splide__slide .stars {
		transition: all var(--duration) var(--easing);
		will-change: height, opacity, padding-bottom;
	}

	.reviews-slider .splide__slide:not(.is-active) .stars {
		height: 0;
		opacity: 0;
		padding-bottom: 0;
	}
}

@media (max-width: 991px) {

	.reviews-slider {
		margin: 1.5rem 0 0;
	}

	.reviews-slider .splide__list {
		align-items: center;
	}

	.review .img {
		display: none;
	}
}

/* FORM */
form.row,
.form.row {
	margin: 3.5rem -10px 0;
}

form.row > div,
.form.row > div {
	padding: 0 10px;
	margin-bottom: var(--content-margin);
}

form.row > div:last-child,
.form.row > div:last-child {
	margin-bottom: 0;
}

button,
button:active,
button:hover,
button:focus {
	border: none;
	outline: none;
	box-shadow: none;
	background-color: transparent;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
}

input,
textarea,
select {
	-webkit-appearance: none;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
	width: 0;
	height: 0;
}

label {
	display: block;
	position: relative;
	margin-bottom: 1.5rem;
}

input,
textarea,
input::placeholder,
textarea::placeholder,
.checkbox span:not(.text-sm) {
	font-size: var(--font-size);
	line-height: var(--line-height);
	font-weight: var(--font-weight);
}

input,
textarea {
	display: block;
	color: var(--title);
	padding: .825rem 1rem;
	border-radius: .25rem;
	background-color: transparent;
	border: var(--btn-border-width) solid var(--title);
}

input::placeholder,
textarea::placeholder {
	color: var(--grey-dark);
}

input:focus,
input:invalid,
textarea:focus,
textarea:invalid {
	outline: none;
	box-shadow: none;
}

input:focus,
textarea:focus,
input.focus,
textarea.focus {
	border-color: var(--middle);
	background-color: var(--white);
}

input:focus::placeholder,
textarea:focus::placeholder {
	color: var(--light);
}

input.invalid,
textarea.invalid {
	border-color: var(--red);
}

input.invalid + .error-message,
textarea.invalid + .error-message {
	display: block;
}

input {
	height: 3rem;
}

textarea {
	resize: none;
	overflow: auto;
}

.error-message {
	left: 0;
	right: 0;
	top: 100%;
	display: none;
	font-weight: 900;
	padding: 0 1.1rem;
	color: var(--red);
	line-height: 1rem;
	font-size: .625rem;
	position: absolute;
	text-transform: uppercase;
}

.checkbox {
	position: relative;
	display: inline-block;
	margin-bottom: .75rem;
	padding-left: 1.313rem;
}

.checkbox input {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	padding: 0;
	opacity: 0;
	width: auto;
	height: auto;
	border: none;
	position: absolute;
}

.checkbox span {
	display: block;	
}

.checkbox span:before,
.checkbox span:after {
	left: 0;
	top: .25rem;
	content: '';
	width: .813rem;
	height: .813rem;
	position: absolute;
	border-radius: 2.5px;
}

.checkbox span:before {
	background-color: var(--light);
	border: var(--btn-border-width) solid var(--white);
}

.checkbox span:after {
	opacity: 0;
	background: center / contain url( '../img/check.svg' ) no-repeat var(--blue);
	border: calc(var(--btn-border-width) * 3) solid var(--blue);
}

.checkbox input:checked + span:before {
	opacity: 0;
}

.checkbox input:checked + span:after {
	opacity: 1;
}

option[disabled],
.select2-results__option--disabled {
	display: none;
}

@media (min-width: 1200px) {

	form > div[class^="col-"]:hover,
	.form > div[class^="col-"]:hover {
		z-index: 1;
	}

	input:hover,
	textarea:hover {
		border-color: var(--middle);
	}

	.checkbox:hover span {
		color: rgba(255, 255, 255, .6);
	}
}

@media (max-width: 1599px) {

	input,
	textarea {
		padding: .575rem 1rem;
	}

	input {
		height: 2.5rem;
	}
}

@media (max-width: 991px) {

	form.row {
		margin: 2rem -10px 0;
	}

	input,
	textarea,
	input::placeholder,
	textarea::placeholder {
		font-size: .875rem;
		line-height: 1.375rem;
	}
}

/* LOCATIONS */
.locations {
	font-size: 0;
	min-height: 0;
	margin: 2.125rem -2rem -2rem 0;
}

.location {
	font-size: 1.25rem;
	margin-right: 2rem;
	margin-bottom: 2rem;
	white-space: nowrap;
	line-height: 1.25rem;
	display: inline-block;
	letter-spacing: -.006rem;
}

.location svg {
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 1rem;
	margin-top: -.25rem;
	display: inline-block;
	vertical-align: middle;
}

.map {
	height: 24.813rem;
}

.map iframe {
	width: 100%;
	height: 100%;
}

/* HEADER (DROPDOWN MENU) */
@media (min-width: 1200px) {

	.logo:hover,
	.submenu-toggle:hover,
	.sub-menu > .menu-item > a:hover {
		opacity: .65;
	}

	.menu > .menu-item:hover > .sub-menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transition: opacity var(--duration) var(--easing), transform var(--duration) var(--easing), visibility 0s;
	}
}

@media (max-width: 1199px) {

	nav {
		top: 0;
		right: 0;
		z-index: 2;
		width: 64vw;
		height: 100vh;
		display: flex;
		position: fixed;
		visibility: hidden;
		transform: scaleX(0);
		align-items: center;
		padding: 6.75rem 3rem;
		transform-origin: right center;
		background-color: var(--middle);
		transition: transform var(--duration) var(--easing) var(--delay), visibility 0s var(--easing) calc(var(--delay) * 2);
	}

	header .menu {
		opacity: 0;
		width: 100%;
		overflow: auto;
		flex-wrap: wrap;
		max-height: 100%;
		padding: 2rem 1rem;
		transition: opacity var(--duration) var(--easing);
	}

	header .menu::-webkit-scrollbar {
		width: 4px;
		height: 4px;
	}

	header .menu::-webkit-scrollbar-track {
		background-color: transparent;
	}

	header .menu::-webkit-scrollbar-thumb {
		border-color: var(--light);
	}

	header .submenu-toggle {
		position: relative;
		margin-bottom: .5rem;
		margin-left: 3.125rem;
		display: inline-block;
		vertical-align: middle;
		background-color: transparent;
		border-top: 5px solid var(--white);
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
	}

	header .submenu-toggle:before {
		top: 50%;
		left: 50%;
		content: '';
		width: 2rem;
		height: 2rem;
		position: absolute;
		border-radius: 50%;
		transform: translate(-50%, -50%);
	}

	header .submenu-toggle.active {
		transform: rotate(180deg);
	}

	#menu-btn-close {
		top: 1rem;
		right: 1rem;
		width: 2.5rem;
		height: 2.5rem;
		position: absolute;
		transform: scale(0);
		background-color: var(--red);
		box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .13);
		transition: transform var(--duration) var(--easing), background-color var(--duration) var(--easing);
	}

	#menu-btn-close:before,
	#menu-btn-close:after {
		top: 50%;
		left: 50%;
		content: '';
		width: 1.438rem;
		height: .125rem;
		position: absolute;
		background-color: var(--white);
	}

	#menu-btn-close:before {
		transform: translate(-50%, -50%) rotate(45deg);
	}

	#menu-btn-close:after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}

	header:not(.scrolled) #menu-btn-open span {
		border-top-color: var(--white);
	}

	header.open-menu nav,
	header.open-menu #menu-btn-close {
		transform: none;
	}

	header.open-menu nav {
		visibility: visible;
	}

	header.open-menu nav {
		transition: transform var(--duration) var(--easing), visibility 0s var(--easing);
	}

	header.open-menu .menu,
	header.open-menu nav:before {
		transition: opacity var(--duration) var(--easing) var(--delay);
	}

	header.open-menu .menu {
		opacity: 1;
	}

	header.open-menu nav:before {
		opacity: .1;
	}

	header.open-menu #menu-btn-close {
		transition: transform var(--duration) var(--easing) var(--delay), background-color var(--duration) var(--easing);
	}

	header .menu-item {
		flex: 0 0 100%;
		max-width: 100%;
	}

	header .menu > .menu-item:not(:last-child) {
		margin-bottom: 3.75rem;
	}

	header .menu-item a {
		font-size: 2rem;
		position: relative;
		color: var(--dark);
		line-height: 2.25rem;
		letter-spacing: -1px;
	}

	header .menu > .menu-item > .sub-menu {
		padding-top: 1.5rem;
	}

	header .sub-menu > .menu-item:not(:last-child) {
		margin-bottom: 1.5rem;
	}

	header .sub-menu > .menu-item a {
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 1.75rem;
		letter-spacing: .1rem;
	}

	header .sub-menu > .menu-item > .sub-menu {
		margin-top: 1.5rem;
	}

	header .menu > .menu-item > .sub-menu > .menu-item > .sub-menu {
		border-left: var(--btn-border-width) solid var(--white);
	}

	header .sub-menu > .menu-item > .sub-menu {
		padding-left: 1.5rem;
	}

	header .sub-menu > .menu-item > .sub-menu > .menu-item:before {
		top: .75rem;
		width: 1rem;
		content: '';
		height: auto;
		left: -1.5rem;
		display: block;
		position: absolute;
		border-top: var(--btn-border-width) solid var(--white);
	}

	header .sub-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item:before {
		left: -3rem;
		width: 2.5rem;
	}

	header .menu > .menu-item > .sub-menu,
	header .sub-menu > .menu-item .submenu-toggle {
		display: none;
	}

	#open-menu-bg {
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 98;
		position: fixed;
		background-color: var(--dark-transoarent);
	}

	#open-menu-bg img {
		height: 120%;
		opacity: .1;
		width: 61.979vw;
		transform: translate(-50%, -8%);
	}
}

@media (max-width: 767px) {

	nav {
		z-index: 2;
		width: 100vw;
		text-align: center;
		padding: 6.75rem 2rem;
	}

	.menu > .menu-item > .sub-menu > .menu-item > .sub-menu {
		text-align: left;
	}

	.submenu-toggle {
		margin-left: 1.5rem;
		margin-right: -1.9rem;
	}

	#menu-btn-close {
		left: auto;
		right: 15px;
		top: 1.281rem;
		margin-top: 0;
	}
}
/* POPUPS */
.popup {
	display: block;
	position: static;
}

.popup-content,
.popup-bg {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.popup-content {
	opacity: 0;
	z-index: 102;
	display: flex;
	position: fixed;
	visibility: hidden;
	align-items: center;
	justify-content: center;
	transition: opacity var(--duration) var(--animation-easing) var(--delay), visibility 0s calc(var(--delay) * 2);
}

.popup-content.active {
	opacity: 1;
	visibility: visible;
	transition: opacity var(--duration) var(--animation-easing), visibility 0s;
}

.popup-bg {
	position: absolute;
	backdrop-filter: blur(5px);
	background-color: var(--dark-transoarent);
}

.popup-container {
	width: 100%;
	position: relative;
	padding: 4rem 3rem 2rem;
	max-width: calc(100% - 2rem);
	background-color: var(--white);
	border-radius: var(--btn-border-radius);
	box-shadow: 0 6px 17px 1px rgba(0, 0, 0, .5);
}

.btn-close {
	top: .5rem;
	z-index: 1;
	right: .5rem;
	width: 2.5rem;
	height: 2.5rem;
	position: absolute;
	background-color: var(--red);
	border-radius: var(--btn-border-radius);
	border: var(--btn-border-width) solid var(--red);
}

.btn-close:before,
.btn-close:after {
	top: 50%;
	content: '';
	left: .438rem;
	width: 1.375rem;
	margin-top: -.5px;
	position: absolute;
	border-top: var(--btn-border-width) solid var(--white);
}

.btn-close:before {
	transform: rotate(-45deg);
}

.btn-close:after {
	transform: rotate(45deg);
}

@media (min-width: 1200px) {

	.btn-close:hover:before,
	.btn-close:hover:after {
		background: var(--dark);
	}
}

@media (max-width: 1499px) {

	.popup-container {
		padding: 4rem 2.2rem 4.5rem;
	}
}

@media (min-width: 768px) {

	.popup-container {
		max-width: 31.5rem;
	}
}

@media (max-width: 991px) {

	.popup-container {
		padding: 4rem 1rem 1rem;
	}
}

/* TRANSITIONS */
a,
header:before,
header .logo img,
#menu-btn-open,
#menu-btn-open span,
#menu-btn-close:before,
#menu-btn-close:after,
.submenu-toggle,
.social a:before,
.social svg,
.btn,
.btn svg,
.content a:before,
.accordion-title,
.accordion svg,
.service,
.service .h6,
.splide__arrow:before,
.splide__track--nav > .splide__list > .splide__slide:after,
.splide__track--nav > .splide__list > .splide__slide .img img,
.btn-close,
.btn-close:before,
.btn-close:after,
input,
textarea,
.transition {
	transition: all var(--duration) var(--easing);
}

::selection {
	color: var(--white);
	background-color: var(--red);
}

::-moz-selection {
	color: var(--white);
	background-color: var(--red);
}

* {
	-webkit-tap-highlight-color: rgba(31, 118, 193, .5);
}
