
@font-face {
    font-family: 'Avenir Medium';
    src: url('../fonts/AvenirLTStd-Medium.eot');
    src: url('../fonts/AvenirLTStd-Medium.eot?#iefix') format('embedded-opentype'),
        url('../fonts/AvenirLTStd-Medium.woff2') format('woff2'),
        url('../fonts/AvenirLTStd-Medium.woff') format('woff'),
        url('../fonts/AvenirLTStd-Medium.svg#AvenirLTStd-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Heavy';
    src: url('../fonts/Avenir-Heavy.eot');
    src: url('../fonts/Avenir-Heavy.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Avenir-Heavy.woff2') format('woff2'),
         url('../fonts/Avenir-Heavy.woff') format('woff'),
         url('../fonts/Avenir-Heavy.svg#Avenir Heavy') format('svg');
}

@font-face {
    font-family: 'Avenir Black';
    src: url('../fonts/AvenirLTStd-Black.eot');
    src: url('../fonts/AvenirLTStd-Black.eot?#iefix') format('embedded-opentype'),
        url('../fonts/AvenirLTStd-Black.woff2') format('woff2'),
        url('../fonts/AvenirLTStd-Black.woff') format('woff'),
        url('../fonts/AvenirLTStd-Black.svg#AvenirLTStd-Black') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Book';
    src: url('../fonts/AvenirLTStd-Book.eot');
    src: url('../fonts/AvenirLTStd-Book.eot?#iefix') format('embedded-opentype'),
        url('../fonts/AvenirLTStd-Book.woff2') format('woff2'),
        url('../fonts/AvenirLTStd-Book.woff') format('woff'),
        url('../fonts/AvenirLTStd-Book.svg#AvenirLTStd-Book') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/*!
 * 	Theme Variables
 * ----------------------------------------------- */
 :root {
	--primary: #205632;
	--primary-rgb: 32, 86, 50;
	--secondary: #A4CE39;
	--secondary-rgb: 164, 206, 57;

  	--body-font-family: 'Avenir Medium';
  	--body-font-size: 16px;
  	--body-font-weight: 400;
  	--body-bg: #ffffff;
  	--body-color: #000000;
  	--body-line-height: 1.45;

	--heading-font-size-base: 1rem;
  	--heading-font-family: 'EB Garamond', serif;
  	--heading-font-weight: 500;
	--heading-color: var(--primary);
	--heading-margin-bottom: 16px;
	--heading-line-height: 1.25;

  	--link-color: #000000;
  	--link-hover-color: #000000;

	--btn-font-family: var(--body-font-family);
	--btn-font-size: 14px;
	--btn-font-weight: var(--body-font-weight);
	--btn-line-height: 40px;
	--btn-padding: 0 16px;
	--btn-bg: transparent;
	--btn-border-width: 1px;
	--btn-color: var(--body-color);
	--btn-border-color: transparent;
	--btn-hover-bg: transparent;
	--btn-hover-color: var(--body-color);
	--btn-hover-border-color: transparent;

	--form-control-font-family: var(--body-font-family);
	--form-control-font-size: var(--body-font-size);
	--form-control-font-weight: var(--body-font-weight);
	--form-control-line-height: 1.15;
	--form-control-padding: 8px 0;
	--form-control-min-height: 48px;
	--form-control-bg: transparent;
	--form-control-border-color: rgba(255, 255, 255, .5);
	--form-control-border-radius: 0;
	--form-control-placeholder-color: #FFFFFF;
	--form-control-arrow: url('data:image/svg+xml,<svg fill="%23FFFFFF" viewBox="0 0 24 24" height="20" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M11.9997 13.1714L16.9495 8.22168L18.3637 9.63589L11.9997 15.9999L5.63574 9.63589L7.04996 8.22168L11.9997 13.1714Z"></path></svg>');

	--hamburger-line-bg: #ffffff;
	--header-height: 114px;

	--paragraph-margin-bottom: 24px;
	--section-padding-y: 100px;

	--container-width: ;
	--gutter-y: ;
	--gutter-x: 32px;

	--hero-spacing-x: 32px;

	--animation-timing-function: cubic-bezier(0.190, 1.000, 0.220, 1.000);
	--animation-duration: 3s;
	--animation-delay: ;
	--animation-name: ;
}

/*!
 * 	Reset Styles
 * ----------------------------------------------- */
*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  	display: block;
}

[tabindex="-1"]:focus:not(:focus-visible) {
	outline: 0 !important;
}

hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	height: 0;
	overflow: visible;
}

body {
	margin: 0;
	padding: 0;
    font-family: var(--body-font-family);
    font-size: var(--body-font-size);
    color: var(--body-color);
    line-height: var(--body-line-height);
    font-weight: var(--body-font-weight);
    background-color: var(--body-bg);
	text-align: left;
}

img {
    max-width: 100%;
	height: initial;
}

a {
    color: var(--link-color);
    text-decoration: none;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}

a:hover {
    color: var(--link-hover-color);
}

p {
	margin-top: 0;
    margin-bottom: var(--paragraph-margin-bottom);
}

p:last-child {
    margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	cursor: help;
	border-bottom: 0;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

address {
	margin-bottom: 16px;
	font-style: normal;
	line-height: inherit;
}

ol,
ul,
dl {
	margin-top: 0;
	margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  	margin-bottom: 0;
}

dt {
  	font-weight: 700;
}

dd {
	margin-bottom: .5rem;
	margin-left: 0;
}

blockquote {
  	margin: 0 0 1rem;
}

b,
strong {
	font-family: 'Avenir Heavy';
  	font-weight: bolder;
}

small {
  	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sub {
  	bottom: -.25em;
}

sup {
  	top: -.5em;
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
	color: inherit;
	text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-size: 1em;
}

pre {
	margin-top: 0;
	margin-bottom: 16px;
	overflow: auto;
	-ms-overflow-style: scrollbar;
}

figure {
	margin: 0 0 16px;
}

img {
	vertical-align: middle;
	border-style: none;
}

svg {
	overflow: hidden;
	vertical-align: middle;
}

table {
  	border-collapse: collapse;
}

caption {
	padding-top: 12px;
	padding-bottom: 12px;
	text-align: left;
	caption-side: bottom;
}

th {
	text-align: inherit;
	text-align: -webkit-match-parent;
}

label {
	display: inline-block;
	margin-bottom: 0.5rem;
}

button {
  	border-radius: 0;
}

button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	outline: none !important;
}

button,
input {
  	overflow: visible;
}

button,
select {
  	text-transform: none;
}

[role="button"] {
  	cursor: pointer;
}

select {
  	word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  	-webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  	cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 0;
}

textarea {
	overflow: auto;
	resize: vertical;
}

fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0;
}

legend {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin-bottom: 8px;
	font-size: 24px;
	line-height: inherit;
	color: inherit;
	white-space: normal;
}

progress {
  	vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  	height: auto;
}

[type="search"] {
  	outline-offset: -2px;
  	-webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  	-webkit-appearance: none;
}

::-webkit-file-upload-button {
  	font: inherit;
  	-webkit-appearance: button;
}

output {
  	display: inline-block;
}

