:root {
	/* in default theme colors 1* are red, colors 2* are orange, colors 3* are blue, colors 4* are black */
	--c0-0: #fff;
	--c0-1: #222;
	--c1-1: #62c2d0;
	--c1-2: #00a9c8;
	--c1-3: #e4feff;
	--c1-4: #e6f4f1;
	--c1-5: #d5eae3;
	--c1-6: #00869f;
	--c2-1: #57d3cc;
	--c2-2: #67e1bc;
	--c2-3: #8eeda3;
	--c2-4: #c0f588;
	--c2-5: #f9f871;
	--c3-1: #52add4;
	--c3-2: #6394ce;
	--c3-3: #8077b9;
	--c3-4: #965994;
	--c3-5: #9c3c64;
}
.bg0-0 { background-color: var(--c0-0) !important; }
.c0-0 { color: var(--c0-0) !important; }

.bg0-1 { background-color: var(--c0-1) !important; }
.c0-1 { color: var(--c0-1) !important; }

.bg1-1 { background-color: var(--c1-1) !important; }
.c1-1 { color: var(--c1-1) !important; }

.bg1-2 { background-color: var(--c1-2) !important; }
.c1-2 { color: var(--c1-2) !important; }

.bg1-3 { background-color: var(--c1-3) !important; }
.c1-3 { color: var(--c1-3) !important; }

.bg1-4 { background-color: var(--c1-4) !important; }
.c1-4 { color: var(--c1-4) !important; }

.bg1-5 { background-color: var(--c1-5) !important; }
.c1-5 { color: var(--c1-5) !important; }

.bg1-6 { background-color: var(--c1-6) !important; }
.c1-6 { color: var(--c1-6) !important; }

.bg2-1 { background-color: var(--c2-1) !important; }
.c2-1 { color: var(--c2-1) !important; }

.bg2-2 { background-color: var(--c2-2) !important; }
.c2-2 { color: var(--c2-2) !important; }

.bg2-3 { background-color: var(--c2-3) !important; }
.c2-3 { color: var(--c2-3) !important; }

.bg2-4 { background-color: var(--c2-4) !important; }
.c2-4 { color: var(--c2-4) !important; }

.bg2-5 { background-color: var(--c2-5) !important; }
.c2-5 { color: var(--c2-5) !important; }

.bg3-1 { background-color: var(--c3-1) !important; }
.c3-1 { color: var(--c3-1) !important; }

.bg3-2 { background-color: var(--c3-2) !important; }
.c3-2 { color: var(--c3-2) !important; }

.bg3-3 { background-color: var(--c3-3) !important; }
.c3-3 { color: var(--c3-3) !important; }

.bg3-4 { background-color: var(--c3-4) !important; }
.c3-4 { color: var(--c3-4) !important; }

.bg3-5 { background-color: var(--c3-5) !important; }
.c3-5 { color: var(--c3-5) !important; }

.bg-gr1 {
background:linear-gradient(135deg, var(--c1-1), var(--c2-2), var(--c3-2));
}
html {
font-size:20px;	
} 
body {
background-color:var(--c0-0);
font-family:'Nunito Sans', sans-serif;
font-size:17px;
line-height:1.5;
color:var(--c0-1);
overflow-x:hidden;	
display:unset;
}
.page {
width:100%;
overflow-x:hidden;
overflow-x:clip;
display:block;
max-width:2000px;
margin:0 auto;
}
a:focus {
outline:none !important;
}
.element-hidden {
display:none !important;	
}
img {
max-width:100%;
height:auto;
width:100%;	
}
.h100 {
height:100%;
}
.zi0 { z-index:0 !important; }
.zi1 { z-index:1 !important; }
.zi2 { z-index:2 !important; }
.zi3 { z-index:3 !important; }

.end-p p:last-child {
margin-bottom:0;
}
.wow {
visibility:hidden;	
}
.bm {
margin-bottom:1.5rem;	
}

