/***** FONTS *****/
@font-face {
  font-family: "Manrope";
  font-display: swap;
  src: url("../fonts/Manrope-Regular.woff2") format("woff2"), url("../fonts/Manrope-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Manrope";
  font-display: swap;
  src: url("../fonts/Manrope-Medium.woff2") format("woff2"), url("../fonts/Manrope-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Manrope";
  font-display: swap;
  src: url("../fonts/Manrope-Bold.woff2") format("woff2"), url("../fonts/Manrope-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Manrope";
  font-display: swap;
  src: url("../fonts/Manrope-ExtraBold.woff2") format("woff2"), url("../fonts/Manrope-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Manrope";
  font-display: swap;
  src: url("../fonts/Manrope-SemiBold.woff2") format("woff2"), url("../fonts/Manrope-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Unbounded";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Unbounded-Regular.woff2") format("woff2"), url("../fonts/Unbounded-Regular.woff") format("woff");
  unicode-range: U+21-23, U+25-5F, U+61-7E, U+AB, U+BB, U+401, U+410-44F, U+451, U+2013-2014, U+2018-2019, U+201C, U+201C-201E, U+2026, U+20BD;
}
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon/fonts/icomoon.eot");
  src: url("../fonts/icomoon/fonts/icomoon.eot") format("embedded-opentype"), url("../fonts/icomoon/fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon/fonts/icomoon.woff") format("woff"), url("../fonts/icomoon/fonts/icomoon.svg") format("svg");
  font-weight: normal !important;
  font-style: normal !important;
  font-display: block;
}
[class^=icon-], [class*=" icon-"] {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  line-height: 1 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-tg:before {
  content: "\e90a";
}

.icon-heart:before {
  content: "\e90e";
}

.icon-play:before {
  content: "\e90f";
}

.icon-mail:before {
  content: "\e900";
}

.icon-arrow-triangle:before {
  content: "\e901";
}

.icon-chevron:before {
  content: "\e902";
}

.icon-checkmark:before {
  content: "\e903";
}

.icon-arrow:before {
  content: "\e904";
}

.icon-document:before {
  content: "\e905";
}

.icon-minus:before {
  content: "\e906";
}

.icon-plus:before {
  content: "\e907";
}

.icon-cross:before {
  content: "\e908";
}

.icon-star:before {
  content: "\e909";
}

.icon-place:before {
  content: "\e90b";
}

.icon-phone:before {
  content: "\e90c";
}

.icon-burger:before {
  content: "\e90d";
}
.icon-home:before {
  content: "\e910";
}
.icon-info:before {
  content: "\ea0c";
}
.icon-fb:before {
  content: "\ea90";
}
.icon-zoom-in:before {
  content: "\e987";
}
.icon-zoom-out:before {
  content: "\e988";
}
.icon-enlarge2:before {
  content: "\e98b";
}

.icon-shrink2:before {
  content: "\e98c";
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  margin: 0;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

a {
  background-color: transparent;
  transition: 0.3s ease;
}

a:active,
a:hover {
  outline: 0;
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:focus {
  color: inherit;
}

a:focus {
  outline: none;
  outline-offset: 0;
}

figure {
  margin: 0;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

svg,
svg:hover,
path,
polygon {
  transition: 0.05s;
}

svg:not(:root) {
  overflow: hidden;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

mark {
  background: #ff0;
  color: #000;
}

hr {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: 0;
  border-top: 1px solid #f2f2f2;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

input:focus,
button:focus,
select:focus,
textarea:focus {
  outline: none;
  outline-offset: 0;
}

button {
  overflow: visible;
  transition: 0.3s ease;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 0.125rem;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/***** GENERAL ELEMENTS *****/
:root {
  --content-width: 1200px;
  --container-offset: 20px;
  --container-width: calc(var(--content-width) + (var(--container-offset) * 2));
  --title-font: "Unbounded", "Manrope", sans-serif;
  --space-between: 80px;
  --primary-color: rgb(78, 163, 233);
  --secondary-color: rgb(51, 46, 112);
  --text-color: rgb(33, 33, 33);
  --white-color: rgb(255, 255, 255);
  --error-color: rgb(234, 50, 50);
}

/***** Mixins *****/
@media screen and (max-width: 1199px) {
  :root {
    --container-offset: 16px;
    --space-between: 60px;
  }
}
/***** BLOCKS GLOBAL *****/
/*-----generals-----*/







.link-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 40px;
}

@media screen and (max-width: 1199px) {
  .link-center {
    margin-top: 30px;
  }
}
@media screen and (max-width: 576px) {
  .link-center .btn {
    width: 100%;
  }
}
/***** COMPONENTS GLOBAL *****/



 
.footer {
  padding-top: 60px;
  padding-bottom: 24px;
  color: #a8a8a8;
  background: #282828;
}
.footer-grid {
  display: grid;
  grid-template-columns: 360px 180px 280px 1fr;
  column-gap: 40px;
}
.footer-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
.footer-col:nth-child(1) {
  margin-top: -10px;
}
.footer-col:nth-child(5) {
  display: none;
}
.footer-logo {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 24px;
}
.footer-contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  row-gap: 18px;
}
.footer-contact {
  position: relative;
  padding-left: 34px;
}
.footer-contact i {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 24px;
  color: #3D8DCE;
}
.footer-contact .h5 {
  font-family: "Manrope", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  color: var(--white-color);
}
.footer-contact .h5:hover {
  color: var(--primary-color);
}
.footer-address .p {
  font-size: 16px;
  font-weight: normal;
  line-height: 1.4;
  color: var(--white-color);
}
.footer-address a.p {
  text-decoration: underline;
  color: var(--primary-color);
}
.footer-address a.p:hover {
  opacity: 0.8;
}
.footer-title {
  margin-top: 0;
  margin-bottom: 16px;
  font-family: "Manrope", sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.25;
  color: var(--white-color);
}
.footer-menu {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  row-gap: 10px;
}
.footer-menu li {
  display: inline-flex;
  color: #a8a8a8;
}
.footer-menu li a {
  display: inline-flex;
  color: #a8a8a8;
}
.footer-menu li a:hover {
  color: var(--primary-color);
}
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-top: 32px;
  padding-top: 24px;
  column-gap: 24px;
  border-top: 1px solid #454545;
}
.footer-policies {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px 15px;
}
.footer-policies p, .footer-policies a {
  margin-top: 0;
  margin-bottom: 0;
  display: inline-flex;
  font-size: 12.3px;
  font-weight: normal;
  line-height: 1.3;
  color: #727272;
}
.footer .socmes {
  gap: 8px;
}
.footer .socmes a {
  border-color: #3C3C3C;
  background-color: #3C3C3C;
}
.footer .tag-yandex {
  border-radius: 10px;
  background: #3F3F3F;
}
.footer .tag-yandex-rating {
  color: var(--white-color);
}
.footer .tag-yandex-value {
  border-left-color: #626262;
  color: var(--white-color);
}

@media screen and (max-width: 1199px) {
  .footer {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  .footer-grid {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    grid-template-columns: unset;
    column-gap: 24px;
    row-gap: 40px;
  }
  .footer-col {
    width: calc(50% - 12px);
  }
  .footer-col:nth-child(1) {
    margin-top: 0;
    width: 100%;
  }
  .footer-col:nth-child(5) {
    display: flex;
    padding-top: 44px;
    row-gap: 16px;
  }
  .footer-bottom {
    padding-top: 20px;
    column-gap: 0;
  }
  .footer-bottom .socmes,
.footer-bottom .tag-yandex,
.footer-bottom .btn {
    display: none;
  }
  .footer-policies {
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .footer-policies p, .footer-policies a {
    font-size: 14px;
  }
}
@media screen and (max-width: 576px) {
  .footer-grid {
    column-gap: 16px;
    row-gap: 20px;
  }
  .footer-col {
    width: calc(50% - 8px);
  }
  .footer-col:nth-child(5) {
    padding-top: 28px;
    row-gap: 14px;
  }
  .footer-col:nth-child(5) .btn {
    width: 100%;
  }
  .footer-col:nth-child(5) .tag-yandex {
    width: 100%;
    padding-right: 2px;
  }
  .footer-col:nth-child(5) .tag-yandex-rating {
    font-size: 17px !important;
  }
  .footer-logo {
    margin-bottom: 10px;
  }
  .footer-contacts {
    row-gap: 10px;
  }
  .footer-contact {
    padding-left: 26px;
  }
  .footer-contact i {
    font-size: 20px;
  }
  .footer-contact .h5 {
    font-size: 14px;
    line-height: 20px;
  }
  .footer-address .p {
    font-size: 14px;
  }
  .footer-title {
    margin-bottom: 10px;
    font-size: 14px;
  }
  .footer-menu {
    row-gap: 8px;
  }
  .footer-menu .p {
    font-size: 12px;
    line-height: 1.2;
  }
  .footer-bottom {
    margin-top: 20px;
    padding-top: 16px;
  }
  .footer-policies {
    gap: 6px 10px;
  }
  .footer-policies p, .footer-policies a {
    font-size: 12px;
  }
  .footer .socmes {
    width: 100%;
    justify-content: space-between;
  }
}
@media screen and (max-width: 370px) {
  .footer {
    padding-top: 32px;
  }
  .footer-grid {
    column-gap: 8px;
  }
  .footer-col {
    width: calc(50% - 4px);
  }
  .footer-col:nth-child(5) .tag-yandex {
    padding: 3px 11px 3px 36px;
    height: 32px;
    min-height: 32px;
  }
  .footer-col:nth-child(5) .tag-yandex-rating {
    font-size: 13px !important;
  }
  .footer-col:nth-child(5) .tag-yandex-value {
    font-size: 11px;
  }
  .footer-col:nth-child(5) .tag-yandex::before {
    left: 11px;
    width: 20px;
  }
  .footer-logo {
    margin-bottom: 12px;
    width: 220px;
  }
  .footer-contact {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-left: 24px;
  }
  .footer-contact i {
    font-size: 18px;
  }
  .footer-contact .h5 {
    font-size: 12px;
    line-height: 18px;
  }
  .footer-address .p {
    font-size: 12px;
  }
  .footer-menu .p {
    font-size: 10px;
  }
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  max-width: 100%;
  text-align: center;
  outline: none;
  border: none;
  border-radius: 10px;
  column-gap: 12px;
  transition: all 0.3s ease;
}
.btn-primary {
  color: var(--white-color) !important;
  background-color: var(--primary-color);
}
.btn-primary:hover {
  background-color: #67B6F6;
}
.btn-primary:active {
  background-color: #3C88C8;
}
.btn-primary:disabled {
  opacity: 0.5;
  background-color: var(--primary-color) !important;
}
.btn-second {
  color: var(--white-color) !important;
  background-color: #3D8DCE;
}
.btn-second:hover {
  color: var(--text-color) !important;
  background-color: var(--white-color);
}
.btn-second:active {
  color: var(--text-color) !important;
  background-color: #DBE7FF;
}
.btn-second:disabled {
  opacity: 0.5;
  color: var(--white-color) !important;
  background-color: #3D8DCE !important;
}
.btn-third {
  color: var(--text-color) !important;
  background-color: #EFF4FF;
}
.btn-third:hover {
  background-color: var(--white-color);
}
.btn-third:active {
  background-color: #DBE7FF;
}
.btn-third:disabled {
  opacity: 0.5;
  background-color: #EFF4FF !important;
}
.btn-fourth {
  color: var(--text-color) !important;
  border: 2px solid var(--primary-color);
  background-color: transparent;
}
.btn-fourth:hover {
  border-color: #67B6F6;
}
.btn-fourth:active {
  border-color: #3C88C8;
}
.btn-fourth:disabled {
  opacity: 0.5;
  border-color: var(--primary-color);
}
.btn-rutube {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 22px !important;
  color: var(--text-color) !important;
  background-color: var(--white-color);
  position: relative;
}
.btn-rutube::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  background-image: url("../img/rutube.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.btn-rutube:hover {
  background-color: #DBE7FF;
}
.btn-rutube:active {
  background-color: #DBE7FF;
}
.btn-rutube:disabled {
  opacity: 0.5;
  background-color: #EFF4FF !important;
}
.btn-md {
  padding: 14px 32px;
  min-height: 56px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
}
.btn-md i.icon-document {
  font-size: 24px;
}

@media screen and (max-width: 1199px) {
  .btn {
    column-gap: 10px;
  }
  .btn-md {
    padding: 10px 24px;
    min-height: 48px;
    font-size: 14px;
  }
  .btn-md i.icon-document {
    font-size: 18px;
  }
}
@media screen and (max-width: 576px) {
  .btn-md {
    padding: 8px 12px;
    min-height: 44px;
    font-size: 13px;
  }
  .btn .icon-arrow {
    display: none !important;
  }
  .btn-rutube {
    padding-left: 16px !important;
  }
  .btn-rutube::before {
    width: 20px;
    height: 20px;
  }
}

.p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.6;
  color: var(--text-color);
}

.h1, .h2, .h3, .h4, .h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: var(--title-font);
  font-weight: normal;
  line-height: 1.3;
}

.h1 {
  font-size: 48px;
}

.h2 {
  font-size: 34px;
}

.h3 {
  font-size: 28px;
}

.h4 {
  font-size: 22px;
}

.h5 {
  font-size: 16px;
}

.section-heading {
  margin-bottom: 36px;
}
.section-heading.center {
  text-align: center;
}
.section-heading .h2 span {
  color: var(--primary-color);
}

@media screen and (max-width: 1199px) {
  .h1, .h2, .h3, .h4, .h5 {
    line-height: 1.2;
  }
  .h1 {
    font-size: 40px;
  }
  .h2 {
    font-size: 28px;
  }
  .h3 {
    font-size: 24px;
  }
  .h4 {
    font-size: 18px;
  }
  .h5 {
    font-size: 15px;
  }
}
@media screen and (max-width: 576px) {
  .h1 {
    font-size: 22px;
  }
  .h2 {
    font-size: 22px;
  }
  .section-heading {
    margin-bottom: 20px;
  }
}
.swiper {
  width: 100%;
  height: 100%;
}
.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-prev, .swiper-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  outline: none;
  border: none;
  border-radius: 0;
  font-weight: normal;
  color: var(--primary-color);
  background: none;
  transition: all 0.3s ease;
  cursor: pointer;
}
.swiper-prev i, .swiper-next i {
  font-size: 24px;
}
.swiper-prev.swiper-button-disabled, .swiper-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.swiper-prev.swiper-button-lock, .swiper-next.swiper-button-lock {
  display: none !important;
}
.swiper-prev i {
  transform: rotate(180deg);
}
.swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  position: static;
  width: fit-content !important;
  max-width: calc(100% - 56px - 24px);
  margin-right: 12px;
  margin-left: 12px;
  gap: 4px 8px;
}
.swiper-pagination-bullet {
  margin: 0 !important;
  width: 8px;
  height: 2px;
  opacity: 0.8;
  border-radius: 10px;
  background: rgba(78, 163, 233, 0.8);
}
.swiper-pagination-bullet:hover {
  background-color: var(--primary-color);
}
.swiper-pagination-bullet-active {
  width: 28px;
  background-color: var(--primary-color);
}
.swiper-container {
  position: relative;
}
.swiper-container .swiper-prev, .swiper-container .swiper-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.swiper-container .swiper-prev {
  left: -52px;
}
.swiper-container .swiper-next {
  right: -52px;
}
.swiper-container .swiper-pagination {
  display: none;
}

@media screen and (max-width: 1580px) {
  .swiper-prev, .swiper-next {
    width: 20px;
    height: 20px;
  }
  .swiper-prev i, .swiper-next i {
    font-size: 18px;
  }
  .swiper-pagination {
    width: fit-content !important;
    max-width: calc(100% - 20px - 24px);
  }
  .swiper-container {
    position: relative;
  }
  .swiper-container .swiper-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 14px;
  }
  .swiper-container .swiper-prev, .swiper-container .swiper-next {
    position: static;
    top: auto;
    transform: none;
  }
  .swiper-container .swiper-prev {
    left: auto;
  }
  .swiper-container .swiper-next {
    right: auto;
  }
  .swiper-container .swiper-pagination {
    display: flex;
  }
}
@media screen and (max-width: 1199px) {
  .swiper-prev, .swiper-next {
    width: 20px;
    height: 20px;
  }
  .swiper-prev i, .swiper-next i {
    font-size: 18px;
  }
  .swiper-pagination {
    transform: none !important;
    width: fit-content !important;
    max-width: calc(100% - 20px - 24px);
  }
}
.masonry-item figure .img_rollover {
    opacity: 0;
        transition: opacity .3s ease-in-out;
}
.masonry-item figure:hover .img_rollover {
    opacity: 1;
}
.accordion {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.accordion-item {
  width: 100%;
  min-height: 80px;
  padding: 24px 32px;
  border-radius: 15px;
  background-color: var(--primary-color);
  transition: background-color 0.3s ease;
}
.accordion-item:not(:last-child) {
  margin-bottom: 10px;
}
.accordion-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  cursor: pointer;
}
.accordion-header h3 {
  margin-top: auto;
  margin-bottom: auto;
  width: calc(100% - 32px);
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  color: var(--white-color);
  transition: color 0.3s ease;
}
.accordion-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  border-radius: 0;
  border: none;
  outline: none;
  background: none;
  transition: all 0.3s ease;
}
.accordion-icon::before, .accordion-icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: "icomoon";
  font-size: 24px;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  color: var(--white-color);
  transition: opacity 0.3s ease;
}
.accordion-icon::before {
  content: "\e907";
}
.accordion-icon::after {
  content: "\e906";
  color: var(--primary-color);
  opacity: 0;
}
.accordion-content {
  overflow: hidden;
  height: 0;
  transition: all 0.25s ease;
}
.accordion-content p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  color: #32384A;
}
.accordion-content p:not(:last-child) {
  margin-bottom: 16px;
}
.accordion-content ul, .accordion-content ol {
  padding-left: 24px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  color: #32384A;
}
.accordion-content ul:not(:first-child), .accordion-content ol:not(:first-child) {
  margin-top: 16px;
}
.accordion-content ul:not(:last-child), .accordion-content ol:not(:last-child) {
  margin-bottom: 16px;
}
.accordion-open {
  background-color: var(--white-color);
}
.accordion-open .accordion-header h3 {
  color: var(--primary-color);
}
.accordion-open .accordion-icon::before {
  opacity: 0;
}
.accordion-open .accordion-icon::after {
  opacity: 1;
}
.accordion-open .accordion-content {
  margin-top: 15px;
  margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
  .accordion-item {
    min-height: 64px;
    padding: 20px;
    border-radius: 10px;
  }
  .accordion-header h3 {
    width: calc(100% - 32px);
    font-size: 16px;
  }
  .accordion-icon {
    width: 24px;
    height: 24px;
  }
  .accordion-content p:not(:last-child) {
    margin-bottom: 10px;
  }
  .accordion-content ul:not(:first-child), .accordion-content ol:not(:first-child) {
    margin-top: 10px;
  }
  .accordion-content ul:not(:last-child), .accordion-content ol:not(:last-child) {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 576px) {
  .accordion-item {
    min-height: 56px;
    padding: 18px;
  }
  .accordion-header h3 {
    width: calc(100% - 28px);
  }
  .accordion-content p {
    font-size: 14px;
  }
  .accordion-content ul, .accordion-content ol {
    padding-left: 20px;
    font-size: 14px;
  }
  .accordion-open .accordion-content {
    margin-top: 10px;
  }
}
.tag-city {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  padding: 11px 14px 10px 36px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  color: var(--white-color);
  border-radius: 100px;
  background-color: #3D8DCE;
}
.tag-city::before {
  content: "\e90b";
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
  font-family: "icomoon";
  font-size: 18px;
}

.tag-yandex {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  min-height: 40px;
  color: var(--text-color);
  padding: 8px 17px 8px 48px;
  border-radius: 100px;
  background-color: var(--white-color);
}
.tag-yandex::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  width: 26px;
  height: 18px;
  background-image: url('data:image/svg+xml,<svg width="26" height="18" viewBox="0 0 26 18" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2019_665)"><path d="M10.9328 17.1717H8.07105V2.92814H6.79322C4.45181 2.92814 3.22372 4.11319 3.22372 5.86583C3.22372 7.85624 4.07688 8.7805 5.82529 9.96554L7.26762 10.9358L3.10512 17.1678H0.0100098L3.74403 11.5993C1.59391 10.0653 0.384946 8.56573 0.384946 6.03073C0.384946 2.85527 2.5848 0.699951 6.76644 0.699951H10.929V17.1678L10.9328 17.1717Z" fill="%23FC3F1D"/><g clip-path="url(%23clip1_2019_665)"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.8783 0.985229C17.6513 0.985229 17.4291 1.05016 17.2378 1.17237C17.049 1.29301 16.8981 1.4645 16.8025 1.66703L14.9866 5.33324C14.983 5.34044 14.9796 5.34772 14.9763 5.35507C14.9755 5.35689 14.9742 5.35848 14.9726 5.35966C14.971 5.36084 14.9691 5.36158 14.9671 5.3618C14.9602 5.36257 14.9532 5.36347 14.9463 5.3645L10.9478 5.95686C10.7268 5.97836 10.516 6.06129 10.3395 6.19649C10.1569 6.3364 10.0187 6.52626 9.94178 6.74308C9.86484 6.9599 9.85243 7.19438 9.90604 7.41813C9.95945 7.64099 10.0761 7.84367 10.2419 8.00181L13.1688 10.8258L13.1755 10.8321C13.1797 10.8361 13.1828 10.8409 13.1846 10.8464C13.1864 10.8518 13.1868 10.8576 13.1858 10.8632L13.1852 10.867L12.4877 14.9487C12.4494 15.17 12.4737 15.3985 12.5581 15.6065C12.6426 15.8149 12.784 15.9953 12.966 16.1273C13.148 16.2592 13.3635 16.3374 13.5877 16.353C13.8116 16.3685 14.0353 16.321 14.2335 16.216L14.2347 16.2154L17.8373 14.3114C17.8503 14.3058 17.8642 14.3028 17.8783 14.3028C17.8925 14.3028 17.9064 14.3058 17.9194 14.3114L21.5219 16.2154C21.7202 16.3207 21.9449 16.3686 22.1689 16.353C22.3932 16.3374 22.6086 16.2592 22.7907 16.1273C22.9727 15.9953 23.114 15.8149 23.1986 15.6065C23.283 15.3985 23.3074 15.1711 23.2692 14.95L23.2689 14.9487L22.5715 10.867L22.5708 10.8632C22.5698 10.8576 22.5702 10.8518 22.5721 10.8464C22.5738 10.841 22.577 10.8361 22.5811 10.8321L22.5879 10.8258L25.5148 8.00177C25.6805 7.84363 25.7972 7.64097 25.8506 7.41813C25.9042 7.19438 25.8918 6.9599 25.8148 6.74308C25.738 6.52626 25.5998 6.3364 25.4171 6.19649C25.2406 6.06129 25.0299 5.97836 24.8089 5.95686L20.8104 5.3645C20.8034 5.36347 20.7965 5.36257 20.7895 5.3618C20.7875 5.36158 20.7856 5.36084 20.784 5.35966C20.7824 5.35848 20.7811 5.35689 20.7803 5.35507C20.7771 5.34772 20.7737 5.34044 20.7701 5.33324L18.9541 1.66701C18.8585 1.46449 18.7076 1.29301 18.5188 1.17237C18.3275 1.05016 18.1053 0.985229 17.8783 0.985229Z" fill="%23F8AA01"/></g></g><defs><clipPath id="clip0_2019_665"><rect width="26" height="18" fill="white"/></clipPath><clipPath id="clip1_2019_665"><rect width="12.258" height="15.7603" fill="white" transform="translate(13.6492 0.650024)"/></clipPath></defs></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.tag-yandex-rating {
  font-size: 18px;
  font-weight: 600;
}
.tag-yandex-value {
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1px solid #DBDBDB;
  font-size: 13px;
  font-weight: normal;
}

.tag-ya-business,
.tag-ya-map {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  color: #57758D;
  transition: color 0.3s ease;
}
.tag-ya-business::before,
.tag-ya-map::before {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-top: -1px;
  margin-right: 5px;
  width: 18px;
  height: 18px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.tag-ya-business::after,
.tag-ya-map::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(calc(-50% - 1px));
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.tag-ya-business::before {
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.00001 18C13.9706 18 18 13.9705 18 9C18 4.02944 13.9706 0 9.00001 0C4.02944 0 0 4.02944 0 9C0 13.9705 4.02944 18 9.00001 18Z" fill="%234EA3E9"/><path d="M11.9033 3.8584V14.1305H10.1571V5.22894V5.20249H10.1306H9.32739C7.90289 5.20249 7.05199 5.90309 7.05199 7.07569C7.05199 8.33299 7.58324 8.91404 8.69979 9.67179L9.58664 10.2697L6.99694 14.14H5.10889L7.42554 10.6888L7.44039 10.6676L7.41919 10.6528C6.16194 9.75219 5.32479 8.81769 5.32479 7.18154C5.32479 5.10089 6.81704 3.8584 9.31784 3.8584H11.9033Z" fill="white"/></svg>');
}
.tag-ya-business::after {
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.00001 18C13.9706 18 18 13.9705 18 9C18 4.02944 13.9706 0 9.00001 0C4.02944 0 0 4.02944 0 9C0 13.9705 4.02944 18 9.00001 18Z" fill="white"/><path d="M11.9033 3.8584V14.1305H10.1571V5.22894V5.20249H10.1306H9.32739C7.90289 5.20249 7.05199 5.90309 7.05199 7.07569C7.05199 8.33299 7.58324 8.91404 8.69979 9.67179L9.58664 10.2697L6.99694 14.14H5.10889L7.42554 10.6888L7.44039 10.6676L7.41919 10.6528C6.16194 9.75219 5.32479 8.81769 5.32479 7.18154C5.32479 5.10089 6.81704 3.8584 9.31784 3.8584H11.9033Z" fill="%234EA3E9"/></svg>');
}

.tag-ya-map::before {
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 7.49439C16.5 3.23469 12.9433 -0.19521 8.6354 0.00863975C4.86207 0.18729 1.74443 3.25674 1.51431 7.02459C1.34318 9.83439 2.72165 12.3359 4.87738 13.7561C6.30314 14.6953 7.50732 15.9337 8.36115 17.4115L8.56065 17.7566C8.60348 17.8306 8.66503 17.8921 8.73914 17.9348C8.81324 17.9775 8.89729 18 8.98284 18C9.06838 18 9.15243 17.9775 9.22653 17.9348C9.30064 17.8921 9.36219 17.8306 9.40502 17.7566L9.58515 17.4452C10.4219 15.9962 11.5666 14.7331 12.9843 13.8434C15.0963 12.5182 16.5 10.1705 16.5 7.49439Z" fill="%234EA3E9"/><path d="M9.00278 10.4441C10.6326 10.4441 11.9538 9.12384 11.9538 7.49524C11.9538 5.86663 10.6326 4.54639 9.00278 4.54639C7.37298 4.54639 6.05176 5.86663 6.05176 7.49524C6.05176 9.12384 7.37298 10.4441 9.00278 10.4441Z" fill="%23FFEBED"/></svg>');
}
.tag-ya-map::after {
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 7.49439C16.5 3.23469 12.9433 -0.19521 8.6354 0.00863975C4.86207 0.18729 1.74443 3.25674 1.51431 7.02459C1.34318 9.83439 2.72165 12.3359 4.87738 13.7561C6.30314 14.6953 7.50732 15.9337 8.36115 17.4115L8.56065 17.7566C8.60348 17.8306 8.66503 17.8921 8.73914 17.9348C8.81324 17.9775 8.89729 18 8.98284 18C9.06838 18 9.15243 17.9775 9.22653 17.9348C9.30064 17.8921 9.36219 17.8306 9.40502 17.7566L9.58515 17.4452C10.4219 15.9962 11.5666 14.7331 12.9843 13.8434C15.0963 12.5182 16.5 10.1705 16.5 7.49439Z" fill="white"/><path d="M9.00278 10.4441C10.6326 10.4441 11.9538 9.12384 11.9538 7.49524C11.9538 5.86663 10.6326 4.54639 9.00278 4.54639C7.37298 4.54639 6.05176 5.86663 6.05176 7.49524C6.05176 9.12384 7.37298 10.4441 9.00278 10.4441Z" fill="%234EA3E9"/></svg>');
}

.tag-checkmark {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  color: #57758D;
  transition: color 0.3s ease;
}
.tag-checkmark::before {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-top: -1px;
  margin-right: 5px;
  width: 18px;
  height: 18px;
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2024_676)"><path d="M16.7087 8.99963C16.7086 4.74259 13.2568 1.29163 8.99976 1.29163C4.74282 1.2918 1.29192 4.74269 1.29175 8.99963C1.29175 13.2567 4.74271 16.7084 8.99976 16.7086C13.2569 16.7086 16.7087 13.2568 16.7087 8.99963ZM17.9587 8.99963C17.9587 13.9471 13.9473 17.9586 8.99976 17.9586C4.05235 17.9584 0.041748 13.947 0.041748 8.99963C0.0419238 4.05234 4.05246 0.0418017 8.99976 0.041626C13.9472 0.041626 17.9586 4.05223 17.9587 8.99963Z" fill="%23332E70"/><path d="M11.4751 6.47432C11.7191 6.23062 12.1149 6.23051 12.3588 6.47432C12.6029 6.7184 12.6029 7.11501 12.3588 7.35908L8.19185 11.5251C7.94777 11.7692 7.55214 11.7692 7.30806 11.5251L5.64107 9.85908C5.39699 9.61501 5.39699 9.2184 5.64107 8.97432C5.88514 8.73024 6.28175 8.73024 6.52583 8.97432L7.74946 10.1989L11.4751 6.47432Z" fill="%234EA3E9"/></g><defs><clipPath id="clip0_2024_676"><rect width="18" height="18" fill="white"/></clipPath></defs></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.tag-checkmark::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(calc(-50% - 1px));
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2024_676)"><path d="M16.7087 8.99963C16.7086 4.74259 13.2568 1.29163 8.99976 1.29163C4.74282 1.2918 1.29192 4.74269 1.29175 8.99963C1.29175 13.2567 4.74271 16.7084 8.99976 16.7086C13.2569 16.7086 16.7087 13.2568 16.7087 8.99963ZM17.9587 8.99963C17.9587 13.9471 13.9473 17.9586 8.99976 17.9586C4.05235 17.9584 0.041748 13.947 0.041748 8.99963C0.0419238 4.05234 4.05246 0.0418017 8.99976 0.041626C13.9472 0.041626 17.9586 4.05223 17.9587 8.99963Z" fill="white"/><path d="M11.4751 6.47432C11.7191 6.23062 12.1149 6.23051 12.3588 6.47432C12.6029 6.7184 12.6029 7.11501 12.3588 7.35908L8.19185 11.5251C7.94777 11.7692 7.55214 11.7692 7.30806 11.5251L5.64107 9.85908C5.39699 9.61501 5.39699 9.2184 5.64107 8.97432C5.88514 8.73024 6.28175 8.73024 6.52583 8.97432L7.74946 10.1989L11.4751 6.47432Z" fill="white"/></g><defs><clipPath id="clip0_2024_676"><rect width="18" height="18" fill="white"/></clipPath></defs></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.tags-checkmark {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  row-gap: 8px;
}
.tags-checkmark .tag-checkmark {
  align-items: flex-start;
  color: var(--text-color);
}
.tags-checkmark .tag-checkmark::before, .tags-checkmark .tag-checkmark::after {
  margin-top: 2px;
}

@media screen and (max-width: 576px) {
  .tag-checkmark {
    font-size: 13px;
  }
  .tag-checkmark::before {
    width: 16px;
    height: 16px;
  }
  .tag-checkmark::after {
    width: 16px;
    height: 16px;
  }
}
.table {
  width: 100%;
  min-width: 700px;
  flex-shrink: 0;
  border: none;
  margin: 0;
}
.table thead th {
  border: none;
  padding: 15px 18px;
  background: none;
  font-family: var(--title-font);
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
  color: var(--text-color);
}
.table thead tr th:first-child {
  border-radius: 15px 0 0 15px;
}
.table thead tr th:last-child {
  border-radius: 0 15px 15px 0;
}
.table tbody td {
  text-align: left;
  border: none;
  padding: 15px 16px;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.4;
  color: var(--text-color);
  vertical-align: top;
}
.table tbody tr:nth-child(odd) {
  background: var(--white-color);
}
.table tbody tr td:first-child {
  border-radius: 15px 0 0 15px;
}
.table tbody tr td:last-child {
  border-radius: 0 15px 15px 0;
}

.table2 {
  width: 100%;
  min-width: 700px;
  flex-shrink: 0;
  border: none;
  margin: 0;
}
.table2 thead th {
  border: none;
  padding: 14px;
  background: var(--white-color);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  text-align: left;
  color: var(--text-color);
}
.table2 thead tr th:first-child {
  border-radius: 15px 0 0 0;
}
.table2 thead tr th:last-child {
  border-radius: 0 15px 15px 0;
}
.table2 tbody td {
  text-align: left;
  border: none;
  padding: 14px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.3;
  color: var(--text-color);
  vertical-align: top;
}
.table2 tbody td:nth-child(1) {
  background: var(--white-color);
}
.table2 tbody tr:not(:last-child) td {
  border-bottom: 1px solid #C1CADE;
}
.table2 tbody tr:last-child td:first-child {
  border-radius: 0 0 0 15px;
}

.table-wrapper {
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: #DEE5F5 transparent;
}
@supports selector(::-webkit-scrollbar) {
  .table-wrapper::-webkit-scrollbar {
    height: 6px;
  }
  .table-wrapper::-webkit-scrollbar-track {
    background: transparent;
  }
  .table-wrapper::-webkit-scrollbar-thumb {
    background: var(--primary-color);
    border-radius: 10px;
    border: 4px solid transparent;
    background-clip: padding-box;
  }
}
.table-wrapper:not(:first-child) {
  margin-top: 50px;
}
.table-wrapper:not(:last-child) {
  margin-bottom: 50px;
}

@media screen and (max-width: 576px) {
  .table {
    min-width: 580px;
  }
  .table td {
    min-width: 100px;
    flex-shrink: 0;
  }
  .table thead th {
    padding: 10px 10px;
    font-size: 12px;
    line-height: 1.2;
  }
  .table thead tr th:first-child {
    border-radius: 10px 0 0 10px;
  }
  .table thead tr th:last-child {
    border-radius: 0 10px 10px 0;
  }
  .table tbody td {
    padding: 10px;
    font-size: 13px;
    line-height: 1.2;
  }
  .table tbody tr td:first-child {
    border-radius: 10px 0 0 10px;
  }
  .table tbody tr td:last-child {
    border-radius: 0 10px 10px 0;
  }
  .table2 {
    min-width: 640px;
    flex-shrink: 9;
  }
  .table2 thead th {
    padding: 10px;
    font-size: 12px;
  }
  .table2 thead tr th:first-child {
    border-radius: 15px 0 0 0;
  }
  .table2 thead tr th:last-child {
    border-radius: 0 15px 15px 0;
  }
  .table2 tbody td {
    padding: 10px;
    font-size: 13px;
    line-height: 1.2;
  }
  .table2 tbody tr:last-child td:first-child {
    border-bottom-left-radius: 10px;
  }
  .table-wrapper {
    width: calc(100% + var(--container-offset) * 2);
    padding-left: 16px;
    padding-right: 16px;
    margin-left: -16px;
    margin-right: -16px;
    padding-bottom: 10px;
  }
  .table-wrapper:not(:first-child) {
    margin-top: 24px;
  }
  .table-wrapper:not(:last-child) {
    margin-bottom: 24px;
  }
}
.modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  display: none;
  width: 480px;
  max-width: calc(100% - 20px);
  max-height: calc(100vh - 20px);
  padding: 32px 28px 28px;
  border-radius: 16px;
  background: var(--white-color);
  opacity: 0;
  z-index: -1;
  transition: all 0.3s ease;
}
.modal.is-active {
  display: block !important;
  opacity: 1;
  z-index: 1000;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(20, 20, 20, 0.97);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: -1;
}
.modal-backdrop.is-active {
  opacity: 1;
  z-index: 999;
}
.modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  text-align: center;
  padding: 0;
  margin: 0;
  outline: none;
  border: none;
  border-radius: 0;
  background: none;
  transition: all 0.3s ease;
  z-index: 1001;
  cursor: pointer;
}
.modal-close i {
  font-size: 28px;
  line-height: 1;
  color: var(--primary-color);
}
.modal-close:hover {
  opacity: 0.8;
}
.modal-heading {
  max-width: 340px;
}
.modal-heading:not(:last-child) {
  margin-bottom: 16px;
}
.modal-heading .h3:not(:last-child) {
  margin-bottom: 10px;
}
.modal-heading .h3 span {
  color: var(--primary-color);
}
.modal-heading .p {
  font-size: 14px;
}
.modal-media {
  width: auto !important;
  height: 75vh;
  max-height: 75vh;
  padding: 0 !important;
  background: none;
  aspect-ratio: 9/16;
}
.modal-media .modal-content {
  height: 100%;
}
.modal-media .modal-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50px;
  background: var(--white-color);
}
.modal-media .modal-close i {
  font-size: 16px;
  color: var(--text-color);
}
.modal-video-container, .modal-photo-container {
  max-width: 100%;
  height: 100%;
  overflow: hidden;
  aspect-ratio: 9/16;
  border-radius: 12px;
}
.modal-video-container video, .modal-photo-container video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.modal-video-container img, .modal-photo-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media screen and (max-width: 576px) {
  .modal {
    width: 360px;
    max-width: calc(100% - 40px);
    padding: 24px;
  }
  .modal-close {
    top: 14px;
    right: 14px;
    width: 24px;
    height: 24px;
  }
  .modal-close i {
    font-size: 24px;
  }
  .modal-heading {
    max-width: 340px;
  }
  .modal-heading:not(:last-child) {
    margin-bottom: 16px;
  }
  .modal-heading .h3:not(:last-child) {
    margin-bottom: 7px;
  }
  .modal-media .modal {
    height: 65vh;
    max-height: 65vh;
  }
  .modal-media .modal-close {
    width: 24px;
    height: 24px;
  }
  .modal-media .modal-close i {
    font-size: 14px;
  }
}
@media screen and (max-width: 370px) {
  .modal {
    max-width: calc(100% - 20px);
    padding: 20px;
  }
  .modal-close {
    top: 12px;
    right: 12px;
    width: 18px;
    height: 18px;
  }
  .modal-close i {
    font-size: 18px;
  }
  .modal-heading:not(:last-child) {
    margin-bottom: 16px;
  }
  .modal-heading .h3 {
    font-size: 20px;
  }
  .modal-heading .h3:not(:last-child) {
    margin-bottom: 4px;
  }
  .modal-heading .p {
    font-size: 12px;
    line-height: 1.3;
  }
}
/***** SECTIONS GLOBAL (Widgets) *****/
.hero {
  position: relative;
  width: 100%;
  margin-bottom: 60px;
}
.hero-swiper {
  width: 1880px;
  max-width: calc(100% - var(--container-offset) * 2);
  border-radius: 20px;
}
.hero-swiper .swiper-wrapper {
  border-radius: 20px;
}
.hero-swiper-nav {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 1880px;
  max-width: calc(100% - var(--container-offset) * 2);
  height: 100%;
  padding-left: 32px;
  padding-right: 32px;
  pointer-events: none;
  z-index: 100;
}
.hero-swiper-nav .swiper-prev, .hero-swiper-nav .swiper-next {
  color: #A7D7FF !important;
  pointer-events: all;
}
.hero-swiper-nav .swiper-prev:hover, .hero-swiper-nav .swiper-next:hover {
  color: var(--white-color) !important;
}
.hero-swiper-nav .swiper-pagination {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
}
.hero-swiper-nav .swiper-pagination-bullet {
  background-color: rgba(255, 255, 255, 0.8);
}
.hero-swiper-nav .swiper-pagination-bullet:hover, .hero-swiper-nav .swiper-pagination-bullet-active {
  background-color: var(--white-color);
}
.hero-slide {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  color: var(--white-color);
  width: 100%;
  min-height: 540px;
  padding-right: 90px;
  padding-left: 90px;
  border-radius: 20px;
  background: var(--primary-color);
}
.hero-content {
  position: relative;
  width: 880px;
  padding-top: 48px;
  padding-bottom: 60px;
  z-index: 0;
}
.hero-tags {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 20px;
}
.hero-tags .tag-yandex:not(:last-child) {
  margin-right: 20px;
}
.hero-tags .tag-city:not(:last-child) {
  margin-right: 10px;
}
.hero-title {
  margin-bottom: 28px;
}
.hero-benefit {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: calc((100% - 40px) / 3);
}
.hero-benefits {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 840px;
  max-width: 100%;
}
.hero-benefit:not(:last-child) {
  margin-right: 20px;
}
.hero-benefit img {
  display: block;
  width: 36px;
  height: auto;
  flex-shrink: 0;
  margin-right: 14px;
}
.hero-benefit p {
  font-size: 18px;
}
.hero-price {
  margin-top: 32px;
  font-size: 32px;
}
.hero-buttons {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  gap: 16px;
  margin-top: 28px;
}
.hero-creative {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 80px;
  width: 900px;
  height: 100%;
  z-index: 0;
}
.hero-creative .circles-container {
  position: absolute;
  width: 900px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  z-index: -2;
}
.hero-creative .circle {
  position: absolute;
  border: 1px solid #3D8DCE;
  border-radius: 50%;
  background: transparent;
  width: 0;
  height: 0;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  animation: expandDisappear 5s ease-out infinite;
}
.hero-creative .circle-1 {
  animation-delay: 0s;
}
.hero-creative .circle-2 {
  animation-delay: 1s;
}
.hero-creative .circle-3 {
  animation-delay: 2s;
}
.hero-creative .circle-4 {
  animation-delay: 3s;
}
.hero-creative .circle-5 {
  animation-delay: 4s;
}
@keyframes expandDisappear {
  0% {
    width: 0;
    height: 0;
    opacity: 1;
    border-width: 1px;
  }
  20% {
    opacity: 1;
    border-width: 1px;
  }
  80% {
    opacity: 0.3;
  }
  100% {
    width: 900px;
    height: 900px;
    opacity: 0;
    border-width: 0.5px;
  }
}
.hero-image {
  max-width: 640px;
  max-height: 90%;
}
.hero-slide-3 .hero-benefit:nth-child(1), .hero-slide-3 .hero-benefit:nth-child(2) {
  width: calc((100% - 40px) / 3 - 20px);
}
.hero-slide-3 .hero-benefit:nth-child(3) {
  width: calc((100% - 40px) / 3 + 40px);
}