summary {
  	display: list-item;
  	cursor: pointer;
}

template {
  	display: none;
}

[hidden] {
  	display: none !important;
}

code {
	font-size: 87.5%;
	color: #e83e8c;
	word-wrap: break-word;
}

a > code {
  	color: inherit;
}

kbd {
	padding: 4px 8px;
	font-size: 87.5%;
	color: #fff;
	background-color: #212529;
	border-radius: 2px;
}

kbd kbd {
	padding: 0;
	font-size: 100%;
	font-weight: 700;
}

pre {
	display: block;
	font-size: 87.5%;
	color: #212529;
}

pre code {
	font-size: inherit;
	color: inherit;
	word-break: normal;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--heading-font-family);
	color: var(--heading-color);
	font-weight: var(--heading-font-weight);
	margin-top: 0;
    margin-bottom: var(--heading-margin-bottom);
	line-height: var(--heading-line-height);
}

h1, .h1 {
	font-size: calc(1.45rem + 2.4vw);
}

h2, .h2 {
	font-size: calc(1.425rem + 2.1vw);
}

h3, .h3 {
	font-size: calc(1.4rem + 1.5vw);
}

h4, .h4 {
	font-size: calc(1.325rem + 0.9vw);
}

h5, .h5 {
	font-size: calc(1.3rem + 0.6vw);
}

h6, .h6 {
	font-size: calc(1.275rem + 0.3vw);
}


/*!
 *	Common
 * ----------------------------------------------- */

#wrapper {
    position: relative;
	min-height: 100vh;
}

.section {
	padding-top: var(--section-padding-y);
	padding-bottom: var(--section-padding-y);
}

.overflow-hidden {
	overflow: hidden !important;
}

.fs-16 {
	font-size: 16px !important;
}

.fs-18 {
	font-size: 18px !important;
}

.fw-medium {
	font-weight: 500 !important;
}

.fw-semibold {
	font-weight: 600 !important;
}

.fw-bold {
	font-family: 'Avenir Heavy' !important;
}

.fw-bolder {
	font-weight: 800 !important;
}

.text-center {
	text-align: center !important;
}

.bg-primary {
	--heading-color: #fff;
	background-color: var(--primary);
	color: #fff;
}


/*!
 *	Spacing
 * ----------------------------------------------- */
.ml-auto,
.mx-auto {
	margin-left: auto !important;
}

.mr-auto,
.mx-auto {
	margin-right: auto !important;
}

.mt-0,
.my-0 {
	margin-top: 0 !important;
}

.mb-0,
.my-0 {
	margin-bottom: 0 !important;
}

.mb-8 {
	margin-bottom: 8px !important;
}

.mb-32 {
	margin-bottom: 32px !important;
}

.mb-80 {
	margin-bottom: 48px !important;
}

.p-0 {
	padding: 0 !important;
}

.pt-0,
.py-0 {
	padding-top: 0 !important;
}

.pb-0,
.py-0 {
	padding-bottom: 0 !important;
}


/*!
 *	Grid System
 * ----------------------------------------------- */
.container,
.container-fluid {
    width: 100%;
    padding-left: calc(var(--gutter-x) * .5);
    padding-right: calc(var(--gutter-x) * .5);
}

.container *, 
.container-fluid * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; 
}

.container {
	max-width: var(--container-width);
	margin-left: auto;
	margin-right: auto;
}

