﻿/* VARIABLES */
:root {
	/* Fonts & Typography */
	--font-family: 'Montserrat', sans-serif;

	--font-weight: 400;
	--letter-spacing: normal;

	--font-size: 1.125rem;
	--line-height: 1.75rem;

	--font-size-sm: .875rem;
	--line-height-sm: 1.375rem;

	--font-size-lg: 1.5rem;
	--line-height-lg: 2.188rem;
	/* Titles */
	--h1-font-size: 5rem;
	--h1-line-height: 5.625rem;

	--h2-font-size: 3.125rem;
	--h2-line-height: 3.75rem;

	--h3-font-size: 3rem;
	--h3-line-height: 3.5rem;

	--h4-font-size: 2.5rem;
	--h4-line-height: 3.048rem;

	--h5-font-size: 2rem;
	--h5-line-height: 2.25rem;

	--h6-font-size: 1.125rem;
	--h6-line-height: 1.371rem;

	--title-font-weight: 400;
	/* Colors */
	--text: #595959;
	--title: #1C1C1C;
	--white: #fff;
	--light: #E1E1E1;
	--light-transparent: rgba(255, 255, 255, .3);
	--blue: #59ABAA;
	--blueDark: #4E9C9B;
	--grey: #D4E9E9;
	--dark: var(--title);
	--red: #D45151;
	/* Other */
	/* Buttons */
	--btn-font-size: 1rem;
	--btn-font-size-sm: 1.219rem;
	--btn-font-weight: 600;
	--btn-line-height: 1.5rem;
	--btn-line-height-sm: 1rem;
	--btn-letter-spacing: .1rem;
	--btn-border-width: 2px;
	--btn-border-radius: 6.25rem;
	/* Gaps & spaces */
	--header-height: 100px;
	--section-padding: 10.6rem 0;
	--section-padding-sm: 7.5rem 0;
	--section-padding-xs: 5rem 0;
	--content-margin: 1rem;
	--content-margin-sm: calc(var(--content-margin) / 1.2);
	--content-margin-xs: calc(var(--content-margin) / 1.5);
	/* Popups */
	--popup-bg: rgba(25, 25, 25, .84);
	/* Transitions */
	--duration: .68s;
	--delay: var(--duration);
	--easing: cubic-bezier(.14, .72, .18, .84);
}

/* MAIN STYLES */
html,
body {
	height: auto
}

.splide__pagination,
.splide__pagination__page.is-active {
	pointer-events: none;
}

.slider .splide__arrows,
.slider .splide__arrow.splide__arrow--prev,
.slider .splide__arrow.splide__arrow--next,
.services-slider .splide__arrows,
.services-slider .splide__arrow.splide__arrow--prev,
.services-slider .splide__arrow.splide__arrow--next {
	margin: 0;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
	transform: none;
	position: relative;
}

.services-slider .splide__arrows,
.slider .splide__arrows {
	display: flex;
	margin-top: 3.65rem;
	align-items: center;
	justify-content: center;
}

.services-slider,
.reviews-slider {
	position: relative;
}

.services-slider .splide__track,
.reviews-slider .splide__track {
	overflow: visible;
}

.services-slider:after,
.reviews-slider:after {
	top: -1rem;
	content: '';
	bottom: -1rem;
	width: 10000px;
	position: absolute;
	background-color: var(--white);
}

.grid,
.accordion {
	border-bottom: 1px solid var(--light);
}

/* SLIDERS */
/* Splide slider */
.splide__container {
	box-sizing: border-box;
	position: relative
}

.splide__list {
	backface-visibility: hidden;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important
}

.splide.is-initialized:not(.is-active) .splide__list {
	display: block
}