@media screen and (max-width: 1800px) {
  .hero-creative {
    right: 40px;
    width: 600px;
  }
  .hero-creative .circles-container {
    width: 600px;
  }
  .hero-image {
    max-width: 520px;
    max-height: 80%;
  }
}
@media screen and (max-width: 1599px) {
  .hero-creative {
    width: 440px;
  }
  .hero-creative .circles-container {
    width: 440px;
  }
  .hero-image {
    max-width: 440px;
    max-height: 70%;
  }
  .hero-swiper-nav {
    padding-left: 14px;
    padding-right: 14px;
  }
}
@media screen and (max-width: 1366px) {
  .hero-creative {
    width: 340px;
  }
  .hero-creative .circles-container {
    width: 340px;
  }
  .hero-image {
    max-width: 320px;
    max-height: 60%;
  }
  .hero-benefit {
    width: calc((100% - 20px) / 3) !important;
  }
  .hero-benefits {
    width: 720px;
  }
  .hero-benefit:not(:last-child) {
    margin-right: 10px;
  }
  .hero-benefit p {
    font-size: 16px !important;
  }
  .hero-slide {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media screen and (max-width: 1199px) {
  .hero {
    padding-top: 18px;
  }
  .hero-swiper {
    border-radius: 0;
  }
  .hero-swiper-nav {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    height: auto;
    padding-left: var(--container-offset);
    padding-right: var(--container-offset);
    pointer-events: all;
    margin-top: 14px;
  }
  .hero-swiper-nav .swiper-prev, .hero-swiper-nav .swiper-next {
    color: var(--primary-color) !important;
  }
  .hero-swiper-nav .swiper-prev:hover, .hero-swiper-nav .swiper-next:hover {
    color: var(--primary-color) !important;
  }
  .hero-swiper-nav .swiper-pagination {
    position: static;
    bottom: auto;
  }
  .hero-swiper-nav .swiper-pagination-bullet {
    background-color: rgba(78, 163, 233, 0.8);
  }
  .hero-swiper-nav .swiper-pagination-bullet:hover, .hero-swiper-nav .swiper-pagination-bullet-active {
    background-color: var(--primary-color);
  }
  .hero-swiper .swiper-wrapper {
    border-radius: 0;
  }
  .hero-slide {
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    min-height: 700px;
    padding-right: 40px;
    padding-left: 40px;
  }
  .hero-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 700px;
    padding-top: 32px;
    padding-bottom: 24px;
  }
  .hero-tags {
    display: none;
  }
  .hero-title {
    margin-bottom: 20px;
    text-align: center;
  }
  .hero-benefit {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: calc((100% - 20px) / 3) !important;
  }
  .hero-benefits {
    justify-content: center;
    width: 100%;
    max-width: 630px;
  }
  .hero-benefit:not(:last-child) {
    margin-right: 10px;
  }
  .hero-benefit img {
    width: 28px;
    margin-right: 0;
    margin-bottom: 8px;
  }
  .hero-benefit p {
    font-size: 15px !important;
    text-align: center;
  }
  .hero-price {
    margin-top: 24px;
    font-size: 24px;
  }
  .hero-buttons {
    justify-content: center;
    gap: 12px;
    margin-top: 20px;
  }
  .hero-creative {
    position: static;
    width: 100%;
    height: 320px;
    pointer-events: none;
    z-index: -1;
  }
  .hero-creative .circles-container {
    width: 400px;
    height: 400px;
  }
  .hero-image {
    top: auto;
    bottom: 0;
    max-width: 340px;
    max-height: 340px;
  }
}
@media screen and (max-width: 576px) {
  .hero-slide {
    min-height: 510px;
    padding-right: 16px;
    padding-left: 16px;
    overflow: hidden;
  }
  .hero-content {
    max-width: 100%;
    padding-top: 20px;
    padding-bottom: 15px;
  }
  .hero-title {
    margin-bottom: 16px;
  }
  .hero-benefit {
    width: calc((100% - 8px) / 3) !important;
  }
  .hero-benefits {
    max-width: 100%;
  }
  .hero-benefit:not(:last-child) {
    margin-right: 4px;
  }
  .hero-benefit img {
    width: 24px;
  }
  .hero-benefit p {
    font-size: 8px !important;
  }
  .hero-price {
    margin-top: 18px;
    font-size: 22px;
  }
  .hero-buttons {
    gap: 10px;
    margin-top: 15px;
  }
  .hero-buttons .btn {
    width: calc(50% - 5px);
  }
  .hero-creative {
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
  }
  .hero-creative .circles-container {
    width: 300px;
    height: 300px;
  }
  .hero-image {
    max-width: 80%;
    max-height: 220px;
    margin-bottom: 20px;
  }
}
.services-swiper {
  border-radius: 24px;
}
.services-swiper .swiper-wrapper {
  border-radius: 24px;
}
.services-card {
  width: 100%;
  min-height: 480px;
  height: auto !important;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  position: relative;
  padding: 40px;
  border-radius: 24px;
  background-color: var(--white-color);
  transition: all 0.3s ease;
  cursor: pointer;
}
.services-card:hover {
  background-color: var(--primary-color);
}
.services-card:hover .services-card-title, .services-card:hover .services-card-title span {
  color: var(--white-color);
}
.services-card:hover .services-card-descr {
  color: var(--white-color);
}
.services-card:hover .services-card-icon path {
  fill: var(--white-color);
}
.services-card:hover .services-card-tags .tag-checkmark,
.services-card:hover .services-card-tags .tag-ya-business,
.services-card:hover .services-card-tags .tag-ya-map {
  color: var(--white-color);
}
.services-card:hover .services-card-tags .tag-checkmark::before,
.services-card:hover .services-card-tags .tag-ya-business::before,
.services-card:hover .services-card-tags .tag-ya-map::before {
  opacity: 0;
}
.services-card:hover .services-card-tags .tag-checkmark::after,
.services-card:hover .services-card-tags .tag-ya-business::after,
.services-card:hover .services-card-tags .tag-ya-map::after {
  opacity: 1;
}
.services-card:hover .services-card-features li {
  color: var(--white-color);
}
.services-card:hover .services-card-features li label span::before {
  border-color: var(--white-color);
}
.services-card:hover .services-card-features li label input:checked + span::before {
  color: var(--primary-color);
  background-color: var(--white-color);
}
.services-card:hover .services-card-price, .services-card:hover .services-card-term {
  color: var(--white-color);
}
.services-card:hover .services-card-bottom .btn {
  color: var(--text-color) !important;
  background-color: #EFF4FF;
}
.services-card:hover .services-card-bottom .btn:hover {
  background-color: var(--white-color);
}
.services-card:hover .services-card-bottom .btn:active {
  background-color: #DBE7FF;
}
.services-card:hover .services-card-bottom .p {
  color: var(--white-color);
}
.services-card-discount {
  position: absolute;
  top: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 6px 10px;
  height: 28px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  color: var(--white-color);
  border-radius: 100px;
  background-color: #E9724E;
}
.services-card-discount::before {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-right: 4px;
  width: 16px;
  height: 16px;
  background-image: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.02393 10.1983C6.41017 10.6531 5.83368 11.3626 5.8335 12.296C5.8335 13.0705 6.15958 13.513 6.54932 13.7803C6.96565 14.0658 7.4832 14.1671 7.82275 14.1671C8.09665 14.167 8.52631 14.0725 8.87549 13.7989C9.20208 13.5428 9.50049 13.098 9.50049 12.296C9.50034 11.7937 9.25069 11.4454 8.97607 11.2217C8.88457 11.5373 8.6681 11.8361 8.36475 11.9796C8.20479 12.0551 7.99906 12.0957 7.78369 12.0323C7.56465 11.9677 7.40331 11.8158 7.29834 11.6368C7.14772 11.3799 7.08652 11.0873 7.05811 10.8497C7.02914 10.6072 7.02978 10.3743 7.02979 10.2227C7.02979 10.2128 7.02552 10.2049 7.02393 10.1983ZM8.02979 10.2227C8.02979 10.3792 8.03028 10.5561 8.05127 10.7315C8.05469 10.7601 8.05971 10.7873 8.06396 10.8135C8.17084 10.5684 8.36611 10.378 8.59814 10.2774C8.8422 10.1716 9.14443 10.1595 9.41455 10.3077L9.52783 10.3809L9.70361 10.5264C10.1127 10.8946 10.5004 11.4786 10.5005 12.296C10.5005 13.3899 10.0724 14.1309 9.4917 14.586C8.93379 15.0232 8.27479 15.167 7.82275 15.1671C7.33271 15.1671 6.60458 15.0302 5.98389 14.6046C5.33683 14.1607 4.8335 13.4174 4.8335 12.296C4.83368 10.894 5.71353 9.91456 6.46533 9.36822C6.80717 9.11984 7.21796 9.1276 7.53174 9.31744C7.83458 9.50073 8.02979 9.83976 8.02979 10.2227Z" fill="white"/><path d="M1.5 8.74125C1.5 6.69011 2.58371 5.31023 3.60352 4.53227C4.02807 4.20843 4.53688 4.2031 4.93945 4.42289C5.32871 4.6355 5.60108 5.04519 5.65039 5.52641L5.70801 6.085C5.72999 6.29948 5.83952 6.47768 5.9541 6.5645C6.0079 6.60519 6.05198 6.61797 6.08105 6.62016C6.10555 6.622 6.14364 6.61877 6.2002 6.58207C6.63547 6.29921 6.96604 5.79022 7.18848 5.19145C7.40884 4.5981 7.49999 3.97788 7.5 3.55571V3.33989C7.5 2.69141 7.8298 2.13578 8.32031 1.84086C8.82116 1.53979 9.47245 1.5248 10.0283 1.9268C11.8022 3.20978 13.833 5.49718 13.833 8.74125C13.8329 11.2782 12.7433 12.9099 11.3555 13.8897C9.99344 14.8511 8.37453 15.167 7.28906 15.167C6.31515 15.167 4.8753 14.8443 3.66895 13.8711C2.44132 12.8808 1.50012 11.2516 1.5 8.74125ZM8.5 3.55571C8.49999 4.09475 8.38838 4.83253 8.12598 5.5391C7.86561 6.24017 7.43269 6.97312 6.74512 7.41996C6.25582 7.73795 5.72833 7.64715 5.35156 7.36235C4.9959 7.09336 4.76058 6.65209 4.71289 6.18657L4.65625 5.62797C4.63896 5.46015 4.54756 5.34868 4.45996 5.30082C4.38554 5.26019 4.30433 5.25524 4.20996 5.32719C3.36511 5.97169 2.5 7.0836 2.5 8.74125C2.50012 10.971 3.32098 12.3055 4.29688 13.0928C5.29421 13.8974 6.50003 14.167 7.28906 14.167C8.21843 14.167 9.62202 13.8894 10.7783 13.0733C11.9087 12.2754 12.8329 10.9442 12.833 8.74125C12.833 5.94976 11.0848 3.92588 9.44141 2.73735C9.22498 2.5809 9.00843 2.59303 8.83496 2.69731C8.6513 2.80783 8.5 3.03541 8.5 3.33989V3.55571Z" fill="white"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.services-card-icon {
  position: absolute;
  top: 40px;
  right: 40px;
  width: 48px;
  height: auto;
}
.services-card-icon path {
  transition: fill 0.3s ease;
}
.services-card-title {
  margin-bottom: 12px;
  padding-right: 50px;
  transition: color 0.3s ease;
}
.services-card-title span {
  color: #2C80C5;
  transition: color 0.3s ease;
}
.services-card-descr {
  margin-bottom: 16px;
  padding-right: 56px;
  color: #57758D;
}
.services-card-tags {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  gap: 6px 10px;
  margin-bottom: 16px;
}
.services-card-features {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 0;
  margin-bottom: 24px;
  padding-left: 0;
  list-style: none;
}
.services-card-features li:not(:last-child) {
  margin-bottom: 6px;
}
.services-card-features li label {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}
.services-card-features li label input[type=checkbox] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
.services-card-features li label span {
  position: relative;
  padding-left: 28px;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
.services-card-features li label span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border-radius: 5px;
  border: 2px solid var(--primary-color);
  background-color: transparent;
  transition: all 0.3s ease;
  box-sizing: border-box;
}
.services-card-features li label input:checked + span::before {
  content: "\e903";
  font-family: "icomoon" !important;
  font-weight: normal !important;
  text-transform: none !important;
  font-size: 16px;
  line-height: 1;
  color: var(--white-color);
  background-color: var(--primary-color);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 1px;
}
.services-card-price {
  margin-bottom: 8px;
  color: var(--secondary-color);
  transition: color 0.3s ease;
}
.services-card-term {
  margin-bottom: 24px;
  color: var(--secondary-color);
  transition: color 0.3s ease;
}
.services-card-bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  width: 100%;
}
.services-card-bottom .btn {
  width: 100%;
}
.services-card-bottom .btn:not(:last-child) {
  margin-bottom: 10px;
}
.services-card-bottom .p {
  font-size: 13px;
  color: #57758D;
}
.services-card-3 .services-card-discount {
  left: 223px;
}