/* Block */
.block {
padding:7rem 0 5.5rem 0;
}
.block-inner {
max-width:1400px;
margin:0 auto;
padding:0 0.7rem;
}
.block-shaped {
padding-top:10rem;
position:relative;
}
.block-shaped2 {
padding-bottom:10rem;
position:relative;
}
.divider2,
.divider1 {
position: absolute;
top: 0;
left: 0;
width: 100%;
overflow: hidden;
line-height: 0;
}
.divider2 {
top:auto;
bottom:0;
transform: rotate(180deg);
}
.divider2 svg,
.divider1 svg {
position: relative;
display: block;
width: calc(137% + 1.3px);
height: 8rem;
}
.block-imgbg {
background-position:center;
background-size:cover;
background-repeat:no-repeat;
min-height:40rem;
}
.block-hasoverlay {
position:relative;
}
.block-overlay {
position:absolute;
top:0;
left:0;
right:0;
bottom:0;
background:rgba(22,45,55,0.5);
}
/* Header */
.header {
padding:1.5rem 0;
}
.header .block-inner {
display:flex;
flex-wrap:nowrap;
justify-content:space-between;
align-items:center;
}
.header-logo {
width:20rem;
}
.header-social {
display:inline-block;
width:3rem;
background:var(--c1-1);
padding:0.75rem;
margin:0 0 0 0.2rem;
border-radius:0.4rem;
transition:all 0.5s ease;
}
.header-social:hover {
border-radius:50%;
background:var(--c1-2);
}
.header-contact {
font-size:1.1rem;
margin:0.3rem 0;
}
.header-contact i {
width:2.1rem;
text-align:center;
font-size:1rem;
color:var(--c1-1);
background:var(--c1-4);
padding:0.55rem 0;
border-radius:0.2rem;
margin:0 0.4rem 0 0;
}
.header-contact a {
color:var(--c0-1);
text-decoration:none;
transition:all 0.5s ease;
font-weight:700;
}
.header-contact a:hover {
color:var(--c1-2);
}
/* Start */
.start {
background:url('/data/img/stacked-waves.png') center;
background-size:cover;
padding:7rem 0 5rem 0;
}
.bg-waves2 {
background:url('/data/img/stacked-waves-2.png') center;
background-size:cover;
}
.bg-waves3 {
background:url('/data/img/stacked-waves-3.png') center;
background-size:cover;
}
.start-title {
color:var(--c0-0);
font-weight:700;
text-transform:uppercase;
font-size:2.4rem;
margin:0 0 1.5rem 0;
}
.start-title-smaller {
font-size:2rem;
}
.start-title strong {
color:var(--c2-4);
font-weight:1000;
}
.start-desc {
color:var(--c0-0);
font-size:1.2rem;
line-height:1.4;
font-weight:600;
margin:0 0 2rem 0;
}
.start-desc strong {
color:var(--c2-4);
font-weight:700;
}
.start-image img {
border-radius:52% 48% 63% 37% / 39% 50% 50% 61% ;
}

.button-lg {
max-width:550px;
display:block;
background:var(--c3-4);
color:var(--c0-0);
text-decoration:none;
font-size:1.25rem;
line-height:1.3;
padding:1rem 2rem 0.8rem 2rem;
text-align:center;
border-radius:2rem;
text-transform:uppercase;
font-weight:700;
letter-spacing:1px;
box-shadow:0 0.3rem 0 var(--c3-5), 0 0.6rem 0.6rem rgba(1,1,1,0.2);
transition:all 0.5s ease;
}
.button-lg-2 {
background:var(--c3-1);
box-shadow:0 0.3rem 0 var(--c3-2), 0 0.6rem 0.6rem rgba(1,1,1,0.2);
}
.button-lg:hover {
color:var(--c0-1);
background:var(--c2-3);
box-shadow:0 0.3rem 0 var(--c2-1), 0 0.6rem 0.6rem rgba(1,1,1,0.2);
}
/* Block parts */
.block-title-size {
font-size:2.2rem;
font-weight:1000;
line-height:1.4;
text-transform:uppercase;
margin:0 auto 2.5rem auto;
}
.block-title-size strong {
color:var(--c1-2);
}
.block-title-size { 
font-size:1.9rem;
}
.block-title-part {
border:1rem solid var(--c2-4);
padding:3rem 5rem;
text-align:center;
border-radius:56% 44% 56% 44% / 47% 50% 50% 53%;
}
.block-title-part-c2 {
border-radius:45% 55% 58% 42% / 40% 57% 43% 60%;
}

.block-image {
text-align:center;
}

/* Icon list */
.icon-list-item {
position:relative;
display:flex;
align-items:start;
margin:0 0 3rem 0;
}
.icon-list-item:last-child {
margin-bottom:0;
}
.icon-list-icon {
margin:0 1.5rem 0 0;
}
.icon-list-icon i {
font-size:2.4rem;
padding:1.2rem 0;
width:4.8rem;
text-align:center;
background:url('/data/img/stack-sq.png') center no-repeat;
background-size:cover;
border-radius:50%;
color:var(--c0-0);
}
.icon-list-title {
text-transform:uppercase;
font-size:1.4rem;
line-height:1.4;
margin-bottom:0.5rem;
font-weight:900;
}
.icon-list-text {
font-size:1.2rem;
line-height:1.4;
}

