/**************************************************/
/**         GENERAL RESET & BASE STYLES          **/
/**************************************************/

@import url("https://fonts.googleapis.com/css2?family=Onest:wght@100..900&display=swap");
/* @font-face {
  font-family: "AnastasiaScript";
  src: url("../fonts/AnastasiaScript.woff2") format("woff2"),
    url("../fonts/AnastasiaScript.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
} */

* {
	margin: 0;
	padding: 0;
	font-family: "Onest", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: normal;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	color: #000;
}

*:focus {
	outline: none;
}

html,
body {
	height: 100%;
	width: 100%;
	scroll-behavior: smooth;
}

body {
	display: flex;
	flex-direction: column;
	background-color: #f5f5f5;
}

main {
	flex: auto;
}

ol,
ul,
nav {
	list-style: none;
}

a {
	text-decoration: none;
}

strong {
	font-weight: 700;
}

b {
	font-weight: 500;
}

img {
	width: 100%;
	height: auto;
}

input,
textarea,
select {
	vertical-align: middle;
	padding: 0;
	box-sizing: border-box;
	resize: none;

	border: 1px solid transparent;
	color: #000c49;
	background-color: #fff;
}

textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
	color: #000c49;
	font-size: 16px;
}

textarea:focus::-webkit-input-placeholder,
input:focus::-webkit-input-placeholder {
	color: #b9b9b9;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-background-clip: text;
	-webkit-text-fill-color: #fff;
	transition: background-color 5000s ease-in-out 0s;
	box-shadow: inset 0 0 20px 20px transparent;
}

.hover {
	transition: opacity 0.4s;
}

.hover:hover {
	opacity: 0.7;
}

.container {
	display: block;
	position: relative;
	width: 1440px;
	padding: 0;
	margin: 0 auto;
	height: 100%;
}

.mb {
	margin-bottom: 120px;
}

:root {
	--text-color: #2d2d2d;
	--green-color: #20ca67;
}

/**************************************************/
/**                 MAIN STYLES                  **/
/**************************************************/

/*HEADER*/

.header {
	background-color: #fff;
}

.header__logo {
	width: 110px;
	height: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.header__btn-svg {
	width: 27px;
	height: 27px;
	background-color: var(--green-color);
}

.header__inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	padding: 10px 0;
	align-items: center;
}

.header__inner * {
	flex-shrink: 0;
}

.header__nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.header__nav-item > a {
	color: #919191;
	font-size: 16px;
	line-height: 150%;
	transition: all 0.3s ease;
}

.header__nav-item {
	transition: all 0.4s ease;
	border-radius: 50px;
	background: rgba(202, 202, 202, 0.1);
	padding: 10px 22px;
	backdrop-filter: blur(5px);
	display: flex;
	justify-content: center;
	align-items: center;
}

.header__nav-item:hover {
	background-color: rgba(45, 45, 45, 0.5);
}

.header__nav-item:hover > a {
	color: #fff;
}

.header__translate {
	border-radius: 50px;
	background: rgba(202, 202, 202, 0.1);
	min-height: 41px;
	backdrop-filter: blur(5px);
	padding: 10px 22px;
	color: #919191;
	font-size: 16px;
	line-height: 150%;
	border: 0;
	transition: all 0.4s ease;
	cursor: pointer;
}
.header__translate:hover {
	background-color: rgba(45, 45, 45, 0.5);
	color: #fff;
}

.header__btn {
	padding: 13px 22px;
	border-radius: 50px;
	background-color: var(--green-color);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: #fff;
	font-size: 16px;
	line-height: 120%;
	font-weight: 700;
}

.header__btns {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 20px;
}

.burger-menu {
	display: none;
}
/*HEADER*/

/* HERO */

.hero {
	background-color: #fff;
	border-radius: 0 0 40px 40px;
	padding: 20px 0 60px 0;
}

.hero__heading {
	color: var(--text-color);
	font-size: 102px;
	font-weight: 700;
}

.hero__text {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.hero__subheading {
	color: var(--text-color);
	font-size: 28px;
	font-weight: 500;
	line-height: 110%;
}

.hero > .container {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 32px;
}

.hero__img {
	width: 790px;
	height: 625px;
	object-fit: cover;
	border-radius: 40px;
}

.hero__list-item svg {
	width: 22px;
	height: 22px;
}

.hero__content {
	display: flex;
	flex-direction: column;
	gap: 40px;
	position: relative;
}

.hero__list-item {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--text-color);
	font-size: 18px;
}

.hero__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.hero__btn {
	width: 304px;
	height: 54px;
	background-color: var(--green-color);
	border-radius: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 120%;
}

.hero .hero__btn {
	margin-top: 65px;
}