@media screen and (max-width: 1199px) {
  .services-card {
    min-height: 440px;
    padding: 32px;
  }
  .services-card-discount {
    top: 30px;
    padding: 6px 10px;
    height: 28px;
    font-size: 13px;
  }
  .services-card-discount::before {
    margin-right: 4px;
    width: 16px;
    height: 16px;
  }
  .services-card-icon {
    top: 32px;
    right: 32px;
    width: 40px;
  }
  .services-card-3 .services-card-discount {
    left: 184px;
  }
}
@media screen and (max-width: 576px) {
  .services-card {
    min-height: 320px;
    padding: 20px;
  }
  .services-card-discount {
    top: 20px;
    padding: 4px 7px;
    height: 22px;
    font-size: 11px;
  }
  .services-card-discount::before {
    margin-right: 3px;
    width: 14px;
    height: 14px;
    margin-top: -1.5px;
  }
  .services-card-icon {
    top: 20px;
    right: 20px;
    width: 36px;
  }
  .services-card-title {
    margin-bottom: 10px;
  }
  .services-card-descr {
    margin-bottom: 14px;
    padding-right: 40px;
    font-size: 14px;
  }
  .services-card-tags {
    margin-bottom: 15px;
  }
  .services-card-features {
    margin-bottom: 20px;
  }
  .services-card-price {
    margin-bottom: 6px;
    font-size: 22px;
  }
  .services-card-term {
    margin-bottom: 20px;
    font-size: 12px;
  }
  .services-card-bottom .p {
    font-size: 10px;
  }
  .services-card-3 .services-card-discount {
    left: 172px;
  }
}
@media screen and (max-width: 370px) {
  .services-card {
    padding: 16px;
  }
  .services-card-discount {
    position: static;
    margin-bottom: 8px;
  }
  .services-card-icon {
    top: 16px;
    right: 16px;
    width: 28px;
  }
  .services-card-title {
    font-size: 18px;
  }
}
.projects .section-heading {
  margin-bottom: 24px;
}
.projects-swiper {
  border-radius: 10px;
}
.projects-swiper .swiper-wrapper {
  border-radius: 10px;
}
.projects-card {
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  text-align: center;
}
.projects-card-logo {
  display: block;
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 50%;
  flex-shrink: 0;
  border: 2px solid var(--white-color);
  z-index: 1;
}
.projects-card-poster {
  margin-top: -20px;
  width: 100%;
  height: auto;
  aspect-ratio: 685/383;
  object-fit: cover;
  border-radius: 10px;
  flex-shrink: 0;
}
.projects-card-title {
  margin-top: 20px;
  width: 100%;
  font-size: 18px;
  text-align: center;
  transition: color 0.3s ease;
}
.projects-card:hover .projects-card-title {
  color: var(--primary-color);
}