/* Info list */
.info-list {
margin:0 auto 1rem auto;
}
.info-list-title {
font-weight:800;
font-size:1.2rem;
line-height:1.4;
margin:0 0 0.6rem 0;
}
.info-list-item {
position:relative;
display:flex;
align-items:start;
margin:0 0 0.4rem 0;
} 
.info-list-item i {
font-size:1.2rem;
margin:0 0.5rem 0 0;
color:var(--c3-5);
}
.info-list-item span {
font-size:1rem;
line-height:1.3;
}

/* Steps */
.step {
position:relative;
padding:1rem;
}
.step-num {
position:absolute;
background:var(--c1-2);
color:var(--c0-0);
font-size:3rem;
line-height:1;
font-weight:900;
padding:0.9rem 0;
width:4.8rem;
text-align:center;
border-radius:50%;
}
.step--2 .step-num {
background:var(--c3-1);
}
.step--3 .step-num {
background:var(--c3-4);
}
.step--4 .step-num {
background:var(--c3-5);
}
.step-image img {
border-radius:50%;
}
.step-content {
text-align:center;
margin-top:1.5rem;
padding:1rem;
border:0.5rem solid rgba(255,255,255,0.3);
border-radius:3rem;
}
.step-title {
font-weight:900;
font-size:1.3rem;
line-height:1.3;
}
.step-text {
font-size:1.2rem;
line-height:1.3;
max-width:300px;
margin:0 auto;
}
.step-smaller .step-content {
border-radius:1rem;
border-width:0.3rem;
margin-left:-1rem;
margin-right:-1rem;
padding:0.7rem;
}
.step-smaller .step-title {
font-size:1.2rem;
line-height:1.2;
}
.step-smaller .step-text {
font-size:1rem;
}
/* Price */
.price {
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
background:#f5f5ff;
padding:1rem 1.4rem;
margin:0 0 0.7rem 0;
border-radius:1rem;
}
.price-title {
flex:1 0 100%;
font-size:1rem;
line-height:1.3;
font-weight:700;
margin:0 0 0.5rem 0;
padding: 0 0 0.5rem 0;
border-bottom:3px solid rgba(1,1,1,0.05);
}
.price-price {
color:var(--c1-2);
font-size:1.1rem;
font-weight:900;
}
.price-price span {
font-weight:600;
font-size:0.8rem;
color:#778;
}
.price .button-xs {
max-width:11rem;
}
.button-xs {
display:inline-block;
background:var(--c3-4);
color:var(--c0-0);
text-decoration:none;
font-size:0.7rem;
line-height:1.3;
padding:0.6rem 1.2rem 0.5rem 1.2rem;
text-align:center;
border-radius:2rem;
text-transform:uppercase;
font-weight:700;
letter-spacing:1px;
transition:all 0.5s ease;
}
.button-xs:hover {
background:var(--c3-5);
}

/* Gallery */
.card-columns.comments-grid {
column-count: 4;
column-gap: 2rem;
}
.comments-grid .card {
display:inline-block;
border:none;
margin-bottom:2rem;
background:transparent;
position:relative;
}
.comments-grid .card img {
border:0.4rem solid var(--c0-0);
transition:all 0.5s ease;
}
.comments-grid .card:hover img {
border-color:var(--c2-4);
}
.comments-grid .card:nth-child(even):before,
.comments-grid .card:nth-child(odd) img {
transform:rotate(2deg);
}
.comments-grid .card:nth-child(odd):before,
.comments-grid .card:nth-child(even) img {
transform:rotate(-2deg);
}
.comments-grid .card:before {
content:'😍';
position:absolute;
font-size:1.7rem;
line-height:1;
top:-0.4rem;
left:-0.7rem;
z-index:2;
}

/* Contacts */
.contacts {
margin-bottom:2rem;
}
.contact-social {
display:inline-block;
width:3rem;
background:var(--c1-1);
padding:0.75rem;
margin:0 0.2rem 0 0;
border-radius:0.4rem;
transition:all 0.5s ease;
}
.contact-social:hover {
border-radius:50%;
background:var(--c1-2);
}
.contact {
font-size:1.3rem;
margin:0 0 1rem 0;
}
.contact i {
width:2.5rem;
text-align:center;
font-size:1.3rem;
color:var(--c1-1);
background:var(--c1-4);
padding:0.55rem 0;
border-radius:0.2rem;
margin:0 0.4rem 0 0;
}
.contact span {
color:var(--c0-1);
text-decoration:none;
font-weight:700;
}
.contact a {
color:var(--c0-1);
transition:all 0.5s ease;
text-decoration:none;
}
.contact a:hover {
color:var(--c1-2);
}