.splide__pagination {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.splide__pagination li {
	margin: 0;
	line-height: 1;
	pointer-events: auto;
	display: inline-block;
	list-style-type: none;
}

.splide:not(.is-overflow) .splide__pagination {
	display: none
}

.splide__progress__bar {
	width: 0
}

.splide.is-initialized,
.splide.is-rendered {
	visibility: visible
}

.splide__slide {
	backface-visibility: hidden;
	box-sizing: border-box;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	list-style-type: none !important;
	margin: 0;
	position: relative
}

.splide__slide img {
	vertical-align: bottom
}

.splide__spinner {
	animation: splide-loading 1s linear infinite;
	border: 2px solid #999;
	border-left-color: transparent;
	border-radius: 50%;
	bottom: 0;
	contain: strict;
	display: inline-block;
	height: 20px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 20px
}

.splide__sr {
	clip: rect(0 0 0 0);
	border: 0;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
	display: none
}

.splide__toggle.is-active .splide__toggle__pause {
	display: inline
}

.splide__track {
	overflow: hidden;
	position: relative;
	z-index: 0
}

@keyframes splide-loading {

	0% {
		transform: rotate(0)
	}

	to {
		transform: rotate(1turn)
	}
}

.splide__track--draggable {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: 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__arrow {
	-ms-flex-align: center;
	align-items: center;
	background: #ccc;
	border: 0;
	cursor: pointer;
	display: -ms-flexbox;
	display: flex;
	height: 2em;
	-ms-flex-pack: center;
	justify-content: center;
	opacity: .7;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2em;
	z-index: 1
}

.splide__arrow svg {
	height: 1.2em;
	width: 1.2em
}

.splide__arrow:disabled {
	opacity: .3;
}

.splide__arrow:focus-visible {
	outline: 3px solid #0bf;
	outline-offset: 3px
}

.splide__arrow--prev {
	left: 1em;
}

.splide__arrow--next {
	right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
	outline: 3px solid #0bf;
	outline-offset: 3px;
}

.splide__pagination {
	bottom: .5em;
	left: 0;
	padding: 0 1em;
	position: absolute;
	right: 0;
	z-index: 1;
}

.splide__pagination__page {
	background: #ccc;
	border: 0;
	border-radius: 50%;
	display: inline-block;
	height: 8px;
	margin: 3px;
	opacity: .7;
	padding: 0;
	position: relative;
	transition: transform .2s linear;
	width: 8px;
}

.splide__pagination__page.is-active {
	background-color: var(--blue);
}

.splide__pagination__page:hover {
	cursor: pointer;
	opacity: .9;
}

.splide__pagination__page:focus-visible {
	outline: 3px solid #0bf;
	outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
	outline: 3px solid #0bf;
	outline-offset: 3px;
}

.splide__progress__bar {
	background: #ccc;
	height: 3px;
}

.splide__slide {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
	outline: 0;
}

@supports (outline-offset: -3px) {

	.splide__slide:focus-visible {
		outline: 3px solid #0bf;
		outline-offset: -3px;
	}
}

@media screen and (-ms-high-contrast:none) {

	.splide__slide:focus-visible {
		border: 3px solid #0bf;
	}
}

@supports (outline-offset: -3px) {

	.splide.is-focus-in .splide__slide:focus {
		outline: 3px solid #0bf;
		outline-offset: -3px;
	}
}

@media screen and (-ms-high-contrast:none) {

	.splide.is-focus-in .splide__slide:focus {
		border: 3px solid #0bf;
	}

	.splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
		border-color: #0bf;
	}
}

.splide__toggle {
	cursor: pointer;
}

.splide__toggle:focus-visible {
	outline: 3px solid #0bf;
	outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
	outline: 3px solid #0bf;
	outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
	border: 3px solid transparent;
	cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
	border: 3px solid #000;
}

.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 slider customized */
.splide__pagination li:before {
	display: none;
}

.splide__arrow.splide__arrow--prev,
.splide__arrow.splide__arrow--prev:before {
	border-top-left-radius: 200px;
}

.splide__arrow.splide__arrow--next,
.splide__arrow.splide__arrow--next:before {
	border-bottom-right-radius: 200px;
}

.splide__arrow {
	top: 50%;
	opacity: 1;
	z-index: 1;
	padding: 0;
	border: none;
	width: 4.375rem;
	height: 4.375rem;
	position: absolute;
	background-color: transparent;
}

.splide__arrow:before {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: '';
	position: absolute;
	border: 1px solid var(--blue);
	background-color: var(--blue);
}

.splide__arrow:disabled {
	opacity: .42;
}

.splide__arrow.splide__arrow--prev {
	left: 1rem;
}

.splide__arrow.splide__arrow--next {
	right: 1rem;
}

.splide__arrow.splide__arrow--prev svg {
	right: .65rem;
	bottom: .65rem;
}

.splide__arrow.splide__arrow--next svg {
	top: .65rem;
	left: .65rem;
}

.splide__arrow:active {
	color: var(--blue);
}

.splide__arrow:active:before,
.splide__arrow:active svg path {
	transition-duration: .1s;
}

.splide__arrow:active:before {
	border-color: var(--blue);
	background-color: transparent;
}

.splide__arrow:active svg path {
	stroke: var(--blue);
}

.splide__arrow svg {
	width: 2.125rem;
	height: 2.125rem;
	position: absolute;
	object-fit: contain;
}

.splide__arrow svg path {
	stroke-width: 2;
	stroke: var(--white);
	stroke-linecap: round;
	stroke-linejoin: round;
}

.splide__slide {
	cursor: grab;
}

.splide__slide:active {
	cursor: grabbing;
}

.splide__pagination li {
	z-index: 2;
	width: 6px;
	height: 6px;
	padding-left: 0;
}

.splide__pagination li:not(:last-child) {
	margin-bottom: 0;
	margin-right: 1rem;
}

.splide__pagination__page {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	pointer-events: auto;
	background: transparent;
	transform: rotate(45deg);
	border: 1px solid var(--blue);
}

.splide__pagination__page:not(.is-active),
.splide__pagination__page.is-active {
	opacity: 1;
}

.slider.splide {
	margin-top: 3rem;
	position: relative;
}

.slider .splide__slide {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
}

.slider .splide__slide .accordion {
	margin-right: 4.9005rem;
	flex: 0 0 calc(33.33% - 3.267rem);
	max-width: calc(33.33% - 3.267rem);
}

.slider .splide__slide .accordion:nth-child(1),
.slider .splide__slide .accordion:nth-child(2),
.slider .splide__slide .accordion:nth-child(3) {
	margin-bottom: 3rem;
}

.slider .splide__slide .accordion:nth-child(3),
.slider .splide__slide .accordion:nth-child(6) {
	margin-right: 0;
}

.slider.slider-mobile .splide__slide .accordion {
	flex: 0 0 100%;
	max-width: 100%;
}

.slider.slider-mobile .splide__slide .accordion:last-child {
	margin-bottom: 0;
}

.slider-progress,
.slider-progress-line {
	border-radius: 8px;
}

.slider-progress {
	height: 3px;
	flex: 0 0 72.79%;
	max-width: 72.79%;
	background-color: var(--light);
}

.slider-progress-line {
	width: 0;
	height: 6px;
	margin-top: -1.5px;
	background-color: var(--blue);
}

@media (min-width: 1200px) {

	.splide__arrow.splide__arrow--prev {
		left: 30px;
	}
	
	.splide__arrow.splide__arrow--next {
		right: 30px;
	}

	.splide__arrow:hover:before {
		border-color: var(--blueDark);
		background-color: var(--blueDark);
	}

	.splide__arrow:hover:active:before {
		border-color: var(--blue);
		background-color: transparent;
	}

	.splide__arrow:hover:active:before,
	.splide__arrow:hover:active svg path {
		transition-duration: .1s;
	}

	.splide__arrow:hover:active svg path {
		stroke: var(--blue);
	}

	button.splide__pagination__page:hover {
		background-color: var(--blue);
	}

	.slider .splide__arrow.splide__arrow--prev:hover svg path,
	.slider .splide__arrow.splide__arrow--next:hover svg path {
		stroke: var(--blue);
	}
}

@media (max-width: 1599px) {

	.slider.splide {
		margin-top: 2rem;
	}

	.slider .splide__arrows {
		margin-top: 1.75rem;
	}

	.slider .splide__slide .accordion:nth-child(1),
	.slider .splide__slide .accordion:nth-child(2),
	.slider .splide__slide .accordion:nth-child(3) {
		margin-bottom: 2rem;
	}

	.splide__arrow {
		width: 3.1rem;
		height: 3.1rem;
	}

	.splide__arrow svg {
		width: 1.75rem;
		height: 1.75rem;
	}

	.splide__arrow.splide__arrow--prev {
		bottom: 4rem;
	}

	.splide__arrow.splide__arrow--prev svg {
		right: .42rem;
		bottom: .42rem;
	}

	.splide__arrow.splide__arrow--next svg {
		top: .42rem;
		left: .42rem;
	}
}

@media (max-width: 1199px) {

	.slider .splide__slide .accordion {
		flex: 0 0 calc(50% - 1.5rem);
		max-width: calc(50% - 1.5rem);
	}

	.slider .splide__slide .accordion:nth-child(1),
	.slider .splide__slide .accordion:nth-child(2),
	.slider .splide__slide .accordion:nth-child(3),
	.slider .splide__slide .accordion:nth-child(4) {
		margin-bottom: 1.75rem;
	}

	.slider .splide__slide .accordion:nth-child(1),
	.slider .splide__slide .accordion:nth-child(3),
	.slider .splide__slide .accordion:nth-child(5) {
		margin-right: 3rem;
	}

	.slider .splide__slide .accordion:nth-child(2),
	.slider .splide__slide .accordion:nth-child(4),
	.slider .splide__slide .accordion:nth-child(6) {
		margin-right: 0;
	}
}

@media (max-width: 991px) {

	.splide__arrow {
		margin-top: -21px;
	}
}

@media (min-width: 768px) {

	.slider-mobile,
	.slider .splide__arrow.splide__arrow--prev:before,
	.slider .splide__arrow.splide__arrow--next:before {
		display: none;
	}

	.slider .splide__arrow.splide__arrow--prev,
	.slider .splide__arrow.splide__arrow--next {
		width: 2.125rem;
		height: 2.125rem;
	}

	.slider .splide__arrow.splide__arrow--prev {
		margin-right: 1.5rem;
	}

	.slider .splide__arrow.splide__arrow--prev svg,
	.slider .splide__arrow.splide__arrow--next svg {
		top: 50%;
		left: 50%;
		right: auto;
		bottom: auto;
		transform: translate(-50%, -50%);
		transition: fill var(--duration) var(--easing), transform .1s var(--easing);
	}

	.slider .splide__arrow.splide__arrow--prev:active svg {
		transform: translate3d(calc(-50% + -.5rem), -50%, 0);
	}

	.slider .splide__arrow.splide__arrow--next:active svg {
		transform: translate3d(calc(-50% + .5rem), -50%, 0);
	}

	.slider .splide__arrow.splide__arrow--prev svg path,
	.slider .splide__arrow.splide__arrow--next svg path {
		stroke: var(--title);
	}
}

@media (max-width: 767px) {

	.splide__arrow {
		width: 2.5rem;
		height: 2.5rem;
	}

	.splide__arrow svg {
		width: 1rem;
		height: 1rem;
	}

	.slider.splide {
		margin-top: 1rem;
	}

	.slider-desktop {
		display: none;
	}

	.slider .splide__arrows {
		margin-top: 1.5rem;
		justify-content: flex-end;
	}

	.slider .splide__arrow.splide__arrow--prev {
		margin-right: 1.5rem;
	}

	.slider .splide__slide .accordion:nth-child(1),
	.slider .splide__slide .accordion:nth-child(2),
	.slider .splide__slide .accordion:nth-child(3),
	.slider .splide__slide .accordion:nth-child(4) {
		margin-bottom: 1rem;
	}
}

/* ABOUT */
.about-section .content {
	margin-top: 7.5rem;
	margin-left: -17.5rem;
}

@media (max-width: 1599px) {

	.about-section .content {
		margin-top: 4.1rem;
	}
}

@media (min-width: 1200px) {

	.about-section .row > div[class^="col-"]:last-child {
		display: none;
	}
}

@media (max-width: 1199px) {

	.about-section .row > div[class^="col-"]:first-child {
		order: 2;
	}

	.about-section .row > div[class^="col-"]:nth-child(2) {
		order: 1;
	}

	.about-section .row > div[class^="col-"]:last-child {
		order: 3;
	}

	.about-section .content {
		margin-top: 0;
		margin-left: 0;
	}

	.about-section .row > div[class^="col-"]:last-child .content {
		margin-top: var(--content-margin-sm);
	}

	.about-section .row > div[class^="col-"]:nth-child(2) .content > pre {
		display: none;
	}

	.about-section .h2 pre,
	.about-section .content > pre {
		text-wrap: wrap;
		white-space: normal;
	}


}

/* SERVICES */
.services-section hr,
.services-section .hr {
	margin: 3rem 0;
}

.services-slider:after {
	right: 100%;
}

.services-slider .splide__arrows {
	padding: 0 23%;
	margin-right: -20.49%;
	justify-content: space-between;
}

.service .subtitle,
.service .content {
	color: var(--title);
}

.service .subtitle {
	margin-bottom: 0;
}

.service .content p {
	overflow: hidden;
	position: relative;
	display: -webkit-box;
	-webkit-line-clamp: 9;
	-webkit-box-orient: vertical;
}

@media (min-width: 1200px) {

	.service .img {
		padding-top: 78.4%;
	}

	.service .img img,
	.service .subtitle,
	.service .content,
	.service .content:after,
	.service .btn-inline {
		position: absolute;
	}

	.service .img img ,
	.service .content,
	.service .content:after,
	.service .btn-inline {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.service .subtitle {
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1;
		padding: 1.375rem 2.5rem;
	}

	.service .content {
		margin-bottom: 0;
		padding: 2.5rem 2.5rem 1rem;
	}

	.service .content p {
		opacity: 0;
		z-index: 1;
	}

	.service .content:after {
		content: '';
		transform: scaleY(.13935);
		backdrop-filter: blur(25px);
		transform-origin: center bottom;
		background-color: rgba(255, 255, 255, .4);
	}

	.service .btn-inline {
		opacity: 0;
		z-index: 1;
		font-size: 0;
		line-height: 0;
	}

	.service:hover .content p {
		opacity: 1;
	}

	.service:hover .content:after {
		transform: none;
	}
}

@media (max-width: 1199px) {

	.services-slider .splide__arrows {
		padding: 0 18%;
		margin-right: -9.413%;
	}

	.service .img {
		padding-top: 78.4%;
	}

	.service .img img,
	.service .subtitle {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		position: absolute;
	}

	.service .img img,
	.service .subtitle {
		position: absolute;
	}

	.service .subtitle {
		top: auto;
		bottom: 0;
		height: auto;
		padding: .5rem;
		font-size: .75rem;
		line-height: .914rem;
		backdrop-filter: blur(4px);
		background-color: rgba(255, 255, 255, .4);
	}

	.service .content {
		margin-top: 1.5rem;
	}

	.service .content p {
		-webkit-line-clamp: 5;
	}

	.services-slider .splide__slide:not(:last-child) {
		margin-bottom: 3rem;
	}

	.btn-inline {
		font-weight: 600;
		font-size: .75rem;
		color: var(--title);
		line-height: .914rem;
		display: inline-block;
		text-transform: uppercase;
		padding: .12rem 0 0.292rem;
		border-bottom: 2px solid var(--title);
	}
}

@media (max-width: 991px) {

	.services-slider:after {
		display: none;
	}

	.services-slider .splide__arrows {
		padding: 0;
		margin-right: 0;
		margin-top: 2.5rem;
	}

	.services-section hr,
	.services-section .hr {
		margin: .438rem 0 1.5rem;
	}
}

@media (max-width: 767px) {

	.services-slider .splide__arrows {
		display: none;
	}

	.service .img {
		padding-top: 0;
	}

	.service .img img {
		top: auto;
		left: auto;
		width: 100%;
		height: auto;
		position: relative;
	}

	.service .content {
		margin-top: .5rem;
	}
}

/* MISSION */
.mission-section .img {
	margin-left: -15px;
	margin-right: -13.75rem;
}

.mission-section .bg-dark {
	margin-right: -15px;
	margin-left: -6.188rem;
	background-color: var(--blue);
	padding: 4.2rem 13rem 4.2rem 11rem;
}

.mission-section .bg-dark:nth-child(2) {
	padding-top: 0;
	margin-top: -3.2rem;
}

@media (max-width: 1599px) {

	.mission-section .bg-dark {
		padding: 2.5rem 3rem 2.5rem 4rem;
	}

	.mission-section .bg-dark:nth-child(2) {
		margin-top: -1.8rem;
	}
}

@media (max-width: 1199px) {

	.mission-section .bg-dark {
		margin-left: -9.2rem;
		padding: 1.5rem 1rem 1.5rem 2rem;
	}

	.mission-section .bg-dark:nth-child(2) {
		margin-top: -.8rem;
	}
}

@media (max-width: 991px) {

	.mission-section .bg-dark {
		margin-left: -6rem;
		padding: 1.5rem .625rem;
	}

	.mission-section .bg-dark:nth-child(2) {
		margin-top: -.8rem;
	}
}

@media (max-width: 767px) {

	.mission-section .row > div[class^="col-"]:first-child {
		position: static;
	}

	.mission-section .img {
		left: 0;
		right: 0;
		margin: 0;
		top: 21rem;
		bottom: 6.5rem;
		position: absolute;
	}

	.mission-section .img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.mission-section .bg-dark {
		padding: 1.5rem .625rem;
	}

	.mission-section .bg-dark:nth-child(1) {
		margin-right: 0;
		margin-left: 10%;
		padding-top: 1.5rem;
	}

	.mission-section .bg-dark:nth-child(2) {
		margin-left: 0;
		margin-top: 23.5rem;
		padding-top: 1.5rem;
		margin-right: 10%;
	}
}

/* GRID */
.grid {
	margin-top: 2.75rem;
	border-top: 1px solid var(--light);
}

.grid div[class^="col-"]:first-child .grid-item {
	padding: 2.75rem 5rem 2.5rem 0;
}

.grid div[class^="col-"]:nth-child(2) .grid-item {
	padding: 2.75rem 2.5rem 2.5rem 2.5rem;
}

.grid div[class^="col-"]:last-child .grid-item {
	padding: 2.75rem 0 2.5rem 5rem;
}

.grid-item .img {
	width: 85px;
	height: 85px;
	padding: 10px;
	margin-bottom: var(--content-margin-xs);
}

.grid-item .img img {
	width: 100%;
	height: 100%;
}

.grid-item .h6 {
	font-weight: 600;
	margin-bottom: var(--content-margin-xs);
}

@media (max-width: 1599px) {

	.grid div[class^="col-"]:first-child .grid-item {
		padding: 2.5rem 4.5rem 2rem 0;
	}

	.grid div[class^="col-"]:nth-child(2) .grid-item {
		padding: 2.5rem 2rem 2rem;
	}

	.grid div[class^="col-"]:last-child .grid-item {
		padding: 2.5rem 0 2rem 4.5rem;
	}

	.grid-item .img {
		width: 65px;
		height: 65px;
		padding: 7px;
	}
}

@media (max-width: 1199px) {

	.grid div[class^="col-"]:first-child .grid-item,
	.grid div[class^="col-"]:nth-child(2) .grid-item,
	.grid div[class^="col-"]:last-child .grid-item {
		padding: 2rem 0 1.438rem;
	}
}

@media (max-width: 991px) {

	.grid div[class^="col-"]:first-child .grid-item,
	.grid div[class^="col-"]:nth-child(2) .grid-item,
	.grid div[class^="col-"]:last-child .grid-item {
		padding: 1.5rem 0 1.438rem;
	}

	.grid-item .img {
		width: 40px;
		height: 40px;
		padding: 5px;
	}
}

@media (min-width: 768px) {

	.grid div[class^="col-"]:not(:last-child) {
		border-right: 1px solid var(--light);
	}
}

@media (max-width: 767px) {

	.grid div[class^="col-"]:not(:last-child) .grid-item {
		border-bottom: 1px solid var(--light);
	}
}

/* ADVANTAGES */
.advantages-section .container-fluid .img {
	margin-left: -15px;
	margin-right: 3.5rem;
}

.advantages-section .container-fluid .content {
	padding: 0 3.5rem 3rem 5.75rem;
}

.advantages-section .container {
	margin-top: 4.75rem;
}

.advantages-section .container .content hr,
.advantages-section .container .content .hr,
.advantages-section .container .subtitle {
	margin: 1.5rem 0;
}

.advantages-section .container .img {
	margin-left: 4rem;
}

@media (min-width: 1600px) {

	.advantages-section .container .content {
		padding-right: 2rem;
	}
}

@media (max-width: 1599px) {

	.advantages-section .container-fluid .img {
		margin-right: 3rem;
	}

	.advantages-section .container-fluid .content {
		padding: 0 .5rem 2rem 3rem;
	}

	.advantages-section .container .img {
		margin-left: 3rem;
	}
}

@media (max-width: 1199px) {

	.advantages-section .container-fluid .img {
		margin-right: 2rem;
	}

	.advantages-section .container-fluid .content {
		padding: 0;
	}

	.advantages-section .container .img {
		margin-left: 2rem;
	}
}

@media (max-width: 991px) {

	.advantages-section .container .img {
		margin-left: 0;
	}
}

@media (min-width: 768px) {

	.advantages-section .container-fluid div[class^="col-"]:last-child,
	.advantages-section .container div[class^="col-"]:first-child {
		display: flex;
		align-items: center;
	}
}

@media (max-width: 767px) {

	.advantages-section .container-fluid .img {
		margin-right: -15px;
	}

	.advantages-section .container-fluid .content {
		margin-top: 1.5rem;
	}

	.advantages-section .container-fluid .h2,
	.advantages-section .container-fluid .subtitle {
		text-align: center;
	}

	.advantages-section .container .img {
		margin: 0 -15px;
	}

	.advantages-section .container {
		margin-top: 2.813rem;
	}

	.advantages-section .container div[class^="col-"]:first-child {
		order: 2;
		margin-top: 1.5rem;
	}

	.advantages-section .container div[class^="col-"]:last-child {
		order: 1;
	}

	.advantages-section .container .content hr,
	.advantages-section .container .content .hr,
	.advantages-section .container .subtitle {
		margin: 1rem 0;
	}
}

/* REVIEWS */
.reviews-section div[class^="col-"]:last-child .content {
	padding-left: 1rem;
}

.reviews-slider {
	margin-left: 1.5rem;
	padding-right: 9rem;
}

.reviews-slider:after {
	left: calc(100% - 9rem);
}

.reviews-slider .splide__arrow.splide__arrow--prev,
.reviews-slider .splide__arrow.splide__arrow--next {
	right: 0;
	top: auto;
	margin-top: 0;
	transform: none;
}

.reviews-slider .splide__arrow.splide__arrow--prev {
	left: auto;
	bottom: 5.8rem;
}

.reviews-slider .splide__arrow.splide__arrow--next {
	bottom: 0;
}

.reviews-slider .review {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.review {
	padding: 2.375rem 2.5rem;
	border: 1px solid var(--light);
}

.review .img,
.review .h6 {
	display: inline-block;
	vertical-align: middle;
}

.review .h6 {
	font-weight: 500;
	margin-bottom: 0;
}

.review .content {
	color: var(--title);
	margin-bottom: 4rem;
}

.review .img {
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	margin-right: 1.875rem;
}

@media (max-width: 1599px) {

	.reviews-section div[class^="col-"]:last-child .content {
		padding-left: 0;
	}

	.reviews-slider {
		margin-left: 0;
		padding-right: 4.2rem;
	}

	.reviews-slider:after {
		left: calc(100% - 4.2rem);
	}

	.reviews-slider .splide__arrow.splide__arrow--prev {
		bottom: 4rem;
	}

	.review {
		padding: 1.25rem 1.5rem;
	}

	.review .img {
		width: 3.75rem;
		height: 3.75rem;
		margin-right: 1.5rem;
	}

	.review .content {
		margin-bottom: 2.5rem;
	}
}

@media (max-width: 991px) {

	.review {
		padding: 1.375rem 1rem;
	}

	.review .img {
		width: 2.5rem;
		height: 2.5rem;
		margin-right: 1rem;
	}

	.review .h6 {
		font-size: .75rem;
		line-height: .914rem;
	}

	.review-content {
		margin-bottom: 0;
	}
}

@media (max-width: 767px) {

	.reviews-section div[class^="col-"]:first-child {
		order: 2;
		margin-top: 2.5rem;
	}

	.reviews-section div[class^="col-"]:last-child {
		order: 1;
	}

	.reviews-slider {
		padding-bottom: 3rem;
		padding-right: 6.563rem;
	}

	.reviews-slider:after {
		display: none;
	}
}

/* ACCORDIONS */
.accordion {
	padding-bottom: 1.2rem;
}

.accordion.open .accordion-title:before,
.accordion.open .accordion-title:after {
	background-color: var(--title);
}

.accordion.open .accordion-title:after {
	transform: translateY(-50%) rotate(90deg) scaleX(0);
}

.accordion-title {
	position: relative;
	color: var(--title);
	padding: .813rem 3rem .813rem 0;
}

.accordion-title:before,
.accordion-title:after {
	top: 50%;
	content: '';
	width: 19px;
	height: 1px;
	right: .438rem;
	position: absolute;
	background-color: var(--blue);
}

.accordion-title:before {
	transform: translateY(-50%);
}

.accordion-title:after {
	transform: translateY(-50%) rotate(90deg);
}

.accordion-dropdown {
	display: none;
}

@media (min-width: 1200px) {

	.accordion-title:hover {
		color: var(--blue);
	}
}

@media (max-width: 1599px) {

	.accordion-title {
		padding: .5rem 2.5rem .5rem 0;
	}
}

/* FORM */
.contact-section {
	border-bottom: 1px solid var(--light-transparent);
}

form.row > div {
	padding: 0 10px;
	margin-bottom: var(--content-margin);
}

form.row > div:last-child {
	margin-bottom: 0;
}

form.row {
	margin: 3.5rem -10px 0;
}

form.row > div:last-child {
	margin-top: 1.5rem;
}

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]::-ms-reveal,
input[type=search]::-ms-clear,
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,
select::-ms-expand,
input::-ms-clear {
	display: none;
	width: 0;
	height: 0;
}

label {
	display: block;
	position: relative;
}

input,
textarea,
input::placeholder,
textarea::placeholder {
	color: var(--white);
	line-height: 1.35rem;
	text-transform: uppercase;
	font-size: var(--font-size);
	font-weight: var(--font-weight);
}

input,
textarea {
	border: none;
	display: block;
	padding: 1.05rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, .6);
}

input:focus,
input:invalid,
textarea:focus,
textarea:invalid {
	outline: none;
	box-shadow: none;
}

input:focus,
textarea:focus,
input.focus,
textarea.focus {
	border-bottom-color: var(--blue);
}

input.invalid,
textarea.invalid {
	border-bottom-color: var(--red);
}

input.invalid + .error-message,
textarea.invalid + .error-message {
	display: block;
}

input {
	height: 3.5rem;
}

textarea {
	resize: none;
	overflow: auto;
}

select::-ms-expand {
	display: none;
}

.error-message {
	display: none;
	font-weight: 700;
	color: var(--red);
	font-size: .75rem;
	line-height: 1rem;
	padding-top: .5rem;
	letter-spacing: .15rem;
	text-transform: uppercase;
}

@media (max-width: 991px) {

	form.row {
		margin: 2rem -10px 0;
	}

	input,
	textarea,
	input::placeholder,
	textarea::placeholder {
		font-size: .875rem;
		line-height: 1.375rem;
	}

	input {
		height: 3.1237rem;
	}
}

/* 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 .45s ease-in-out .45s, visibility 0s .9s;
}

.popup-content.active {
	opacity: 1;
	visibility: visible;
	transition: opacity .45s ease-in-out, visibility 0s;
}

.popup-bg {
	position: absolute;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	background-color: rgba(0, 0, 0, .56);
}

.popup-container {
	min-width: 280px;
	position: relative;
	padding: 4rem 3rem 5rem;
	max-width: calc(100% - 30px);
	background-color: var(--white);
	transition: opacity .45s ease-in-out;
	box-shadow: 0 6px 17px 1px rgba(0, 0, 0, .5);
}

.popup-container .btn-close {
	top: calc(var(--border-width) * -1);
	right: calc(var(--border-width) * -1);
}

.button-close {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 30px;
	height: 30px;
	cursor: pointer;
	z-index: 1;
	transition: transform .1s ease-in-out;
}

.button-close:before,
.button-close:after {
	top: 50%;
	left: 4px;
	width: 22px;
	height: 1px;
	content: '';
	margin-top: -.5px;
	position: absolute;
	background: var(--text);
}

.button-close:before {
	transform: rotate(-45deg);
}

.button-close:after {
	transform: rotate(45deg);
}

.button-close:active {
	transform: scale(1.1);
}

@media (min-width: 1200px) {

	.button-close:hover:before,
	.button-close:hover:after {
		background: var(--blue);
	}
}

@media (max-width: 1499px) {

	.popup-container {
		padding: 4rem 2.2rem 4.5rem;
	}
}

@media (min-width: 768px) {

	.popup-container {
		max-width: 80%;
		min-width: 600px;
	}
}

@media (max-width: 991px) {

	.popup-container {
		padding: 3rem 15px 1.15rem;
	}
}

/* TRANSITIONS */
a,
.open-menu .menu-btn:before,
.open-menu .menu-btn:after,
.menu-btn img,
.btn,
.content a:before,
.splide__pagination__page,
.splide__arrow:before,
.splide__arrow svg,
.slider .splide__arrow svg path,
.slider-progress-line,
.service .content:after,
.service .content p,
.accordion-title,
.accordion-title:before,
.accordion-title:after,
.transition {
	transition: all var(--duration) var(--easing);
}

::selection {
	color: var(--light);
	background-color: var(--blueDark);
}

::-moz-selection {
	color: var(--light);
	background-color: var(--blueDark);
}