.clients-swiper-container {
  margin-top: 40px;
}
.clients-card {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1/1;
}
.clients-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0.5;
  filter: saturate(0);
  -webkit-filter: saturate(0);
  transition: all 0.3s ease;
}
.clients-card img:hover {
  opacity: 1;
  filter: saturate(1);
  -webkit-filter: saturate(1);
}

@media screen and (max-width: 1199px) {
  .projects {
    overflow-x: hidden;
  }
  .projects .section-heading {
    margin-bottom: 20px;
  }
  .projects-card-logo {
    width: 56px;
    height: 56px;
  }
  .projects-card-poster {
    margin-top: -28px;
  }
  .projects-card-title {
    margin-top: 16px;
    font-size: 16px;
  }
  .clients-swiper {
    overflow: unset;
  }
  .clients-swiper .swiper-wrapper {
    overflow: unset;
  }
  .clients-swiper-container {
    margin-top: 30px;
  }
  .clients-swiper-container .swiper-nav {
    display: none;
  }
  .clients-card {
    width: 100px;
    flex-shrink: 0;
  }
  .clients-card.swiper-slide-active img {
    opacity: 1;
    filter: saturate(1);
    -webkit-filter: saturate(1);
  }
}
@media screen and (max-width: 576px) {
  .projects-card-title {
    font-size: 14px;
  }
  .clients-card {
    width: 80px;
  }
}
.steps-list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  width: 100%;
  max-width: 100%;
  padding-top: 30px;
}
.steps-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: 22px 21px 22px;
  border-radius: 24px;
  background-color: var(--white-color);
  transition: all 0.3s ease;
}
.steps-card::before {
  content: "";
  position: absolute;
  top: -30px;
  left: 34px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: var(--primary-color);
}
.steps-card::after {
  content: "";
  position: absolute;
  top: -23px;
  left: 35px;
  width: calc(100% + 24px);
  height: 1px;
  border: 1px dashed var(--primary-color);
}
.steps-card:last-child::after {
  display: none;
}
.steps-card-icon {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: contain;
  flex-shrink: 0;
  margin-bottom: 15px;
}
.steps-card-title {
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.25;
}
.steps-card-term {
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: normal;
  line-height: 1.5;
  color: #687192;
}
.steps-card-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 15px;
  font-weight: normal;
  line-height: 1.5;
}