.row {
	margin-top: calc(-1 * var(--gutter-y));
    margin-left: calc(-.5 * var(--gutter-x));
    margin-right: calc(-.5 * var(--gutter-x));
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.row > * {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 100%;
    min-height: 1px;
	margin-top: var(--gutter-y);
    padding-left: calc(var(--gutter-x) * .5);
    padding-right: calc(var(--gutter-x) * .5);
}

.row.row--lg {
	--gutter-x: 54px;
}

.row.row--md {
	--gutter-x: 24px;
}

.gap {
	--gutter-y: var(--gutter-x);
}

.col-1 {
    width: 8.33333333%;
}

.col-2 { 
    width: 16.66666667%;
}

.col-3 {
    width: 25%;
}

.col-4 {
    width: 33.33333333%;
}

.col-5 {
    width: 41.66666667%;
}

.col-6 {
    width: 50%;
}

.col-7 {
    width: 58.33333333%;
}

.col-8 {
    width: 66.66666667%;
}

.col-9 { 
    width: 75%;
}

.col-10 {
    width: 83.33333333%;
}

.col-11 {
    width: 91.66666667%;
}

.col-12 {
    width: 100%;
}

.no-gutter {
	--gutter-x: 0;
}

.flex-reverse {
	-webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.align-items-center {
	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}


/*!
 *	Form Styling
 * ----------------------------------------------- */
.btn {
	display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
	-webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: var(--btn-padding);
	color: var(--btn-color);
	background-color: var(--btn-bg);
	font-family: var(--btn-font-family);
	font-size: var(--btn-font-size);
	font-weight: var(--btn-font-weight);
	border: var(--btn-border-width) solid var(--btn-border-color);
	cursor: pointer;
	-webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
	line-height: calc(var(--btn-line-height) - (var(--btn-border-width) * 2));
	text-align: center;
	text-transform: uppercase;
	border-radius: 8px;
}

.btn:hover {
	background-color: var(--btn-hover-bg);
	color: var(--btn-hover-color);
	border-color: var(--btn-hover-border-color);
}

.btn > *:not(:first-child) {
	margin-left: 8px;
}

.btn > input {
	background-color: transparent;
	border: none;
	padding: 0;
	color: var(--btn-color);
	z-index: 1;
	-webkit-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.btn .btn__icon {
	width: var(--btn-line-height);
	height: var(--btn-line-height);
	color: var(--btn-icon-color);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 0;
	position: relative;
	-webkit-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.btn.btn--submit {
	--btn-color: #ffffff;
	--btn-hover-color: #ffffff;
	--btn-font-size: 16px;
	border: none;
	position: relative;
	padding-left: 0;
}

.btn.btn--submit:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 100%;
	border-radius: 40px;
	border: 1px solid currentColor;
	-webkit-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.btn.btn--submit:hover:after {
	width: 100%;
}

.btn.btn--submit:hover .btn__icon {
	-webkit-transform: translateX(10px);
	    -ms-transform: translateX(10px);
	        transform: translateX(10px);
}

.btn.btn--submit input {
	margin-left: 16px;
}

.btn.btn--lg {
	--btn-font-size: 16px;
	--btn-padding: 0 24px;
	--btn-line-height: 48px;
}

.btn.btn--icon {
	padding: 0;
	width: var(--btn-line-height);
	height: var(--btn-line-height);
}

.btn.btn--primary {
	--btn-bg: var(--primary);
	--btn-color: #ffffff;
	--btn-border-color: var(--primary);
	--btn-hover-bg: transparent;
	--btn-hover-color: var(--primary);
	--btn-hover-border-color: var(--btn-border-color);
}

.btn.btn--outline-white {
	--btn-bg: transparent;
	--btn-color: #ffffff;
	--btn-border-color: #ffffff;
	--btn-hover-bg: #ffffff;
	--btn-hover-color: var(--primary);
	--btn-hover-border-color: var(--btn-border-color);
}

.btn.btn--secondary {
	--btn-bg: var(--secondary);
	--btn-color: #003D2E;
	--btn-hover-bg: var(--secondary);
	--btn-hover-color: #003D2E;
}

.btn.btn--dark {
	--btn-bg: #1E1E1E;
	--btn-color: #ffffff;
	--btn-border-color: var(--btn-bg);
	--btn-hover-bg: transparent;
	--btn-hover-color: #1E1E1E;
	--btn-hover-border-color: var(--btn-border-color);
}

.form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	border: none;
	border-bottom: 1px solid var(--form-control-border-color);
	min-height: var(--form-control-min-height);
	padding: var(--form-control-padding);
	background-color: var(--form-control-bg);
	font-family: var(--form-control-font-family);
	font-size: var(--form-control-font-size);
	color: #ffffff;
	border-radius: var(--form-control-border-radius);
}

.form-control:focus {
	--form-control-border-color: #ffffff;
}

.form-control::-webkit-input-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::-moz-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control:-ms-input-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::-ms-input-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::-webkit-input-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::-moz-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

.form-control::-ms-placeholder {
	color: var(--form-control-placeholder-color);
	opacity: 0.5;
}

select.form-control {
	background-image: var(--form-control-arrow);
	background-position: center right 0;
	background-repeat: no-repeat;
	padding-right: 24px;
}

.select-control {
	display: none;
}

.select-box {
	position: relative;
}

.select-box .select-box__control {
	cursor: pointer;
	position: relative;
	padding-top: 8px;
	padding-right: 32px;
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.select-box .select-box__control:after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -10px;
	width: 20px;
	height: 20px;
	background: var(--form-control-arrow) center no-repeat;
}

.select-box .select-box__options {
	position: absolute;
	display: none;
	left: 0;
	top: 100%;
	width: 100%;
	margin: 0;
	padding: 12px 0;
	list-style: none;
	z-index: 999;
	background-color: #fff;
	font-size: 14px;
	-webkit-box-shadow: 0 1px 8px 0 rgba(0,0,0, 0.1);
	        box-shadow: 0 1px 8px 0 rgba(0,0,0, 0.1);
	max-height: 280px;
	overflow: auto;
}

.select-box .select-box__options.show {
	display: block;
}

.select-box .select-box__options li {
	padding: 8px 16px;
	cursor: pointer;
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
	overflow: hidden;
	color: var(--primary);
}

.select-box .select-box__options li:hover {
	background-color: #f5f5f5;
}

.form-group {
	margin-bottom: 32px;
	position: relative;
}

.form-error {
	font-size: 12px;
	margin-top: 8px;
}

#form_message {
	margin-top: 16px;
}

.form-foot {
	display: flex;
	align-items: center;
}

#btn_loader {
	width: 32px;
	padding: 4px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #ffffff;
	--mask: conic-gradient(#0000 10%,#000), linear-gradient(#000 0 0) content-box;
	-webkit-mask: var(--mask);
			mask: var(--mask);
	-webkit-mask-composite: source-out;
			mask-composite: subtract;
	animation: rotate 1s infinite linear;
	margin-left: 8px;
}

#btn_loader:not(.show) {
	display: none;
}

@keyframes rotate {
	to {
		transform: rotate(1turn)
	}
}


/*!
 *	Components
 * ----------------------------------------------- */

/* Card */

.card {
	background-color: #EDE9D0;
	border-radius: 20px;
	padding: 32px 24px;
	max-width: 390px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
    z-index: 3;
	pointer-events: all;
}


/* Tabs */

.tab {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.tab .tab__link {
    display: block;
    padding: 12px 20px;
    font-size: 18px;
    font-weight: 500;
    line-height: 20px;
    white-space: nowrap;
    position: relative;
    text-align: center;
}

.tab .tab__link.active {
    color: var(--primary);
}

.tab-content {
	margin-top: 40px;
}

.tab-pane {
	-webkit-transition: opacity .25s linear;
    -o-transition: opacity .25s linear;
    transition: opacity .25s linear;
}

.tab-pane.hide {
	display: none;
}

.tab-pane.active {
    display: block;
}

.tab-pane:not(.show) {
    opacity: 0;
}

.tab-indicator {
	position: absolute;
	border-radius: 12px;
	background-color: #EDE9D0;
}


/*!
 *	Header
 * ----------------------------------------------- */
#header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	padding-top: 16px;
	padding-bottom: 16px;	
	-webkit-animation: showHeader 1s cubic-bezier(0.075, 0.82, 0.165, 1) both;	
	        animation: showHeader 1s cubic-bezier(0.075, 0.82, 0.165, 1) both;
}

#header:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
}

#header.dark-header .navbar {
	--link-color: var(--primary);
	--link-hover-color: var(--primary);
}

#header.hide-header {
	-webkit-animation: hideHeader 1s cubic-bezier(0.075, 0.82, 0.165, 1) both;
	        animation: hideHeader 1s cubic-bezier(0.075, 0.82, 0.165, 1) both;
}

@-webkit-keyframes hideHeader {
	from {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	to {
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
	}
}

@keyframes hideHeader {
	from {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
	to {
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
	}
}

@-webkit-keyframes showHeader {
	from {
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
	}
	to {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

@keyframes showHeader {
	from {
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
	}
	to {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

#header .brand .colored,
#header.dark-header .brand .default {
	display: none;
}

#header.dark-header .brand .colored {
	display: block;
}

.header-container {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	padding-left: calc(var(--hero-spacing-x) * .5);
	padding-right: calc(var(--hero-spacing-x) * .5);
}

.navbar {
	--link-color: #ffffff;
	--link-hover-color: #1E1E1E;
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	background-color: #ffffff;
	padding-top: 32px;
	padding-bottom: 32px;
	z-index: 100;
	max-height: calc(100vh - var(--header-height));
	overflow: auto;
}
.navbar > ul {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: var(--container-width);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0 auto;
	padding: 0 calc(.5 * var(--gutter-x));
	list-style: none;
}

.navbar > ul > li:not(:first-child) {
	margin-top: 32px;
}

.navbar > ul > li > a {
	display: inline-block;
	white-space: nowrap;
	font-size: 14px;
	text-transform: uppercase;
	position: relative;
}

.navbar > ul > li > a:after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: currentColor;
	opacity: 0;
	-webkit-transition: opacity .25s linear;
    -o-transition: opacity .25s linear;
    transition: opacity .25s linear;
}

.navbar > ul > li > a:hover:after {
	opacity: 1;
}

.menu-item-has-children,
.menu-item-has-children > a {
	position: relative;
}

.menu-item-has-children {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	cursor: pointer;
}

.sub-menu-handler {
	margin-left: auto;
	width: 24px;
	height: 24px;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23205632"><path d="M11 11V5H13V11H19V13H13V19H11V13H5V11H11Z"></path></svg>');
}

.menu-item-has-children > .sub-menu-handler.active {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23205632"><path d="M5 11V13H19V11H5Z"></path></svg>');
}

.sub-menu {
	display: none;
	padding-top: 16px;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 100%;
	padding: 16px 0 0;
	margin: 0;
	list-style: none;
}

.sub-menu li a {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 8px 16px;
	border-radius: 8px;
	font-size: 14px;
	color: rgba(0, 0, 0, 0.7);
	white-space: nowrap;
}

.sub-menu li a:hover {
	background-color: var(--primary);
	color: #ffffff;
}

#hamburger {
	background-color: #1F5631;
	border: none;
	position: relative;
	margin-left: auto;
	width: 36px;
	height: 36px;
	cursor: pointer;
	padding: 0;
	border-radius: 6px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	z-index: 101;
}

#hamburger span {
	width: 16px;
	height: 16px;
	position: relative;
	text-align: center;
}

#hamburger span:before,
#hamburger span:after {
	content: '';
	position: absolute;
	right: 0;
	display: block;
	height: 1px;
	background-color: var(--hamburger-line-bg);
	-webkit-transition: all 0.35s;
	-o-transition: all 0.35s;
	transition: all 0.35s;
}