.hero__btn svg {
	width: 28px;
	height: 28px;
}

.hero__arrow {
	position: absolute;
	bottom: 72px;
	left: 307px;
}

/* HERO */

/* ABOUT */

.heading {
	color: var(--text-color);
	font-size: 38px;
	font-weight: 700;
	line-height: 110%;
	flex-shrink: 0;
}

.about .heading {
	max-width: 305px;
}

.about__subheading:nth-child(1) {
	color: #414141;
	text-align: justify;
	font-size: 20px;
	font-weight: 500;
}

.about__subheading:nth-child(2) {
	color: #414141;
	font-size: 18px;
	text-align: justify;
}

.about__text {
	display: flex;
	flex-direction: column;
	gap: 27px;
}

.about-t {
	display: flex;
	gap: 60px;
}

.about__list-item svg {
	width: 54px;
	height: 54px;
}

.about__list-item {
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 30px;
	background-color: #fff;
	border-radius: 20px;
	min-height: 306px;
}

.about__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 20px;
}

.about__list-item h3 {
	color: var(--text-color);
	font-size: 24px;
	font-weight: 600;
	line-height: 110%;
	height: 52px;
}

.about__list-item p {
	font-size: 16px;
	color: var(--text-color);
}

.about__list-item-b {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.about > .container {
	display: flex;
	flex-direction: column;
	gap: 70px;
}

/* ABOUT */

/* PACKAGES */

.packages__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 20px;
}

.package-t svg,
.package-b svg {
	width: 20px;
	height: 20px;
}

.includes svg {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
}