.embed-map {
padding:3rem;
background:var(--c1-4);
border-radius:1rem;
}
.bottom-text {
font-size:1.4rem;
font-weight:700;
}
.bottom-text span {
display:inline-block;
border:0.5rem solid var(--c2-4);
padding:1rem 3rem;
border-radius:4rem;
}

/* FAQ */
.faq-block {
margin-bottom:2rem;
}
.faq-top {
position:relative;
font-weight:700;
font-size:1.4rem;
line-height:1.3;
padding:0.5rem 0 0.5rem 4.5rem;
margin-bottom:0px;
cursor:pointer;
transition:all 0.4s ease;
}
.faq-top div {
display:inline;
padding-bottom:1px;
transition:all 0.4s ease;
}
.faq-top:hover div {
color:var(--color3-1);
}
.faq-top--active div {
border-color:transparent;
}
.faq-icon {
position:absolute;
left:0;
top:-0.3rem;
font-size:1.5rem;
line-height:1;
transition:opacity 0.5s ease;
background:var(--c2-4);
padding:1rem 0;
width:3.5rem;
text-align:center;
border-radius:50%;
}
.faq-icon-2 {
opacity:0;
background:var(--c2-5);
left:0;
}
.faq-icon-1 {
opacity:1;
color:var(--color2-1);
}
.faq-top--active .faq-icon-2 {
opacity:1;
}
.faq-top--active .faq-icon-1 {
opacity:0;
}
.faq-bottom {
padding:0.5rem 0 0.5rem 4.5rem;
font-size:1.2rem;
line-height:1.5;
}

/* Footer */
.footer {
font-size:0.9rem;
padding:3rem 0;
}
.footer-text {
color:var(--c0-0);
}
.footer-top {
display:flex;
align-items:center;
justify-content:space-between;
padding-bottom:1.5rem;
border-bottom:1px solid rgba(255,255,255,0.1);
margin-bottom:1.5rem;
}
.footer-socials {
}
.footer-social {
display:inline-block;
width:2.3rem;
background:var(--c1-2);
padding:0.45rem;
margin:0 0 0 0.2rem;
border-radius:0.4rem;
transition:all 0.5s ease;
}
.footer-social:hover {
border-radius:50%;
background:var(--c1-1);
}
.footer-contacts {
}
.footer-contact {
display:inline-block;
margin:0 2rem 0 0;
}
.footer-contact i {
color:var(--c1-1);
margin:0 0.3rem 0 0;
}
.footer-contact span {
color:var(--c0-0);
}
.footer-contact a {
text-decoration:none;
color:var(--c0-0);
transition:all 0.5s ease;
}
.footer-contact a:hover {
color:var(--c2-4);
}

/* Form */
.popup-form.fancybox__content {
background:var(--c1-4);
color:var(--c0-1);
width:100%;
max-width:600px;
padding:2.5rem 2.5rem 1.5rem 3rem;
}
.popup-form-title {
color:var(--c0-1);
font-weight:800;
text-transform:uppercase;
font-size:1.4rem;
text-align:center;
margin:0 0 1.5rem 0;
}
.form-field {
margin:0 0 1rem 0;
}
.form-field--age {
position:absolute;
left:-9999px;
top:-9999px;
}
.form-label {
font-weight:800;
font-size:0.7rem;
margin:0 0 0.2rem 0.5rem;
text-transform:uppercase;
color:var(--c1-2);
}
.form-required {
color:var(--c3-5);
}
.iti {
width:100%;
}
.form-text {
background:var(--c0-0);
border:1px solid var(--c2-3);
width:100%;
font-size:0.8rem;
margin:0;
color:var(--c0-1);
padding:0.8rem;
border-radius:0.4rem;
transition:all 0.5s ease;
}
.form-text:focus {
border-color:var(--c1-1);
background:var(--c1-3);
outline:none;
}
.form-text::placeholder {
color:var(--c0-1) !important;
opacity:0.6;
}
.form-actions {
text-align:center;
}
.form-policy {
margin:1.4rem auto 0 auto;
max-width:400px;
font-size:0.7rem;
line-height:1.4;
}
.form-policy a {
color:var(--c0-1);
font-weight:600;
}
.iti__selected-country-primary .iti__arrow:not(.iti__arrow--up) {
border-top: var(--iti-arrow-height) solid var(--c0-1);
}