#hamburger span:before {
	top: 5px;
	width: 14px;
}

#hamburger span:after {
	top: 10px;
	width: 9px;
}

#hamburger.active {
	background-color: rgba(0, 0, 0, 0.4);
}

#hamburger.active span:after,
#hamburger.active span:before {
	top: 8px;
	width: 16px;
}

#hamburger.active span:before {
	-webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

#hamburger.active span:after {
	-webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.brand {
	position: relative;
	display: inline-block;
	width: 144px;
}

.brand > * {
	width: 100%;
}

#loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	z-index: 1000;
	background-color: #EDE9D0;
}

.video {
	max-width: 400px;
	width: 100%;
	padding-left: 16px;
	padding-right: 16px;
}

.video video::-webkit-media-controls-start-playback-button {
	display: none !important;
	-webkit-appearance: none;
  }

/* #intro {
	padding-bottom: 90px;
} */

#intro_wrapper {
	height: 100vh;	
	position: relative;
}

.intro-wrap {
	position: absolute;
	border-radius: 24px;
	overflow: hidden;
	top: calc(66px + (var(--hero-spacing-x) * .5));
	left: calc(var(--hero-spacing-x) * .5);
	right: calc(var(--hero-spacing-x) * .5);
	bottom: calc(var(--hero-spacing-x) * .5);
}

#intro_video {	
	position: relative;
	width: 100%;
	height: 100%;
}

#intro_video > * {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 100vh;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	-o-object-fit: cover;
	   object-fit: cover;
}

#intro_title {
	--heading-color: #ffffff;
	position: absolute;
	top: 25%;
	width: 100%;
	text-align: center;
	line-height: 1.15;
	padding-left: 16px;
	padding-right: 16px;
	-webkit-transform: translateY(-50%) scale(.85);
	    -ms-transform: translateY(-50%) scale(.85);
	        transform: translateY(-50%) scale(.85);
}

#intro_title .word {
	overflow: hidden;
	display: inline-block;
}

#intro_title .word:not(:first-child) {
	-webkit-transform: translateY(-45%);
	    -ms-transform: translateY(-45%);
	        transform: translateY(-45%);
}

#intro_title .char {
	-webkit-transform: translateY(100%);
	    -ms-transform: translateY(100%);
	        transform: translateY(100%);
	display: inline-block;
}

#intro_card {
	position: absolute;
	top: 100vh;
	left: 0;
	width: 100%;
	padding: calc(var(--title-height) + 24px) 16px 0;
	min-height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	pointer-events: none;
}

#intro_card .card {
	-webkit-transform: scale(0.75);
	    -ms-transform: scale(0.75);
	        transform: scale(0.75);
	opacity: 0;
	/* font-size: 14px; */
	max-width: 500px;
	padding: 40px 30px 30px;
}

.card .card__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.card .card__content > *:not(:first-child) {
	padding-left: 12px;
}

.card .card__content img {
	width: 24px;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}

.line-shape,
.circle-shape {
	position: relative;
}

.circle-shape .svg {
	content: '';
	position: absolute;
	top: -18%;
	left: -17%;
	width: 122%;
    height: 136%;
}

.line-shape:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 75%;
    height: 15%;
	margin-left: -40%;
	background: url("../images/icons/line.svg") center no-repeat;
	background-size: contain;
	-webkit-transform-origin: top left;
	    -ms-transform-origin: top left;
	        transform-origin: top left;
	-webkit-transform: scaleX(0);
	    -ms-transform: scaleX(0);
	        transform: scaleX(0);
	-webkit-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

.line-shape.show:after {
	-webkit-transform: scaleX(1);
	    -ms-transform: scaleX(1);
	        transform: scaleX(1);
}

.service-tab {
	background-color: var(--primary);
	border-radius: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: auto;
}

.service-tab::-webkit-scrollbar {
	height: 4px;
	display: block;
}

.service-tab::-webkit-scrollbar-thumb {
	background-color: rgba(0, 0, 0, 0.75);
	border-radius: 2px;
}

.service-tab .service-tab__gap {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 16px;
}

.service-tab .tab {
	--link-color: #ffffff;
	--link-hover-color: #EDE9D0;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;	
}

.service-tab .tab .tab__link {
	position: relative;
	z-index: 10;
	border: 1px solid transparent;
	border-radius: 12px;
	padding-left: 16px;
	padding-right: 16px;
}

.service-tab .tab .tab__link:not(.active):hover {
	border-color: #EDE9D0;
}

#services .tab-content {
	position: relative;
}

.service-content {
	background-color: #EDE9D0;
	padding: 24px;
	border-radius: 20px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	left: 16px;
	right: 16px;
}

.service-content ul {
	padding-left: 18px;
}

.image-collage {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	border-radius: 24px;
	overflow: hidden;
	gap: 4px;
	min-height: var(--image-min-height);
}