.package__inner {
	padding: 50px 30px 30px 30px;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.package:nth-child(1) .package__inner {
	background-color: rgba(32, 202, 103, 0.1);
}

.package:nth-child(2) .package__inner {
	background-color: #ececec;
}

.package:nth-child(3) .package__inner {
	background-color: #fff;
}
.package {
	position: relative;
}

.package__name {
	padding: 20px 35px;
	background-color: var(--text-color);
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	line-height: 110%;
	width: fit-content;
	border-radius: 40px;
	position: absolute;
	top: -33px;
	left: 30px;
}

.packages > .container {
	display: flex;
	flex-direction: column;
	gap: 83px;
}

.package-t p:nth-child(1) {
	display: flex;
	align-items: center;
	gap: 10px;
}

.package-t p > span {
	color: var(--text-color);
	font-size: 20px;
	font-weight: 600;
}

.package-t p {
	color: var(--text-color);
	font-size: 18px;
	line-height: 110%;
}

.package-t p:nth-child(2) {
	height: 60px;
}

.package-t {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.includes > span {
	color: var(--text-color);
	font-size: 20px;
	font-weight: 600;
	line-height: 110%;
}

.includes {
	display: flex;
	flex-direction: column;
	gap: 15px;
	height: 311px;
}

.includes__list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.includes__list > li {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--text-color);
	line-height: 110%;
}

.package-b > p:nth-child(1) {
	display: flex;
	gap: 10px;
	align-items: center;
}
.package-b p > span {
	color: var(--text-color);
	font-size: 20px;
	font-weight: 600;
	line-height: 110%;
}

.package-b p {
	color: var(--text-color);
	font-size: 18px;
	line-height: 110%;
}

.package-b {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
/* PACKAGES */

/* WORK */

.work__list img {
	object-fit: cover;
	width: 100px;
	height: 100px;
	border-radius: 10px;
}

.work__inner {
	padding: 70px;
	background-color: var(--text-color);
	border-radius: 40px;
	display: flex;
	gap: 10px;
}

.work__numbers {
	display: flex;
	flex-direction: column;
	gap: 11px;
	align-items: center;
}

.work .line {
	width: 1px;
	height: 56px;
	background-color: var(--green-color);
}

.work .number {
	font-size: 36px;
	font-weight: 600;
	line-height: 120%;
	color: var(--green-color);
}

.work-r {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

.work__list > li {
	display: flex;
	align-items: center;
	gap: 20px;
}

.work__about {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.work__list h3 {
	color: #fff;
	font-size: 24px;
	font-weight: 500;
	line-height: 120%;
}

.work__list p {
	color: #fff;
	font-size: 18px;
	font-weight: 300;
	line-height: 110%;
}

.work__list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.work .heading {
	color: #fff;
}

.work__subheading {
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	line-height: 110%;
	margin-bottom: 30px;
}

.work-l {
	display: flex;
	flex-direction: column;
	gap: 20px;
	max-width: 404px;
}
/* WORK */

/* COUNTRIES */

.countries .container {
	display: flex;
	gap: 64px;
}

.countries__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 20px;
}

.country svg {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.country__flag {
	object-fit: cover;
	width: 120px;
	height: 72px;
	border-radius: 10px;
	margin-bottom: 10px;
}

.country {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 30px;
	border-radius: 20px;
	background-color: #fff;
	width: 310px;
}

.country__name {
	color: var(--text-color);
	font-size: 24px;
	font-weight: 600;
	line-height: 110%;
}

.country__price {
	font-size: 18px;
	color: var(--text-color);
	line-height: 110%;
}

.country__works {
	margin: 10px 0 10px 0;
	display: flex;
	gap: 10px;
}

.country__works span {
	color: var(--text-color);
	font-size: 18px;
	font-weight: 600;
	line-height: 110%;
}

.country__works > ul {
	list-style-type: disc;
	padding-left: 25px;
}

.country__works > ul > li {
	font-size: 18px;
	color: var(--text-color);
	line-height: 110%;
}

.country-b {
	display: flex;
	gap: 10px;
	color: var(--green-color);
	font-size: 16px;
	line-height: 110%;
}

.countries__subheading {
	color: var(--text-color);
	font-size: 20px;
	font-weight: 500;
	line-height: 110%;
}

.countries__text {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* COUNTRIES */

/* ADVANTAGES */

.advantages-l > svg {
	transform: scaleX(-1);
}

.advantage__text {
	display: flex;
	align-items: center;
	gap: 60px;
}

.advantages-l {
	max-width: 535px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: relative;
}

.advantages .container {
	display: flex;
	gap: 84px;
}

.advantages-r svg {
	width: 35px;
	height: 35px;
	flex-shrink: 0;
}

.advantage {
	display: flex;
	gap: 60px;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid #d9d9d9;
}

.advantage p {
	max-width: 367px;
	font-size: 18px;
	color: var(--text-color);
	line-height: 110%;
}

.advantage h3 {
	color: var(--text-color);
	font-size: 24px;
	font-weight: 500;
}

.advantage:nth-last-child(1) {
	border: 0;
}
.advantages__subheading {
	font-size: 20px;
	color: #414141;
	font-weight: 500;
	margin-bottom: 10px;
}

.advantages__green {
	font-size: 20px;
	font-weight: 500;
	color: var(--green-color);
	margin-bottom: 12px;
}

.advantages-l > svg {
	position: absolute;
	bottom: 200px;
	right: -30px;
}

/* ADVANTAGES */

/* REVIEWS */

.swiper {
	width: 100%;
	display: grid;
	grid-template-rows: 1fr;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.star path {
	fill: #f5cd1d;
}

.star:nth-last-child(1) path {
	fill: #d9d9d9;
}

.review {
	padding: 20px;
	background-color: #ececec;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-height: 100%;
}

.swiper .swiper-slide {
	height: auto;
}

.review-t {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.review__author {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.author__country {
	display: flex;
	align-items: center;
	gap: 5px;
	color: rgba(45, 45, 45, 0.69);
	font-size: 14px;
	font-weight: 300;
}

.review__about {
	color: var(--text-color);
	font-size: 18px;
}

.review__time {
	color: rgba(45, 45, 45, 0.69);
	font-size: 16px;
	font-weight: 300;
}
.author__name {
	font-size: 20px;
	font-weight: 500;
	color: var(--text-color);
}

.author__country img {
	width: 24px;
	border-radius: 2px;
	height: 14px;
}
.reviews .container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
/* REVIEWS */

/* CONTACTS + FAQ */

.last .container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 20px;
	position: relative;
}
.plus {
	position: relative;
}

.line1,
.line2 {
	width: 3px;
	height: 17px;
	background-color: #000;
	transition: all 0.3s ease;
}

.line1 {
	transform: rotate(90deg);
	position: absolute;
}

.faq-bottom {
	grid-template-rows: 0fr;
	display: grid;
	overflow: hidden;
	transition: all 0.4s ease;
}

.faq-bottom-text {
	min-height: 0;
	color: #4f4f4f;
	font-size: 16px;
	font-weight: 300;
	line-height: 110%;
}

.faq-bottom-text * {
	color: #4f4f4f;
	font-size: 16px;
	font-weight: 300;
	line-height: 110%;
}

.faq-bottom-text > ul,
.faq-bottom-text > ol {
	margin: 7px 0;
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding-left: 20px;
}

.faq-bottom-text > ul {
	list-style-type: disc;
}

.faq-bottom-text > ol {
	list-style-type: decimal;
}

.faq__item {
	width: 100%;
	padding: 20px;
	border-radius: 10px;
	backdrop-filter: blur(11.5px);
	background-color: #fff;
	display: none;
}

.faq__item.visible {
	display: block;
}

.faq-top {
	justify-content: space-between;
	display: flex;
	align-items: center;
}

.faq-top > span {
	color: #000;
	font-size: 20px;
	font-weight: 600;
	line-height: 110%;
}

.faq-bottom-text > span {
	display: block;
	height: 17px;
}

.faq__item.active .faq-bottom {
	grid-template-rows: 1fr;
}

.faq__item.active .line2 {
	transform: rotate(90deg);
}

.faq__list {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.faq {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.faq-toggle {
	color: var(--green-color);
	font-size: 18px;
	line-height: 110%;
	text-decoration: underline;
	width: fit-content;
	background-color: transparent;
	border: 0;
	cursor: pointer;
}

.contacts-links svg {
	width: 30px;
	height: 30px;
}

.contacts-links {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.contacts-links li {
	display: flex;
	align-items: center;
	gap: 10px;
}

.contacts-links li > a {
	color: var(--text-color);
	font-size: 18px;
	font-weight: 500;
}

.contacts-l .hero__btn,
.footer .hero__btn {
	width: fit-content;
	padding: 13px 22px;
}

.contacts-l .hero__btn {
	margin-top: 30px;
}

.contacts-r-info-l > li {
	color: #525252;
	font-size: 18px;
}

.contacts-r-info-r,
.contacts-r-info-l {
	flex-direction: column;
	gap: 10px;
	display: flex;
}

.contacts-r-info-r > li {
	color: var(--text-color);
	font-size: 18px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	font-weight: 500;
}

.contacts-r-info {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.contacts-r {
	display: flex;
	flex-direction: column;
	width: fit-content;
	gap: 12px;
	color: var(--text-color);
	font-size: 20px;
	font-weight: 500;
}

.contacts-bottom {
	display: flex;
	gap: 70px;
}

.contacts {
	display: flex;
	flex-direction: column;
	gap: 110px;
	padding: 40px;
	border-radius: 30px;
	height: fit-content;
	position: sticky;
	margin-top: 60px;
	top: 60px;
	background-color: rgba(32, 202, 103, 0.1);
}

/* CONTACTS + FAQ */

/* FOOTER */

.footer {
	padding-bottom: 32px;
}

.footer-l svg {
	width: 542px;
}

.footer .container {
	padding: 40px 70px;
	background-color: var(--text-color);
	border-radius: 30px;
	display: flex;
	justify-content: space-between;
	align-items: end;
}

.footer-l p {
	color: #fff;
	font-size: 14px;
	line-height: 110%;
	max-width: 541px;
	margin-top: -10px;
}

.footer-links a {
	color: #fff;
	font-size: 16px;
	line-height: 150%;
}

.footer-links {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.footer-r {
	display: flex;
	align-items: end;
	flex-direction: column;
	gap: 20px;
}

.footer-r p,
.footer-r a {
	text-wrap: nowrap;
	color: #fff;
	font-size: 16px;
	line-height: 110%;
}

.footer-r a {
	text-decoration: underline;
	cursor: pointer;
}

/* FOOTER */

.stars {
	display: flex;
	align-items: center;
	gap: 0px;
}

/* обычные точки */
.swiper .swiper-pagination-bullet {
	background-color: #ececec; /* неактивная */
	opacity: 1; /* убрать дефолтное затемнение */
	width: 10px;
	margin: 0;
	height: 10px;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets
	.swiper-pagination-bullet {
	margin: 0;
}

.swiper .swiper-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4px;
	position: relative;
	bottom: 0;
	top: 0;
}

/* активная точка */
.swiper .swiper-pagination-bullet-active {
	background-color: #4f4f4f;
}

svg.trp-shortcode-arrow {
	display: none !important;
}

.trp-current-language-item__wrapper:not(.trp-hide-arrow) {
	padding: 10px 22px !important;
	background-color: rgba(202, 202, 202, 0.1) !important;
	border-radius: 50px;
}
a.trp-language-item {
	padding: 10px 22px !important;
	background-color: rgba(202, 202, 202, 0.1) !important;
	border-radius: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.header .trp-language-switcher > div > a,
.header .trp-language-switcher > div > a.trp-ls-shortcode-disabled-language {
	padding: 10px 22px !important;
	max-height: 44px !important;
}

.header .trp-language-item-name {
	color: #919191;
	font-size: 16px;
	line-height: 150%;
}

.trp-language-item {
	padding: 0 !important;
}

.header__lang {
	max-height: 57px;
}


.privacy-policy {
    padding: 60px 0;
}

.privacy-policy .entry-title {
    margin-bottom: 30px;
}

.privacy-policy .entry-content {
    line-height: 1.7;
}

.privacy-policy h2 {
    margin-top: 20px;
    margin-bottom: 10px;
}

.privacy-policy ul {
    list-style-type: disc;
    padding-left: 20px;
}