@media screen and (max-width: 1199px) {
  .steps-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
    padding-top: 0;
    padding-left: 27px;
  }
  .steps-card {
    padding: 20px;
    border-radius: 20px;
  }
  .steps-card::before {
    top: 32px;
    left: -27px;
    width: 12px;
    height: 12px;
  }
  .steps-card::after {
    top: 33px;
    left: -22px;
    width: 1px;
    height: calc(100% + 10px);
  }
}
@media screen and (max-width: 576px) {
  .steps-card {
    padding-left: 65px;
  }
  .steps-card::before {
    top: 29px;
  }
  .steps-card::after {
    top: 30px;
  }
  .steps-card-icon {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 30px;
    height: 30px;
    margin-bottom: 0;
  }
  .steps-card-term {
    font-size: 14px;
  }
  .steps-card-text {
    font-size: 14px;
  }
}
@media screen and (max-width: 374px) {
  .steps-card-title {
    margin-bottom: 5px;
    font-size: 16px;
  }
  .steps-card-term {
    margin-bottom: 5px;
  }
}
.reviews-swiper {
  border-radius: 20px;
}
.reviews-swiper .swiper-wrapper {
  border-radius: 20px;
}
.reviews-card {
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  height: auto;
  padding: 20px;
  border-radius: 20px;
  background-color: var(--white-color);
}
.reviews-card--video, .reviews-card--photo {
  padding-left: 210px;
  min-height: 360px;
}
.reviews-card-media {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 20px;
  left: 20px;
  width: 176px;
  height: calc(100% - 40px);
  border-radius: 10px;
  overflow: hidden;
  cursor: pointer;
}
.reviews-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reviews-card-media i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  font-size: 28px;
  color: var(--white-color) !important;
}
.reviews-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 12px;
}
.reviews-card-name {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 12px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.reviews-card-rating {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-left: auto;
  gap: 5px;
  flex-shrink: 0;
}
.reviews-card-rating i {
  font-size: 15px;
  color: #F8AA01;
}
.reviews-card-rating span {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
}
.reviews-card-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.6;
  display: inline-block;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.reviews-card-text:not(:last-child) {
  margin-bottom: 12px;
}
.reviews-card-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: auto;
}
.reviews-card-link::before {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-right: 8px;
  width: 20px;
  height: 22px;
  background-image: url('data:image/svg+xml,<svg width="22" height="26" viewBox="0 0 22 26" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2029_521)"><path d="M21.4078 10.9089C21.4078 4.99262 16.4716 0.228875 10.4928 0.512C5.25595 0.760125 0.929074 5.02325 0.609699 10.2564C0.372199 14.1589 2.28532 17.6332 5.2772 19.6057C7.25595 20.9101 8.9272 22.6301 10.1122 24.6826L10.3891 25.162C10.4485 25.2648 10.5339 25.3501 10.6368 25.4094C10.7396 25.4688 10.8563 25.5 10.975 25.5C11.0937 25.5 11.2104 25.4688 11.3132 25.4094C11.4161 25.3501 11.5015 25.2648 11.5609 25.162L11.8109 24.7295C12.9722 22.717 14.5609 20.9626 16.5284 19.727C19.4597 17.8864 21.4078 14.6257 21.4078 10.9089Z" fill="url(%23paint0_linear_2029_521)"/><path d="M11 16.5342C14.1066 16.5342 16.625 14.0158 16.625 10.9092C16.625 7.80258 14.1066 5.28418 11 5.28418C7.8934 5.28418 5.375 7.80258 5.375 10.9092C5.375 14.0158 7.8934 16.5342 11 16.5342Z" fill="url(%23paint1_linear_2029_521)"/><path d="M11.0019 15.0057C13.2638 15.0057 15.0975 13.172 15.0975 10.9101C15.0975 8.64813 13.2638 6.81445 11.0019 6.81445C8.73992 6.81445 6.90625 8.64813 6.90625 10.9101C6.90625 13.172 8.73992 15.0057 11.0019 15.0057Z" fill="%23FFEBED"/></g><defs><linearGradient id="paint0_linear_2029_521" x1="0.589844" y1="0.5" x2="21.4078" y2="0.5" gradientUnits="userSpaceOnUse"><stop stop-color="%23FF6B69"/><stop offset="1" stop-color="%23FF1036"/></linearGradient><linearGradient id="paint1_linear_2029_521" x1="14.9756" y1="14.6917" x2="7.32125" y2="7.40855" gradientUnits="userSpaceOnUse"><stop stop-color="%23FF6B69"/><stop offset="1" stop-color="%23FF1036"/></linearGradient><clipPath id="clip0_2029_521"><rect width="22" height="26" fill="white"/></clipPath></defs></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.reviews-card-link span {
  font-size: 14px;
  font-weight: normal;
  line-height: 1.3;
  color: var(--primary-color);
  transition: color 0.3s ease;
}
.reviews-card-link:hover span {
  text-decoration: underline;
  color: #3D8DCE;
}

@media screen and (max-width: 576px) {
  .reviews-card {
    padding: 16px;
  }
  .reviews-card--video, .reviews-card--photo {
    padding-left: 140px;
    min-height: 240px;
  }
  .reviews-card-media {
    top: 16px;
    left: 16px;
    width: 110px;
    height: calc(100% - 32px);
  }
  .reviews-card-media i {
    font-size: 20px;
  }
  .reviews-card-head {
    margin-bottom: 10px;
  }
  .reviews-card-name {
    margin-right: 8px;
    font-size: 16px;
    line-height: 1.3;
  }
  .reviews-card-rating {
    gap: 4px;
  }
  .reviews-card-rating i {
    font-size: 14px;
  }
  .reviews-card-rating span {
    font-size: 16px;
    line-height: 1.3;
  }
  .reviews-card-text {
    font-size: 14px;
    line-height: 1.4;
  }
  .reviews-card-text:not(:last-child) {
    margin-bottom: 10px;
  }
  .reviews-card-link::before {
    margin-right: 5px;
    width: 16px;
    height: 18px;
  }
  .reviews-card-link span {
    font-size: 12px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 374px) {
  .reviews-card {
    padding: 12px;
  }
  .reviews-card--video, .reviews-card--photo {
    padding-left: 100px;
    min-height: 180px;
  }
  .reviews-card-media {
    top: 12px;
    left: 12px;
    width: 80px;
    height: calc(100% - 24px);
  }
  .reviews-card-media i {
    font-size: 18px;
  }
  .reviews-card-head {
    margin-bottom: 8px;
  }
  .reviews-card-name {
    font-size: 12px;
  }
  .reviews-card-rating span {
    font-size: 15px;
  }
  .reviews-card-text {
    font-size: 12px;
  }
  .reviews-card-link::before {
    width: 15px;
    height: 17px;
  }
  .reviews-card-link span {
    font-size: 10.5px;
  }
}
.head {
  padding-top: 8px;
}
.head-container {
  width: 930px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.head-title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  column-gap: 20px;
}
.head-title:not(:last-child) {
  margin-bottom: 20px;
}
.head-title .tag-yandex {
  flex-shrink: 0;
}
.head-title .h2 {
  max-width: calc(100% - 186px);
}
.head-description span {
  color: var(--primary-color);
}
.head-description p {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.5;
  text-align: justify;
}
.head-description p:not(:last-child) {
  margin-bottom: 20px;
}
.head-tabs {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  padding: 15px;
  gap: 14px;
  border-radius: 15px;
  background: var(--white-color);
}
.head-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  max-width: 100%;
  padding: 12px 22px;
  min-height: 54px;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.2;
  text-align: center;
  color: var(--text-color) !important;
  outline: none;
  border: none;
  border-radius: 10px;
  background-color: #eff4ff;
  transition: all 0.3s ease;
}
.head-tabs a:hover {
  color: var(--white-color) !important;
  background-color: #4EA3E9;
}
.head-tabs a:active,.head-tabs a.active {
  color: var(--white-color) !important;
  background-color: #3C88C8;
}
.head .services {
  margin-top: 68px;
}
.head .services:not(:last-child) {
  margin-bottom: 30px;
}
.head-service-values {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  width: 100%;
  max-width: 100%;
}
.head-service-values-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 28px 20px 30px;
  text-align: center;
  border-radius: 20px;
  background-color: var(--white-color);
}
.head-service-values-card .h1 {
  font-size: 40px;
  color: var(--primary-color);
}
.head-service-values-card .p {
  color: #2f2f2f;
}