.image-collage > * {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.image-collage .image-collage__item > * {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.work-content,
.work-content > * {
	position: relative;
}

.work-content {
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.work-content:before {
	content: '';
	position: absolute;
	top: 0;
	left: 60%;
	width: 380px;
	height: 500px;
	-webkit-transform: translate(-50%, -10%) perspective(100px) rotateX(var(--rotate-x, 0deg)) rotateY(var(--rotate-y, 0deg));
	        transform: translate(-50%, -10%) perspective(100px) rotateX(var(--rotate-x, 0deg)) rotateY(var(--rotate-y, 0deg));
	background: url("../images/icons/foot.svg") center no-repeat;
}

.work-content > * {
	z-index: 4;
}

.swiper-slide {
	height: initial;
}

.work-card {
	--heading-font-family: 'Avenir Heavy';
	background-color: #EDE9D0;
	border-radius: 24px;
	padding: 96px 32px 56px;
	height: 100%;
	position: relative;
}

.work-card .work-card__number {
	position: absolute;
	top: 32px;
	left: 32px;
	font-weight: 500;
}

.work-card .work-card__icon {
	height: 60px;
	margin-bottom: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

#works .swiper {
	overflow: visible;
}

#works .container {
	margin-bottom: 56px;
}

#works .swiper-scrollbar {
	--swiper-scrollbar-size: 8px;
	--swiper-scrollbar-bg-color: rgba(var(--primary-rgb), 0.1);
	--swiper-scrollbar-drag-bg-color: var(--primary);
	position: relative;
	margin-top: 16px;
}

.work-swiper {
	position: relative;
}

.swiper-button {
	position: absolute;
	margin-top: 16px;
	left: 0;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.swiper-button .swiper-button-prev {
	-webkit-transform: rotate(180deg);
	    -ms-transform: rotate(180deg);
	        transform: rotate(180deg);
}

.swiper-button .swiper-button-prev,
.swiper-button .swiper-button-next {
	position: relative;
	top: initial;
	left: initial;
	right: initial;
	bottom: initial;
	width: 40px;
	height: 40px;
	margin-top: 0;
	border: 1px solid var(--primary);
	background-color: var(--primary);
	border-radius: 40px;
	color: #ffffff;
	-webkit-transition: all 0.25s;
	-o-transition: all 0.25s;
	transition: all 0.25s;
}

.swiper-button .swiper-button-prev:after,
.swiper-button .swiper-button-next:after {
	display: none;
}

.swiper-button .swiper-button-prev:hover,
.swiper-button .swiper-button-next:hover {
	background-color: transparent;
	color: var(--primary);
}

.swiper-button .swiper-button-next svg, 
.swiper-button .swiper-button-prev svg {
	width: initial;
	height: initial;
}

.swiper-button .swiper-button-next {
	margin-left: 8px;
}

#partners,
.partner-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.partner-item,
.partner-logo {
	white-space: nowrap;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.partner-logo {
	margin-right: 48px;
	max-width: 140px;
	max-height: 80px;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	/* -webkit-filter: grayscale(1);
	        filter: grayscale(1); */
}

.contact {
	--heading-color: #ffffff;
	--heading-font-family: 'Avenir Heavy';
	color: #ffffff;
	background-color: var(--primary);
}

.contact .contact__container {
	width: 100%;
	max-width: 1100px;
}

.contact .contact__text {
	font-size: 24px;
	position: relative;
}

.contact .form-control option {
	color: #000;
}

.contact .contact__title {
	position: relative;
	display: inline-block;
}

.contact .contact__animation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 6px;
	margin-top: 16px;
	margin-bottom: 32px;
}

.contact .contact__animation span {
	width: 12px;
	height: 12px;
	border-radius: 12px;
	background-color: #fff;
	-webkit-animation: wave 1s ease-in-out infinite;
	        animation: wave 1s ease-in-out infinite;
}

.contact .contact__animation span:nth-child(2) {
	-webkit-animation-delay: 0.1s;
	        animation-delay: 0.1s;
}

.contact .contact__animation span:nth-child(3) {
	-webkit-animation-delay: 0.2s;
	        animation-delay: 0.2s;
}

.contact .contact__animation span:nth-child(4) {
	-webkit-animation-delay: 0.3s;
	        animation-delay: 0.3s;
}


/*!
 *	Pages
 * ----------------------------------------------- */

#inner_banner {
	position: relative;
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-top: 90px;
}

#inner_banner:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 2;
}

#inner_banner .image-collage {
	border-radius: 0;
	gap: 0;
	min-height: initial;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	z-index: 1;
}

#inner_banner .image-collage > * {
	border-radius: 0;
}

#inner_banner .container {
	--heading-color: #ffffff;
	position: relative;
	z-index: 3;
	padding-top: 80px;
	padding-bottom: 80px;
	color: #ffffff;
}

.cta-container {
	padding: 32px;
	border-radius: 24px;
	text-align: center;
}

.cta-container .btn {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}

.cta-title {
	font-size: 24px;
	color: #EDE9D0;
	position: relative;
	margin-bottom: 32px;
}

.cta-title .cta-title__icon {
	display: none;
}

.service-step {
	margin-top: 48px;
}

.service-step > * {
	position: relative;	
}

.service-step .svg {
	width: 100%;
	height: 100%;
	display: none;
}

.service-step .service-step__card {
	padding: 16px;
	border-radius: 16px;
	border: 2px solid var(--primary);
	background-color: #EDE9D0;
}

.service-step .service-step__card:not(:first-child) {
	margin-top: 16px;
}