.iti--inline-dropdown .iti__dropdown-content {
background:var(--c0-0);
}
#form-errors {
text-align:center;
margin:0 0 10px 0;
font-size:0.8rem;
}
#form-errors i {
color:var(--c3-4);
}
#form-loading {
text-align:center;
margin:25px 0;
}
#form-loading img {
width:70px;
}
#form-loading div {
font-weight:700;
font-size:1rem;
line-height:1;
margin:0 0 10px 0;
}
#thank-you .popup-form-title {
margin-bottom:1rem;
}
#thank-you .popup-form-desc {
text-align:center;
font-size:1rem;
max-width:
}
.popup-form-icon {
text-align:center;
font-size:2rem;
line-height:1;
color:var(--c3-3);
margin-top:2rem;
}
.style-popup.fancybox__content {
background:var(--c0-0);
color:var(--c0-1);
width:100%;
max-width:1000px;
padding:3rem 3rem 1.5rem 3rem;
}
.popup-long {
font-size:0.8rem;
}

.button-sm {
border:none;
display:inline-block;
background:var(--c3-4);
color:var(--c0-0);
text-decoration:none;
font-size:1rem;
line-height:1.3;
padding:0.8rem 2rem 0.6rem 2rem;
text-align:center;
border-radius:2rem;
text-transform:uppercase;
font-weight:700;
letter-spacing:1px;
box-shadow:0 0.3rem 0 var(--c3-5), 0 0.6rem 0.6rem rgba(1,1,1,0.2);
transition:all 0.5s ease;
}
.button-sm:hover {
color:var(--c0-1);
background:var(--c2-4);
box-shadow:0 0.3rem 0 var(--c2-3), 0 0.6rem 0.6rem rgba(1,1,1,0.2);
}

/* Navigation */
.navigation {
background:var(--c1-6);
padding:0.8rem 0;
}
.nav {
display:flex;
}
.nav a {
color:var(--c0-0);
font-weight:600;
text-decoration:none;
padding:0.6rem 1.5rem;
border:1px solid var(--c1-2);
font-size:0.85rem;
line-height:1.4;
margin:0 0.8rem 0 0;
border-radius:0.3rem;
transition:all 0.5s ease;
}
.nav a:hover {
background:var(--c1-2);
}

.mnav {
position:relative;
text-align:center;
}

.mnav-button {
cursor:pointer;
color:var(--c0-0);
font-weight:600;
text-decoration:none;
padding:0.6rem 1.5rem;
border:1px solid var(--c1-2);
font-size:1rem;
line-height:1.4;
margin:0 auto;
border-radius:0.3rem;
transition:all 0.5s ease;
display:inline-block;
}
.mnav-button i {
margin:0 1rem 0 0;
}
.mnav-inner a:hover,
.mnav-button:hover {
background:var(--c1-2);
}
.mnav-inner {
position:absolute;
left:0;
right:0;
top:2.7rem;
background:var(--c1-6);
padding:0 0.8rem 0.8rem 0.8rem;
border-radius:0.4rem;
}
.mnav-inner a {
text-align:left;
cursor:pointer;
display:block;
color:var(--c0-0);
font-weight:600;
text-decoration:none;
padding:0.6rem 1.5rem;
border:1px solid var(--c1-2);
font-size:1rem;
line-height:1.4;
margin:0.4rem 0 0 0;
border-radius:0.3rem;
transition:all 0.5s ease;
}

/* Levels */
.level {
position:relative;
display:flex;
align-items:start;
margin:0 0 3rem 0;
}
.level-icon {
margin:0 1.5rem 0 0;
}
.level-icon i {
font-size:2.4rem;
padding:1.2rem 0;
width:4.8rem;
text-align:center;
background:url('/data/img/stack-sq2.png?2') center no-repeat;
background-size:cover;
border-radius:50%;
color:var(--c2-5);
}
.level-title {
text-transform:uppercase;
font-size:1.4rem;
line-height:1.4;
margin-bottom:0.4rem;
font-weight:900;
}
.level-counter {
margin:0 0 0.7rem 0;
}
.level-counter span {
border:1px solid var(--c3-4);
color:var(--c3-5);
font-weight:900;
text-transform:uppercase;
padding:0.2rem 1rem;
display:inline-block;
border-radius:3rem;
font-size:0.9rem;
}
.level-text {
font-size:1.2rem;
line-height:1.4;
}
.list-with-i {
list-style-type:none;
padding:0;
}
.list-with-i li {
position:relative;
padding-left:1.5rem;
}
.list-with-i i {
position:absolute;
left:0;
top:0.25rem;
color:var(--c3-5);
font-size:1rem;
}