.single-service .head-title {
  justify-content: flex-start;
}
.single-service .services-card-tags {
  flex-direction: column;
}

.archive-portfolio .head,
.archive-news .head,
.single-portfolio .head {
  margin-bottom: 40px;
}

.single-news .head {
  margin-bottom: 20px;
}

@media screen and (max-width: 1199px) {
  .head {
    padding-top: 20px;
  }
  .head-container {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .head-title {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    column-gap: 0;
    row-gap: 20px;
  }
  .head-title:not(:last-child) {
    margin-bottom: 10px;
  }
  .head-title .h2 {
    max-width: 100%;
  }
  .head-description p {
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    text-align: left;
  }
  .head-description p:not(:last-child) {
    margin-bottom: 16px;
  }
  .head-tabs {
    justify-content: flex-start;
    margin-top: 20px;
    gap: 10px;
  }
  .head-tabs a {
    padding: 10px 18px;
    min-height: 48px;
    font-size: 14px;
  }
  .head .services {
    margin-top: 60px;
  }
  .head .services:not(:last-child) {
    margin-bottom: 60px;
  }
  .head-service-values {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .head-service-values-card .h1 {
    font-size: 32px;
  }
}
@media screen and (max-width: 576px) {
  .head-description p {
    font-size: 14px;
  }
  .head-description p:not(:last-child) {
    margin-bottom: 14px;
  }
  .head-tabs {
    width: 100%;
    flex-direction: column;
    margin-top: 16px;
    gap: 8px;
  }
  .head-tabs a {
    width: 100%;
    padding: 8px 12px;
    min-height: 44px;
    font-size: 13px;
  }
  .head-service-values {
    gap: 14px;
  }
  .head-service-values-card {
    align-items: center;
    justify-content: center;
    min-height: 104px;
    padding: 20px 10px;
  }
  .head-service-values-card .h1 {
    font-size: 20px;
  }
  .head-service-values-card .p {
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.3;
  }
  .archive-portfolio .head,
.archive-news .head,
.single-portfolio .head {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 370px) {
  .head-description p {
    font-size: 13px;
  }
  .head-tabs {
    margin-top: 10px;
    padding: 10px;
  }
  .head-tabs a {
    min-height: 40px;
    font-size: 12px;
  }
  .head-service-values {
    gap: 10px;
  }
  .head-service-values-card {
    min-height: 88px;
  }
  .head-service-values-card .h1 {
    font-size: 18px;
  }
}
.article-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  row-gap: 40px;
  padding: 40px;
  border-radius: 24px;
  background: var(--white-color);
}
.article-head {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.article-head-icon {
  display: block;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  object-fit: contain;
  margin-right: 15px;
}
.article-head-inner {
  width: 100%;
}
.article-head-inner .h3 span {
  color: var(--primary-color);
}
.article-head-inner .p {
  margin-top: 10px;
  max-width: 1060px;
  font-size: 20px;
}
.article-section {
  width: 100%;
}
.article-section .h4:not(:last-child) {
  margin-bottom: 20px;
}
.article-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.article-bottom-left {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.article-bottom-right {
  flex-shrink: 0;
  margin-left: 24px;
}
.article-bottom-chars {
  display: flex;
  flex-direction: column;
  row-gap: 2px;
}
.article-bottom-chars .h3, .article-bottom-chars .h5 {
  color: var(--secondary-color);
}

.comp1-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 100%;
}
.comp1-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  padding: 24px;
  border-radius: 20px;
  background-color: #EFF4FF;
  transition: all 0.3s ease;
}
.comp1-card img {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: contain;
  flex-shrink: 0;
  margin-bottom: 15px;
}
.comp1-card .h5 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
}
.comp1-card .h5 span {
  color: var(--primary-color);
}
.comp1-card .p {
  line-height: 1.5;
}
.comp2-tags {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  list-style: none;
  row-gap: 6px;
}
.comp2-tags .tag-checkmark {
  align-items: flex-start;
  color: var(--text-color);
}
.comp2-tags .tag-checkmark::before, .comp2-tags .tag-checkmark::after {
  margin-top: 2px;
}
.comp3-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 100%;
}
.comp3-card {
  display: flex;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding: 20px;
  border-radius: 20px;
  background-color: #EFF4FF;
  transition: all 0.3s ease;
}
.comp3-card img {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: contain;
  flex-shrink: 0;
  margin-right: 15px;
}
.comp3-card .p {
  line-height: 1.5;
}
.comp4 {
  position: relative;
  width: 100%;
  min-height: 240px;
  padding: 30px;
  border-radius: 20px;
  background: #EFF4FF;
  z-index: 0;
}
.comp4 .checkboxes {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  row-gap: 8px;
}
.comp4 .checkboxes label {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}
.comp4 .checkboxes label input[type=checkbox] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
.comp4 .checkboxes label span {
  position: relative;
  padding-left: 28px;
  font-size: 16px;
  font-weight: normal;
  line-height: 20px;
}
.comp4 .checkboxes label span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border-radius: 5px;
  border: 2px solid var(--primary-color);
  background-color: transparent;
  transition: all 0.3s ease;
  box-sizing: border-box;
}
.comp4 .checkboxes label input:checked + span::before {
  content: "\e903";
  font-family: "icomoon" !important;
  font-weight: normal !important;
  text-transform: none !important;
  font-size: 16px;
  line-height: 1;
  color: var(--white-color);
  background-color: var(--primary-color);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.comp4-creative {
  position: absolute;
  top: 44px;
  right: 40px;
  width: 450px;
  height: auto;
  z-index: -1;
}
.comp5 {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 30px;
  border-radius: 15px;
  background: var(--white-color);
}
.comp5-icon {
  width: 56px;
  height: 56px;
  object-fit: cover;
  flex-shrink: 0;
  border-radius: 10px;
  margin-right: 20px;
}
.comp5-text {
  width: 100%;
}

@media screen and (max-width: 1199px) {
  .article .container {
    padding: 0;
  }
  .article-wrapper {
    padding: 60px 20px;
    border-radius: 0;
  }
  .article-head-icon {
    display: none;
  }
  .article-head-inner .p {
    margin-top: 10px;
    max-width: 100%;
    font-size: 16px;
  }
  .article-bottom {
    justify-content: center;
    flex-direction: column;
  }
  .article-bottom .btn {
    width: 100%;
  }
  .article-bottom-left {
    justify-content: center;
    flex-direction: column-reverse;
  }
  .article-bottom-right {
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
  }
  .article-bottom-chars {
    text-align: center;
    margin-bottom: 15px;
  }
  .comp1-cards {
    grid-template-columns: repeat(1, 1fr);
  }
  .comp1-card {
    position: relative;
    padding: 20px;
    border-radius: 20px;
  }
  .comp1-card img {
    position: absolute;
    top: 20px;
    left: 20px;
    margin-bottom: 0;
  }
  .comp1-card .h5 {
    padding-left: 55px;
    min-height: 40px;
  }
  .comp3-cards {
    grid-template-columns: repeat(1, 1fr);
  }
  .comp4 {
    min-height: auto;
    padding: 20px;
  }
  .comp4-creative {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .article-head-inner .p {
    font-size: 14px;
  }
  .comp4 {
    min-height: auto;
    padding: 20px;
  }
  .comp4-creative {
    display: none;
  }
  .comp5 {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    padding: 20px;
  }
  .comp5-icon {
    width: 48px;
    height: 48px;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .comp5-text {
    font-size: 14px;
  }
}
.cta-wrapper {
  position: relative;
  padding: 50px 50% 50px 60px;
  width: 100%;
  min-height: 370px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--primary-color);
  z-index: 0;
}
.cta-wrapper > .h2 {
  margin-bottom: 12px;
  color: var(--white-color);
}
.cta-wrapper > .p {
  margin-bottom: 20px;
  max-width: 400px;
  color: var(--white-color);
}
.cta-creative {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 45%;
  z-index: -1;
}
.cta .form {
  column-gap: 20px;
}
.cta .form-group {
  width: calc(50% - 10px);
  margin-bottom: 24px;
}
.cta .form-group--submit {
  margin-top: 0;
  margin-bottom: 0;
}
.cta .form-accept {
  margin-bottom: 0;
}
.cta .form .btn-third {
  color: var(--primary-color) !important;
}

@media screen and (max-width: 1199px) {
  .cta-wrapper {
    padding: 32px 50% 32px 32px;
    min-height: 320px;
  }
  .cta .form {
    column-gap: 14px;
  }
  .cta .form-group {
    width: calc(50% - 7px);
    margin-bottom: 16px;
  }
  .cta .form-group--submit {
    margin-bottom: 0;
  }
  .cta .form-accept {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 800px) {
  .cta-wrapper {
    padding: 24px;
    min-height: 320px;
  }
  .cta-wrapper > .h2 {
    margin-bottom: 8px;
  }
  .cta-wrapper > .p {
    font-size: 14px;
  }
  .cta-creative {
    position: static;
    width: calc(100% + 48px);
    max-width: calc(100% + 48px);
    margin-left: -24px;
    margin-bottom: -24px;
    margin-top: 16px;
  }
  .cta .form {
    column-gap: 0;
  }
  .cta .form-group {
    width: 100%;
    margin-bottom: 10px;
  }
  .cta .form-accept {
    margin-top: 6px;
    margin-bottom: 0;
  }
  .cta .form-accept .checkbox-accept {
    max-width: 500px;
  }
}
.a-portfolio-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px 30px;
  width: 100%;
  max-width: 100%;
}
.a-portfolio .link-center .btn {
  width: 256px;
  max-width: 100%;
}

@media screen and (max-width: 576px) {
  .a-portfolio-cards {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
  .a-portfolio .link-center {
    margin-top: 30px;
  }
  .a-portfolio .link-center .btn {
    width: 100%;
  }
}
.s-portfolio-main {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  column-gap: 30px;
}
.s-portfolio-main-slider {
  width: calc(50% - 15px);
}
.s-portfolio-main-slider .h2 {
  display: none;
}
.s-portfolio-main-info {
  display: flex;
  flex-direction: column;
  width: calc(50% - 15px);
}
.s-portfolio-main-info .h2 {
  margin-bottom: 20px;
}
.s-portfolio-main-info-group {
  width: 100%;
}
.s-portfolio-main-info-group:not(:last-child) {
  margin-bottom: 15px;
}
.s-portfolio-main-info-group .h4 {
  margin-bottom: 4px;
}
.s-portfolio-main-info-techs {
  list-style: none;
  padding: 0;
  margin: 0 0 25px 0;
}
.s-portfolio-main-info-techs li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.s-portfolio-main-info-techs li:not(:last-child) {
  margin-bottom: 12px;
}
.s-portfolio-main-info-techs li img {
  display: block;
  flex-shrink: 0;
  margin-right: 8px;
  width: 28px;
  height: 28px;
  object-fit: contain;
}
.s-portfolio-main-info-buttons {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  max-width: 100%;
  margin-top: auto;
}
.s-portfolio-main-info-buttons .btn-md {
  padding-right: 28px;
  padding-left: 28px;
}
.s-portfolio-details {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  width: 100%;
  max-width: 100%;
  margin-top: 50px;
}
.s-portfolio-details-group {
  width: 100%;
  padding: 30px;
  border-radius: 15px;
  background: var(--white-color);
}
.s-portfolio-details-group .h3 {
  margin-bottom: 15px;
}
.s-portfolio-values {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 15px;
  width: 100%;
  max-width: 100%;
  margin-top: 30px;
}
.s-portfolio-values-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 30px 8px;
  text-align: center;
  border-radius: 20px;
  background-color: var(--white-color);
}
.s-portfolio-values-card .h2 {
  color: var(--primary-color);
}
.s-portfolio-values-card .p {
  margin-top: 4px;
  line-height: 1.3;
  color: #2f2f2f;
}

.first-swiper .swiper-slide,
.second-swiper .swiper-slide {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.first-swiper .swiper-slide img,
.second-swiper .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.first-swiper {
  border-radius: 10px;
  height: 450px;
}
.first-swiper .swiper-wrapper {
  border-radius: 10px;
}
.first-swiper-container {
  position: relative;
}
.first-swiper-container .btn {
  position: absolute;
  bottom: 20px;
  right: 20px;
  box-shadow: 6px 6px 16px rgba(0, 0, 0, 0.35);
  z-index: 110;
}

.second-swiper {
  border-radius: 4px;
}
.second-swiper-container {
  position: relative;
  display: flex;
  width: 100%;
  height: 130px;
  margin-top: 20px;
  padding-right: 30px;
  padding-left: 30px;
}
.second-swiper-container .swiper-prev, .second-swiper-container .swiper-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
}
.second-swiper-container .swiper-prev i, .second-swiper-container .swiper-next i {
  font-size: 18px;
}
.second-swiper-container .swiper-prev {
  left: -4px;
}
.second-swiper-container .swiper-next {
  right: -4px;
}
.second-swiper .swiper-wrapper {
  border-radius: 4px;
}
.second-swiper .swiper-slide {
  opacity: 0.8;
}
.second-swiper .swiper-slide img {
  border-radius: 4px;
}
.second-swiper .swiper-slide-thumb-active {
  opacity: 1;
}

@media screen and (max-width: 1199px) {
  .s-portfolio-main {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    column-gap: 0;
    row-gap: 24px;
  }
  .s-portfolio-main-slider {
    width: 100%;
  }
  .s-portfolio-main-slider .h2 {
    display: block;
    margin-bottom: 20px;
  }
  .s-portfolio-main-info {
    width: 100%;
  }
  .s-portfolio-main-info .h2 {
    display: none;
  }
  .s-portfolio-main-info-buttons .btn-md {
    padding-right: 24px;
    padding-left: 24px;
  }
  .s-portfolio-details {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
  .s-portfolio-values {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 576px) {
  .s-portfolio-main {
    row-gap: 20px;
  }
  .s-portfolio-main-info-group .p {
    font-size: 14px;
  }
  .s-portfolio-main-info-techs {
    margin-bottom: 20px;
  }
  .s-portfolio-main-info-techs li .h5 {
    font-size: 14px;
  }
  .s-portfolio-main-info-buttons {
    flex-direction: column;
  }
  .s-portfolio-main-info-buttons .btn-md {
    width: 100%;
    padding-right: 16px;
    padding-left: 16px;
  }
  .s-portfolio-details {
    gap: 10px;
  }
  .s-portfolio-details-group {
    padding: 20px;
  }
  .s-portfolio-details-group .h3 {
    font-size: 16px;
  }
  .s-portfolio-values {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 50px;
  }
  .s-portfolio-values-card {
    align-items: center;
    justify-content: center;
    padding: 20px 8px;
    border-radius: 15px;
  }
  .s-portfolio-values-card .h2 {
    font-size: 20px;
  }
  .s-portfolio-values-card .p {
    font-size: 12px;
  }
  .first-swiper {
    height: 200px;
  }
  .first-swiper-container .btn {
    display: none;
  }
  .second-swiper-container {
    height: 96px;
    margin-top: 10px;
    padding-right: 17px;
    padding-left: 17px;
  }
  .second-swiper-container .swiper-prev, .second-swiper-container .swiper-next {
    width: 16px;
    height: 16px;
  }
  .second-swiper-container .swiper-prev i, .second-swiper-container .swiper-next i {
    font-size: 14px;
  }
  .second-swiper-container .swiper-prev {
    left: -2px;
  }
  .second-swiper-container .swiper-next {
    right: -2px;
  }
}
.a-news-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px 30px;
  width: 100%;
  max-width: 100%;
}
.a-news .link-center .btn {
  width: 256px;
  max-width: 100%;
}

.news-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  padding: 20px;
  border-radius: 20px;
  background-color: var(--white-color);
  transition: all 0.3s ease;
}
.news-card-thumb {
  position: relative;
  width: 100%;
  height: 220px;
  border-radius: 15px;
  overflow: hidden;
  margin-bottom: 13px;
}
.news-card-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}
.news-card-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: calc(100% - 233px);
}
.news-card-date {
  display: block;
  margin-bottom: 14px;
  font-weight: 800;
  line-height: 1.2;
  color: #697192;
}
.news-card-title {
  margin-bottom: 12px;
}
.news-card-descr {
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #697192;
}
.news-card-author {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: auto;
}
.news-card-author-icon {
  display: block;
  width: 30px;
  height: 30px;
  background-image: url("../img/author-photo.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  flex-shrink: 0;
  margin-right: 10px;
  border-radius: 50%;
}
.news-card-author-name {
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 10px;
  display: block;
  line-height: 1;
  color: #697192;
}
.news-card-author .socmes {
  gap: 8px;
}
.news-card-author .socmes a {
  width: 30px;
  height: 30px;
}
.news-card-author .socmes a img {
  width: 18px;
  height: 18px;
}
.news-card-link {
  display: inline-flex;
  width: fit-content;
  margin-top: 15px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: underline;
  color: #0173C4 !important;
  transition: opacity 0.3s ease;
}
.news-card-link:hover {
  text-decoration: none;
  opacity: 0.8;
}

@media screen and (max-width: 1199px) {
  .a-news-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
}
@media screen and (max-width: 576px) {
  .a-news-cards {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
  .a-news .link-center {
    margin-top: 30px;
  }
  .a-news .link-center .btn {
    width: 100%;
  }
  .news-card {
    padding: 15px;
    border-radius: 15px;
  }
  .news-card-thumb {
    height: 200px;
    margin-bottom: 10px;
  }
  .news-card-content {
    height: auto;
  }
  .news-card-date {
    font-size: 12px;
  }
  .news-card-title {
    margin-bottom: 8px;
    font-size: 16px;
  }
  .news-card-descr {
    margin-bottom: 14px;
    font-size: 14px;
    line-height: 1.4;
  }
  .news-card-author {
    margin-top: 0;
    flex-wrap: wrap;
    row-gap: 10px;
  }
  .news-card-author-name {
    max-width: 68px;
    font-size: 12px;
    line-height: 1.1;
  }
  .news-card-author .socmes {
    gap: 6px;
  }
  .news-card-link {
    font-size: 12px;
  }
}
@media screen and (max-width: 370px) {
  .news-card {
    padding: 12px;
  }
  .news-card-thumb {
    height: 160px;
    border-radius: 12px;
  }
  .news-card-thumb img {
    border-radius: 12px;
  }
  .news-card-title {
    font-size: 14px;
  }
  .news-card-descr {
    font-size: 12px;
  }
  .news-card-author-icon {
    width: 26px;
    height: 26px;
    margin-right: 5px;
  }
  .news-card-author-name {
    max-width: 54px;
    font-size: 10px;
  }
  .news-card-author .socmes {
    gap: 3px;
  }
  .news-card-author .socmes a {
    width: 26px;
    height: 26px;
  }
  .news-card-author .socmes a img {
    width: 14px;
    height: 14px;
  }
}
.s-news-top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  margin-bottom: 40px;
  column-gap: 20px;
}
.s-news-top-left .h2:not(:last-child) {
  margin-bottom: 20px;
}
.s-news-top-left .news-card-author {
  margin-top: 0;
}
.s-news-top-left .news-card-author-name {
  margin-right: 15px;
}
.s-news-top-left .news-card-author .socmes {
  gap: 10px;
}
.s-news-top-left .news-card-author .socmes a {
  background-color: var(--white-color);
  width: 34px;
  height: 34px;
}
.s-news-top-left .news-card-author .socmes a img {
  width: 20px;
  height: 20px;
}
.s-news-top-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-shrink: 0;
}
.s-news-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 40px;
}
.s-news-head-content {
  width: calc(50% - 15px);
}
.s-news-head-thumbnail {
  width: calc(50% - 15px);
  height: auto;
  min-height: 430px;
  border-radius: 15px;
  object-fit: cover;
}
.s-news-container {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  column-gap: 30px;
}
.s-news-container .s-news-article {
  width: calc(66.66% - 15px);
}
.s-news-container .sidebar {
  width: calc(33.34% - 15px);
}
.s-news-article h2, .s-news-article h3, .s-news-article h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: var(--title-font);
  font-weight: normal;
  line-height: 1.3;
}
.s-news-article h2 {
  font-size: 28px;
}
.s-news-article h2:not(:first-child) {
  margin-top: 50px;
}
.s-news-article h2:not(:last-child) {
  margin-bottom: 20px;
}
.s-news-article h3 {
  font-size: 22px;
}
.s-news-article h3:not(:first-child) {
  margin-top: 40px;
}
.s-news-article h3:not(:last-child) {
  margin-bottom: 20px;
}
.s-news-article h4 {
  font-size: 16px;
}
.s-news-article p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.6;
  color: var(--text-color);
}
.s-news-article p:not(:last-child) {
  margin-bottom: 20px;
}
.s-news-article a {
  text-decoration: underline;
  color: #0173C4;
  transition: opacity 0.3s ease;
}
.s-news-article a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.s-news-article .comp2-tags {
  margin-top: 20px;
  margin-bottom: 50px;
}