.service-step .service-step__text {
	text-transform: uppercase;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.service-step .service-step__line {
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
}

.service-step .service-step__arrow {
	opacity: 0;
}

.service-step .service-step__icon {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 60px;
	margin-right: 16px;
	text-align: center;
}

.service-card {
	background-color: #EDE9D0;
	border-radius: 24px;
	padding: 32px 16px;
}

.service-tab-content h6 {
	--heading-font-family: 'Avenir Heavy';
	--heading-color: #000000;
	font-size: 16px;
}

.service-tab-content ul,
.service-tab-content ol {
	padding-left: 20px;
	margin-bottom: 0;
}

.service-tab-content ul:not(:last-child),
.service-tab-content ol:not(:last-child) {
	margin-bottom: 16px;
}

.service-tab-content .col-xl-1 {
	display: none;
}

.service-swiper {
	position: relative;
}

.service-swiper .swiper-pagination {
	--swiper-pagination-color: var(--primary);
	bottom: -32px;
}

.service-swiper-card {
	border-radius: 24px;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

.service-tab-hero:before,
.service-swiper-card .service-swiper-card__image:before {
	content: '';
	display: block;
	padding-bottom: 101.8%;
}

.service-swiper-card .service-swiper-card__image > * {
	position: absolute;
	top: 40%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.service-tab-hero > *,
.service-swiper-card .service-swiper-card__image.p-0 > * {
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: none;
	    -ms-transform: none;
	        transform: none;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.service-swiper-card .service-swiper-card__image {
	padding: 32px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.service-swiper-card .service-swiper-card__text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	line-height: 20px;
	color: var(--primary);
	border-radius: 24px;
	background-color: #E3DEBE;
	padding: 16px;
	text-align: center;
}

.service-tab-hero {
	overflow: hidden;
	border-radius: 24px;
	position: relative;
}

.link {
	color: var(--primary);
	text-decoration: underline;
}

.text-read-more.text-hide {
	position: relative;
	overflow: hidden;
}

.text-read-more.text-hide:not(.show) {
	height: 340px;
}

.text-read-more .text-read-more__link {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding-top: 40px;
	padding-bottom: 8px;
	background-color: #fff;
	background: #EDE9D0;
	background: -o-linear-gradient(bottom,rgba(237, 233, 208, 1) 40%, rgba(237, 233, 208, 0) 100%);
	background: -webkit-gradient(linear,left bottom, left top,color-stop(40%, rgba(237, 233, 208, 1)), to(rgba(237, 233, 208, 0)));
	background: linear-gradient(0deg,rgba(237, 233, 208, 1) 40%, rgba(237, 233, 208, 0) 100%);
	pointer-events: none;
}

.text-read-more.show .text-read-more__link {
	background: transparent;
	bottom: -12px;
}

.text-read-more .text-read-more__link a {
	color: var(--primary);
	text-decoration: underline;
	pointer-events: auto;
}

.text-read-more .text-read-more__link a:hover {
	color: #000;
	text-decoration: underline;
}

.service-1-title {
	--heading-color: #ffffff;
	display: inline-block;
	position: relative;
	border-radius: 100px;
	padding: 8px 48px;
	background-color: var(--primary);
	margin-top: 16px;
}

.service-1-title:after,
.service-1-title:before {	
	content: '';
	position: absolute;
	top: calc(-1 * var(--gap));
	height: calc(100% + (var(--gap) * 2));
	width: calc(50% + var(--gap));
}

.service-1-title:before {
	--gap: 10px;
	left: calc(-1 * var(--gap));
	border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
	border: 8px solid var(--primary);
	border-right: transparent;
}

.service-1-title:after {
	--gap: 7px;
	right: calc(-1 * var(--gap));
	border-top-right-radius: 100px;
	border-bottom-right-radius: 100px;
	border: 2px solid var(--primary);
	border-left: transparent;
}

.ec-wrap {
	--circle-size: 110px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin-top: 16px;
	padding-top: 48px;
}

.ec-wrap .ec-wrap__item {
	position: relative;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 50%;
}

.ec-wrap .ec-wrap__circle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	background-color: #fff;
	width: var(--circle-size);
	height: var(--circle-size);
	border-radius: 120px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

.image-hover:hover,
.ec-wrap .ec-wrap__circle:hover {
	-webkit-animation: imageHover 400ms ease-in-out;
	        animation: imageHover 400ms ease-in-out;
}

@-webkit-keyframes imageHover {
	0%, 100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	40%, 60% {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
	}
}

@keyframes imageHover {
	0%, 100% {
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	40%, 60% {
		-webkit-transform: scale(1.05);
		        transform: scale(1.05);
	}
}

.ec-wrap .ec-wrap__circle:after,
.ec-wrap .ec-wrap__circle:before {
	content: '';
	position: absolute;
	top: calc(-1 * var(--gap));
	height: calc(100% + (var(--gap) * 2));
	width: calc(50% + var(--gap));
}

.ec-wrap .ec-wrap__circle:before {
	--gap: 16px;
	left: calc(-1 * var(--gap));
	border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
	border: 8px solid var(--primary);
	border-right: transparent;
}

.ec-wrap .ec-wrap__circle:after {
	--gap: 13px;
	right: calc(-1 * var(--gap));
	border-top-right-radius: 100px;
	border-bottom-right-radius: 100px;
	border: 2px solid var(--primary);
	border-left: transparent;
}

.ec-wrap .ec-wrap__text {
	max-width: 160px;
	text-transform: uppercase;
	margin: 40px auto;
}

.zw-card {
	background-color: #fff;
	border-radius: 24px;
	border: 1px solid var(--primary);
	text-align: center;
	height: 100%;
}

.zw-card .zw-card__icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	height: 164px;
	border-bottom: 1px solid var(--primary);
}

.zw-card .zw-card__title {
	font-family: 'Avenir Heavy';
	margin-bottom: 8px;
	display: block;
	text-transform: uppercase;
}

.zw-card .zw-card__content {
	padding: 24px 32px;
}


/*!
 *	Footer styles
 * ----------------------------------------------- */

#footer {
	--heading-color: #1E1E1E;
	--link-color: #1E1E1E;
	--link-hover-color: var(--primary);
	color: #1E1E1E;
	background-color: #E9EBE3;
    padding: 80px 0 32px;
	overflow: hidden;
}

#footer .brand {
	margin-bottom: 24px;
	width: initial;
}

#footer .col-lg-1 {
	display: none;
}

.footer-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.footer-list li {
    margin-bottom: 16px;
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 50%;
}

.contact-info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.contact-info:not(:last-child) {
	margin-bottom: 20px;
}

.contact-info .contact-info__icon {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 16px;
}

.contact-info .contact-info__text {
	padding-left: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.map {
	position: relative;
}

.map:before {
	content: '';
	display: block;
	padding-bottom: calc(9 / 16 * 100%);
}

.map > * {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.last-footer {
	margin-top: 64px;
	font-size: 12px;
	text-transform: uppercase;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.last-footer > * {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	width: 100%;
}

.last-footer .copy {
	margin-bottom: 8px;
}

.last-footer a {
	text-decoration: underline;
}

.last-footer span {
	opacity: 0.4;
}


/*!
 *	Animation
 * ----------------------------------------------- */

[data-animate] {
	-webkit-animation-name: var(--animation-name);
	        animation-name: var(--animation-name);
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
	-webkit-animation-duration: var(--animation-duration);
	        animation-duration: var(--animation-duration);
	-webkit-animation-timing-function: var(--animation-timing-function);
	        animation-timing-function: var(--animation-timing-function);
	-webkit-animation-delay: var(--animation-delay);
	        animation-delay: var(--animation-delay);
	opacity: 0;
}

.fade-up {
	--animation-name: fade-up;
}
  
@-webkit-keyframes fade-up {
	from {
		opacity: 0;
		-webkit-transform: translateY(50px);
		        transform: translateY(50px);
	} to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
  
@keyframes fade-up {
	from {
		opacity: 0;
		-webkit-transform: translateY(50px);
		        transform: translateY(50px);
	} to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

.fade-left {
	--animation-name: fade-left;
}
  
@-webkit-keyframes fade-left {
	from {
		opacity: 0;
		-webkit-transform: translateX(-200px);
		        transform: translateX(-200px);
	} to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}
  
@keyframes fade-left {
	from {
		opacity: 0;
		-webkit-transform: translateX(-200px);
		        transform: translateX(-200px);
	} to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

.char-reveal-1 .char {
	opacity: 0.3;
}

.char-reveal-2 .word {
	overflow: hidden;
	display: inline-block;
}

.char-reveal-2 .char {
	-webkit-transform: translateY(100%);
	    -ms-transform: translateY(100%);
	        transform: translateY(100%);
	display: inline-block;
}

@-webkit-keyframes wave {
    0%, 100% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    50% {
        -webkit-transform: translateY(-16px);
                transform: translateY(-16px);
    }
}

@keyframes wave {
    0%, 100% {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    50% {
        -webkit-transform: translateY(-16px);
                transform: translateY(-16px);
    }
}


/*!
 *	Responsive
 * ----------------------------------------------- */
@media(min-width: 480px) {
	.col-xs-1 {
		width: 8.33333333%;
	}
	
	.col-xs-2 { 
		width: 16.66666667%;
	}
	
	.col-xs-3 {
		width: 25%;
	}
	
	.col-xs-4 {
		width: 33.33333333%;
	}
	
	.col-xs-5 {
		width: 41.66666667%;
	}
	
	.col-xs-6 {
		width: 50%;
	}
	
	.col-xs-7 {
		width: 58.33333333%;
	}
	
	.col-xs-8 {
		width: 66.66666667%;
	}
	
	.col-xs-9 { 
		width: 75%;
	}
	
	.col-xs-10 {
		width: 83.33333333%;
	}
	
	.col-xs-11 {
		width: 91.66666667%;
	}
	
	.col-xs-12 {
		width: 100%;
	}

	.parallax-hero-wrap {
		width: 150%;
		left: -25%;
	}

	.service-card {
		padding: 48px;
	}

	.service-step .service-step__card {
		padding: 16px 24px;
	}
}

@media(min-width: 576px) {
	body {
		--container-width: 540px;
		--hero-spacing-x: 64px;
	}

	.col-sm-1 {
		width: 8.33333333%;
	}
	
	.col-sm-2 { 
		width: 16.66666667%;
	}
	
	.col-sm-3 {
		width: 25%;
	}
	
	.col-sm-4 {
		width: 33.33333333%;
	}
	
	.col-sm-5 {
		width: 41.66666667%;
	}
	
	.col-sm-6 {
		width: 50%;
	}
	
	.col-sm-7 {
		width: 58.33333333%;
	}
	
	.col-sm-8 {
		width: 66.66666667%;
	}
	
	.col-sm-9 { 
		width: 75%;
	}
	
	.col-sm-10 {
		width: 83.33333333%;
	}
	
	.col-sm-11 {
		width: 91.66666667%;
	}
	
	.col-sm-12 {
		width: 100%;
	}

	#header {
		padding-bottom: 24px;
	}

	.footer-list {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	.footer-list li {
		width: initial;
		margin-bottom: 0;
	}

	.footer-list li:not(:first-child) {
		margin-left: 16px;
	}
}

@media(min-width: 768px) {
	body {
		--container-width: 720px;
		--section-padding-y: 140px;
	}

	.col-md-1 {
		width: 8.33333333%;
	}
	
	.col-md-2 { 
		width: 16.66666667%;
	}
	
	.col-md-3 {
		width: 25%;
	}
	
	.col-md-4 {
		width: 33.33333333%;
	}
	
	.col-md-5 {
		width: 41.66666667%;
	}
	
	.col-md-6 {
		width: 50%;
	}
	
	.col-md-7 {
		width: 58.33333333%;
	}
	
	.col-md-8 {
		width: 66.66666667%;
	}
	
	.col-md-9 { 
		width: 75%;
	}
	
	.col-md-10 {
		width: 83.33333333%;
	}
	
	.col-md-11 {
		width: 91.66666667%;
	}
	
	.col-md-12 {
		width: 100%;
	}

	.mb-80 {
		margin-bottom: 80px !important;
	}

	#intro_video {
		border-radius: 32px;
	}

	.service-tab .service-tab__gap {
		width: 20px;
	}

	.service-content {
		max-width: 420px;
		width: 100%;
		right: initial;
		left: 32px;
	}

	.work-content {
		padding-right: 24px;
	}

	.work-content:before {
		left: 50%;
		z-index: 3;
	}

	.work-content:after {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		left: -10000px;
		bottom: 0;
		background-color: #fff;
		z-index: 2;
	}

	.swiper-button {
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}

	.section.section--contact .col-lg-6 {
		padding-top: 160px;
		padding-bottom: 160px;
	}

	#inner_banner .container {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.cta-title {
		font-size: 32px;
	}

	.service-card {
		padding: 64px;
	}

	.service-step {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}

	.service-step .service-step__card:not(:first-child) {
		margin-top: 0;
	}

	.service-step > *:not(:first-child) {
		margin-left: -26px;
	}

	.service-step > *:nth-child(even) {
		margin-top: 104px !important;
	}

	.service-step .svg {
		display: block;
	}

	.service-step .service-step__card {
		padding: 0;
		border-radius: 0;
		border: none;
	}

	.service-step .service-step__text {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
		text-align: center;
		opacity: 0;
		font-size: 12px;
		width: 100px;
		margin-left: -50px;
		display: block;
	}

	.service-step .service-step__text img {
		margin-bottom: 8px;
		max-width: 40px;
		max-height: 40px;
	}

	.service-step .service-step__icon {
		width: initial;
		margin-right: 0;
	}

	.ec-wrap .ec-wrap__item {
		width: 33.33333333%;
	}

	.ec-wrap {
		--circle-size: 120px;
	}
}

@media(min-width: 992px) {
	body {
		--container-width: 960px;
		--hero-spacing-x: 80px;
	}

	.col-lg-1 {
		width: 8.33333333%;
	}
	
	.col-lg-2 { 
		width: 16.66666667%;
	}
	
	.col-lg-3 {
		width: 25%;
	}
	
	.col-lg-4 {
		width: 33.33333333%;
	}
	
	.col-lg-5 {
		width: 41.66666667%;
	}
	
	.col-lg-6 {
		width: 50%;
	}
	
	.col-lg-7 {
		width: 58.33333333%;
	}
	
	.col-lg-8 {
		width: 66.66666667%;
	}
	
	.col-lg-9 { 
		width: 75%;
	}
	
	.col-lg-10 {
		width: 83.33333333%;
	}
	
	.col-lg-11 {
		width: 91.66666667%;
	}
	
	.col-lg-12 {
		width: 100%;
	}

	#intro_video {
		border-radius: 48px;
	}

	#intro_title {
		top: 50%;
		padding-left: 40px;
		padding-right: 40px;
		text-align: left;
		-webkit-transform-origin: top left;
		    -ms-transform-origin: top left;
		        transform-origin: top left;
	}

	#intro_card {
		padding-top: 0;
		padding-right: 40px;
	}

	#intro_card .card {
		margin-right: 0;
	}

	.navbar {
		margin-top: 8px;
		margin-left: auto;
		position: relative;
		top: initial;
		width: initial;
		background-color: transparent;
		padding: 0;
		border: none;
		display: block;
		max-height: initial;
		overflow: visible;
		border-radius: 0;
		-webkit-backdrop-filter: none;
		        backdrop-filter: none;
	}

	.navbar > ul {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 0;
		margin: 0;
		max-width: initial;
	}

	.navbar > ul > li:not(:first-child) {
		margin-left: 40px;
		margin-top: initial;
	}

	.navbar > ul > li > a {
		padding: 0;
	}

	.sub-menu-handler {
		position: relative;
		top: -2px;
		margin-left: 4px;
		width: 16px;
		height: 16px;
		background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23205632" viewBox="0 0 256 256"><path d="M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z"></path></svg>');
	}

	.menu-item-has-children:hover .sub-menu {
		opacity: 1;
		visibility: visible;
		-webkit-transition: all .5s;
		-o-transition: all .5s;
		transition: all .5s;
	}
	
	.sub-menu {
		position: absolute;
		top: 100%;
		left: 50%;
		min-width: 220px;
		width: initial;
		-webkit-box-shadow: 0 0 20px 4px rgba(0, 0, 0, 0.1);
		box-shadow: 0 0 20px 4px rgba(0, 0, 0, 0.1);
		background-color: #fff;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		padding: 16px;
		border-radius: 8px;
		opacity: 0;
		visibility: hidden;
		display: block;
	}

	#hamburger {
		display: none;
	}

	#inner_banner {
		min-height: 480px;
		font-size: 20px;
	}

	/* #intro_card .card {
		margin-top: -48px;
	} */

	.cta-container {
		padding: 48px 32px;
		text-align: left;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	.cta-title {
		margin-bottom: 0;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		padding-right: 120px;
	}

	.cta-title .cta-title__icon {
		display: block;
		position: absolute;
		top: 50%;
		right: 16px;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
	}

	.service-card {
		padding: 80px;
	}

	.contact .contact__text {
		padding-right: 100px;
	}

	.contact .contact__animation {
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: 0;
		margin-bottom: 0;
	}

	.service-step > *:not(:first-child) {
		margin-left: -30px;
	}

	.service-step > *:nth-child(even) {
		margin-top: 134px !important;
	}

	.service-step .service-step__text {
		font-size: 16px;
		width: 140px;
		margin-left: -70px;
	}

	.service-step .service-step__text img {
		margin-bottom: 16px;
		max-width: initial;
		max-height: inherit;
	}

	#footer .col-lg-1 {
		display: block;
	}

	.footer-list {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.footer-list li:not(:first-child) {
		margin-left: 0;
		margin-top: 16px;
	}

	.last-footer {
		text-align: left;
	}

	.last-footer > * {
		width: initial;
	}

	.last-footer .copy {
		margin-bottom: 0;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
}

@media(min-width: 1200px) {
	body {
		--container-width: 1180px;
	}

	h1, .h1 {
		font-size: calc(var(--heading-font-size-base) * 5);
	}
	
	h2, .h2 {
		font-size: calc(var(--heading-font-size-base) * 4);
	}
	
	h3, .h3 {
		font-size: calc(var(--heading-font-size-base) * 3);
	}
	
	h4, .h4 {
		font-size: calc(var(--heading-font-size-base) * 2);
	}
	
	h5, .h5 {
		font-size: calc(var(--heading-font-size-base) * 1.5);
	}

	.col-xl-1 {
		width: 8.33333333%;
	}
	
	.col-xl-2 { 
		width: 16.66666667%;
	}
	
	.col-xl-3 {
		width: 25%;
	}
	
	.col-xl-4 {
		width: 33.33333333%;
	}
	
	.col-xl-5 {
		width: 41.66666667%;
	}
	
	.col-xl-6 {
		width: 50%;
	}
	
	.col-xl-7 {
		width: 58.33333333%;
	}
	
	.col-xl-8 {
		width: 66.66666667%;
	}
	
	.col-xl-9 { 
		width: 75%;
	}
	
	.col-xl-10 {
		width: 83.33333333%;
	}
	
	.col-xl-11 {
		width: 91.66666667%;
	}
	
	.col-xl-12 {
		width: 100%;
	}

	.cta-container {
		padding: 80px 48px;
	}

	.cta-title {
		/* font-size: 40px; */
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 auto;
		        flex: 0 0 auto;
		max-width: 75%;
		padding-right: 132px;
	}

	.service-tab .tab .tab__link {
		font-size: 20px;
	}

	.service-tab.service-tab--sm .tab .tab__link {
		padding-left: 8px;
		padding-right: 8px;
	}

	.work-content:before {
		top: 50%;
		left: 70%;
		-webkit-transform: translate(-50%, -50%) perspective(100px) rotateX(var(--rotate-x, 0deg)) rotateY(var(--rotate-y, 0deg));
		        transform: translate(-50%, -50%) perspective(100px) rotateX(var(--rotate-x, 0deg)) rotateY(var(--rotate-y, 0deg));
	}

	.service-card {
		padding: 120px 64px;
	}

	.service-tab-content .col-xl-2 {
		display: block;
	}

	.service-step > *:nth-child(even) {
		margin-top: 160px !important;
	}

	.service-step .service-step__text img {
		margin-bottom: 40px;
	}

	.service-swiper-card .service-swiper-card__text {
		line-height: 24px;
		font-size: 20px;
	}

	.service-step .service-step__card {
		-webkit-transition: -webkit-transform 0.75s ease;
		transition: -webkit-transform 0.75s ease;
		-o-transition: transform 0.75s ease;
		transition: transform 0.75s ease;
		transition: transform 0.75s ease, -webkit-transform 0.75s ease;
	}

	.service-step .service-step__card:hover {
		-webkit-transform: scale(1.1);
		    -ms-transform: scale(1.1);
		        transform: scale(1.1);
	}

	.ec-wrap {
        --circle-size: 132px;
		--circle-line-width: 200px;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
    }

	.ec-wrap .ec-wrap__item {
		padding-top: 64px;
		width: initial;
	}

	.service-1-title:before {
		--gap: 16px;
	}
	
	.service-1-title:after {
		--gap: 13px;
	}

	.service-1-title h2:after {
		content: '';
		position: absolute;
		left: 50%;
		bottom: -16px;
		width: 8px;
		height: 12px;
		z-index: 1;
		background-color: #EDE9D0;
	}

	.ec-wrap .ec-wrap__line {
		position: absolute;
		top: -12px;
		width: var(--circle-line-width);
		height: 64px;
	}
	
	.ec-wrap .ec-wrap__line:after {
		content: '';
		position: absolute;
		top: -5px;
		width: 8px;
		height: 8px;
		border-radius: 8px;
		background-color: var(--primary);
	}
	
	.ec-wrap .ec-wrap__line:before {
		content: '';
		position: absolute;
		bottom: -5px;
		width: 8px;
		height: 10px;
		background-color: #EDE9D0;
		z-index: 1;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(1) .ec-wrap__line,
	.ec-wrap .ec-wrap__item:nth-child(2) .ec-wrap__line {
		border-top: 2px solid var(--primary);
		border-left: 2px solid var(--primary);
		left: calc(50% + 8px);
		border-top-left-radius: 32px;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(4) .ec-wrap__line,
	.ec-wrap .ec-wrap__item:nth-child(5) .ec-wrap__line {
		border-top: 2px solid var(--primary);
		border-right: 2px solid var(--primary);
		right: calc(50% - 8px);
		border-top-right-radius: 32px;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(3) .ec-wrap__line {
		--circle-line-width: 2px;
		top: -53px;
		left: calc(50% + 8px);
		height: 105px;
		background-color: var(--primary);
	}
	
	.ec-wrap .ec-wrap__item:nth-child(1) .ec-wrap__line:after,
	.ec-wrap .ec-wrap__item:nth-child(2) .ec-wrap__line:after {
		right: -4px;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(1) .ec-wrap__line:before,
	.ec-wrap .ec-wrap__item:nth-child(2) .ec-wrap__line:before {
		left: -10px;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(4) .ec-wrap__line:after,
	.ec-wrap .ec-wrap__item:nth-child(5) .ec-wrap__line:after {
		left: -4px;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(4) .ec-wrap__line:before,
	.ec-wrap .ec-wrap__item:nth-child(5) .ec-wrap__line:before {
		right: 0;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(3) .ec-wrap__line:after {
		display: none;
	}
	
	.ec-wrap .ec-wrap__item:nth-child(3) .ec-wrap__line:before {
		left: -8px;
	}
}

@media(min-width: 1400px) {
	body {
		--container-width: 1320px;
	}

	.service-card {
		padding: 120px 100px;
	}

	.service-tab.service-tab--sm .tab .tab__link {
		padding-left: 12px;
		padding-right: 12px;
	}

	.ec-wrap {
		--circle-line-width: 220px;
	}
}