.sidebar {
  display: flex;
  flex-direction: column;
}
.sidebar .h3 {
  margin-bottom: 20px;
}
.sidebar-services {
  display: flex;
  flex-direction: column;
  width: 100%;
  row-gap: 10px;
}
.sidebar-service {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 20px;
  border-radius: 20px;
  background-color: var(--white-color);
}
.sidebar-service .h4 {
  margin-bottom: 15px;
}
.sidebar-service .h4 span {
  color: var(--primary-color);
}
.sidebar-service-tags {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.sidebar-service-tags .tag-checkmark {
  flex-wrap: wrap;
  color: var(--text-color);
}
.sidebar-service-link {
  display: inline-flex;
  width: fit-content;
  margin-top: 15px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: underline;
  color: #0173C4 !important;
  transition: opacity 0.3s ease;
}
.sidebar-service-link:hover {
  text-decoration: none;
  opacity: 0.8;
}

@media screen and (max-width: 1199px) {
  .s-news-top {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    margin-bottom: 20px;
    column-gap: 0;
    row-gap: 20px;
  }
  .s-news-top-left .news-card-author-name {
    margin-right: 10px;
  }
  .s-news-top-left .news-card-author .socmes {
    gap: 8px;
  }
  .s-news-top-left .news-card-author .socmes a {
    width: 30px;
    height: 30px;
  }
  .s-news-top-left .news-card-author .socmes a img {
    width: 18px;
    height: 18px;
  }
  .s-news-top-right {
    width: 100%;
    justify-content: center;
    flex-direction: column;
    row-gap: 5px;
  }
  .s-news-top-right .btn {
    width: 100%;
  }
  .s-news-head {
    justify-content: flex-start;
    flex-direction: column-reverse;
    margin-bottom: 40px;
  }
  .s-news-head-content {
    margin-top: 24px;
    width: 100%;
  }
  .s-news-head-thumbnail {
    width: 100%;
    min-height: auto;
    aspect-ratio: 69/43;
  }
  .s-news-container {
    column-gap: 0;
    justify-content: flex-start;
    flex-direction: column;
  }
  .s-news-container .s-news-article {
    width: 100%;
  }
  .s-news-container .sidebar {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .s-news-top-left .news-card-author {
    margin-top: 0;
    flex-wrap: wrap;
    row-gap: 10px;
  }
  .s-news-top-left .news-card-author-name {
    max-width: 68px;
    font-size: 12px;
    line-height: 1.1;
  }
  .s-news-top-left .news-card-author .socmes {
    gap: 6px;
  }
  .s-news-head {
    margin-bottom: 20px;
  }
  .s-news-head-content {
    margin-top: 20px;
  }
  .s-news-article h2, .s-news-article h3, .s-news-article h4 {
    line-height: 1.2;
  }
  .s-news-article h2 {
    font-size: 20px;
  }
  .s-news-article h2:not(:first-child) {
    margin-top: 20px;
  }
  .s-news-article h2:not(:last-child) {
    margin-bottom: 10px;
  }
  .s-news-article h3 {
    font-size: 16px;
  }
  .s-news-article h3:not(:first-child) {
    margin-top: 20px;
  }
  .s-news-article h3:not(:last-child) {
    margin-bottom: 10px;
  }
  .s-news-article h4 {
    font-size: 14px;
  }
  .s-news-article p {
    font-size: 14px;
  }
  .s-news-article p:not(:last-child) {
    margin-bottom: 12px;
  }
  .s-news-article .comp2-tags {
    margin-top: 10px;
    margin-bottom: 28px;
  }
}
@media screen and (max-width: 370px) {
  .s-news-top-left .news-card-author-icon {
    width: 26px;
    height: 26px;
    margin-right: 5px;
  }
  .s-news-top-left .news-card-author-name {
    max-width: 54px;
    font-size: 10px;
  }
  .s-news-top-left .news-card-author .socmes {
    gap: 3px;
  }
  .s-news-top-left .news-card-author .socmes a {
    width: 26px;
    height: 26px;
  }
  .s-news-top-left .news-card-author .socmes a img {
    width: 14px;
    height: 14px;
  }
}
.similar-swiper {
  border-radius: 20px;
}
.similar-swiper .swiper-wrapper {
  border-radius: 20px;
}
.similar-swiper .swiper-slide {
  height: auto !important;
}