@charset "UTF-8";

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
  user-select: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  /* 3 */
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body img {
  height: auto;
}

body,
html {
  width: 100%;
  max-width: 100%;
}

body {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.2;
  overflow-x: hidden;
  overflow-y: auto;
  font-variant-numeric: lining-nums;
  -webkit-font-smoothing: antialiased;
  position: relative;
  background: #000;
  color: rgba(255, 255, 255, 0.8);
}

body.modal--opened {
  position: fixed;
  left: 0;
  right: 0;
}

body * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

main {
  overflow: hidden;
}

main.th-main-page {
  padding-top: 142px;
}

.th-no-support-webp main::after {
  background-image: url("../img/body-bg.jpg");
}

main::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 1200px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.__hidden {
  display: none !important;
}

.__neue-machina {
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
  color: #fff;
}

.th-typography-section h2,
.th-typography-section .h2 {
  font-size: 90px;
  line-height: 1.1;
  margin: 0;
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
}

.th-typography-section h2 i,
.th-typography-section .h2 i {
  font-style: normal;
}

.th-typography-section h3,
.th-typography-section .h3 {
  font-size: 36px;
  font-weight: 500;
  margin: 0;
  line-height: 1.1;
}

.wp-img-wrap {
  margin: 24px 0;
}

.wp-img-wrap iframe {
  display: block;
  border: none;
}

.wp-img-wrap img {
  display: block;
}

.th-typography>*:first-child {
  margin-top: 0;
}

.th-typography>*:last-child {
  margin-bottom: 0;
}

.th-typography h2 {
  font-size: 32px;
  margin: 35px 0 15px;
  font-weight: 500;
}

.th-typography h3 {
  font-size: 24px;
  margin: 30px 0 5px;
  font-weight: 500;
}

.th-typography p {
  margin: 5px 0;
  font-size: 20px;
  color: rgba(56, 56, 56, 0.7);
}

.th-typography ul,
.th-typography ol {
  list-style-type: none;
  margin: 10px 0;
  padding: 0;
  font-size: 20px;
  color: rgba(56, 56, 56, 0.7);
}

.th-typography ul li,
.th-typography ol li {
  margin: 6px 0 0;
}

.th-typography ul li::before,
.th-typography ol li::before {
  content: "•";
  margin-right: 6px;
}

.th-typography ol {
  list-style-type: none;
  counter-reset: num;
}

.th-typography ol li::before {
  content: counter(num) ".";
  counter-increment: num;
}

.th-typography blockquote {
  background: #F0F0F0;
  font-style: italic;
  padding: 10px 12px;
  display: block;
  font-weight: bold;
  margin: 30px 0;
  border-radius: 8px;
  font-size: 20px;
}

.th-typography blockquote p {
  letter-spacing: 0;
  margin: 0;
}

.wp-block-image {
  margin: 24px 0;
}

.wp-block-image img {
  display: block;
  width: 100%;
}

.wp-block-image figcaption {
  display: block;
  margin-top: 16px;
  font-size: 16px;
  display: block;
  color: rgba(35, 57, 64, 0.64);
}

.th-page-sinlge-img img {
  -o-object-fit: cover;
  object-fit: cover;
  max-height: 400px;
}

.th-ease-view {
  opacity: 0;
  -webkit-transform: translateY(85px);
  -ms-transform: translateY(85px);
  transform: translateY(85px);
  -webkit-transition: opacity 1s ease, -webkit-transform 0.85s ease !important;
  transition: opacity 1s ease, -webkit-transform 0.85s ease !important;
  -o-transition: transform 0.85s ease, opacity 1s ease !important;
  transition: transform 0.85s ease, opacity 1s ease !important;
  transition: transform 0.85s ease, opacity 1s ease, -webkit-transform 0.85s ease !important;
}

.th-ease-view__low {
  opacity: 0;
  -webkit-transform: translateY(95px);
  -ms-transform: translateY(95px);
  transform: translateY(95px);
  -webkit-transition: opacity 1.15s ease, -webkit-transform 1s ease !important;
  transition: opacity 1.15s ease, -webkit-transform 1s ease !important;
  -o-transition: transform 1s ease, opacity 1.15s ease !important;
  transition: transform 1s ease, opacity 1.15s ease !important;
  transition: transform 1s ease, opacity 1.15s ease, -webkit-transform 1s ease !important;
}

.th-ease-view__low-2 {
  opacity: 0;
  -webkit-transform: translateY(105px);
  -ms-transform: translateY(105px);
  transform: translateY(105px);
  -webkit-transition: opacity 1.3s ease, -webkit-transform 1.15s ease !important;
  transition: opacity 1.3s ease, -webkit-transform 1.15s ease !important;
  -o-transition: transform 1.15s ease, opacity 1.3s ease !important;
  transition: transform 1.15s ease, opacity 1.3s ease !important;
  transition: transform 1.15s ease, opacity 1.3s ease, -webkit-transform 1.15s ease !important;
}

.th-ease-view__low-3 {
  opacity: 0;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: opacity 2s ease !important;
  -o-transition: opacity 2s ease !important;
  transition: opacity 2s ease !important;
}

.th-ease-view__low-4 {
  opacity: 0;
  -webkit-transform: translateY(125px);
  -ms-transform: translateY(125px);
  transform: translateY(125px);
  -webkit-transition: opacity 1.55s ease, -webkit-transform 1.3s ease !important;
  transition: opacity 1.55s ease, -webkit-transform 1.3s ease !important;
  -o-transition: transform 1.3s ease, opacity 1.55s ease !important;
  transition: transform 1.3s ease, opacity 1.55s ease !important;
  transition: transform 1.3s ease, opacity 1.55s ease, -webkit-transform 1.3s ease !important;
}

:root {
  --bg: #0b0c10;
  --panel: #151822;
  --muted: #9aa3b2;
  --text: #e6eaf2;
  --brand: #8F3EE0;
  --accent: #39E9D0;
  --warn: #FFC816;
  --ok: #41c38a;
  --bad: #ef6060;
  --br: 14px;
}

.loader {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: var(--bg);
  z-index: 99999;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all .4s ease;
  opacity: 1;
}

.loader.hidden {
  opacity: 0;
  pointer-events: none;
}

.loader__container {
  position: relative;
  width: 240px;
  height: 80px;
}

.loader__border {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 18px solid #fff;
  border-radius: 50px;
  animation: loadBorder 3s infinite alternate;
  overflow: hidden;
}

.loader__border::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg,
      transparent 0%,
      rgba(32, 184, 162, 0.3) 50%,
      transparent 100%);
  animation: borderShine 1.5s infinite linear;
}

.loader__cursor {
  position: absolute;
  top: 50%;
  left: 15px;
  width: 30px;
  height: 30px;
  background: #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  animation: loadCursor 3s infinite ease-in-out alternate;
}

.loader__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-family: sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Анимации */
@keyframes loadBorder {
  0% {
    border-color: #00ffd9;
    box-shadow: 0 0 10px rgba(32, 184, 162, 0.3);
  }

  50% {
    border-color: #1ec5ac;
    box-shadow: 0 0 20px rgba(32, 184, 162, 0.5);
  }

  100% {
    border-color: #00ffd9;
    box-shadow: 0 0 30px rgba(32, 184, 162, 0.7);
  }
}

@keyframes loadCursor {
  0% {
    transform: translateX(15px) translateY(-50%);
    background: rgba(255, 255, 255, 1);
  }

  50% {
    background: rgba(255, 255, 255, 0.5);
    ;
  }

  100% {
    transform: translateX(170px) translateY(-50%);
    background: rgba(255, 255, 255, 1);
    ;
  }
}

@keyframes borderShine {
  0% {
    left: -100%;
  }

  100% {
    left: 100%;
  }
}

/* Дополнительные эффекты */
.loader__cursor::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  background: rgba(32, 184, 161, 0.2);
  border-radius: 50%;
  animation: pulse 1.5s infinite;
}

@keyframes pulse {
  0% {
    width: 20px;
    height: 20px;
    opacity: 0.5;
  }

  100% {
    width: 40px;
    height: 40px;
    opacity: 0;
  }
}

/* Адаптивность */
@media (max-width: 768px) {

  .th-header-navigation>li:not(:first-child),
  .th-header-navigation>li>.link-arrow-wrapper {
    border: 0.2px solid #FFFFFF;
    border-radius: 24px;
    padding: 5px 15px;
  }

  .th-header-navigation>li {
    margin: 24px !important;
  }

  .th-header-navigation>li a {
    margin: 0;
    padding: 0;
  }

  .th-header-navigation>li .link-arrow-wrapper {
    align-items: center;
    gap: 5px;
  }

  .th-header-navigation>li .mobile-toggle-arrow {
    position: static !important;
  }

  .loader__container {
    width: 160px;
    height: 50px;
  }

  .loader__text {
    font-size: 12px;
  }

  @keyframes loadCursor {
    100% {
      transform: translateX(130px) translateY(-50%);
    }
  }
}

@media (max-width: 480px) {
  .loader__container {
    width: 140px;
    height: 45px;
  }

  .loader__text {
    font-size: 11px;
  }

  @keyframes loadCursor {
    100% {
      transform: translateX(110px) translateY(-50%);
    }
  }
}

.th-front-banner__calc {
  padding-top: 150px;
}

.th-front-banner__calc .wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 18px
}

.th-front-banner__calc .grid {
  display: grid;
  gap: 12px
}

.th-front-banner__calc .controls {
  grid-template-columns: repeat(12, 1fr)
}

.th-front-banner__calc .card {
  background: var(--panel);
  border: 1px solid #23283a;
  border-radius: var(--br);
  padding: 12px
}

.th-front-banner__calc label {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 6px
}

.th-front-banner__calc select,
.th-front-banner__calc input[type="number"],
.th-front-banner__calc input[type="text"],
.th-front-banner__calc input[type="search"] {
  width: 100%;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid #2a2f45;
  background: #0f1220;
  color: var(--text)
}

.th-front-banner__calc input[type="checkbox"] {
  transform: scale(1.2)
}

.th-front-banner__calc .btn {
  appearance: none;
  border: 1px solid #3b3f58;
  background: #111528;
  color: #fff;
  border-radius: 12px;
  padding: 9px 12px;
  cursor: pointer
}

.th-front-banner__calc .btn.primary {
  background: var(--brand);
  border-color: #6e22d9
}

.th-front-banner__calc .btn.ghost {
  background: transparent;
  border-color: #303650
}

.th-front-banner__calc .btn.small {
  padding: 6px 9px;
  border-radius: 10px;
  font-size: 12px
}

.th-front-banner__calc .row {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap
}

.th-front-banner__calc .pill {
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid #2b3048;
  color: var(--muted);
  font-size: 12px
}

.th-front-banner__calc .table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 6px
}

.th-front-banner__calc .table thead th {
  font-size: 13px;
  color: #c6cbe0;
  text-align: left;
  padding: 6px 8px
}

.th-front-banner__calc .th-center {
  text-align: center !important
}

.th-front-banner__calc .table tbody tr {
  background: #0f1320
}

.th-front-banner__calc .table tbody td {
  padding: 8px;
  border-top: 1px solid #1f2336;
  border-bottom: 1px solid #1f2336
}

.th-front-banner__calc .table tbody td:last-child {
  white-space: nowrap
}

.th-front-banner__calc .table tbody tr:first-child td {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px
}

.th-front-banner__calc .table tbody tr:last-child td {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px
}

.th-front-banner__calc .right {
  text-align: right
}

.th-front-banner__calc .muted {
  color: var(--muted)
}

.th-front-banner__calc .total {
  font-size: 18px;
  font-weight: 700
}

.th-front-banner__calc .sticky {
  position: sticky;
  top: 0;
  padding: 10px 0;
  z-index: 5
}

.th-front-banner__calc .badge {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 6px;
  background: #1a1f33;
  color: #9aa3b2;
  font-size: 12px
}

.th-front-banner__calc .hr {
  height: 1px;
  background: #23283a;
  border: 0;
  margin: 8px 0
}

.th-front-banner__calc .section {
  margin-top: 12px
}

.th-front-banner__calc .c1 {
  background: linear-gradient(180deg, #171b2a, #131728);
  border-color: #2b2f49
}

.th-front-banner__calc .c2 {
  background: linear-gradient(180deg, #131f22, #121724);
  border-color: #23413c
}

.th-front-banner__calc .c3 {
  background: linear-gradient(180deg, #231a2b, #181325);
  border-color: #472c74
}

.th-front-banner__calc .c4 {
  background: linear-gradient(180deg, #2a2212, #1c1710);
  border-color: #634b15
}

.th-front-banner__calc details.stage {
  border: 1px solid #243055;
  border-radius: 10px;
  overflow: hidden;
  margin: 8px 0
}

.th-front-banner__calc details.stage>summary {
  padding: 8px 12px;
  background: #12162a;
  cursor: pointer;
  user-select: none;
  list-style: none;
  display: flex;
  align-items: center;
  font-weight: 800
}

.th-front-banner__calc details.stage>summary .toggle {
  width: 18px;
  height: 18px;
  border: 1px solid #3a4570;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  font-weight: 900
}

.th-front-banner__calc .stage-totals {
  margin-left: auto;
  display: flex;
  gap: 12px;
  align-items: center
}

.th-front-banner__calc .stage-totals .pill {
  border-color: #33406e
}

.th-front-banner__calc tr.affected td {
  background: #10232a
}

.th-front-banner__calc .task-cell {
  position: relative
}

.th-front-banner__calc .task-cell .nameTools {
  display: none;
  gap: 6px;
  margin-left: 8px;
  margin-top: 8px;
}

.th-front-banner__calc .task-cell:hover .nameTools {
  display: inline-flex;
}

.th-front-banner__calc .logo {
  height: 28px;
  filter: invert(0);
  margin-right: 10px
}

/* Адаптивные стили */
@media (max-width: 1200px) {
  .th-front-banner__calc .table {
    display: block;
    overflow: auto;
  }

  .th-front-banner__calc .controls {
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
  }

  .th-front-banner__calc .wrap {
    padding: 15px;
  }

  .th-front-banner__calc .field {
    min-width: 198px;
  }

  .th-front-banner__calc .table tbody td:first-child,
  .th-front-banner__calc .table tbody td:last-child {
    padding: 8px 14px;
  }
}

@media (max-width: 992px) {
  .th-front-banner__calc {
    padding-top: 120px;
  }

  .th-front-banner__calc .controls {
    grid-template-columns: repeat(2, 1fr);
  }

  .th-front-banner__calc .table thead th {
    font-size: 12px;
    padding: 4px 6px;
    white-space: nowrap;
  }

  .th-front-banner__calc .table tbody td {
    padding: 6px;
    font-size: 14px;
  }

  .th-front-banner__calc .stage-totals {
    flex-direction: column;
    gap: 6px;
    align-items: flex-end;
  }

  .th-front-banner__calc .grid:last-child,
  .th-front-banner__calc .grid:nth-child(2) {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  .th-front-banner__calc {
    padding-top: 100px;
  }

  .th-front-banner__calc .controls {
    gap: 8px;
  }

  .th-front-banner__calc .card {
    padding: 10px;
  }

  .th-front-banner__calc .row {
    gap: 8px;
    justify-content: center;
  }

  .th-front-banner__calc .table {
    font-size: 14px;
  }

  .th-front-banner__calc .table tbody tr {
    margin-bottom: 12px;
    border-radius: 10px;
  }

  .th-front-banner__calc .table tbody td {
    padding: 10px;
    border: none;
    position: relative;
    border-radius: 0 !important;
  }

  .th-front-banner__calc .table tbody td::before {
    content: attr(data-label);
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-weight: 600;
    color: #c6cbe0;
    font-size: 12px;
  }

  .th-front-banner__calc .table tbody tr:first-child td:first-child {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
  }

  .th-front-banner__calc .table tbody tr:last-child td:last-child {
    border-bottom-left-radius: 10px !important;
    border-bottom-right-radius: 10px !important;
  }

  .th-front-banner__calc details.stage>summary {
    flex-wrap: wrap;
    gap: 8px;
  }

  .th-front-banner__calc .stage-totals {
    margin-left: 0;
    width: 100%;
    justify-content: space-between;
    flex-direction: row;
  }
}

@media (max-width: 576px) {
  .th-front-banner__calc {
    padding-top: 80px;
  }

  .th-front-banner__calc .wrap {
    padding: 10px;
  }

  .th-front-banner__calc .controls {
    grid-template-columns: 1fr;
  }

  .th-front-banner__calc .btn {
    width: 100%;
    text-align: center;
  }

  .th-front-banner__calc .total {
    font-size: 16px;
  }

  .th-front-banner__calc .table tbody td {
    padding: 8px 6px;
    font-size: 13px;
  }

  .th-front-banner__calc .table tbody td::before {
    font-size: 11px;
    left: 6px;
  }

  .th-front-banner__calc details.stage>summary {
    font-size: 14px;
  }

  .th-front-banner__calc .task-cell .nameTools {
    opacity: 1;
    /* Всегда показываем инструменты на мобильных */
    margin-left: 4px;
  }
}

@media (max-width: 400px) {
  .th-front-banner__calc {
    padding-top: 70px;
  }

  .th-front-banner__calc .table tbody td {
    font-size: 12px;
  }

  .th-front-banner__calc .table tbody td::before {
    font-size: 10px;
    position: static;
    display: block;
    text-align: left;
    margin-bottom: 4px;
    transform: none;
  }

  .th-front-banner__calc .table tbody td {
    text-align: left;
    padding: 8px;
  }
}

/* Для очень высоких экранов */
@media (min-height: 900px) and (min-width: 992px) {
  .th-front-banner__calc .sticky {
    position: relative;
  }
}

/* Портретная ориентация на мобильных */
@media (max-width: 768px) and (orientation: portrait) {
  .th-front-banner__calc .logo {
    height: 24px;
    margin-right: 8px;
  }
}

/* Ландшафтная ориентация на мобильных */
@media (max-width: 992px) and (orientation: landscape) {
  .th-front-banner__calc {
    padding-top: 90px;
  }
}

/* Стили для модальных окон и элементов смет */
.estimate-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
}

.modal-content {
  background: var(--panel);
  border-radius: 12px;
  padding: 20px;
  max-width: 500px;
  width: 90%;
  max-height: 80vh;
  position: relative;
}

.modal-content h3 {
  margin-top: 0;
}

.modal-content.wide {
  max-width: 800px;
}

.form-group {
  margin-bottom: 15px;
}

.form-group label {
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
}

.form-group input {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #2a2f45;
  border-radius: 8px;
  background: #0f1220;
  color: var(--text);
}

.modal-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

.modal-actions .th-modal-close {
  position: absolute;
  right: 20px;
  top: 10px;
}

.estimates-list {
  max-height: 400px;
  overflow-y: auto;
}

.estimate-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  border: 1px solid #23283a;
  border-radius: 8px;
  margin-bottom: 10px;
  background: #0f1320;
}

.estimate-info h4 {
  margin: 0 0 5px 0;
  color: var(--text);
}

.estimate-meta {
  font-size: 12px;
  color: var(--muted);
}

.estimate-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.view-mode-banner {
  background: #ffeb3b;
  color: #333;
  text-align: center;
  padding: 10px;
  font-weight: bold;
  border-bottom: 2px solid #ffc107;
}

.estimate-view-mode {
  background: #e3f2fd;
  border: 1px solid #2196f3;
  border-radius: 8px;
  padding: 15px;
  text-align: center;
  margin: 10px 0;
}

/* Стили для уведомлений и модальных окон */
.estimate-success,
.estimate-error {
  position: fixed;
  top: 20px;
  right: 20px;
  background: var(--panel);
  border: 1px solid #4caf50;
  border-radius: 8px;
  padding: 15px;
  max-width: 430px;
  z-index: 10001;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.estimate-error {
  border-color: #f44336;
}

.success-content h4,
.error-content h4 {
  margin: 0 0 8px 0;
  color: #4caf50;
}

.error-content h4 {
  color: #f44336;
}

.success-content p,
.error-content p {
  font-size: 12px;
}

.view-mode-banner {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  text-align: center;
  padding: 12px;
  font-weight: 600;
  border-bottom: 2px solid #5a6fd8;
  margin-bottom: 15px;
}

.banner-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.banner-icon {
  font-size: 18px;
}

.no-estimates {
  text-align: center;
  padding: 40px;
  color: var(--muted);
  font-style: italic;
}

/* Адаптивные стили для модальных окон */
@media (max-width: 768px) {
  .modal-content {
    width: 95%;
    margin: 10px;
  }

  .modal-content.wide {
    max-width: 95%;
  }

  .estimate-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .estimate-actions {
    width: 100%;
    justify-content: flex-end;
  }

  .estimate-success,
  .estimate-error {
    left: 10px;
    right: 10px;
    max-width: none;
  }
}

/* Стили для уведомлений */
.calculator-notification {
  position: fixed;
  top: 20px;
  right: 20px;
  padding: 12px 20px;
  border-radius: 8px;
  color: white;
  z-index: 10000;
  font-weight: 500;
  max-width: 300px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  animation: slideIn 0.3s ease-out;
}

.calculator-notification.success {
  background: #10b981;
}

.calculator-notification.error {
  background: #ef4444;
}

.calculator-notification.info {
  background: #3b82f6;
}

.calculator-notification.warning {
  background: #f59e0b;
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideOut {
  from {
    transform: translateX(0);
    opacity: 1;
  }

  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

/* Стили для режима просмотра */
.readonly-mode {
  opacity: 0.7;
  pointer-events: none;
}

/* Адаптивные стили для мобильных */
@media (max-width: 768px) {
  .calculator-notification {
    left: 10px;
    right: 10px;
    max-width: none;
  }
}

/* Стили для кнопок добавления задач */
.add-task-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
  border: none !important;
  color: white !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.add-task-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
}

/* Улучшенные стили для редактирования на месте */
.task-name {
  cursor: text;
  padding: 4px 8px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.task-name:hover {
  background-color: rgba(59, 130, 246, 0.1);
}

.nameTools {
  display: none;
  gap: 4px;
  margin-left: 8px;
}

.task-cell:hover .nameTools {
  display: inline-flex;
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
  .nameTools {
    display: inline-flex !important;
    opacity: 0.8;
  }

  .add-task-btn {
    padding: 10px !important;
    font-size: 14px !important;
  }
}

/* Стили для кнопок добавления задач */
.add-task-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
  border: none !important;
  color: white !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.add-task-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
}

/* Улучшенные стили для редактирования на месте */
.task-name {
  cursor: text;
  padding: 4px 8px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.task-name:hover {
  background-color: rgba(59, 130, 246, 0.1);
}

.nameTools {
  display: none;
  gap: 4px;
  margin-left: 8px;
}

.task-cell:hover .nameTools {
  display: inline-flex;
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
  .nameTools {
    display: inline-flex !important;
    opacity: 0.8;
  }

  .add-task-btn {
    padding: 10px !important;
    font-size: 14px !important;
  }
}

/* Стили для контейнера кнопок смет */
.estimate-buttons-container {
  background: var(--panel);
  border: 1px solid #23283a;
  border-radius: var(--br);
  padding: 12px;
  margin-top: 10px;
}

.estimate-buttons-container .btn {
  margin-right: 8px;
  margin-bottom: 5px;
}

/* Адаптивность */
@media (max-width: 768px) {
  .estimate-buttons-container {
    text-align: center;
  }

  .estimate-buttons-container .btn {
    display: inline-block;
    margin: 5px;
  }
}

.view-mode-banner {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  text-align: center;
  padding: 15px;
  font-weight: 600;
  border-bottom: 3px solid #5a6fd8;
  margin-bottom: 0;
}

.banner-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 16px;
}

.banner-icon {
  font-size: 20px;
}

@media (max-width: 768px) {
  .banner-content {
    flex-direction: column;
    gap: 8px;
    font-size: 14px;
  }
}

.view-mode-banner {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  text-align: center;
  padding: 12px;
  font-weight: 600;
  border-bottom: 2px solid #5a6fd8;
  margin-bottom: 0;
}

.banner-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 14px;
}

.banner-icon {
  font-size: 18px;
}

@media (max-width: 768px) {
  .banner-content {
    flex-direction: column;
    gap: 5px;
    font-size: 12px;
  }

  .view-mode-banner {
    padding: 8px;
  }
}

canvas {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0;
  z-index: 99;
  pointer-events: none;
  mix-blend-mode: difference;
  display: none;
}

@font-face {
  font-family: "NeueMachina";
  src: url("../fonts/NeueMachina-Regular.woff2") format("woff2");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-ExtraBold.woff2") format("woff2");
  font-display: swap;
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Bold.woff2") format("woff2");
  font-display: swap;
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-SemiBold.woff2") format("woff2");
  font-display: swap;
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Medium.woff2") format("woff2");
  font-display: swap;
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Regular.woff2") format("woff2");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}

.th-ico {
  position: relative;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}

.th-ico:before {
  content: "";
  display: block;
  background-size: 100%;
  background-repeat: no-repeat;
}

.th-ico-tg {
  width: 18px;
  margin: 0;
}

.th-ico-tg:before {
  background-image: url("../img/svg/tg-green.svg");
  width: 18px;
  height: 18px;
}

.th-ico-ws {
  width: 18px;
  margin: 0;
}

.th-ico-ws:before {
  background-image: url("../img/svg/what-green.svg");
  width: 18px;
  height: 18px;
}

.th-ico-curs {
  width: 24px;
  margin: 0;
}

.th-ico-curs:before {
  background-image: url("../img/svg/cursor.svg");
  width: 24px;
  height: 24px;
}

.th-ico-heart-green {
  width: 16px;
  margin: 0;
}

.th-ico-heart-green:before {
  background-image: url("../img/svg/heart-green.svg");
  width: 16px;
  height: 16px;
}

.th-ico-telegram-color {
  width: 18px;
  margin: 0;
}

.th-ico-telegram-color:before {
  background-image: url("../img/svg/telegram-color.svg");
  width: 18px;
  height: 18px;
}

.th-ico-whatsapp-color {
  width: 18px;
  margin: 0;
}

.th-ico-whatsapp-color:before {
  background-image: url("../img/svg/whatsapp-color.svg");
  width: 18px;
  height: 18px;
}

.th-ico-comments {
  width: 24px;
  margin: 0;
}

.th-ico-comments:before {
  background-image: url("../img/svg/commentsl.svg");
  width: 24px;
  height: 24px;
}

.th-ico-pluss {
  width: 24px;
  margin: 0;
}

.th-ico-pluss:before {
  background-image: url("../img/svg/pluss.svg");
  width: 24px;
  height: 24px;
}

.th-ico-share {
  width: 24px;
  margin: 0;
}

.th-ico-share:before {
  background-image: url("../img/svg/share.svg");
  width: 24px;
  height: 24px;
}

.th-ico-viev {
  width: 24px;
  margin: 0;
}

.th-ico-viev:before {
  background-image: url("../img/svg/viev.svg");
  width: 24px;
  height: 24px;
}

body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: rgb(30, 30, 30);
  opacity: 0;
  -webkit-transition-duration: inherit;
  -o-transition-duration: inherit;
  transition-duration: inherit;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
  -o-transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  -webkit-transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  -o-transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  -webkit-transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  -o-transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  -webkit-transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  -o-transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  -o-transition-property: transform, opacity;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -ms-transform-origin: top left;
  -webkit-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  -o-transition-property: transform, opacity;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */

.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */

.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  -webkit-transition: color 0.2s;
  -o-transition: color 0.2s;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */

.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -ms-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -ms-transform-origin: 0;
  -webkit-transform-origin: 0;
  transform-origin: 0;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: linear;
  -o-transition-timing-function: linear;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */

.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */

.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */

.fancybox-caption {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.85)), color-stop(50%, rgba(0, 0, 0, 0.3)), color-stop(65%, rgba(0, 0, 0, 0.15)), color-stop(75.5%, rgba(0, 0, 0, 0.075)), color-stop(82.85%, rgba(0, 0, 0, 0.037)), color-stop(88%, rgba(0, 0, 0, 0.019)), to(rgba(0, 0, 0, 0)));
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

@supports (padding: max(0px)) {
  .fancybox-caption {
    padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
  }
}

.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */

.fancybox-loading {
  -webkit-animation: fancybox-rotate 1s linear infinite;
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* Transition effects */

.fancybox-animated {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
  -o-transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */

.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */

.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */

.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-transform: rotate(-360deg);
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-transform: rotate(360deg);
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* transitionEffect: circular */

.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */

.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */

/* Fullscreen  */

.fancybox-button--fullscreen::before {
  width: 15px;
  height: 11px;
  left: calc(50% - 7px);
  top: calc(50% - 6px);
  border: 2px solid;
  background: none;
}

/* Share */

.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Slideshow button */

.fancybox-button--play::before,
.fancybox-button--pause::before {
  top: calc(50% - 6px);
  left: calc(50% - 4px);
  background: transparent;
}

.fancybox-button--play::before {
  width: 0;
  height: 0;
  border-top: 6px inset transparent;
  border-bottom: 6px inset transparent;
  border-left: 10px solid;
  border-radius: 1px;
}

.fancybox-button--pause::before {
  width: 7px;
  height: 11px;
  border-style: solid;
  border-width: 0 2px 0 2px;
}

/* Thumbs */

.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */

/**
 * Swiper 9.4.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 13, 2023
 */

@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}

:root {
  --swiper-theme-color: #007aff;
}

.swiper,
swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical>.swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -o-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

.swiper-slide,
swiper-slide {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  -ms-scroll-snap-type: none;
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: none;
}

.swiper-centered>.swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
  -ms-flex-order: 9999;
  order: 9999;
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 0.3s opacity;
  -o-transition: 0.3s opacity;
  transition: 0.3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 0.2s top, 0.2s -webkit-transform;
  transition: 0.2s top, 0.2s -webkit-transform;
  -o-transition: 0.2s transform, 0.2s top;
  transition: 0.2s transform, 0.2s top;
  transition: 0.2s transform, 0.2s top, 0.2s -webkit-transform;
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s left, 0.2s -webkit-transform;
  transition: 0.2s left, 0.2s -webkit-transform;
  -o-transition: 0.2s transform, 0.2s left;
  transition: 0.2s transform, 0.2s left;
  transition: 0.2s transform, 0.2s left, 0.2s -webkit-transform;
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
:host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s right, 0.2s -webkit-transform;
  transition: 0.2s right, 0.2s -webkit-transform;
  -o-transition: 0.2s transform, 0.2s right;
  transition: 0.2s transform, 0.2s right;
  transition: 0.2s transform, 0.2s right, 0.2s -webkit-transform;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  -ms-touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  -ms-touch-action: none;
  touch-action: none;
}

.swiper .swiper-notification,
swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode>.swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid>.swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.swiper-grid-column>.swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-next+.swiper-slide,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-filter: blur(50px);
  filter: blur(50px);
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  -webkit-transition-property: opacity, height, -webkit-transform;
  transition-property: opacity, height, -webkit-transform;
  -o-transition-property: transform, opacity, height;
  transition-property: transform, opacity, height;
  transition-property: transform, opacity, height, -webkit-transform;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

.th-swiper-sides-arrows {
  position: relative;
}

.th-swiper-sides-arrows .th-swiper-arrow {
  position: absolute;
  top: 40%;
  outline: none;
  border: none;
  cursor: pointer;
  z-index: 2;
}

.th-swiper-square-prev,
.th-swiper-square-next {
  border-radius: 5px;
  background-color: #FFF;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-box-shadow: 0px 10px 25px 0px rgba(54, 54, 54, 0.15);
  box-shadow: 0px 10px 25px 0px rgba(54, 54, 54, 0.15);
  height: 44px;
  width: 44px;
}

.th-swiper-square-prev {
  background-image: url("../img/svg-icons/ico-chevron-left-dark.svg");
  left: 10px;
}

.th-swiper-square-next {
  background-image: url("../img/svg-icons/ico-chevron-right-dark.svg");
  right: 10px;
}

.th-no-support-webp .th-modal {
  background-image: url("../img/form-bg.jpg");
}

.th-modal {
  display: none;
  width: 100%;
  max-width: 600px;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  padding: 0;
  border-radius: 8px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 2;
}

.th-modal .th-form-polit {
  padding-left: 16px;
  padding-right: 16px;
}

.th-modal .fancybox-close-small {
  width: 44px;
  height: 44px;
  opacity: 1;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  top: 0;
}

.th-modal .fancybox-close-small:hover svg {
  opacity: 0.75;
}

.th-modal .th-send-response-msg {
  position: relative;
}

.th-modla-title {
  font-size: 26px;
  line-height: 1.2;
  margin-bottom: 26px;
  font-weight: 500;
  display: block;
}

.th-modal-wrap {
  padding: 48px;
  min-height: 100%;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  border-radius: 4px;
}

.fancybox-close-small:hover,
.fancybox-close-small:focus,
.fancybox-close-small:active {
  outline: none;
}

.fancybox-close-small {
  display: none;
}

.th-modal-btn-close {
  cursor: pointer;
}

.th-form {
  position: relative;
}

.th-form .th-form-btn-wrap {
  margin-top: 50px;
}

.th-form-input-wrap {
  position: relative;
  z-index: 1;
  margin-bottom: 20px;
  display: block;
}

.th-form-input-wrap>span {
  margin-bottom: 8px;
  display: block;
}

.th-form-input-wrap>span i {
  color: #00F9F0;
  font-style: normal;
}

.th-form-input-text {
  height: 63px;
  width: 100%;
  border: none;
  line-height: 1.3;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  padding-left: 16px;
  border-radius: 2px;
  color: #fff;
  padding-left: 24px;
  display: block;
  background-color: rgba(255, 255, 255, 0.1);
}

.th-form-input-text::-webkit-input-placeholder {
  color: #fff;
  opacity: 0.3;
  -webkit-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-form-input-text::-moz-placeholder {
  color: #fff;
  opacity: 0.3;
  -moz-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-form-input-text:-ms-input-placeholder {
  color: #fff;
  opacity: 0.3;
  -ms-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-form-input-text::-ms-input-placeholder {
  color: #fff;
  opacity: 0.3;
  -ms-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-form-input-text::placeholder {
  color: #fff;
  opacity: 0.3;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-form-input-text:hover,
.th-form-input-text:focus {
  outline: none;
}

.th-form-input-text:hover::-webkit-input-placeholder,
.th-form-input-text:focus::-webkit-input-placeholder {
  opacity: 1;
}

.th-form-input-text:hover::-moz-placeholder,
.th-form-input-text:focus::-moz-placeholder {
  opacity: 1;
}

.th-form-input-text:hover:-ms-input-placeholder,
.th-form-input-text:focus:-ms-input-placeholder {
  opacity: 1;
}

.th-form-input-text:hover::-ms-input-placeholder,
.th-form-input-text:focus::-ms-input-placeholder {
  opacity: 1;
}

.th-form-input-text:hover::placeholder,
.th-form-input-text:focus::placeholder {
  opacity: 1;
}

textarea.th-form-input-text {
  height: 200px;
  width: 100% !important;
  padding-top: 18px;
}

.th-link {
  color: #fff;
  text-decoration: none;
}

.th-form-btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.th-form-btn-wrap .th-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 max-content;
  flex: 0 0 max-content;
}

.th-container-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-left: 28px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 1.1;
}

.th-container-checkbox .text {
  font-size: 16px;
}

.th-container-checkbox .text a {
  color: #fff;
}

.th-container-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.th-container-checkbox .checkmark {
  position: absolute;
  top: 50%;
  left: 0;
  height: 18px;
  width: 18px;
  margin-top: -9px;
  background: transparent;
  border: 1px solid #fff;
  border-radius: 2px;
  -webkit-transition: 0.15s ease all;
  -o-transition: 0.15s ease all;
  transition: 0.15s ease all;
}

.th-container-checkbox:hover input~.checkmark {
  background-color: rgba(255, 255, 255, 0.1);
}

.th-container-checkbox .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.th-container-checkbox input:checked~.checkmark:after {
  display: block;
}

.th-container-checkbox input:checked~.checkmark {
  background-color: #20B8A2;
  border-color: #20B8A2;
}

.th-container-checkbox .checkmark:after {
  left: 5px;
  top: 1px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.th-textarea,
.th-input {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: none;
  outline: none;
  background-color: transparent;
  color: #000;
}

.th-input::-webkit-input-placeholder {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input::-moz-placeholder {
  opacity: 1;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input:-moz-placeholder {
  opacity: 1;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input:-ms-input-placeholder {
  opacity: 1;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input::-webkit-input-placeholder:focus {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input::-moz-placeholder:focus {
  opacity: 0;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input:-moz-placeholder:focus {
  opacity: 0;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input:-ms-input-placeholder:focus {
  opacity: 0;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.th-input:focus,
.th-input:active,
.th-input:hover,
.th-textarea:focus,
.th-textarea:active,
.th-textarea:hover {
  outline: none;
}

.th-textarea {
  resize: vertical;
  display: block;
}

.th-input._w-100,
.th-input_fluid,
.th-textarea_fluid,
.th-textarea._w-100 {
  width: 100%;
}

.th-input_size-md,
.th-textarea_size-md {
  padding: 14px 24px 12px 24px;
  font-size: 16px;
}

.th-input_fill-gray,
.th-textarea_fill-gray {
  background-color: #F9FAFA;
  border: 1px solid #EBECEC;
  border-radius: 10px;
}

.th-input_fill-default,
.th-textarea_fill-default {
  background-color: #fff;
  border: 1px solid #E7E7E7;
  color: #2C2B34;
}

.th-input_fill-gray,
.th-textarea_fill-gray {
  background-color: #F8F9FB;
  border: 1px solid #E7E7E7;
  color: #2C2B34;
}

.th-input_fill-gray:focus,
.th-input_fill-gray:active,
.th-textarea_fill-gray:focus,
.th-textarea_fill-gray:active,
.th-textarea_fill-default:focus,
.th-input_fill-default:focus,
.th-textarea_fill-default:active,
.th-input_fill-default:active {
  border: 1px solid #4e565a;
}

.th-input_search-panel {
  padding: 12px 24px 14px 26px;
  font-size: 16px;
}

.th-input-icon-wrap {
  position: relative;
}

.th-input-icon-wrap .th-ico {
  position: absolute;
  top: 50%;
  left: 18px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.th-input-icon-wrap input {
  padding-left: 50px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

input[type=number] {
  -moz-appearance: textfield;
}

.th-input_search-panel {
  padding: 14px 14px 14px 46px;
  background-color: #505050;
  border-radius: 5px;
  color: #fff;
  background-image: url("../img/svg-icons/ico-search-white.svg");
  background-repeat: no-repeat;
  background-position: left 17px top 13px;
}

.lds-container {
  background-color: #fff;
  color: #000;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
}

.lds-ellipsis {
  display: block;
  position: absolute;
  width: 52px;
  height: 12px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-60%, -50%);
  -ms-transform: translate(-60%, -50%);
  transform: translate(-60%, -50%);
}

.lds-ellipsis div {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #000;
  -webkit-animation-timing-function: cubic-bezier(0, 1, 1, 0);
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.lds-ellipsis_sm div {
  width: 10px;
  height: 10px;
}

.lds-ellipsis div:nth-child(1) {
  left: 10px;
  -webkit-animation: lds-ellipsis1 0.6s infinite;
  animation: lds-ellipsis1 0.6s infinite;
}

.lds-ellipsis div:nth-child(2) {
  left: 10px;
  -webkit-animation: lds-ellipsis2 0.6s infinite;
  animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(3) {
  left: 30px;
  -webkit-animation: lds-ellipsis2 0.6s infinite;
  animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(4) {
  left: 49px;
  -webkit-animation: lds-ellipsis3 0.6s infinite;
  animation: lds-ellipsis3 0.6s infinite;
}

@-webkit-keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@-webkit-keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  100% {
    -webkit-transform: translate(19px, 0);
    transform: translate(19px, 0);
  }
}

@keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  100% {
    -webkit-transform: translate(19px, 0);
    transform: translate(19px, 0);
  }
}

.th-send-response-msg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 0;
}

.th-send-response-msg__img {
  height: 127px;
  width: 127px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url("../img/svg/thanks.svg");
  background-size: 127px;
  background-repeat: no-repeat;
  margin-bottom: 10px;
}

.th-send-response-msg__title {
  font-size: 36px;
  line-height: 1.2;
  position: relative;
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  z-index: 1;
  color: #fff;
}

.th-send-response-msg__txt {
  font-size: 20px;
  line-height: 1.2;
  margin-top: 12px;
  color: #fff;
  position: relative;
  z-index: 1;
}

.th-send-response-msg__txt_success {
  color: #e67800;
}

.th-send-response-msg__title_error {
  color: #f71616;
}

.th-send-response-msg__txt_error {
  color: #f71616;
}

.th-btn {
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  line-height: 1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  font-size: 22px;
  max-width: 100%;
  letter-spacing: 0.02em;
  border-radius: 12px;
  color: #fff;
  padding: 0 32px 2px;
  background-color: #20B8A2;
  overflow: hidden;
  -webkit-transition: 0.2s ease all;
  -o-transition: 0.2s ease all;
  transition: 0.2s ease all;
}

.th-btn:hover {
  background-color: #000;
}

.th-btn.__ico {
  text-align: left;
}

.th-btn.__ico i {
  margin-right: 10px;
}

.th-btn.__h-75px {
  height: 75px;
}

.th-btn-min {
  border-radius: 23px;
  height: 45px;
  padding: 0 20px 1px;
  font-size: 18px;
  font-weight: 600;
}

.th-btn-gray {
  background: rgba(56, 56, 56, 0.0705882353);
  color: #383838;
}

.th-btn-gray:hover {
  color: #fff;
  background-color: #383838;
}

.th-btn-dark {
  background: rgba(255, 255, 255, 0.0705882353);
  color: rgba(255, 255, 255, 0.4);
}

.th-btn-dark:hover {
  color: #fff;
  background-color: #383838;
}

.th-btn-line {
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  margin-left: auto;
  font-weight: 500;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-btn-line::after {
  content: "";
  margin-left: 10px;
  width: 74px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='76' height='22' viewBox='0 0 76 22' fill='none'%3E%3Cpath d='M0.5 11H74M74 11L64 1M74 11L64 21' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.th-btn-line:hover {
  color: #fff;
}

.th-modal-contacts {
  background: #151515;
  max-width: 1100px;
  width: 100%;
  padding: 36px 32px;
  border-radius: 8px;
}

.th-modal-contacts .fancybox-close-small {
  display: block;
}

.th-popup-contacts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: 400px;
}

.th-popup-contacts .__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: calc(100% - 540px);
  min-height: 100%;
  padding-right: 32px;
}

.th-popup-contacts .h3 {
  margin: 0 0 24px;
  font-weight: normal;
}

.th-popup-contacts p {
  color: #fff;
  margin: 0 0 8px;
}

.th-popup-contacts .__contacts {
  margin-top: auto;
  padding-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.th-popup-contacts .__contacts a {
  color: #fff;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  text-decoration: none;
  margin: 8px 0 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-popup-contacts .__contacts a:hover {
  opacity: 0.8;
}

.th-popup-contacts .__right {
  margin-left: auto;
  width: 540px;
}

.th-popup-contacts .__right img,
.th-popup-contacts .__right iframe {
  display: block;
  border-radius: 4px;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.th-slider-with-arrow {
  position: relative;
}

.th-slider-with-arrow .th-arrows-wrap {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  overflow: hidden;
  border-radius: 23px;
  width: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 38px;
}

.th-slider-with-arrow .th-arrows-wrap button {
  background: transparent;
  padding: 0;
  height: 100%;
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  background: rgba(255, 255, 255, 0.18);
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  cursor: pointer;
}

.th-slider-with-arrow .th-arrows-wrap button::after {
  content: "";
  width: 7px;
  height: 13px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("../img/svg/chevron-right.svg");
}

.th-slider-with-arrow .th-arrows-wrap button:hover {
  background: rgba(255, 255, 255, 0.33);
}

.th-slider-with-arrow .th-arrows-wrap .th-slider-arrow-left::after {
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
}

.th-breadcrumb {
  margin-top: 51px;
  font-size: 15px;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-transform: lowercase;
  color: #000;
}

.th-breadcrumb a {
  color: #000;
  text-decoration: none;
  opacity: 0.7;
}

.th-breadcrumb a:hover {
  opacity: 0.9;
}

.th-breadcrumb .th-section-inner {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.th-breadcrumb>span {
  margin: 4px 0;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
}

.th-breadcrumb i {
  font-style: normal;
  margin: 0 9px;
  opacity: 0.7;
}

.th-breadcrumb i:last-of-type {
  opacity: 0.3;
}

.th-breadcrumb>span:last-of-type {
  opacity: 0.3;
}

.th-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -12px;
  margin-right: -12px;
  width: auto;
}

.th-grid>div {
  padding-left: 12px;
  padding-right: 12px;
}

.th-grid__min {
  margin-left: -10px;
  margin-right: -10px;
}

.th-grid__min>div {
  padding-left: 10px;
  padding-right: 10px;
}

.th-grid__mid-min {
  margin-left: -7px;
  margin-right: -7px;
}

.th-grid__mid-min>div {
  padding-left: 7px;
  padding-right: 7px;
}

.th-grid__sup-min {
  margin-left: -5px;
  margin-right: -5px;
}

.th-grid__sup-min>div {
  padding-left: 5px;
  padding-right: 5px;
}

.th-grid__big {
  margin-left: -20px;
  margin-right: -20px;
}

.th-grid__big>div {
  padding-left: 20px;
  padding-right: 20px;
}

.th-grid__sup-big {
  margin-left: -30px;
  margin-right: -30px;
}

.th-grid__sup-big>div {
  padding-left: 30px;
  padding-right: 30px;
}

.th-col-2-5-xl {
  width: 18%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 18%;
  flex: 0 0 18%;
}

.th-col-8-xl {
  width: 66.66%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66.66%;
  flex: 0 0 66.66%;
}

.th-col-9-xl {
  width: 75%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
}

.th-col-4-xl {
  width: 33.33%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.33%;
  flex: 0 0 33.33%;
}

.th-col-6-xl {
  width: 50%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
}

.th-col-12-xl {
  width: 100%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
}

.th-col-3-xl {
  width: 25%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
}

.th-col-7-xl {
  width: 58.33%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 58.33%;
  flex: 0 0 58.33%;
}

.th-col-5-xl {
  width: 41.67%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 41.67%;
  flex: 0 0 41.67%;
}

.th-col-2-xl {
  width: 16.6%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.6%;
  flex: 0 0 16.6%;
}

.th-col-22-xl {
  width: 20%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
}

.th-col-10-xl {
  width: 83.335%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 83.335%;
  flex: 0 0 83.335%;
}

.th-col-1-offset-xl {
  margin-left: 8.33%;
}

.th-col-3-offset-xl {
  margin-left: 25%;
}

.th-col-margin-left {
  margin-left: auto;
}

.th-col-3-5-xl {
  width: 29.16%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 29.16%;
  flex: 0 0 29.16%;
}

.th-col-1-1-xl {
  width: 11.11%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 11.11%;
  flex: 0 0 11.11%;
}

.th-grid__min-xl {
  margin-left: -7px;
  margin-right: -7px;
}

.th-grid__min-xl>div {
  padding-left: 7px;
  padding-right: 7px;
}

.th-section-inner {
  max-width: 1350px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.th-section {
  margin-top: 190px;
  position: relative;
}

.th-section.__margin-0 {
  margin-top: 0 !important;
}

.th-section.__padding-0 {
  padding-top: 0 !important;
}

.th-section-margin-top {
  margin-top: 0 !important;
}

.th-section-head {
  margin-bottom: 32px;
}

.th-section-head h2,
.th-section-head .h2 {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
  margin: 0 0 32px;
  color: rgba(255, 255, 255, 0.6);
}

.th-section-head p {
  font-size: 18px;
  line-height: 1.2;
  margin: 24px 0 0;
}

.th-section-head.__opacity p {
  color: rgba(255, 255, 255, 0.8);
}

.th-header {
  position: absolute;
  top: 0;
  z-index: 99;
  left: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 0;
}

/* .th-header.__fixed {
  position: fixed;
  -webkit-transition: 0.2s 0.15s ease all;
  -o-transition: 0.2s 0.15s ease all;
  transition: 0.2s 0.15s ease all;
  -webkit-transform: translateY(0) !important;
  -ms-transform: translateY(0) !important;
  transform: translateY(0) !important;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0)));
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 100%);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
} */

/* .th-header.__fixed:hover {
  background: rgba(0, 0, 0, 0.6);
} */

.th-header.__fixed {
  transform: none !important;
}

.th-header-inner {
  max-width: 1350px;
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
}

.th-header-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  z-index: 5;
}

.th-header-logo img {
  display: block;
  width: 135px;
}

.th-header-navigation-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 29px 12px 12px;
  background: rgba(255, 255, 255, 0.08);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 45px;
}

.th-header.__fixed .th-header-navigation-wrap {
  position: fixed;
  left: 50%;
  top: 10px;
  transform: translateX(-50%);
  z-index: 9999;
}

.th-header-navigation-wrap .th-navigation-btn-wrap>a {
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
}

.th-header-navigation-wrap:hover {
  background: rgba(0, 0, 0, 0.6);
}

.th-header-navigation {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.th-header-navigation li {
  margin-left: 24px;
}

.th-header-navigation a {
  letter-spacing: 0.02em;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  font-size: 14px;
  color: #FFFFFF;
}

.th-header-navigation-wrap-home ul a:hover {
  color: #20b8a2;
}

.th-header__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-header__left .th-header-btn-warp {
  display: none;
}

.th-header-contact-item a {
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  text-decoration: none;
  display: block;
  color: #FFFFFF;
  font-weight: 700;
  opacity: 0.8;
}

.th-header-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.th-header-social a {
  margin-right: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-header-social a i {
  -webkit-filter: brightness(10);
  filter: brightness(10);
}

.th-header-social a .th-ico-ws {
  margin-top: -1px;
}

.th-hamburger-container {
  width: 26px;
  text-transform: uppercase;
  height: 26px;
  z-index: 7;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  display: none;
  margin-left: 14px;
}

.th-hamburger-container:focus-within,
.th-hamburger-container:focus-visible {
  outline: none;
}

.th-hamburger {
  position: absolute;
  left: 0;
  top: calc(50% - 1px);
  width: 26px;
  height: 3px;
  --time: 0.3s;
  background: #fff;
  -webkit-transition: background 0.2s 0.2s linear, -webkit-transform var(--time) ease-in-out;
  transition: background 0.2s 0.2s linear, -webkit-transform var(--time) ease-in-out;
  -o-transition: transform var(--time) ease-in-out, background 0.2s 0.2s linear;
  transition: transform var(--time) ease-in-out, background 0.2s 0.2s linear;
  transition: transform var(--time) ease-in-out, background 0.2s 0.2s linear, -webkit-transform var(--time) ease-in-out;
  border-radius: 3px;
}

.th-hamburger::before,
.th-hamburger::after {
  content: "";
  position: absolute;
  --time: 0.3s;
  border-radius: 3px;
  width: inherit;
  left: 0;
  height: inherit;
  background: #fff;
  -webkit-transition: all var(--time) ease-in-out;
  -o-transition: all var(--time) ease-in-out;
  transition: all var(--time) ease-in-out;
}

.th-hamburger::before {
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
  width: 26px;
}

.th-hamburger::after {
  -webkit-transform: translateY(10px);
  -ms-transform: translateY(10px);
  transform: translateY(10px);
  width: 26px;
}

.th-hamburger-container.open .th-hamburger {
  -webkit-transform: translateX(-40px);
  -ms-transform: translateX(-40px);
  transform: translateX(-40px);
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  -webkit-transition: -webkit-transform var(--time) ease-in-out;
  transition: -webkit-transform var(--time) ease-in-out;
  -o-transition: transform var(--time) ease-in-out;
  transition: transform var(--time) ease-in-out;
  transition: transform var(--time) ease-in-out, -webkit-transform var(--time) ease-in-out;
}

.th-hamburger-container.open .th-hamburger::before {
  -webkit-transform: rotate(45deg) translate(28px, -28px);
  -ms-transform: rotate(45deg) translate(28px, -28px);
  transform: rotate(45deg) translate(28px, -28px);
}

.th-hamburger-container.open .th-hamburger::after {
  -webkit-transform: rotate(-45deg) translate(28px, 28px);
  -ms-transform: rotate(-45deg) translate(28px, 28px);
  transform: rotate(-45deg) translate(28px, 28px);
}

.th-header-mobile {
  display: none;
}

.th-front-banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-top: 210px;
}

.th-front-banner h1 {
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  font-size: 126px;
  line-height: 0.75;
  margin: 0 0 45px;
}

.th-front-banner p {
  font-size: 25px;
  max-width: 600px;
  line-height: 1.15;
  margin: 0;
}

.th-front-banner .th-section-inner {
  position: relative;
}

.th-front-banner .th-grid {
  position: relative;
  z-index: 1;
}

.th-front-banner .th-grid>div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.th-front-banner .__img {
  position: absolute;
}

.th-front-banner.__banner-1 .__img {
  right: 80px;
  bottom: -130px;
  -webkit-animation: banner_2_img_1 40s linear infinite;
  animation: banner_2_img_1 40s linear infinite;
}

.th-front-banner.__banner-1 .__img img {
  width: 750px;
  -webkit-transform: rotate(70deg);
  -ms-transform: rotate(70deg);
  transform: rotate(70deg);
}

.th-front-banner.__banner-1 .th-forst-banner-platworms {
  padding-top: 20px;
}

.th-front-banner.__banner-2 .th-front-banner__adv-wrap {
  padding-top: 75px;
  margin-top: auto;
}

.th-front-banner.__banner-2 .__img {
  right: -100px;
  bottom: 0;
  -webkit-animation: banner_3_img_1_2 8s ease infinite;
  animation: banner_3_img_1_2 8s ease infinite;
}

.th-front-banner.__banner-2 p {
  max-width: 600px;
}

.th-front-banner.__banner-3 .th-front-banner__title {
  padding-bottom: 25px;
}

.th-front-banner.__banner-3 .__img {
  right: 130px;
  bottom: -120px;
  -webkit-animation: banner_1_img_1 30s ease infinite;
  animation: banner_1_img_1 30s ease infinite;
}

.th-front-banner.__banner-3 .__img img {
  width: 660px;
  -webkit-transform: rotate(-15deg);
  -ms-transform: rotate(-15deg);
  transform: rotate(-15deg);
}

.th-front-banner.__banner-3 .th-forst-banner-platworms {
  padding-top: 20px;
}

.th-front-banner__title {
  margin-top: auto;
}

.th-front-banner__adv-wrap {
  margin-top: auto;
}

.th-front-banner__adv-wrap .th-grid .th-front-banner__adv-item {
  height: 100%;
}

.th-front-banner__adv-item {
  min-height: 147px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 16px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  margin-top: 8px;
  color: #fff;
}

.th-front-banner__adv-item span {
  font-size: 52px;
  line-height: 1;
  padding-bottom: 12px;
}

.th-front-banner__adv-item i {
  margin-top: auto;
  font-size: 14px;
  font-style: normal;
}

.th-front-banner__adv-item.__last {
  background: -o-linear-gradient(338deg, rgba(255, 255, 255, 0.2) -65%, rgba(0, 249, 240, 0.2) 112%);
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.2) -65%, rgba(0, 249, 240, 0.2) 112%);
}

.th-forst-banner-platworms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: auto;
  margin-bottom: -30px;
}

.th-forst-banner-platworms>* {
  margin: 0 30px 30px 0;
  font-size: 22px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 600;
  color: #fff;
}

.th-forst-banner-platworms>* img {
  display: block;
  margin-right: 10px;
}

.th-section-block-form {
  position: relative;
}

.th-no-support-webp .th-block-form {
  background-image: url("../img/form-bg.jpg");
}

.th-block-form {
  padding: 48px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  border-radius: 8px;
  position: relative;
}

.th-block-form::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 1400px;
  bottom: -100px;
  left: -600px;
  height: 950px;
  opacity: 0.3;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(116, 71, 243, 0.25)), to(rgba(0, 249, 240, 0.25)));
  background: -o-linear-gradient(top, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.25) 100%);
  background: linear-gradient(180deg, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.25) 100%);
  -webkit-filter: blur(50px);
  filter: blur(50px);
  border-radius: 100%;
}

.th-block-form .__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}

.th-block-form .__title img {
  width: 135px;
  display: block;
  margin-bottom: 80px;
}

.th-block-form .__email-wrap {
  padding-top: 20px;
  margin-top: auto;
}

.th-block-form .__email-wrap a {
  color: #fff;
  font-size: 24px;
  text-decoration: none;
}

.th-block-form .th-modal-wrap {
  position: relative;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

.th-block-form .th-col-6-xl {
  position: relative;
  z-index: 1;
}

.th-block-form .__img {
  position: absolute;
  z-index: -1;
  top: -175px;
  right: 45px;
}

.th-block-form .__img img {
  display: block;
}

.th-section-team .th-section-head {
  position: relative;
  z-index: 1;
}

.th-section-team .th-section-head.__frist {
  padding-bottom: 72px;
}

.th-section-team .th-section-head.__frist p {
  display: none;
}

.th-section-team .th-section-head.__second p {
  margin-top: 0;
}

.th-section-team .th-typography-section {
  padding-bottom: 72px;
}

.th-section-team .th-typography-section .h3 {
  display: block;
  margin-right: -5px;
}

.th-section-team .th-arrows-wrap {
  margin-top: -20px;
}

.th-team-slider {
  width: calc(100% + 50px);
}

.th-team-slider .swiper-slide {
  width: 310px;
}

.th-team-slider .swiper-slide.swiper-slide-visible>* {
  opacity: 1;
}

.th-team-slider .swiper-slide.swiper-slide-next>* {
  opacity: 1;
}

.th-team-slider .swiper-slide.swiper-slide-visible>* {
  opacity: 1;
}

.th-team-slider-item {
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-team-slider-item img {
  display: block;
  width: 100%;
  border-radius: 8px;
}

.th-team-slider-item .__text {
  padding: 12px;
}

.th-team-slider-item span {
  display: block;
  border-radius: 25px;
  padding: 10px 16px;
  border: 1px solid rgba(255, 255, 255, 0.3215686275);
  color: rgba(255, 255, 255, 0.8);
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.th-team-slider-item i {
  font-style: normal;
  font-size: 16px;
  margin-top: 8px;
  display: block;
  color: rgba(255, 255, 255, 0.7);
}

.th-services-img img {
  width: 750px;
}

.th-services-title h1 {
  font-size: 105px;
}

.th-section-services-tabs {
  position: relative;
}

.th-section-services-tabs .th-typography-section .h2>i {
  margin-left: auto;
  display: block;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}

.th-section-services-tabs .th-typography-section .h2 span {
  display: inline-block;
}

.th-section-services-tabs .th-typography-section .h2 span i {
  font-style: normal;
  color: transparent;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-block;
  position: relative;
}

.th-section-services-tabs .th-typography-section .h2 span i.__n {
  background-image: url("../img/svg/n.svg");
  height: 46px;
  width: 158px;
  top: 23px;
}

.th-section-services-tabs::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 1000px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  height: 800px;
  opacity: 0.2;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(116, 71, 243, 0.25)), to(rgba(0, 249, 240, 0.5)));
  background: -o-linear-gradient(top, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.5) 100%);
  background: linear-gradient(180deg, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.5) 100%);
  -webkit-filter: blur(80px);
  filter: blur(80px);
  border-radius: 100%;
}

.th-services-tabs {
  margin-top: 64px;
}

.th-services-tabs-item-first {
  width: 212px;
  height: 186px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-weight: 600;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: #141414;
  position: relative;
  border-radius: 8px;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
}

.th-services-tabs-item-first .__ico {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 16px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.th-services-tabs-item-first .__ico img {
  width: 24px;
  max-width: 100%;
}

.th-services-tabs-item-first span {
  position: relative;
  z-index: 1;
}

.th-services-tabs-item-first::after {
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: 8px;
  position: absolute;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 249, 240, 0.18)), to(rgba(0, 249, 240, 0)));
  background: -o-linear-gradient(left, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  background: linear-gradient(90deg, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-services-tabs-item-step {
  height: 66px;
  padding: 0 12px 0 16px;
  background: #141414;
  border-radius: 8px;
  margin-bottom: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 17px;
  max-width: 284px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  position: relative;
  cursor: pointer;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.8);
  z-index: 3;
}

.th-services-tabs-item-step .__ico {
  border: 1px solid rgba(255, 255, 255, 0.2);
  width: 36px;
  height: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 36px;
  flex: 0 0 36px;
  border-radius: 8px;
  position: relative;
  z-index: 1;
  margin-right: 10px;
  opacity: 0.6;
}

.th-services-tabs-item-step .__ico img {
  display: block;
  padding: 2px;
  max-width: 100%;
  max-height: 100%;
}

.th-services-tabs-item-step .__ico.__no-img::after {
  content: "";
  border-radius: 100%;
  width: 12px;
  height: 12px;
  background: #20B8A2;
}

.th-services-tabs-item-step span {
  position: relative;
  z-index: 1;
  opacity: 0.6;
}

.th-services-tabs-item-step::after {
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: 8px;
  position: absolute;
  opacity: 0;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 249, 240, 0.18)), to(rgba(0, 249, 240, 0)));
  background: -o-linear-gradient(left, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  background: linear-gradient(90deg, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-services-tabs-item-step:hover::after {
  opacity: 0.5;
}

.th-services-tabs-item-step.__active {
  opacity: 1;
  z-index: 0;
  font-weight: 600;
  cursor: default;
}

.th-services-tabs-item-step.__active .__ico {
  border: 2px solid #20B8A2;
}

.th-services-tabs-item-step.__active span,
.th-services-tabs-item-step.__active .__ico {
  opacity: 1;
}

.th-services-tabs-item-step.__active::after {
  opacity: 1;
}

.th-services-tabs-item-last {
  padding: 24px;
  background: #141414;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.0588235294);
}

.th-services-tabs-item-last span {
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 16px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  letter-spacing: 0.02em;
  display: block;
}

.th-services-tabs-item-last br {
  display: none;
}

.th-services-tabs-item-last p {
  margin: 0;
}

.th-services-tabs-item-last a {
  border-radius: 8px;
  padding: 8px 16px;
  font-size: 17px;
  font-weight: 600;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.8);
  position: relative;
  display: block;
  margin-top: 8px;
  word-wrap: break-word;
  background: #111111;
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.th-services-tabs-item-last a i {
  font-style: normal;
  position: relative;
  z-index: 1;
}

.th-services-tabs-item-last a::after {
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: 8px;
  position: absolute;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 249, 240, 0.18)), to(rgba(0, 249, 240, 0)));
  background: -o-linear-gradient(left, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  background: linear-gradient(90deg, rgba(0, 249, 240, 0.18) 0%, rgba(0, 249, 240, 0) 100%);
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-services-tabs-item-last a:hover::after {
  opacity: 0.5;
}

.th-section-services-cases .th-typography-section .h2 {
  margin: 0 -10px;
}

.th-services-cases {
  margin-top: 60px;
}

.th-services-cases .th-grid {
  margin-top: -24px;
}

.th-services-cases .th-grid>div {
  margin-top: 24px;
}

.th-services-cases-item {
  display: block;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  height: 480px;
  background: rgba(255, 255, 255, 0.1);
}

.th-services-cases-item .__img {
  height: 100%;
  width: 100%;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-services-cases-item img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.th-services-cases-item i {
  font-style: normal;
  margin-bottom: 12px;
  font-size: 24px;
  color: #fff;
  opacity: 0.6;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-services-cases-item span {
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  color: #fff;
}

.th-services-cases-item:hover .__img {
  opacity: 0.85;
}

.th-services-cases-item:hover span {
  color: #20b8a2;
}

.th-services-cases-item:hover i {
  opacity: 0.9;
}

.th-services-cases-item:hover .th-btn-line {
  color: #20B8A2;
}

.th-services-cases-item:hover .th-btn-line::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='76' height='22' viewBox='0 0 76 22' fill='none'%3E%3Cpath d='M0.5 11H74M74 11L64 1M74 11L64 21' stroke='%2320B8A2' stroke-width='2'/%3E%3C/svg%3E");
}

.th-services-cases-item.__big .__text {
  padding: 56px 72px;
  position: absolute;
  left: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  top: 0;
}

.th-services-cases-item.__big .__text span {
  font-size: 50px;
  line-height: 0.95;
  max-width: -webkit-min-content;
  max-width: -moz-min-content;
  max-width: min-content;
}

.th-services-cases-item.__big .__text .th-btn-line {
  padding-top: 24px;
  margin-top: auto;
  margin-left: 0;
}

.th-services-cases-item.__big img {
  -o-object-position: center left;
  object-position: center left;
}

.th-services-cases-item.__min {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.th-services-cases-item.__min .__img {
  height: calc(100% - 56px);
}

.th-services-cases-item.__min img {
  -o-object-position: center;
  object-position: center;
  border-radius: 0 0 12px 12px;
}

.th-services-cases-item.__min .__text {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 56px;
  padding: 0 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-services-cases-item.__min .__text span {
  font-size: 24px;
  padding-top: 1px;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  padding-right: 10px;
}

.th-section-about-first {
  position: relative;
}

.th-section-about-first::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 1400px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  height: 950px;
  opacity: 0.3;
  margin-top: 100px;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(116, 71, 243, 0.25)), to(rgba(0, 249, 240, 0.5)));
  background: -o-linear-gradient(bottom, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.5) 100%);
  background: linear-gradient(0deg, rgba(116, 71, 243, 0.25) 0%, rgba(0, 249, 240, 0.5) 100%);
  -webkit-filter: blur(50px);
  filter: blur(50px);
  border-radius: 100%;
}

.th-section-about-first .th-about-first-head {
  text-align: center;
  padding-top: 100px;
}

.th-section-about-first .th-about-first-head h2 {
  font-size: 70px;
  line-height: 1;
  letter-spacing: -0.04em;
  margin: 0;
}

.th-section-about-first .th-about-first-head h2 span {
  color: #20B8A2;
}

.th-section-about-first .__item {
  margin-top: 64px;
}

.th-section-about-first .__item .__img {
  height: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 11px;
}

.th-section-about-first .__item img {
  display: block;
  margin-left: -23px;
  max-height: 210px;
}

.th-section-about-first .__item span {
  max-width: 265px;
  display: block;
}

.th-section-about-directions .th-section-inner {
  position: relative;
}

.th-section-about-directions .th-section-head {
  margin-bottom: 16px;
}

.th-section-about-directions .th-section-head h2 {
  margin-bottom: 16px;
}

.th-section-about-directions .th-typography-section {
  display: block;
  text-decoration: none;
  position: relative;
}

.th-section-about-directions .th-typography-section .__wrap {
  border-bottom: 1px solid #666;
  padding: 28px 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  position: relative;
  z-index: -1;
}

.th-section-about-directions .th-typography-section .__wrap::after {
  content: "";
  right: 40px;
  top: 44px;
  position: absolute;
  width: 40px;
  opacity: 0;
  height: 54px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("../img/svg/arrow-white-right.svg");
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-section-about-directions .th-typography-section .h2 {
  max-width: calc(100% - 88px);
}

.th-section-about-directions .th-typography-section .h3 {
  max-width: 1000px;
  display: none;
  opacity: 0;
}

.th-section-about-directions .th-typography-section .__img {
  position: absolute;
  right: 110px;
  top: 50%;
  z-index: -1;
  opacity: 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-section-about-directions .th-typography-section.__active .__wrap {
  padding: 44px;
}

.th-section-about-directions .th-typography-section.__active .h2 {
  margin-bottom: 36px;
}

.th-section-about-directions .th-typography-section.__active .h3 {
  display: block;
}

.th-section-about-directions .th-section-inner>.__img {
  position: absolute;
  right: 110px;
  top: 50%;
  z-index: -1;
  display: none;
}

.th-section-directions-2 .th-section-head {
  margin-bottom: 32px !important;
}

.th-section-directions-2 .th-typography-section .h2 {
  margin-bottom: 0 !important;
}

.th-section-directions-2 .th-typography-section .__wrap {
  padding: 24px 0 28px;
}

.th-section-directions-2 .th-typography-section .__wrap::after {
  top: 50%;
  margin-top: -27px;
  right: 28px;
}

.th-section-about-adv .th-typography-section {
  padding: 24px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

.th-section-about-adv .th-typography-section:first-of-type {
  padding-top: 0;
}

.th-section-about-adv .th-typography-section div.h3 {
  margin-bottom: 60px;
  position: relative;
  padding-right: 40px;
}

.th-section-about-adv .th-typography-section div.h3::after {
  content: "";
  width: 30px;
  height: 30px;
  border-radius: 100%;
  background: #fff;
  position: absolute;
  right: 0;
  top: 0;
}

.th-section-about-adv .th-typography-section p {
  margin: 0;
}

.th-about-slider-reviews {
  position: relative;
}

.th-about-slider-reviews .swiper-slide {
  width: 646px;
  height: auto;
  min-height: 100%;
}

.th-about-slider-reviews .swiper-slide.swiper-slide-active>* {
  opacity: 1;
}

.th-about-slider-reviews .swiper-slide.swiper-slide-next>* {
  opacity: 1;
}

.th-about-slider-reviews::after {
  content: "";
  position: absolute;
  width: 1200px;
  left: -1200px;
  height: 100%;
  top: 0;
  z-index: 2;
}

.th-about-slider-reviews-item {
  background: rgba(255, 255, 255, 0.1);
  padding: 42px 60px;
  opacity: 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-decoration: none;
  border-radius: 8px;
}

.th-about-slider-reviews-item img {
  display: block;
  height: 38px;
  width: auto;
  margin-bottom: 25px;
  margin-right: auto;
}

.th-about-slider-reviews-item .h3 {
  margin: 0 0 25px;
}

.th-about-slider-reviews-item p {
  margin: 0;
  color: rgba(255, 255, 255, 0.6);
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
}

.th-about-slider-reviews-item .th-btn-line {
  padding-top: 25px;
  margin-top: auto;
}

#text-rew {
  max-width: 800px;
}

#text-rew .h3 {
  padding-top: 10px;
  font-size: 24px;
}

.th-section-partners .th-section-head {
  padding-right: 20px;
}

.th-section-partners .th-col-9-xl {
  padding-top: 48px;
}

.th-section-partners .th-col-9-xl .th-grid {
  margin-top: -24px;
}

.th-section-partners .th-col-9-xl .th-grid>* {
  margin-top: 24px;
}

.th-partners-item .__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  border-radius: 8px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3);
  width: 100%;
  height: 312px;
  padding: 25px;
}

.th-partners-item .__img img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-partners-item span {
  font-size: 14px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 12px;
  font-weight: 500;
}

.th-partners-item span::before {
  content: "";
  border-radius: 100%;
  background: #fff;
  width: 8px;
  height: 8px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 8px;
  flex: 0 0 8px;
  margin-right: 4px;
}

.th-partners-item:hover .__img {
  background: #20B8A2;
  border-color: #20B8A2;
}

.th-partners-item:hover .__img img {
  -webkit-filter: brightness(0);
  filter: brightness(0);
}

.th-footer {
  margin-top: 190px;
}

.th-footer-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.th-footer-navigation>span {
  color: #fff;
  margin-bottom: 32px;
}

.th-footer-navigation ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  font-size: 16px;
}

.th-footer-navigation ul a {
  color: #fff;
  opacity: 0.6;
  line-height: 1;
  display: block;
  text-decoration: none;
}

.th-footer-navigation ul a:hover {
  opacity: 1;
}

.th-footer-navigation ul li {
  margin-bottom: 16px;
}

.th-footer-contacts {
  color: #fff;
  font-weight: 500;
  line-height: 1.4;
}

.th-footer-end {
  padding: 54px 0 24px;
}

.th-footer-logo img {
  display: block;
  width: 512px;
  max-width: 100%;
}

.th-footer-coperat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
  padding-top: 24px;
}

.th-footer-coperat span {
  color: #fff;
  opacity: 0.6;
  font-size: 16px;
}

.th-footer-links {
  padding-top: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
}

.th-footer-links a {
  margin-top: 16px;
  color: #fff;
  opacity: 0.6;
  font-size: 16px;
}

.th-footer-links a:hover {
  opacity: 0.8;
  text-decoration: none;
}

.th-footer-links a:first-of-type {
  margin-top: 0;
}

.th-no-support-webp .th-404 {
  background-image: url("../img/404-bg.png");
}

.th-404 {
  text-align: center;
  position: relative;
  padding-bottom: 220px;
  padding-top: 100px;
  background-size: cover;
  background-position: center center;
}

.th-404 img {
  margin: 0 auto 30px;
  padding-right: 35px;
  display: block;
  max-width: 100%;
}

.th-404 span {
  color: #12223B;
  font-size: 37px;
  font-weight: bold;
}

.th-404 p {
  line-height: 1.6;
  margin-bottom: 50px;
}

.th-no-support-webp .th-404::before {
  background-image: url("../img/layout/advantage/advantage-line.png");
}

.th-404::before {
  content: "";
  position: absolute;
  bottom: 0;
  border-top: 1px solid #E0E0E0;
  right: 0;
  width: 100%;
  height: 57px;
}

.th-404 .th-section-head-page {
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

.th-404 .th-btn {
  margin: 0 5px;
}

.th-block {
  margin-bottom: 192px;
  height: auto !important;
}

.th-front-page {
  min-height: 1200px;
}

.th-front-banner__home {
  text-align: center;
  height: 880px;
  padding-top: 100px;
  position: relative;
}

.th-front-banner__home .th-section-inner {
  display: block !important;
}

.th-pages__blocks {
  position: relative;
}

.th-pages__block-info {
  display: flex;
  align-items: flex-end;
  position: absolute;
  right: -10px;
  bottom: -70px;
  width: 43%;
  z-index: 40;
}

.th-pages__block-text {
  max-width: 214px;
  width: 100%;
  display: block;
  transform: rotate(13deg);
  font-size: 21px;
  animation: textAnimate .8s infinite alternate linear;
}

@keyframes textAnimate {
  100% {
    opacity: 0.55;
  }
}

.th-pages__block-arrow {
  width: 119px;
  height: 46px;
  margin-right: -25px;
  animation: arrowAnimate .8s infinite alternate linear;
}

@keyframes arrowAnimate {
  100% {
    transform: translate(-15px, -15px) rotate(10deg);
  }
}

.th-pages__btn {
  width: 100%;
  max-width: 220px;
  height: 80px;
  display: flex;
  align-items: center;
  border-radius: 100px;
  padding: 18px;
  transition: background .4s ease;
  position: relative;
  margin: 0 auto;
  z-index: 1;
}

.th-pages__btn_normal {
  border: 18px solid #fff;
}

.th-pages__btn_active {
  background: url("../img/button-border-gradient.png") no-repeat center center / cover;
}

.th-pages__btn::before {
  content: '';
  width: 340px;
  height: 320px;
  position: absolute;
  left: -80px;
  top: -125px;
  z-index: -1;
  pointer-events: none;
}

.th-pages__btn_normal::before {
  background: url("../img/shadow-btn.png") no-repeat center center / cover;
}

.th-pages__btn_active::before {
  background: url("../img/shadow-btn-gradient.png") no-repeat center center / cover;
}

.th-pages__btn_hover:hover {
  border: none;
}

.th-pages__btn_hover.th-pages__btn_normal:hover {
  background: url("../img/button-border-gradient.png") no-repeat center center / cover;
}

.th-pages__btn_hover.th-pages__btn_active:hover {
  background: none;
  border: 18px solid #fff;
}

.th-pages__btn_hover.th-pages__btn_normal:hover::before,
.th-pages__btn_active::before {
  background: url("../img/shadow-btn-gradient.png") no-repeat center center / cover;
}

.th-pages__btn_hover.th-pages__btn_active:hover::before,
.th-pages__btn_normal::before {
  background: url("../img/shadow-btn.png") no-repeat center center / cover;
}

.th-pages__btn_hover.th-pages__btn_normal:hover .th-pages__btn-cursor,
.th-pages__btn_active .th-pages__btn-cursor {
  transform: translateX(140px);
  background: url("../img/circle-btn-gradient.png") no-repeat center center / cover;
}

.th-pages__btn_hover.th-pages__btn_active:hover .th-pages__btn-cursor,
.th-pages__btn_normal .th-pages__btn-cursor {
  transform: translateX(0);
  background: #fff;
}

.th-pages__btn-cursor {
  width: 30px;
  height: 30px;
  border-radius: 50px;
  display: block;
  position: relative;
  transition: transform .4s ease;
}

.th-pages__btn_normal .th-pages__btn-cursor {
  background: #fff;
}

.th-pages__btn_active .th-pages__btn-cursor {
  background: url('../img/circle-btn-gradient.png');
}

.th-pages__btn-cursor::before {
  content: '';
  position: absolute;
  width: 34px;
  height: 34px;
  right: -10px;
  bottom: -14px;
  background: url('../img/svg/cursor-btn.svg') no-repeat center center/cover;
}

.th-front-banner__home .th-pages__title {
  padding-top: 0;
}

.th-front-banner__home h1 {
  font-size: 210px;
  font-weight: normal;
}

.th-front-banner__home p {
  font-size: 25px;
}

.th-front-banner__home .th-pages__subtitle {
  padding-top: 115px;
  margin: 0 0 20px;
}

.th-front-banner__home .th-pages__text {
  margin: 34px 0;
}

.th-front-banner__home .th-pages__title {}

.th-pages__video {
  height: 615px;
}

.th-pages__iframe {
  width: 100%;
  height: 100%;
  border-radius: inherit;
}

.th-pages__video-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.th-pages__video-text {
  position: absolute;
  font-size: 76px;
  margin: 0;
  transform: rotate(40deg);
  top: 155px;
  right: 285px;
}

.th-pages__item {
  position: relative;
  width: 100%;
  background-color: rgba(217, 217, 217, 0.1);
  border-radius: 10px;
}

.th-front-banner__about {}

.th-pages__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 24px;
}

.th-pages__label {
  margin: 0;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  letter-spacing: 2%;
}

.th-front-banner__about .th-pages__title {
  padding-top: 0;
  max-width: 656px;
  width: 100%;

  font-size: 92px;
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  line-height: 0.8;
  margin: 0 0 60px;
  letter-spacing: -0.01em;
}

.th-front-banner__about .th-pages__title h2 {
  margin: 0;
}

.th-pages__about {
  min-height: 520px;
  padding: 48px 48px 27px;
  background-image: url("../img/main-banner-bg-about.png");
  background-repeat: no-repeat;
  background-position: 110% 150%;
  background-size: 500px 430px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

.th-pages__about-title {
  font-weight: 500;
  margin: 0;
  font-size: 40px;
  color: #fff;
  max-width: 404px;
}

.th-pages__about-descr {
  color: #fff;
  max-width: 543px;
  font-size: 24px;
  font-weight: normal;
  margin: 0;
}

.th-pages__about-block {
  font-size: 20px;
  max-width: 336px;
}

.th-pages__about-text {
  margin: 0 0 24px;
  font-weight: normal;
  color: rgba(255, 255, 255, 0.6);
}

.th-pages__about-list {
  padding: 0;
  margin: 0;
  padding-left: 20px;
}

.th-pages__about-item {
  color: #fff;
  font-weight: 500;
  margin-bottom: 16px;
}

.th-pages__about-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  color: #fff;
  margin: 0;
}

.th-pages__about-icon {
  width: 30px;
  height: 30px;
}

.th-front-banner__bottom {
  padding-bottom: 30px;
  position: relative;
}

.th-pages__bottom-title {
  font-size: 25px;
  margin-bottom: 74px;
  font-weight: normal;
  text-align: center;
}

.th-front-banner__home-slider {
  width: 840px;
  margin: 0 auto;
}

.th-front-banner__home-item {
  -webkit-transition: 1s 0.5s ease all;
  -o-transition: 1s 0.5s ease all;
  transition: 1s 0.5s ease all;
  width: 840px;
  position: relative;
  padding-top: 200px;
}

.th-front-banner__home-item img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  opacity: 0.4;
  width: 280px;
}

.th-front-banner__home-item .__full {
  -webkit-transition: 1s ease all;
  -o-transition: 1s ease all;
  transition: 1s ease all;
}

.th-front-banner__home-item .__full img {
  -webkit-transition: 1s ease all;
  -o-transition: 1s ease all;
  transition: 1s ease all;
}

.th-front-banner__home-item .__min {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: 0.5s ease all;
  -o-transition: 0.5s ease all;
  transition: 0.5s ease all;
}

.th-front-banner__home-item .__min img {
  opacity: 0.4;
  -webkit-transition: 0.5s ease all;
  -o-transition: 0.5s ease all;
  transition: 0.5s ease all;
}

.th-front-banner__home-item.swiper-slide-active {
  padding-top: 0;
}

.th-front-banner__home-item.swiper-slide-active img {
  width: 840px;
}

.th-front-banner__bottom .th-front-banner__home-item.swiper-slide-active img {
  width: 600px;
}

.th-front-banner__home-item.swiper-slide-active .__full img {
  opacity: 1;
}

.th-front-banner__home-item.swiper-slide-active .__min img {
  opacity: 0;
}

.th-front-banner__home-item.swiper-slide-prev .__full,
.th-front-banner__home-item.swiper-slide-prev .__min {
  left: auto;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.th-front-banner__home-item.swiper-slide-prev img {
  margin-right: 0;
}

.th-front-banner__home-item.swiper-slide-next .__full,
.th-front-banner__home-item.swiper-slide-next .__min {
  left: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.th-front-banner__home-item.swiper-slide-next img {
  margin-left: 0;
}

.th-front-banner__home-slider-text {
  position: absolute;
  bottom: 0;
  width: 100%;
  left: 0;
}

.th-front-banner__home-item-title .h1 {
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  font-size: 210px;
  line-height: 1;
  margin: 0 auto 35px;
  position: relative;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  -webkit-transition: 0.55s ease all;
  -o-transition: 0.55s ease all;
  transition: 0.55s ease all;
}

.th-front-banner__bottom .th-front-banner__home-item-text.swiper-slide-prev .th-front-banner__home-item-title .h1,
.th-front-banner__bottom .th-front-banner__home-item-text.swiper-slide-next .th-front-banner__home-item-title .h1 {
  opacity: 0
}

.th-front-banner__home-item-title .h1 a {
  opacity: 0;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(0, -40%);
  -ms-transform: translate(0, -40%);
  transform: translate(0, -40%);
  width: 100%;
  line-height: 0.6;
}

.th-front-banner__home-item-title .h1:hover {
  color: #20b8a2;
  text-shadow: 1px 1px 1px 1px #fff;
}

.th-front-banner__home-item-title p {
  font-size: 25px;
  max-width: 585px;
  line-height: 1.15;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  z-index: 99999;
}

.th-front-banner__bottom .th-front-banner__home-item-title p {
  gap: 14px;
  max-width: 800px;
}

.th-front-banner__home-item-title p i {
  margin: 0 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-front-banner__bottom .th-front-banner__home-item-title p i {
  margin: 0;
  font-style: normal;
}

.th-front-banner__home-item-title p i::before {
  content: "";
  position: relative;
  display: block;
  width: 8px;
  height: 8px;
  background: #fff;
  opacity: 0.8;
  border-radius: 100%;
}

.th-front-banner__bottom .th-front-banner__home-item-title p i::before {
  content: '→';
  opacity: 1;
  background: transparent;
  border-radius: 0;
  font-size: 36px;
  width: auto;
  height: auto;
}

.th-front-banner__home-item-title p span {
  margin: 4px 0;
}

.th-front-banner__bottom .th-front-banner__home-item-title p>a {
  margin: 4px 0;
  border: 1px solid #8d8d8d;
  padding: 12px 18px;
  border-radius: 96px;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all .4s ease;
}

.th-front-banner__bottom .th-front-banner__home-item-title p>a:hover {
  background-color: #39E9D0;
  border-color: #39E9D0;
  color: #000;
}

.th-front-banner__home-item-text-3 .h1 {
  font-size: 180px;
}

#cube {
  height: 126px;
  width: 126px;
  margin-top: -9px;
  margin-left: -9px;
  background: rgba(255, 255, 255, 0.062745098);
  z-index: 2;
  position: fixed;
  -webkit-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
  transition: 0.15s linear all;
  top: -160px;
  left: -160px;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  overflow: hidden;
  border-radius: 50%;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.0901960784);
}

#cube a {
  position: absolute;
  left: 0;
  z-index: 3;
  top: 0;
  width: 100%;
  height: 100%;
  display: none;
  background-image: url("../img/svg/pointe.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 56px;
  -webkit-filter: brightness(10);
  filter: brightness(10);
  cursor: pointer;
}

#cube .th-slider-arrow-wrap {
  height: 100%;
  -webkit-transition: 0.45s ease all;
  -o-transition: 0.45s ease all;
  transition: 0.45s ease all;
}

#cube .th-arrow {
  height: 100%;
  display: none;
  background-image: url("../img/svg/chevron-right.svg");
  background-position: center;
  background-repeat: no-repeat;
}

#cube .th-arrow-left {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

#cube:active .th-slider-arrow-wrap {
  background: rgba(255, 255, 255, 0.2392156863);
}

.th-front-banner__home-item-3 img {
  -webkit-animation: banner_3_img_1 11s 0.1s ease forwards, banner_3_img_1_2 8s 11s ease infinite;
  animation: banner_3_img_1 11s 0.1s ease forwards, banner_3_img_1_2 8s 11s ease infinite;
  -webkit-transform: translate(-45%, 45%);
  -ms-transform: translate(-45%, 45%);
  transform: translate(-45%, 45%);
}

.th-front-banner__home-item-text-3 .h1 {
  -webkit-animation: banner_1_text_1 7.5s ease forwards;
  animation: banner_1_text_1 7.5s ease forwards;
}

@-webkit-keyframes banner_3_img_1 {
  1% {
    -webkit-transform: translate(-45%, 45%);
    transform: translate(-45%, 45%);
  }

  50% {
    -webkit-transform: translate(10%, -10%) rotate(-15deg);
    transform: translate(10%, -10%) rotate(-15deg);
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@keyframes banner_3_img_1 {
  1% {
    -webkit-transform: translate(-45%, 45%);
    transform: translate(-45%, 45%);
  }

  50% {
    -webkit-transform: translate(10%, -10%) rotate(-15deg);
    transform: translate(10%, -10%) rotate(-15deg);
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@-webkit-keyframes banner_3_img_1_2 {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }

  20% {
    -webkit-transform: translate(-5%, 5%) rotate(-3deg);
    transform: translate(-5%, 5%) rotate(-3deg);
  }

  40% {
    -webkit-transform: translate(-10%, 1%) rotate(1deg);
    transform: translate(-10%, 1%) rotate(1deg);
  }

  60% {
    -webkit-transform: translate(-5%, 6%) rotate(5deg);
    transform: translate(-5%, 6%) rotate(5deg);
  }

  80% {
    -webkit-transform: translate(6%, -4%) rotate(8deg);
    transform: translate(6%, -4%) rotate(8deg);
  }

  100% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }
}

@keyframes banner_3_img_1_2 {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }

  20% {
    -webkit-transform: translate(-5%, 5%) rotate(-3deg);
    transform: translate(-5%, 5%) rotate(-3deg);
  }

  40% {
    -webkit-transform: translate(-10%, 1%) rotate(1deg);
    transform: translate(-10%, 1%) rotate(1deg);
  }

  60% {
    -webkit-transform: translate(-5%, 6%) rotate(5deg);
    transform: translate(-5%, 6%) rotate(5deg);
  }

  80% {
    -webkit-transform: translate(6%, -4%) rotate(8deg);
    transform: translate(6%, -4%) rotate(8deg);
  }

  100% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }
}

.th-front-banner__home-item-2 img {
  -webkit-animation: banner_2_img_1 45s linear infinite;
  animation: banner_2_img_1 45s linear infinite;
}

.th-front-banner__home-item-text-2 .h1 {
  -webkit-animation: banner_1_text_1 7.5s ease forwards;
  animation: banner_1_text_1 7.5s ease forwards;
}

@-webkit-keyframes banner_2_img_1 {
  0% {
    -webkit-transform: rotate(0deg) translate(0, 0);
    transform: rotate(0deg) translate(0, 0);
  }

  25% {
    -webkit-transform: rotate(90deg) translate(-10%, 10%);
    transform: rotate(90deg) translate(-10%, 10%);
  }

  50% {
    -webkit-transform: rotate(180deg) translate(-5%, 5%);
    transform: rotate(180deg) translate(-5%, 5%);
  }

  75% {
    -webkit-transform: rotate(270deg) translate(10%, -10%);
    transform: rotate(270deg) translate(10%, -10%);
  }

  100% {
    -webkit-transform: rotate(360deg) translate(0, 0);
    transform: rotate(360deg) translate(0, 0);
  }
}

@keyframes banner_2_img_1 {
  0% {
    -webkit-transform: rotate(0deg) translate(0, 0);
    transform: rotate(0deg) translate(0, 0);
  }

  25% {
    -webkit-transform: rotate(90deg) translate(-10%, 10%);
    transform: rotate(90deg) translate(-10%, 10%);
  }

  50% {
    -webkit-transform: rotate(180deg) translate(-5%, 5%);
    transform: rotate(180deg) translate(-5%, 5%);
  }

  75% {
    -webkit-transform: rotate(270deg) translate(10%, -10%);
    transform: rotate(270deg) translate(10%, -10%);
  }

  100% {
    -webkit-transform: rotate(360deg) translate(0, 0);
    transform: rotate(360deg) translate(0, 0);
  }
}

.th-front-banner__home-item-1 img {
  -webkit-animation: banner_1_img_1 30s ease infinite;
  animation: banner_1_img_1 30s ease infinite;
}

.th-front-banner__home-item-text-1 .h1 {
  -webkit-animation: banner_1_text_1 7s ease forwards;
  animation: banner_1_text_1 7s ease forwards;
}

.th-front-banner__home-item-text-1 p {
  -webkit-animation: banner_1_text_2 8s ease forwards;
  animation: banner_1_text_2 8s ease forwards;
}

@-webkit-keyframes banner_1_img_1 {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }

  20% {
    -webkit-transform: translate(-2%, -2%) rotate(-10deg);
    transform: translate(-2%, -2%) rotate(-10deg);
  }

  40% {
    -webkit-transform: translate(1%, 1%) rotate(5deg);
    transform: translate(1%, 1%) rotate(5deg);
  }

  60% {
    -webkit-transform: translate(-5%, -5%) rotate(20deg);
    transform: translate(-5%, -5%) rotate(20deg);
  }

  80% {
    -webkit-transform: translate(1%, 1%) rotate(10deg);
    transform: translate(1%, 1%) rotate(10deg);
  }

  100% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }
}

@keyframes banner_1_img_1 {
  0% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }

  20% {
    -webkit-transform: translate(-2%, -2%) rotate(-10deg);
    transform: translate(-2%, -2%) rotate(-10deg);
  }

  40% {
    -webkit-transform: translate(1%, 1%) rotate(5deg);
    transform: translate(1%, 1%) rotate(5deg);
  }

  60% {
    -webkit-transform: translate(-5%, -5%) rotate(20deg);
    transform: translate(-5%, -5%) rotate(20deg);
  }

  80% {
    -webkit-transform: translate(1%, 1%) rotate(10deg);
    transform: translate(1%, 1%) rotate(10deg);
  }

  100% {
    -webkit-transform: translate(0, 0) rotate(0);
    transform: translate(0, 0) rotate(0);
  }
}

@-webkit-keyframes banner_1_text_1 {
  0% {
    -webkit-transform: translate(0, 40%);
    transform: translate(0, 40%);
    opacity: 0.5;
  }

  70% {
    -webkit-transform: translate(0, -10%);
    transform: translate(0, -10%);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@keyframes banner_1_text_1 {
  0% {
    -webkit-transform: translate(0, 40%);
    transform: translate(0, 40%);
    opacity: 0.5;
  }

  70% {
    -webkit-transform: translate(0, -10%);
    transform: translate(0, -10%);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@-webkit-keyframes banner_1_text_2 {
  0% {
    -webkit-transform: translate(0, 60%);
    transform: translate(0, 60%);
    opacity: 0.5;
  }

  70% {
    -webkit-transform: translate(0, -20%);
    transform: translate(0, -20%);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@keyframes banner_1_text_2 {
  0% {
    -webkit-transform: translate(0, 60%);
    transform: translate(0, 60%);
    opacity: 0.5;
  }

  70% {
    -webkit-transform: translate(0, -20%);
    transform: translate(0, -20%);
    opacity: 1;
  }

  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

.th-pages__title-wrap {
  margin-bottom: 72px;
}

.th-pages__title {
  padding-top: 190px;
}

.th-pages__title h1,
.th-pages__title h2 {
  font-size: 92px;
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  line-height: 0.8;
  margin: 0 0 60px;
  letter-spacing: -0.01em;
}

.th-archive-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -8px;
}

.th-archive-tags a {
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  color: #fff;
  border-radius: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 52px;
  padding: 0 16px;
  text-decoration: none;
  background: rgba(0, 0, 0, 0.2);
  margin-right: 8px;
  margin-top: 8px;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-archive-tags a:hover {
  background: rgba(0, 0, 0, 0.45);
  color: #20b8a2;
}

.th-archive-tags a.__active {
  background: #fff;
  font-weight: 500;
  color: #000;
}

.th-main-about:after {
  z-index: -2;
}

.th-main-about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 1200px;
  background: -o-radial-gradient(50% 5%, 60% 100%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.9) 100%);
  background: radial-gradient(60% 100% at 50% 5%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.9) 100%);
}

.th-about-banner-content {
  position: relative;
  padding-top: 30px;
  padding-bottom: 260px;
}

.th-about-banner-slider {
  padding-left: 140px;
  padding-right: 140px;
}

.th-about-banner-slider .swiper-slide.swiper-slide-active>div .__text,
.th-about-banner-slider .swiper-slide.swiper-slide-prev>div .__text {
  margin-left: auto;
}

.th-about-banner-slider .swiper-slide.swiper-slide-active>div {
  opacity: 1;
}

.th-about-banner-slider .swiper-slide.swiper-slide-prev .__text {
  margin-right: -300px;
}

.th-about-banner-slider .swiper-slide.swiper-slide-next .__text {
  margin-right: auto;
  margin-left: 0;
}

.th-about-banner-slider .__img {
  width: 100%;
  position: absolute;
  top: 30px;
  left: 140px;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  background: #000;
  width: 470px;
  height: 375px;
  mix-blend-mode: lighten;
}

.th-about-banner-slider .__img::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: -o-radial-gradient(54.01% 5.16%, 45.99% 100.82%, rgba(0, 0, 0, 0) 0%, #000000 100%);
  background: radial-gradient(45.99% 100.82% at 54.01% 5.16%, rgba(0, 0, 0, 0) 0%, #000000 100%);
}

.th-about-banner-slider .__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.th-about-banner-slider-item {
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  min-height: 400px;
  opacity: 0.25;
}

.th-about-banner-slider-item .__text {
  margin-top: auto;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-left: 0;
}

.th-about-banner-slider-item .h3 {
  line-height: 1.1;
  font-size: 36px;
  max-width: 505px;
  margin: 0 0 24px;
  font-weight: 500;
  color: #fff;
}

.th-about-banner-slider-item i {
  font-style: normal;
  opacity: 0.7;
  font-size: 14px;
  max-width: 310px;
  color: #fff;
}

.th-about-banner-years {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 95px;
  padding-left: 11px;
}

.th-about-banner-year-item {
  opacity: 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  width: 100%;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  position: relative;
}

.th-about-banner-year-item span {
  margin-left: -15px;
  background: rgba(21, 21, 21, 0.0784313725);
  border-radius: 25px;
  border: 1px solid rgba(255, 255, 255, 0.2392156863);
  padding: 6px 15px 6px 6px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  position: absolute;
  left: 0;
  top: 0;
}

.th-about-banner-year-item span i {
  font-style: normal;
  margin-right: 10px;
  border-radius: 25px;
  background: #fff;
  font-weight: 500;
  color: #000;
  font-size: 20px;
  padding: 1px 10px;
}

.th-about-banner-year-item:last-of-type {
  opacity: 1;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.th-about-banner-year-item.__active {
  opacity: 1;
}

.swiper-pagination {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: hidden;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 15px 0 15px 15px;
}

.swiper-pagination-bullet {
  width: 100%;
  height: 1px;
  border-radius: 0;
  opacity: 1;
  position: relative;
  margin: 0 !important;
  background: rgba(255, 255, 255, 0.3);
}

.swiper-pagination-bullet::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}

.swiper-pagination-bullet::after {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  background-image: url("../img/svg/elips.svg");
  background-size: 11px;
  background-repeat: no-repeat;
  background-position: center;
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -15px;
  margin-left: -15px;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.swiper-pagination-bullet:hover::after {
  background-size: 15px;
}

.swiper-pagination-bullet-active::before {
  background-color: #fff;
  -webkit-animation: slideprogress 5s cubic-bezier(0.3, 0, 0.3, 1) forwards;
  animation: slideprogress 5s cubic-bezier(0.3, 0, 0.3, 1) forwards;
}

.swiper-paused .swiper-pagination-bullet-active::before {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

.swiper-pagination-bullet-active::after {
  background-size: 30px !important;
}

@-webkit-keyframes slideprogress {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideprogress {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.th-archive-wrap .th-grid {
  margin-top: -36px;
}

.th-archive-wrap .th-grid>div {
  margin-top: 36px;
}

.th-archive-item .__img {
  background: #141414;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.17);
  margin-bottom: 16px;
  position: relative;
  display: block;
}

.th-archive-item .__img::after {
  content: "";
  background-blend-mode: color;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.12)), color-stop(73.5%, rgba(32, 184, 162, 0.12)));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0.12) 0%, rgba(32, 184, 162, 0.12) 73.5%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(32, 184, 162, 0.12) 73.5%);
}

.th-archive-item .__img::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgb(0, 0, 0);
  opacity: 0;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-archive-item .__img img {
  display: block;
  width: 100%;
}

.th-archive-item .__img:hover::before {
  opacity: 0.3;
}

.th-archive-item .h3 {
  text-decoration: none;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-archive-item .h3:hover {
  color: rgba(32, 184, 162, 0.9);
}

.th-archive-item .__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 14px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 8px;
}

.th-archive-item .__tags a {
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-archive-item .__tags a::after {
  content: "";
  margin: 0 8px;
  width: 4px;
  height: 4px;
  background: #D9D9D9;
  border-radius: 100%;
}

.th-archive-item .__tags a:hover {
  color: rgba(255, 255, 255, 0.95);
}

.th-archive-item .__tags a:last-of-type::after {
  display: none;
}

.th-archive-item .__img {
  position: relative;
  overflow: inherit;
  background-blend-mode: saturation;
}

.th-archive-item img {
  border-radius: 8px;
}

.th-archive-item .__img::after {
  z-index: 2;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  background-color: #000;
  opacity: 0;
  border-radius: 8px;
}

.th-archive-item .__img::before {
  content: "";
  position: absolute;
  left: 0;
  z-index: 3;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/svg/add.svg") no-repeat center center/40px 40px;
  opacity: 0;
  -webkit-transition: 0.5s ease all;
  -o-transition: 0.5s ease all;
  transition: 0.5s ease all;
  border-radius: 8px;
}

.th-archive-item .__img:hover::before {
  opacity: 1;
}

.th-archive-item .__img:hover::after {
  opacity: 0.5;
}

.th-archive-item .__img {
  -webkit-transition: 0.25s ease filter, 0.25s 0.25s ease transform;
  -o-transition: 0.25s ease filter, 0.25s 0.25s ease transform;
  transition: 0.25s ease filter, 0.25s 0.25s ease transform;
}

.th-archive-item img {
  -webkit-transition: 0.25s ease filter, 0.25s 0.25s ease transform;
  -o-transition: 0.25s ease filter, 0.25s 0.25s ease transform;
  transition: 0.25s ease filter, 0.25s 0.25s ease transform;
}

.th-archive-item .__img:hover {
  -webkit-transform: scale(1.035);
  -ms-transform: scale(1.035);
  transform: scale(1.035);
}

/* .th-archive-item .__img:hover img {
  -webkit-filter: grayscale(1);
  filter: grayscale(1); */
/* } */

.th-single-cases-title-wrap {
  padding-top: 120px;
}

.th-single-cases-back {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
}

.th-single-cases-back .th-btn-line {
  margin-bottom: 16px;
  font-weight: 400;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
  margin-left: 0;
}

.th-single-cases-back .th-btn-line::after {
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
  margin-right: 10px;
  margin-left: 0;
}

.th-single-cases-title-img {
  background: #141414;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 32px;
  position: relative;
  display: block;
}

.th-single-cases-title-img::after {
  content: "";
  background-blend-mode: color;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.12)), color-stop(73.5%, rgba(32, 184, 162, 0.12)));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0.12) 0%, rgba(32, 184, 162, 0.12) 73.5%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(32, 184, 162, 0.12) 73.5%);
}

.th-single-cases-title-img img {
  width: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
}

.th-single-cases-title-info {
  margin-top: 48px;
  padding-top: 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.th-single-cases-title-info .th-section-head {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  padding-bottom: 24px;
  padding-top: 42px;
  height: 100%;
  margin-bottom: 0;
}

.th-single-cases-title-info .th-section-head h2 {
  margin-bottom: 24px;
}

.th-single-cases-title-info .th-section-head p {
  margin-top: 6px;
  color: #fff;
}

.th-single-cases-title-info .th-section-head a {
  color: #fff;
  text-decoration: none;
}

.th-single-cases-title-info .th-section-head-first {
  border: none;
}

.th-single-cases-block {
  margin-top: 70px;
}

.th-single-cases-content>* {
  margin: 24px 0;
  color: #fff;
}

.th-single-cases-content>*:first-child {
  margin-top: 0;
}

.th-single-cases-content>*:last-child {
  margin-bottom: 0;
}

.th-single-cases-content h2 {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
  margin: 0 0 32px;
}

.th-single-cases-content a {
  color: #fff;
}

.th-single-cases-content ul,
.th-single-cases-content ol {
  padding-left: 35px;
  font-weight: 500;
}

.th-single-cases-content ul li,
.th-single-cases-content ol li {
  margin: 8px 0;
}

.th-single-cases-content ul li:last-of-type,
.th-single-cases-content ol li:last-of-type {
  margin-bottom: 0;
}

.th-single-cases-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 70px;
}

.th-single-cases-gallery>* {
  width: calc(50% - 10px);
}

.th-single-cases-gallery>*:last-of-type:first-of-type {
  width: 100%;
}

.th-single-cases-gallery>*:nth-of-type(3n):last-of-type {
  width: 100%;
}

.th-single-cases-gallery>*:hover img {
  opacity: 0.7;
}

.th-single-cases-gallery img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  width: 100%;
  border-radius: 12px;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-single-cases-gallery-with-text .th-single-cases-gallery {
  margin-top: 0;
  margin-bottom: 30px;
}

.th-pages__title-services {
  margin-top: 30px;
}

.th-pages__title-services h1 {
  margin: 0 !important;
}

.th-pages__title-services p {
  margin: auto 0 0;
}

.th-page-services-discr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}

.th-section-page-services-video .th-typography-section .th-section-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 38px -12px 0;
}

.th-section-page-services-video .th-typography-section .th-section-head p {
  font-size: 14px;
  width: 50%;
  padding: 12px;
  margin: 0;
}

.th-page-services-video {
  border-radius: 24px;
  overflow: hidden;
  display: block;
  position: relative;
  margin-top: 50px;
}

.th-page-services-video img {
  display: block;
  width: 100%;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-page-services-video span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  max-width: 100%;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  top: 50%;
  left: 50%;
  max-width: 100%;
  padding: 16px 36px;
  font-size: 36px;
  font-weight: 600;
  border-radius: 50px;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.th-page-services-video span .__ico {
  width: 66px;
  height: 66px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 66px;
  flex: 0 0 66px;
  margin: 0 16px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("../img/svg/play.svg");
}

.th-page-services-video span i {
  font-style: normal;
}

.th-page-services-video:hover img {
  opacity: 0.8;
}

.th-section-page-services-shema {
  margin-top: 0 !important;
  padding-top: 190px;
}

.th-page-services-shema {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.th-page-services-shema .__item {
  width: 100%;
  color: #fff;
  min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.th-page-services-shema .__item.__no-ptc {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  min-width: 100px;
}

.th-page-services-shema .__item .__title {
  font-weight: 500;
  font-size: 20px;
  margin-bottom: 12px;
}

.th-page-services-shema .__item .__wrap {
  padding-top: 8px;
  min-height: 320px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border-left: 1px solid rgba(255, 255, 255, 0.6);
  padding-bottom: 24px;
  background-repeat: no-repeat;
  background-position: left;
  top: 0;
  background-image: url("../img/svg/grid.svg");
  padding-right: 12px;
}

.th-page-services-shema .__item span {
  font-weight: 600;
  margin-top: 16px;
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: rgba(21, 21, 21, 0.0784313725);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  border: 1px solid rgba(255, 255, 255, 0.2392156863);
  padding: 6px 15px 6px 6px;
  border-radius: 25px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-left: 12px;
}

.th-page-services-shema .__item span i {
  width: 30px;
  height: 30px;
  font-style: normal;
  border-radius: 100%;
  background: #fff;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
  font-weight: 500;
  margin-right: 10px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30px;
  flex: 0 0 30px;
}

.th-page-services-shema .__item span:nth-of-type(2) {
  margin-left: 24px;
}

.th-page-services-shema .__item span:nth-of-type(3) {
  margin-left: 36px;
}

.th-page-services-shema .__item span:nth-of-type(4) {
  margin-left: 48px;
}

.th-page-services-shema .__item span:nth-of-type(5) {
  margin-left: 60px;
}

.th-section-page-services-shema .swiper-slide {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}

.th-section-page-services-shema .swiper-slide .__wrap {
  padding-right: 20px;
}

.th-section-page-services-work .th-section-head.__second p {
  margin: 0;
}

.th-page-services-work-item {
  padding: 56px 24px 0;
  max-width: 1500px;
  margin: 0 auto;
  border: 1px solid #666666;
  border-radius: 24px;
  margin-top: -1px;
}

.th-page-services-work-item:first-of-type {
  margin-top: 0;
}

.th-page-services-work-item .th-typography-section {
  margin-bottom: 56px;
}

.th-page-services-work-item .th-typography-section .h3 {
  font-weight: bold;
}

.th-page-services-work-repeats-plats {
  margin-bottom: 56px;
}

.th-page-services-work-repeats-plats .th-grid {
  margin-top: -24px;
}

.th-page-services-work-repeats-plats .th-grid>* {
  margin-top: 24px;
}

.th-page-services-work-repeats-plats .__item {
  min-height: 194px;
  height: 100%;
  border-radius: 12px;
  padding: 16px;
  background: rgba(255, 255, 255, 0.0784313725);
}

.th-page-services-work-repeats-plats .__item .__num {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 500;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #fff;
  font-size: 20px;
  color: #000;
}

.th-page-services-work-repeats-plats .__item i {
  font-weight: 600;
  color: #fff;
  display: block;
  font-style: normal;
  margin: 12px 0 6px;
}

.th-page-services-work-repeats-plats .__item span {
  font-size: 14px;
}

.th-page-services-work-repeats-tags {
  margin: -8px -8px 44px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.th-page-services-work-repeats-tags>* {
  color: #000;
  background: #fff;
  padding: 8px;
  font-size: 11px;
  margin: 8px 8px 0 0;
  font-weight: 700;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.th-page-services-work-repeats-tags a {
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-page-services-work-repeats-tags a:hover {
  background: #000;
  color: #fff;
}

.th-page-services-work-repeats-blog {
  margin-bottom: 56px;
}

.th-page-services-work-repeats-blog .th-grid {
  margin-top: -48px;
}

.th-page-services-work-repeats-blog .th-grid>* {
  margin-top: 48px;
}

.th-page-services-work-repeats-blog .__item {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}

.th-page-services-work-repeats-blog .__item:hover img {
  opacity: 0.8;
}

.th-page-services-work-repeats-blog .__item:hover i {
  opacity: 0.9;
}

.th-page-services-work-repeats-blog .__item i {
  font-size: 14px;
  opacity: 0.7;
  margin-bottom: 5px;
  font-style: normal;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
  margin-top: auto;
}

.th-page-services-work-repeats-blog .__item span {
  line-height: 1.1;
  font-weight: 600;
}

.th-page-services-work-repeats-blog .__item img {
  display: block;
  border-radius: 12px;
  margin-bottom: 24px;
  width: 100%;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-section-other-services .th-grid {
  margin-top: -24px;
}

.th-section-other-services .th-grid>* {
  margin-top: 24px;
}

.th-other-services-item {
  position: relative;
  height: 310px;
  background-color: #15191B;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 16px;
  border-radius: 12px;
  text-decoration: none;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-other-services-item span {
  margin-top: auto;
  font-weight: 600;
  color: #fff;
}

.th-other-services-item img {
  position: absolute;
  right: -24px;
  top: -24px;
  width: 168px;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-other-services-item:hover {
  background-color: #181818;
}

.th-other-services-item:hover img {
  top: -12px;
  right: -12px;
}

.th-blog-archive-wrap .th-archive-tags {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow: inherit;
  margin: 0;
  padding: 0;
  width: auto;
}

.th-blog-archive-wrap .th-archive-tags a {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  margin-bottom: 8px;
  width: 100%;
  min-width: auto;
  padding: 6px 16px;
  height: auto;
  min-height: 52px;
}

.th-blog-item {
  padding: 32px;
  border-radius: 8px;
  background: #1B2329;
  margin-top: 24px;
}

.th-blog-item:first-of-type {
  margin-top: 0;
}

.th-blog-item a {
  display: block;
  text-decoration: none;
  color: #fff;
  -webkit-transition: 0.25s ease all;
  -o-transition: 0.25s ease all;
  transition: 0.25s ease all;
}

.th-blog-item a:hover {
  opacity: 0.75;
}

.th-blog-item .h2 {
  font-size: 60px !important;
  margin: 0;
  padding-top: 32px;
  line-height: 0.9;
}

.th-blog-item .__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 14px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: -4px;
}

.th-blog-item .__tags a {
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.th-blog-item .__tags a::after {
  content: "";
  margin: 0 8px;
  width: 4px;
  height: 4px;
  background: #D9D9D9;
  border-radius: 100%;
}

.th-blog-item .__tags a:hover {
  color: rgba(255, 255, 255, 0.95);
}

.th-blog-item .__tags a:last-of-type::after {
  display: none;
}

.th-blog-item .__discr {
  padding-top: 32px;
  color: rgba(255, 255, 255, 0.8);
  -webkit-line-clamp: 4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.th-blog-item .__discr p {
  margin: 0;
}

.th-blog-item .__gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 32px;
}

.th-blog-item .__gallery .__img {
  padding-top: 32px;
  width: calc(50% - 16px);
}

.th-blog-item .__gallery .__img:first-of-type:last-of-type {
  width: 100%;
}

.th-blog-item .__gallery img {
  width: 100%;
  height: 270px;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
}

.th-blog-item .__last {
  padding-top: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.th-blog-item .__last a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 20px;
}

.th-blog-item .__last i {
  margin-right: 4px;
}

.th-blog-item .__last .__viev {
  margin-left: auto;
  margin-right: 0;
}

.th-blog-item .__title-rec {
  font-size: 24px;
  margin-bottom: 16px;
  padding-bottom: 32px;
  position: relative;
}

.th-blog-item .__title-rec::after {
  content: "";
  height: 1px;
  left: -32px;
  position: absolute;
  bottom: 0;
  display: block;
  width: calc(100% + 64px);
  background: #fff;
  opacity: 0.12;
}

.th-typography-single>*:first-child {
  margin-top: 0;
}

.th-typography-single>*:last-child {
  margin-bottom: 0;
}

.th-typography-single h1 {
  font-family: "NeueMachina", sans-serif;
  font-weight: 400;
  font-size: 60px;
  line-height: 0.9;
  margin: 16px 0 44px;
}

.th-typography-single h2 {
  font-size: 28px;
  margin: 44px 0;
  font-weight: 500;
}

.th-typography-single h3 {
  font-size: 24px;
  margin: 44px 0;
}

.th-typography-single p {
  margin: 24px 0;
}

.th-typography-single ul,
.th-typography-single ol {
  list-style-type: none;
  margin: 24px 0;
  padding: 0;
}

.th-typography-single ul li,
.th-typography-single ol li {
  margin: 6px 0 0;
}

.th-typography-single ul li::before,
.th-typography-single ol li::before {
  content: "•";
  margin-right: 6px;
}

.th-typography-single ol {
  list-style-type: none;
  counter-reset: num;
}

.th-typography-single ol li::before {
  content: counter(num) ".";
  counter-increment: num;
}

.th-typography-single blockquote {
  display: block;
  margin: 32px 0;
  padding-left: 32px;
  border-left: 8px solid #20B8A2;
}

.th-typography-single blockquote p {
  margin: 0;
}

.th-typography-single .th-single-cases-gallery {
  margin: 44px 0;
}

.th-typography-single .__last {
  padding-top: 0 !important;
  margin-top: 44px;
}

.th-chat {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 90px;
  height: 90px;
  background-color: #39E9D0;
  border-radius: 50%;
  z-index: 98;
  display: none;
}

.th-chat:hover {
  background-color: #39e9d0 !important;
}

.th-banner__home-slider-arrow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 999;
  transform: translateY(-50%);
}

.th-home-slider-arrow {
  width: 60px;
  height: 60px;
  background-color: #000;
  border-radius: 50%;
  box-shadow: 0 0 10px #686868;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all .4s ease;
  cursor: pointer;
}

.th-home-slider-arrow:hover {
  background-color: #39E9D0;
}

.th-home-slider-arrow:hover svg {
  fill: #000;
}

.th-home-slider-arrow-left {
  transform: rotate(180deg);
  margin-left: 30px;
}

.th-home-slider-arrow-right {
  margin-right: 30px;
}

.h1.th-slider-title {
  font-size: 150px;
}

.th-form-btn img {
  display: none;
}

.cursor {
  pointer-events: none;
  position: fixed;
  display: block;
  border-radius: 0;
  transform-origin: center center;
  top: 0;
  left: 0;
  z-index: 10000;
  filter: url("#goo");
  mix-blend-mode: difference;
}

.cursor span {
  position: absolute;
  display: block;
  width: 26px;
  height: 26px;
  border-radius: 20px;
  background-color: #39E9D0;
  transform-origin: center center;
  transform: translate(-50%, -50%);
}


.ink-icon {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

@media (min-width: 960px) {
  /* .th-header.__fixed {
    height: 60px;
  } */

  /* .th-header.__fixed .th-header-navigation-wrap {
    padding: 0;
    background: transparent;
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
  }

  .th-header.__fixed .th-header-navigation-wrap .th-btn {
    height: 36px;
    font-size: 16px;
  } */
}

@media (min-width: 1200px) {
  .th-section-about-directions .th-typography-section:hover .__wrap {
    padding: 38px;
    border-bottom: transparent;
    background: rgba(32, 184, 162, 0.25);
    border-radius: 24px;
    z-index: 1;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }

  .th-section-about-directions .th-typography-section:hover .__wrap::after {
    opacity: 1;
  }

  .th-section-about-directions .th-typography-section:hover .h2 {
    margin-bottom: 32px;
  }

  .th-section-about-directions .th-typography-section:hover .h3 {
    opacity: 1;
    display: block;
  }

  .th-section-about-directions .th-typography-section:hover .__img {
    opacity: 1;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .th-section-directions-2 .th-typography-section:hover .__wrap {
    padding: 24px 28px 28px;
  }
}

@media (min-width: 1440px) {
  .th-section-about-directions .th-typography-section:hover .__wrap {
    padding: 44px;
  }

  .th-section-about-directions .th-typography-section:hover .h2 {
    margin-bottom: 36px;
  }

  .th-section-directions-2 .th-typography-section:hover .__wrap {
    padding: 24px 28px 28px;
  }
}

@media (max-width: 1599.98px) {

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 80px;
  }

  .th-typography-section h3,
  .th-typography-section .h3 {
    font-size: 34px;
  }

  .th-btn-line::after {
    height: 16px;
    width: 60px;
    margin-left: 8px;
  }

  .th-col-6-xls {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-1-offset-xls {
    margin-left: 0;
  }

  .th-grid__sup-big-xls {
    margin-left: -20px;
    margin-right: -20px;
  }

  .th-grid__sup-big-xls>div {
    padding-left: 20px;
    padding-right: 20px;
  }

  .th-section {
    margin-top: 170px;
  }

  .th-section-services-tabs .th-typography-section .h2 {
    max-width: 900px;
    margin-left: auto;
  }

  .th-section-services-tabs .th-typography-section .h2 span i.__n {
    width: 140px;
    height: 44px;
    top: 18px;
  }

  .th-section-services-cases .th-typography-section .h2 {
    margin: 0;
  }

  .th-services-cases-item {
    height: 440px;
  }

  .th-section-about-first .th-about-first-head {
    padding-top: 70px;
  }

  .th-section-about-first .th-about-first-head h2 {
    font-size: 64px;
  }

  .th-section-about-directions .th-typography-section .h3 {
    max-width: 900px;
  }

  .th-section-about-directions .th-typography-section .__img img {
    height: 470px;
  }

  .th-section-directions-2 .th-typography-section .__img img {
    height: 390px;
  }

  .th-section-about-adv .th-typography-section div.h3 {
    margin-bottom: 48px;
  }

  .th-section-about-adv .th-typography-section div.h3::after {
    content: "";
    width: 28px;
    height: 28px;
  }

  .th-section-about-adv .th-typography-section p {
    margin: 0;
  }

  .th-about-slider-reviews .swiper-slide {
    width: 625px;
  }

  .th-about-slider-reviews-item {
    padding: 40px 50px;
  }

  #text-rew .h3 {
    font-size: 20px;
  }

  .th-footer {
    margin-top: 170px;
  }

  .th-front-banner__home {
    padding-top: 80px;
    height: 700px;
  }

  .th-front-banner__home-item {
    width: 700px;
    padding-top: 140px;
  }

  .th-front-banner__home-item img {
    width: 230px;
  }

  .th-front-banner__home-item.swiper-slide-active img {
    width: 700px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 160px;
    margin-bottom: 20px;
  }

  .th-front-banner__home-item-text p {
    font-size: 22px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 150px;
  }

  .th-pages__title {
    padding-top: 160px;
  }

  .th-pages__title h1 {
    margin-bottom: 45px;
    font-size: 80px;
  }

  .th-about-banner-content {
    padding-bottom: 170px;
    padding-top: 0;
  }

  .th-about-banner-slider .__img {
    width: 400px;
    height: 320px;
    left: 220px;
    top: 20px;
  }

  .th-about-banner-slider-item {
    min-height: 310px;
  }

  .th-about-banner-slider-item .h3 {
    font-size: 34px;
    max-width: 500px;
  }

  .th-about-banner-slider-item .__text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 500px;
    flex: 0 0 500px;
  }

  .th-single-cases-title-info {
    margin-top: 32px;
  }

  .th-page-services-work-item {
    max-width: 1400px;
  }

  .th-section-page-services-shema {
    padding-top: 170px;
  }
}

@media (max-width: 1439.98px) {
  body {
    font-size: 16px;
  }

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 72px;
    line-height: 0.85;
  }

  .th-typography-section h3,
  .th-typography-section .h3 {
    font-size: 30px;
  }

  .th-modal-wrap {
    padding: 36px;
  }

  .th-modla-title {
    font-size: 24px;
    padding-top: 12px;
  }

  .th-form .th-form-btn-wrap {
    margin-top: 40px;
  }

  .th-form-input-text {
    height: 56px;
  }

  textarea.th-form-input-text {
    height: 170px;
  }

  .th-btn-min {
    height: 40px;
    font-size: 16px;
    padding: 0 16px 1px;
  }

  .th-popup-contacts .__left {
    max-width: calc(100% - 530px);
  }

  .th-popup-contacts .__right {
    width: 530px;
  }

  .th-col-6-xls {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-1-offset-xls {
    margin-left: 0;
  }

  .th-grid__min-xls {
    margin-left: -4px;
    margin-right: -4px;
  }

  .th-grid__min-xls>div {
    padding-left: 4px;
    padding-right: 4px;
  }

  .th-section {
    margin-top: 150px;
  }

  .th-section-inner {
    max-width: 1200px;
  }

  .th-section-head p {
    font-size: 16px;
  }

  .th-header-inner {
    max-width: 1200px;
  }

  .th-header-logo img {
    width: 120px;
  }

  .th-header-navigation-wrap {
    padding: 10px 24px 10px 10px;
  }

  .th-header-navigation li {
    margin-left: 20px;
  }

  .th-header-social a {
    margin-right: 12px;
  }

  .th-header-social a i {
    width: 17px;
    height: 17px;
  }

  .th-header-social a i::before {
    width: 17px;
    height: 17px;
  }

  .th-front-banner {
    padding-top: 150px;
  }

  .th-front-banner h1 {
    font-size: 106px;
  }

  .th-front-banner p {
    max-width: 464px;
    font-size: 22px;
  }

  .th-front-banner.__banner-1 .__img {
    right: 100px;
    bottom: -120px;
  }

  .th-front-banner.__banner-1 .__img img {
    width: 640px;
  }

  .th-front-banner.__banner-2 .__img {
    right: -60px;
    bottom: 20px;
  }

  .th-front-banner.__banner-2 .__img img {
    width: 700px;
  }

  .th-front-banner.__banner-2 .th-front-banner__adv-wrap {
    padding-top: 45px;
  }

  .th-front-banner.__banner-2 p {
    max-width: 494px;
  }

  .th-front-banner.__banner-3 .th-front-banner__title {
    padding-bottom: 0;
  }

  .th-front-banner.__banner-3 .__img {
    right: 110px;
    bottom: -90px;
  }

  .th-front-banner.__banner-3 .__img img {
    width: 550px;
  }

  .th-front-banner__adv-item {
    min-height: 137px;
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
  }

  .th-front-banner__adv-item span {
    font-size: 42px;
  }

  .th-forst-banner-platworms {
    margin-bottom: -24px;
  }

  .th-forst-banner-platworms>* {
    margin: 0 24px 24px 0;
    font-size: 20px;
  }

  .th-forst-banner-platworms img {
    height: 26px;
  }

  .th-block-form {
    padding: 36px;
  }

  .th-block-form .__img {
    top: -145px;
    right: 35px;
  }

  .th-block-form .__img img {
    width: 400px;
  }

  .th-section-team .th-typography-section {
    padding-bottom: 64px;
  }

  .th-team-slider .swiper-slide {
    width: 270px;
  }

  .th-team-slider-item .__text {
    padding: 12px 6px 12px;
  }

  .th-team-slider-item i {
    font-size: 14px;
  }

  .th-section-services-tabs .th-typography-section .h2 {
    max-width: 830px;
  }

  .th-services-tabs-item-first {
    width: 196px;
    height: 166px;
  }

  .th-services-tabs-item-first .__ico {
    width: 48px;
    height: 48px;
    border-radius: 12px;
  }

  .th-services-tabs-item-step {
    height: 60px;
    font-size: 15px;
    max-width: 260px;
  }

  .th-services-tabs-item-step .__ico {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32px;
    flex: 0 0 32px;
    height: 32px;
  }

  .th-services-tabs-item-step .__ico.__no-img::after {
    width: 10px;
    height: 10px;
  }

  .th-services-tabs-item-step .__ico img {
    padding: 4px;
  }

  .th-services-cases-item {
    height: 410px;
  }

  .th-services-cases-item.__big .__text {
    padding: 40px 56px;
  }

  .th-services-cases-item.__big .__text i {
    font-size: 20px;
  }

  .th-services-cases-item.__big .__text span {
    font-size: 44px;
  }

  .th-services-cases-item.__min .__img {
    height: calc(100% - 50px);
  }

  .th-services-cases-item.__min .__text {
    height: 50px;
  }

  .th-services-cases-item.__min .__text span {
    font-size: 21px;
    padding-top: 0;
  }

  .th-section-about-first .th-about-first-head {
    padding-top: 40px;
  }

  .th-section-about-first .th-about-first-head h2 {
    font-size: 56px;
  }

  .th-section-about-first .__item {
    margin-top: 48px;
  }

  .th-section-about-first .__item .__img {
    height: 180px;
  }

  .th-section-about-first .__item img {
    height: 180px;
  }

  .th-section-about-first .__item span {
    max-width: 240px;
  }

  .th-section-about-directions .th-typography-section .h3 {
    max-width: 800px;
  }

  .th-section-about-directions .th-typography-section .__wrap {
    padding: 25px 0;
  }

  .th-section-about-directions .th-typography-section .__wrap::after {
    width: 34px;
    height: 44px;
    right: 30px;
  }

  .th-section-about-directions .th-typography-section .__img {
    right: 60px;
  }

  .th-section-about-directions .th-typography-section .__img img {
    height: 470px;
  }

  .th-section-directions-2 .th-typography-section .__wrap {
    padding: 24px 0 28px;
  }

  .th-section-directions-2 .th-typography-section .__img img {
    height: 360px;
  }

  .th-section-about-adv .th-typography-section div.h3::after {
    content: "";
    width: 24px;
    height: 24px;
  }

  .th-about-slider-reviews .swiper-slide {
    width: 540px;
  }

  .th-about-slider-reviews-item {
    padding: 32px 42px;
  }

  .th-about-slider-reviews-item img {
    height: 32px;
    margin-bottom: 21px;
  }

  .th-about-slider-reviews-item .h3 {
    margin-bottom: 21px;
  }

  .th-about-slider-reviews-item .th-btn-line {
    padding-top: 21px;
  }

  .th-section-partners .th-section-head {
    padding-right: 10px;
  }

  .th-partners-item .__img {
    height: 274px;
  }

  .th-footer {
    margin-top: 150px;
  }

  .th-footer-logo img {
    width: 460px;
  }

  .th-footer-coperat span {
    font-size: 14px;
  }

  .th-footer-links a {
    font-size: 14px;
  }

  .th-pages__title-wrap {
    margin-bottom: 50px;
  }

  .th-pages__title {
    padding-top: 140px;
  }

  .th-pages__title h1 {
    font-size: 72px;
    line-height: 0.85;
    margin-bottom: 40px;
  }

  .th-about-banner-content {
    padding-top: 0;
    padding-bottom: 130px;
  }

  .th-about-banner-slider {
    padding-left: 120px;
    padding-right: 120px;
  }

  .th-about-banner-slider .__img {
    top: 10px;
    width: 360px;
    height: 290px;
    left: 190px;
  }

  .th-about-banner-slider-item {
    min-height: 280px;
  }

  .th-about-banner-slider-item .h3 {
    font-size: 30px;
    max-width: 450px;
  }

  .th-about-banner-slider-item .__text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 450px;
    flex: 0 0 450px;
  }

  .swiper-pagination {
    padding-left: 11px;
  }

  .swiper-pagination-bullet::after {
    background-size: 8px;
  }

  .swiper-pagination-bullet:hover::after {
    background-size: 12px;
  }

  .swiper-pagination-bullet-active::after {
    background-size: 22px !important;
  }

  .th-about-banner-years {
    height: 85px;
  }

  .th-about-banner-year-item span {
    border-radius: 20px;
    font-size: 12px;
    padding: 5px 12px 5px 5px;
    margin-left: -11px;
  }

  .th-about-banner-year-item span i {
    font-size: 16px;
    letter-spacing: -0.01em;
    padding: 2px 8px 1px;
    border-radius: 20px;
    margin-right: 7px;
  }

  .th-archive-tags a {
    height: 46px;
  }

  .th-archive-item .__tags {
    font-size: 13px;
  }

  .th-single-cases-title-wrap {
    padding-top: 100px;
  }

  .th-single-cases-title-img img {
    max-height: 450px;
  }

  .th-single-cases-content h2 {
    font-size: 20px;
  }

  .th-section-page-services-video .th-typography-section .th-section-head {
    margin: 24px -12px 0;
  }

  .th-page-services-video {
    margin-top: 24px;
  }

  .th-page-services-video span {
    font-size: 32px;
    padding: 16px 30px;
  }

  .th-page-services-video span .__ico {
    width: 56px;
    height: 56px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 56px;
    flex: 0 0 56px;
    margin: 0 12px;
  }

  .th-page-services-shema .__item.__no-ptc {
    min-width: 90px;
  }

  .th-page-services-shema .__item .__title {
    font-size: 16px;
  }

  .th-page-services-shema .__item span {
    font-size: 12px;
    padding: 5px 10px 5px 5px;
  }

  .th-page-services-shema .__item span i {
    width: 24px;
    height: 24px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 24px;
    flex: 0 0 24px;
    font-size: 16px;
    margin-right: 6px;
  }

  .th-page-services-work-item {
    max-width: 1250px;
  }

  .th-page-services-work-repeats-plats .__item {
    padding: 14px 12px;
    min-height: 170px;
  }

  .th-page-services-work-repeats-plats .__item .__num {
    width: 28px;
    height: 28px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 28px;
    flex: 0 0 28px;
    font-size: 18px;
  }

  .th-page-services-work-repeats-plats .__item span {
    font-size: 13px;
  }

  .th-other-services-item {
    height: 270px;
  }

  .th-other-services-item img {
    width: 150px;
  }

  .th-section-page-services-shema {
    padding-top: 150px;
  }

  .th-blog-archive-wrap .th-archive-tags a {
    min-height: 46px;
  }

  .th-blog-item .h2 {
    font-size: 52px !important;
  }

  .th-blog-item .__last i::before {
    width: 22px;
    height: 22px;
  }

  .th-blog-item .__gallery {
    padding-top: 12px;
    gap: 24px;
  }

  .th-blog-item .__gallery .__img {
    width: calc(50% - 12px);
    padding-top: 24px;
  }

  .th-blog-item .__gallery img {
    height: 220px;
  }

  .th-blog-item .__tags {
    font-size: 13px;
  }

  .th-typography-single h1 {
    font-size: 48px;
    margin-bottom: 32px;
  }

  .th-typography-single h2 {
    font-size: 24px;
    margin: 32px 0;
  }

  .th-typography-single h3 {
    font-size: 21px;
    margin: 32px 0;
  }

  .th-typography-single p {
    margin: 16px 0 0;
  }

  .th-typography-single ol,
  .th-typography-single ul {
    margin: 24px 0;
  }

  .th-typography-single blockquote {
    padding-left: 24px;
    margin: 24px 0;
    border-width: 6px;
  }

  .th-typography-single .th-single-cases-gallery {
    margin: 32px 0;
  }
}

@media (max-width: 1365.98px) {
  .th-front-banner__home {
    padding-top: 60px;
    height: 600px;
  }
}

@media (max-width: 1199.98px) {

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 64px;
  }

  .th-typography-section h3,
  .th-typography-section .h3 {
    font-size: 28px;
  }

  main.th-main-page {
    padding-top: 86px;
  }

  .th-typography {
    font-size: 18px;
  }

  .th-typography h2 {
    font-size: 26px;
  }

  .th-typography h3 {
    font-size: 22px;
  }

  .th-typography p {
    font-size: 18px;
  }

  .th-typography ul,
  .th-typography ol {
    font-size: 18px;
  }

  .th-typography blockquote {
    font-size: 18px;
  }

  .th-page-sinlge-img {
    padding-top: 20px !important;
  }

  .th-page-sinlge-img img {
    max-height: 350px;
  }

  .th-modal-wrap {
    padding: 30px;
  }

  .th-form .th-form-btn-wrap {
    margin-top: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .th-form .th-form-btn-wrap .th-container-checkbox .text {
    font-size: 14px;
  }

  .th-form .th-form-btn-wrap .th-btn {
    width: 100%;
    margin-top: 16px;
    -webkit-box-flex: inherit;
    -ms-flex: inherit;
    flex: inherit;
    height: 45px;
  }

  .th-section-slider-with-arrow .th-section-head {
    padding-right: 20px;
  }

  .th-slider-with-arrow .th-arrows-wrap button {
    -webkit-backdrop-filter: initial;
    backdrop-filter: initial;
  }

  .th-breadcrumb {
    margin-top: 41px;
  }

  .__hidden-lgs {
    display: none !important;
  }

  .th-grid__big {
    margin-left: -15px;
    margin-right: -15px;
  }

  .th-grid__big>div {
    padding-left: 15px;
    padding-right: 15px;
  }

  .th-grid__sup-big-lgs {
    margin-left: -15px;
    margin-right: -15px;
  }

  .th-grid__sup-big-lgs>div {
    padding-left: 15px;
    padding-right: 15px;
  }

  .th-grid__min-lgs {
    margin-left: -8px;
    margin-right: -8px;
  }

  .th-grid__min-lgs>div {
    padding-left: 8px;
    padding-right: 8px;
  }

  .th-col-12-lgs {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-6-lgs {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-4-lgs {
    width: 33.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%;
  }

  .th-col-3-lgs {
    width: 25%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
  }

  .th-col-hid-lgs {
    display: none !important;
  }

  .th-col-0-offset-lgs {
    margin-left: 0;
  }

  .th-col-8-lgs {
    width: 66.66%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.66%;
    flex: 0 0 66.66%;
  }

  .th-col-7-lgs {
    width: 58.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33%;
    flex: 0 0 58.33%;
  }

  .th-col-5-lgs {
    width: 41.67%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.67%;
    flex: 0 0 41.67%;
  }

  .th-col-9-lgs {
    width: 75%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
  }

  .th-order-2-lgs {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-section-inner {
    max-width: 960px;
  }

  .th-section {
    margin-top: 140px;
  }

  .th-section-head p {
    font-size: 14px;
  }

  .th-front-banner {
    padding-top: 140px;
  }

  .th-front-banner h1 {
    font-size: 88px;
    margin-bottom: 35px;
  }

  .th-front-banner p {
    max-width: 420px;
    font-size: 20px;
    line-height: 1.3;
  }

  .th-front-banner.__banner-1 .__img {
    right: 80px;
    bottom: -110px;
  }

  .th-front-banner.__banner-1 .__img img {
    width: 580px;
  }

  .th-front-banner.__banner-2 .__img {
    right: -70px;
    bottom: 20px;
  }

  .th-front-banner.__banner-2 .__img img {
    width: 620px;
  }

  .th-front-banner.__banner-2 .th-front-banner__adv-wrap {
    padding-top: 35px;
  }

  .th-front-banner.__banner-2 p {
    max-width: 460px;
  }

  .th-front-banner.__banner-3 .__img {
    right: 90px;
    bottom: -70px;
  }

  .th-front-banner.__banner-3 .__img img {
    width: 490px;
  }

  .th-front-banner__adv-item {
    min-height: 125px;
    padding: 12px;
  }

  .th-front-banner__adv-item span {
    font-size: 38px;
  }

  .th-forst-banner-platworms {
    margin-bottom: -20px;
    padding-top: 25px;
  }

  .th-forst-banner-platworms>* {
    margin: 0 20px 20px 0;
    font-size: 18px;
  }

  .th-forst-banner-platworms img {
    height: 24px;
  }

  .th-block-form {
    padding: 30px;
  }

  .th-block-form::after {
    -webkit-filter: inherit;
    filter: inherit;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(116, 71, 243, 0)), color-stop(rgba(116, 71, 243, 0.2)), color-stop(rgba(0, 249, 240, 0.35)), to(rgba(0, 249, 240, 0)));
    background: -o-linear-gradient(bottom, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
    background: linear-gradient(0deg, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
    width: calc(100% + 400px);
    left: -200px;
    border-radius: 0;
  }

  .th-block-form .__img {
    top: -125px;
    right: 35px;
  }

  .th-block-form .__img img {
    width: 360px;
  }

  .th-block-form .th-modal-wrap {
    position: relative;
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
  }

  .th-section-team .th-section-head.__second {
    display: none;
  }

  .th-section-team .th-section-head.__frist p {
    display: block;
  }

  .th-section-team .th-typography-section {
    padding-bottom: 56px;
  }

  .th-team-slider {
    width: auto;
  }

  .th-section-services-tabs .th-typography-section .h2 span i.__n {
    width: 114px;
    height: 40px;
    top: 18px;
  }

  .th-section-services-tabs::after {
    -webkit-filter: inherit;
    filter: inherit;
    border-radius: 0;
    opacity: 0.4;
    width: 1400px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(116, 71, 243, 0)), color-stop(rgba(116, 71, 243, 0.2)), color-stop(rgba(0, 249, 240, 0.35)), to(rgba(0, 249, 240, 0)));
    background: -o-linear-gradient(top, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
    background: linear-gradient(180deg, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
  }

  .th-services-tabs {
    margin-top: 40px;
  }

  .th-services-tabs-item-first {
    margin-bottom: 32px;
    width: 260px;
    height: 60px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    padding: 0 12px 0 16px;
    font-size: 15px;
  }

  .th-services-tabs-item-first .__ico {
    margin: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32px;
    flex: 0 0 32px;
    height: 32px;
    border-radius: 8px;
    margin-right: 10px;
  }

  .th-services-tabs-item-first .__ico.__no-img::after {
    width: 10px;
    height: 10px;
  }

  .th-services-tabs-item-first .__ico img {
    padding: 5px;
    width: 100%;
  }

  .th-services-cases-item {
    height: 400px;
  }

  .th-services-cases-item.__big .__text i {
    font-size: 18px;
  }

  .th-services-cases-item.__big .__text span {
    font-size: 42px;
  }

  .th-services-cases-item.__min .__img {
    height: calc(100% - 48px);
  }

  .th-services-cases-item.__min .__text {
    height: 48px;
  }

  .th-services-cases-item.__min .__text span {
    font-size: 19px;
  }

  .th-section-about-first::after {
    -webkit-filter: inherit;
    filter: inherit;
    border-radius: 0;
    opacity: 0.6;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(116, 71, 243, 0)), color-stop(rgba(116, 71, 243, 0.2)), color-stop(rgba(0, 249, 240, 0.35)), to(rgba(0, 249, 240, 0)));
    background: -o-linear-gradient(bottom, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
    background: linear-gradient(0deg, rgba(116, 71, 243, 0), rgba(116, 71, 243, 0.2), rgba(0, 249, 240, 0.35), rgba(0, 249, 240, 0));
  }

  .th-section-about-first .__item {
    margin-top: 36px;
  }

  .th-section-about-first .__item .__img {
    height: 170px;
  }

  .th-section-about-first .__item img {
    height: 170px;
    margin-left: -15px;
  }

  .th-section-about-first .__item span {
    max-width: 240px;
    font-size: 14px;
  }

  .th-section-about-first .__item span br {
    display: none;
  }

  .th-section-about-directions .th-typography-section .h3 {
    max-width: none;
    font-size: 22px;
    font-weight: normal;
    opacity: 0.8;
    display: block;
  }

  .th-section-about-directions .th-typography-section .h2 {
    margin-bottom: 16px;
    font-size: 36px;
    max-width: none;
  }

  .th-section-about-directions .th-typography-section .__wrap {
    padding: 20px 40px 20px 0;
    z-index: 1;
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
  }

  .th-section-about-directions .th-typography-section .__wrap::after {
    width: 26px;
    height: 30px;
    right: 0;
    opacity: 1;
    top: 25px;
  }

  .th-section-about-directions .th-typography-section .__img {
    display: none;
    -webkit-filter: inherit;
    filter: inherit;
  }

  .th-section-about-directions .th-section-inner>.__img {
    top: 60px;
    display: block;
    opacity: 1;
    right: 40px;
  }

  .th-section-about-directions .th-section-inner>.__img img {
    -webkit-filter: blur(6px);
    filter: blur(6px);
    opacity: 0.7;
    right: 60px;
    height: 470px;
  }

  .th-section-directions-2 .th-typography-section .__wrap::after {
    top: 50% !important;
    margin-top: -15px;
  }

  .th-section-directions-2 .th-section-inner>.__img {
    top: 20px;
  }

  .th-section-directions-2 .th-section-inner>.__img img {
    height: 380px;
  }

  .th-about-slider-reviews .swiper-slide {
    width: 520px;
  }

  .th-partners-item .__img {
    height: 214px;
  }

  .th-partners-item .__img img {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
  }

  .th-footer {
    margin-top: 140px;
  }

  .th-footer-contacts {
    text-align: right;
  }

  .th-footer-end {
    padding-top: 42px;
  }

  .th-footer-logo img {
    width: 350px;
  }

  .th-front-banner__home-item-text {
    padding-top: 500px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 140px;
  }

  .th-front-banner__home-item-text p {
    font-size: 20px;
    max-width: 520px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 110px;
  }

  .th-pages__title {
    padding-top: 130px;
  }

  .th-pages__title h1 {
    font-size: 64px;
    line-height: 0.9;
  }

  .th-main-about::before {
    background: -o-radial-gradient(50% 5%, 60% 100%, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.9) 100%);
    background: radial-gradient(60% 100% at 50% 5%, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.9) 100%);
  }

  .th-about-banner-slider {
    padding-left: 60px;
    padding-right: 60px;
  }

  .th-about-banner-slider .swiper-slide.swiper-slide-prev .__text {
    margin-right: -100px;
  }

  .th-about-banner-slider .__img {
    width: 320px;
    height: 260px;
    left: 100px;
  }

  .th-about-banner-slider-item {
    min-height: 260px;
  }

  .th-about-banner-slider-item .__text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 410px;
    flex: 0 0 410px;
  }

  .th-about-banner-slider-item .h3 {
    font-size: 28px;
    max-width: 410px;
    margin-bottom: 16px;
  }

  .th-about-banner-year-item.__right span {
    right: 100%;
    left: auto;
    margin-left: 0;
    margin-right: -11px;
    padding: 5px 5px 5px 12px;
  }

  .th-about-banner-year-item.__right span i {
    margin-left: 7px;
    margin-right: 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-single-cases-title-info {
    padding-top: 0;
  }

  .th-single-cases-title-info .th-section-head {
    padding-top: 32px;
  }

  .th-section-page-services-video .th-typography-section .th-section-head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .th-section-page-services-video .th-typography-section .th-section-head p {
    width: 100%;
  }

  .th-page-services-video span {
    font-size: 26px;
    padding: 12px 24px;
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
    background: rgba(0, 0, 0, 0.6);
  }

  .th-page-services-video span .__ico {
    width: 46px;
    height: 46px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 46px;
    flex: 0 0 46px;
  }

  .th-section-page-services-shema .th-section-inner {
    max-width: 100%;
    padding: 0;
  }

  .th-page-services-shema {
    padding: 0 15px;
  }

  .th-page-services-shema::after {
    content: "";
    width: 30px;
    height: 30px;
    background-image: url("../img/icons8-drag-left.gif");
    background-size: contain;
    background-position: center;
    display: block;
    z-index: 2;
    position: absolute;
    bottom: 0;
    right: 10px;
    -webkit-filter: invert(1);
    filter: invert(1);
  }

  .th-page-services-work-item .th-typography-section {
    margin-bottom: 32px;
  }

  .th-page-services-work-item {
    border: none;
    padding: 0 0 32px;
    border-radius: 0;
  }

  .th-page-services-work-item:first-of-type {
    padding-top: 0;
  }

  .th-page-services-work-item:last-of-type {
    padding-bottom: 0;
  }

  .th-page-services-work-repeats-plats {
    margin-bottom: 32px;
  }

  .th-page-services-work-repeats-plats .th-grid {
    margin-top: -16px;
  }

  .th-page-services-work-repeats-plats .th-grid>* {
    margin-top: 16px;
  }

  .th-page-services-work-repeats-tags {
    margin-bottom: 32px;
  }

  .th-page-services-work-repeats-blog .th-grid {
    margin-top: -22px;
  }

  .th-page-services-work-repeats-blog .th-grid>* {
    margin-top: 22px;
  }

  .th-page-services-work-repeats-blog .__item img {
    margin-bottom: 16px;
  }

  .th-page-services-work-repeats-blog .__item span {
    line-height: 1.2;
  }

  .th-other-services-item {
    height: 240px;
    padding: 14px 12px;
  }

  .th-other-services-item img {
    width: 110px;
    right: -15px;
    top: -15px;
  }

  .th-blog-archive-wrap .th-archive-tags a {
    min-height: 42px;
    padding: 6px 12px;
  }

  .th-blog-item {
    padding: 24px;
  }

  .th-blog-item .h2 {
    font-size: 42px !important;
    padding-top: 24px;
  }

  .th-blog-item .__discr {
    padding-top: 24px;
  }

  .th-blog-item .__gallery {
    padding-top: 0;
  }

  .th-blog-item .__last {
    padding-top: 24px;
  }

  .th-blog-item .__last i::before {
    width: 20px;
    height: 20px;
    margin-right: 3px;
  }

  .th-blog-item .__title-rec {
    padding-bottom: 22px;
  }

  .th-blog-item .__title-rec::after {
    left: -24px;
    width: calc(100% + 48px);
  }

  .th-typography-single h1 {
    font-size: 36px;
    margin-bottom: 32px;
  }

  .th-typography-single h2 {
    font-size: 22px;
  }

  .th-typography-single h3 {
    font-size: 20px;
  }

  .th-typography-single blockquote {
    padding-left: 20px;
    border-width: 6px;
  }
}

@media (max-height: 519.98px) and (max-width: 1152px) {
  .th-header-navigation {
    padding-top: 80px !important;
    padding-bottom: 50px !important;
  }
}

@media (max-width: 1151.98px) {
  .th-header.__fixed {
    position: fixed;
    left: 0;
    top: 0;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0)));
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 100%);
  }

  .th-front-banner__home-item img {
    width: 200px;
  }

  .th-front-banner__bottom .th-front-banner__home-item.swiper-slide-active img {
    width: 280px;
  }

  .th-col-6-lg {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-12-lg {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-7-lg {
    width: 58.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33%;
    flex: 0 0 58.33%;
  }

  .th-col-5-lg {
    width: 41.67%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.67%;
    flex: 0 0 41.67%;
  }

  .th-order-2-lg {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-col-0-offset-lgs {
    margin-left: 0;
  }

  .th-header {
    padding: 15px 0;
  }

  .th-header.__fixed {
    -webkit-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
  }

  .th-header.__fixed .th-header-navigation-wrap {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
  }

  .th-header.__fixed._open {
    -webkit-backdrop-filter: inherit;
    backdrop-filter: inherit;
    background: #222;
  }

  .th-header-logo {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }

  .th-header-logo img {
    width: 135px;
  }

  .th-header-navigation-wrap {
    height: calc(100vh + 120px);
    padding-bottom: 240px;
    position: fixed;
    width: 100%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    overflow-y: scroll;
    overflow-x: hidden;
    left: 0;
    top: 0;
    display: none;
    opacity: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 0;
  }

  .th-header-navigation-wrap .th-header-inner {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }

  .th-header-navigation-wrap .th-header-mobile {
    display: block;
  }

  .th-header-navigation-wrap .th-navigation-btn-wrap {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }

  .th-header-navigation-wrap._open {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .th-header-navigation-wrap .th-header-social {
    padding-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .th-header-navigation-wrap .th-header-social a {
    margin-right: 12px;
  }

  .th-header-navigation-wrap .th-header-social a i {
    width: 20px;
    height: 20px;
  }

  .th-header-navigation-wrap .th-header-social a i::before {
    width: 20px;
    height: 20px;
  }

  .th-header-navigation {
    padding: 120px 0 60px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: auto;
    min-height: 100%;
    display: block;
    text-align: center;
    width: 100%;
  }

  .th-header-navigation a {
    height: auto;
    font-size: 20px;
    opacity: 0.8;
  }

  .th-header-navigation li {
    margin: 12px 0;
  }

  .th-header__left .th-header-btn-warp {
    display: block;
    margin-left: 14px;
  }

  .th-header-contact-item a {
    opacity: 0.9;
  }

  .th-hamburger-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .th-hamburger {
    height: 2px;
  }

  .th-header-mobile {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 15px;
  }

  .th-header-mobile .th-header-contact-item a {
    font-size: 18px;
  }

  .th-header-mobile .th-btn {
    width: 100%;
    height: 50px;
    max-width: 280px;
    font-size: 18px;
    margin-top: 12px;
    padding-bottom: 2px;
  }

  .th-404 span {
    font-size: 31px;
  }

  .th-front-banner__home .th-pages__subtitle {
    padding-top: 60px;
  }
}

@media (max-width: 1023.98px) {
  .cursor {
    display: none !important;
  }

  .th-block {
    margin-bottom: 100px;
  }

  .th-front-banner__home {
    padding-bottom: 30px;
  }

  .th-col-6-md {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-12-md {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }
}

@media (max-width: 959.98px) {
  body {
    font-size: 15px;
  }

  .th-front-banner__home-slider {
    width: 640px;
  }

  .th-pages__video {
    height: 420px;
  }

  .th-block {
    margin-bottom: 80px;
  }

  .th-front-banner__about .th-pages__title h2 {
    font-size: 52px;
    text-align: right;
  }

  .th-pages__about {
    display: flex;
    flex-direction: column;
    padding: 20px;
    background-position: 105% 140%;
    background-size: 245px 280px;
    min-height: 425px;
  }

  .th-pages__about-title {
    font-size: 30px;
    max-width: 100%;
    margin-bottom: 25px;
  }

  .th-pages__about-descr {
    max-width: 100%;
    font-size: 18px;
  }

  .th-pages__about-block {
    font-size: 16px;
    max-width: 100%;
    margin-top: auto;
  }

  .th-pages__about-text {
    margin-bottom: 12px;
  }

  .th-pages__about-item {
    margin-bottom: 10px;
  }

  .th-pages__about-icon {
    width: 21px;
    height: 21px;
  }

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 56px;
  }

  .th-typography-section h3,
  .th-typography-section .h3 {
    font-size: 24px;
  }

  main.th-main-page {
    padding-top: 70px;
  }

  .th-typography {
    font-size: 16px;
  }

  .th-typography h2 {
    font-size: 24px;
  }

  .th-typography h3 {
    font-size: 20px;
  }

  .th-typography ul,
  .th-typography ol {
    font-size: 16px;
  }

  .th-typography blockquote {
    font-size: 16px;
  }

  .th-typography p {
    font-size: 16px;
  }

  .th-page-sinlge-img img {
    max-height: 300px;
  }

  .th-btn-line::after {
    height: 14px;
    width: 50px;
    margin-left: 6px;
  }

  .th-popup-contacts {
    min-height: 350px;
  }

  .th-popup-contacts .__left {
    max-width: calc(100% - 350px);
  }

  .th-popup-contacts .__right {
    width: 400px;
  }

  .th-popup-contacts .__right img,
  .th-popup-contacts .__right iframe {
    height: 350px;
  }

  .th-section-slider-with-arrow .th-section-head {
    padding-right: 70px;
  }

  .th-section-slider-with-arrow .th-col-3-xl {
    z-index: 0;
  }

  .th-slider-with-arrow .th-arrows-wrap {
    left: auto;
    right: 0;
    top: -70px;
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
  }

  .th-breadcrumb {
    font-size: 13px;
    margin-top: 31px;
  }

  .th-grid__super-min-sm {
    margin-left: -5px;
    margin-right: -5px;
  }

  .th-grid__super-min-sm>div {
    padding-left: 5px;
    padding-right: 5px;
  }

  .th-col-0-offset-sm {
    margin-left: 0;
  }

  .th-order-2-sm {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-col-hid-sm {
    display: none !important;
  }

  .th-col-6-sm {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-12-sm {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-7-sm {
    width: 58.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33%;
    flex: 0 0 58.33%;
  }

  .th-col-5-sm {
    width: 41.67%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.67%;
    flex: 0 0 41.67%;
  }

  .th-col-12-sm {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-4-sm {
    width: 33.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%;
  }

  .th-col-8-sm {
    width: 66.66%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.66%;
    flex: 0 0 66.66%;
  }

  .th-col-9-sm {
    width: 75%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
  }

  .th-col-3-sm {
    width: 25%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
  }

  .th-order-2-sm {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-col-0-offset-sm {
    margin-left: 0;
  }

  .th-section-inner {
    max-width: 640px;
  }

  .th-section {
    margin-top: 120px;
  }

  .th-section-head h2 {
    margin-bottom: 16px;
  }

  .th-front-banner h1 {
    font-size: 76px;
  }

  .th-front-banner.__banner-1 .__img {
    right: -90px;
    bottom: 20px;
  }

  .th-front-banner.__banner-1 .__img img {
    width: 460px;
  }

  .th-front-banner.__banner-2 .__img {
    right: -70px;
    bottom: 20px;
  }

  .th-front-banner.__banner-2 .__img img {
    width: 530px;
  }

  .th-front-banner.__banner-3 .__img {
    right: -10px;
    bottom: 10px;
  }

  .th-front-banner.__banner-3 .__img img {
    width: 400px;
  }

  .th-front-banner__adv-wrap {
    padding-top: 35px;
  }

  .th-front-banner__adv-wrap br {
    display: none;
  }

  .th-front-banner__adv-wrap.__with-grid-sm {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .th-front-banner__adv-wrap.__with-grid-sm>* {
    width: calc(33.33% - 4px);
  }

  .th-block-form {
    padding-bottom: 120px !important;
  }

  .th-block-form .__title img {
    margin-bottom: 32px;
    width: 120px;
  }

  .th-block-form .__email-wrap {
    margin-bottom: 40px;
  }

  .th-block-form .__img {
    top: auto;
    right: 35px;
    bottom: -220px;
  }

  .th-block-form .__img img {
    width: 360px;
  }

  .th-section-team .th-section-head.__frist {
    padding-bottom: 0;
  }

  .th-section-team .th-typography-section {
    padding-bottom: 32px;
    padding-right: 68px;
  }

  .th-section-team .th-arrows-wrap {
    margin-top: 0;
  }

  .th-section-services-tabs .th-typography-section .h2 span i.__n {
    width: 100px;
    height: 32px;
    top: 16px;
  }

  .th-services-tabs .__bans-2 .th-services-tabs-item-step {
    margin-left: auto;
  }

  .th-services-tabs-item-last {
    margin-top: 22px;
    padding: 20px 12px;
    border-radius: 12px;
  }

  .th-services-tabs-item-last span {
    margin-bottom: 12px;
  }

  .th-services-tabs-item-last a {
    font-size: 15px;
    padding: 8px 12px;
    margin-top: 8px;
  }

  .th-services-tabs-item-step {
    padding: 0 12px;
  }

  .th-services-cases-item {
    height: 340px;
  }

  .th-services-cases {
    margin-top: 40px;
  }

  .th-services-cases-item.__big {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .th-services-cases-item.__big .__img {
    height: calc(100% - 48px);
  }

  .th-services-cases-item.__big img {
    -o-object-position: center;
    object-position: center;
    border-radius: 0 0 12px 12px;
  }

  .th-services-cases-item.__big .__text {
    position: absolute;
    left: 0;
    bottom: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    top: auto;
    height: 48px;
    padding: 0 15px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .th-services-cases-item.__big .__text i {
    display: none;
  }

  .th-services-cases-item.__big .__text span {
    font-size: 19px;
    padding-top: 1px;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    padding-right: 10px;
  }

  .th-services-cases-item.__big .__text .th-btn-line {
    padding: 0;
    margin: 0;
    margin-left: auto;
  }

  .th-section-about-first .th-about-first-head h2 {
    font-size: 40px;
  }

  .th-section-about-first .__item {
    margin-top: 32px;
  }

  .th-section-about-adv .th-typography-section div.h3 {
    margin-bottom: 32px;
    padding-right: 32px;
  }

  .th-section-about-adv .th-typography-section div.h3::after {
    content: "";
    width: 20px;
    height: 20px;
  }

  .th-about-slider-reviews .swiper-slide {
    width: 100%;
  }

  .th-about-slider-reviews-item {
    padding: 22px 25px;
  }

  .th-about-slider-reviews-item img {
    height: 30px;
    margin-bottom: 16px;
  }

  .th-about-slider-reviews-item .h3 {
    margin-bottom: 16px;
  }

  .th-about-slider-reviews-item .th-btn-line {
    padding-top: 18px;
  }

  .th-section-partners .th-col-9-xl {
    padding-top: 0;
  }

  .th-partners-item .__img {
    height: 186px;
  }

  .th-partners-item .__img img {
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
  }

  .th-footer-contacts {
    padding-top: 24px;
    text-align: left;
  }

  .th-footer-logo img {
    width: 240px;
  }

  .th-footer-links {
    padding-top: 32px;
  }

  .th-front-banner__home {
    padding-top: 120px;
    height: 600px;
  }

  .th-front-banner__home>.th-section-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 110px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 96px;
  }

  .th-front-banner__home-item {
    width: 400px;
    padding-top: 60px;
  }

  .th-front-banner__home-item .__min {
    top: 20%;
  }

  .th-front-banner__home-item img {
    width: 120px;
  }

  .th-front-banner__home-item.swiper-slide-active img {
    width: 400px;
  }

  .th-pages__title-wrap {
    margin-bottom: 40px;
  }

  .th-pages__title {
    margin-bottom: 30px;
  }

  .th-pages__title h1 {
    font-size: 56px;
    margin-bottom: 30px;
  }

  .th-about-banner-slider {
    padding-left: 20px;
    padding-right: 20px;
  }

  .th-about-banner-slider .swiper-slide.swiper-slide-prev .__text {
    margin-right: -40px;
  }

  .th-about-banner-slider .__img {
    width: 280px;
    height: 220px;
    left: -20px;
  }

  .th-about-banner-slider-item {
    min-height: 240px;
  }

  .th-about-banner-slider-item .__text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 350px;
    flex: 0 0 350px;
  }

  .th-about-banner-slider-item .h3 {
    font-size: 24px;
    max-width: 350px;
  }

  .th-about-banner-years {
    height: 80px;
  }

  .th-about-banner-year-item span {
    font-size: 11px;
    padding: 5px 10px 5px 5px;
  }

  .th-about-banner-year-item span i {
    font-size: 14px;
    padding: 2px 7px 1px;
    margin-right: 5px;
  }

  .th-about-banner-year-item.__right span {
    right: 100%;
    left: auto;
    margin-left: 0;
    margin-right: -11px;
    padding: 5px 5px 5px 10px;
  }

  .th-about-banner-year-item.__right span i {
    margin-left: 5px;
    margin-right: 0;
  }

  .th-archive-item .h3 {
    font-size: 28px;
  }

  .th-single-cases-title-img {
    border-radius: 10px;
    margin-bottom: 24px;
  }

  .th-single-cases-title-info {
    margin-top: 24px;
  }

  .th-single-cases-title-info .th-section-head-first {
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }

  .th-single-cases-title-info .th-section-head {
    padding-bottom: 16px;
    padding-top: 24px;
  }

  .th-single-cases-title-info .th-section-head h2 {
    margin-bottom: 16px;
  }

  .th-single-cases-content h2 {
    font-size: 18px;
  }

  .th-page-services-discr {
    margin-top: 16px;
    height: auto;
  }

  .th-section-page-services-video .th-typography-section .th-section-head {
    margin-top: 12px;
  }

  .th-section-page-services-video .th-typography-section .th-section-head p {
    padding: 6px 12px;
  }

  .th-page-services-video span {
    font-size: 20px;
    padding: 12px 20px;
  }

  .th-page-services-video span .__ico {
    width: 32px;
    height: 32px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32px;
    flex: 0 0 32px;
  }

  .th-page-services-work-repeats-tags>* {
    font-size: 10px;
    letter-spacing: 0.01em;
    padding: 6px;
    margin: 6px 6px 0 0;
  }

  .th-section-page-services-shema {
    padding-top: 120px;
  }

  .th-blog-archive-wrap .th-archive-tags {
    width: calc(100% + 30px);
    margin: -14px -15px -8px;
    overflow: scroll;
    padding: 0 15px 8px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .th-blog-archive-wrap .th-archive-tags a {
    min-height: 42px;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    margin-bottom: 0;
  }

  .th-blog-archive-wrap .th-grid {
    margin-top: 0;
  }

  .th-blog-archive-wrap .th-grid>div {
    margin-top: 0;
  }

  .th-blog-item:first-of-type {
    margin-top: 48px;
  }

  .th-front-banner__home .th-pages__subtitle {
    padding-top: 20px;
  }
}

@media (max-width: 767.98px) {
  .th-popup-contacts {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .th-popup-contacts .__left {
    max-width: none;
    width: 100%;
    padding-right: 0;
  }

  .th-popup-contacts .__right {
    padding-top: 40px;
    padding-left: 0;
    margin-left: -24px;
    width: calc(100% + 48px);
    max-width: none;
  }

  .th-col-12-xs {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-8-xs {
    width: 66.66%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.66%;
    flex: 0 0 66.66%;
  }

  .th-col-hid-xs {
    display: none !important;
  }

  .th-pages__block-info {
    display: grid;
    position: static;
    justify-content: center;
    width: auto;
  }

  .th-pages__block-arrow {
    position: relative;
    top: -14px;
    width: 97px;
    height: 40px;
    animation: none;
    transform: rotate(65deg);
    left: -40px;
    animation: arrowAnimateMobile .8s infinite alternate linear;
  }

  @keyframes arrowAnimateMobile {
    100% {
      transform: rotate(115deg);
    }
  }

  .th-pages__block-text {
    max-width: 320px;
    transform: rotate(0);
    margin-left: 0;
  }

  .th-section {
    margin-top: 90px;
  }

  .th-404 span {
    font-size: 27px;
    display: block;
    margin-top: 5px;
  }

  .th-404 .th-btn {
    width: 100%;
    margin: 0 0 15px;
  }

  .th-front-banner__home {
    padding-top: 100px;
    height: 550px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 90px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 76px;
  }

  .th-front-banner__home-item {
    width: 300px;
  }

  .th-front-banner__home-item .__min {
    top: 20%;
  }

  .th-front-banner__home-item img {
    width: 100px;
  }

  .th-front-banner__home-item.swiper-slide-active img {
    width: 300px;
  }

  .th-front-banner__bottom .th-front-banner__home-item-title p>span {
    padding: 6px 10px;
    font-size: 14px;
  }

  .th-front-banner__bottom .th-front-banner__home-item-title p i::before {
    font-size: 23px;
  }

  .th-section-page-services-shema {
    padding-top: 110px;
  }

  .th-banner__home-slider-arrow {
    display: none;
  }
}

@media (max-width: 639.98px) {

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 50px;
  }

  .th-typography-section h3,
  .th-typography-section .h3 {
    font-size: 20px;
  }

  .th-modal-wrap {
    padding: 20px 15px;
  }

  .th-modla-title {
    font-size: 20px;
    padding-top: 22px;
  }

  .th-grid__min-smm {
    margin-left: -5px;
    margin-right: -5px;
  }

  .th-grid__min-smm>div {
    padding-left: 5px;
    padding-right: 5px;
  }

  .th-grid__min-2-smm {
    margin-left: -8px;
    margin-right: -8px;
  }

  .th-grid__min-2-smm>div {
    padding-left: 8px;
    padding-right: 8px;
  }

  .th-col-12-smm {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-6-smm {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-header-btn-warp {
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 70px;
    height: 70px;
    z-index: 98;
  }

  .th-header-btn-warp a {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    background-image: url('../img/svg/chat.svg');
    background-repeat: no-repeat;
    background-size: 40px 40px;
    background-position: center center;
  }

  .th-header-btn-warp a span {
    display: none;
  }

  .th-header-btn-warp img {
    display: block;
  }

  .th-header-contact-item a {
    font-size: 16px;
  }

  .th-front-banner {
    padding-top: 120px;
  }

  .th-front-banner h1 {
    font-size: 68px;
  }

  .th-front-banner.__banner-1 .__img {
    top: -70px;
    left: -10px;
    right: auto;
    bottom: auto;
  }

  .th-front-banner.__banner-1 .__img img {
    width: 320px;
  }

  .th-front-banner.__banner-2 .__img {
    top: -100px;
    left: 0;
    right: auto;
    bottom: auto;
  }

  .th-front-banner.__banner-2 .__img img {
    width: 350px;
    -webkit-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    transform: rotate(20deg);
  }

  .th-front-banner.__banner-3 .__img {
    top: -50px;
    left: 15px;
    right: auto;
    bottom: auto;
  }

  .th-front-banner.__banner-3 .__img img {
    width: 280px;
    -webkit-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    transform: rotate(10deg);
  }

  .th-front-banner__title {
    padding-top: 200px;
  }

  .th-front-banner__adv-wrap {
    padding-top: 35px;
  }

  .th-front-banner__adv-wrap.__with-grid-sm>* {
    width: 100%;
  }

  .th-front-banner__adv-item {
    min-height: auto;
    padding: 15px;
  }

  .th-block-form {
    padding: 30px 20px;
  }

  .th-section-services-tabs .th-typography-section .h2 span i.__n {
    width: 86px;
    height: 26px;
    top: 13px;
  }

  .th-services-cases-item {
    height: 300px;
  }

  .th-services-cases-item.__big .__text,
  .th-services-cases-item.__min .__text {
    padding: 0 10px;
  }

  .th-services-cases-item.__big .__text span,
  .th-services-cases-item.__min .__text span {
    font-size: 16px;
  }

  .th-services-cases-item.__big .__text .th-btn-line,
  .th-services-cases-item.__min .__text .th-btn-line {
    font-size: 12px;
  }

  .th-services-cases-item.__big .__text .th-btn-line::after,
  .th-services-cases-item.__min .__text .th-btn-line::after {
    width: 30px;
  }

  .th-section-about-first .th-about-first-head h2 {
    font-size: 32px;
  }

  .th-section-about-first .__item {
    margin-top: 32px;
  }

  .th-section-about-directions .th-typography-section .h3 {
    font-size: 18px;
  }

  .th-section-about-directions .th-typography-section .h2 {
    font-size: 30px;
  }

  .th-section-about-directions .th-typography-section .__wrap::after {
    width: 22px;
    height: 26px;
    top: 24px;
  }

  .th-section-about-directions .th-section-inner>.__img {
    top: 20px;
  }

  .th-section-about-directions .th-section-inner>.__img img {
    height: 400px;
  }

  .th-section-directions-2 .th-typography-section .__wrap::after {
    margin-top: -13px;
  }

  .th-section-directions-2 .th-section-inner>.__img {
    top: 0;
  }

  .th-section-directions-2 .th-section-inner>.__img img {
    height: 340px;
  }

  .th-about-slider-reviews .swiper-slide {
    width: 100%;
  }

  .th-about-slider-reviews-item {
    padding: 20px 18px;
  }

  .th-about-slider-reviews-item img {
    height: 28px;
    margin-bottom: 14px;
  }

  .th-about-slider-reviews-item .h3 {
    margin-bottom: 14px;
  }

  .th-about-slider-reviews-item .th-btn-line {
    padding-top: 16px;
  }

  .th-pages__title h1 {
    font-size: 50px;
    line-height: 1;
  }

  .th-about-banner-slider {
    padding-left: 0;
    padding-right: 0;
  }

  .th-about-banner-slider .swiper-slide.swiper-slide-prev .__text {
    margin-right: 0;
  }

  .th-about-banner-slider .swiper-slide.swiper-slide-active div .__text {
    margin-left: 0;
  }

  .th-about-banner-slider .__img {
    width: 240px;
    height: 190px;
    top: -130px;
    left: auto;
    right: -30px;
  }

  .th-about-banner-slider-item {
    min-height: auto;
    padding-top: 0;
  }

  .th-about-banner-slider-item .__text {
    -webkit-box-flex: inherit;
    -ms-flex: inherit;
    flex: inherit;
    margin-left: 0;
  }

  .th-about-banner-slider-item .h3 {
    font-size: 20px;
    max-width: 420px;
  }

  .th-about-banner-slider-item i {
    max-width: 500px;
  }

  .th-about-banner-years {
    height: 85px;
  }

  .th-about-banner-year-item span {
    border-radius: 12px;
    border: none;
    font-size: 10px;
    padding: 6px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background: transparent;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }

  .th-about-banner-year-item span i {
    font-size: 12px;
    padding: 2px 6px 1px;
    margin-right: 4px;
    margin-bottom: 4px;
  }

  .th-about-banner-year-item.__right span {
    right: 100%;
    left: auto;
    margin-left: 0;
    margin-right: -11px;
    padding: 6px 0;
  }

  .th-about-banner-year-item.__right span i {
    margin-left: auto;
    margin-right: 0;
    -webkit-box-ordinal-group: inherit;
    -ms-flex-order: inherit;
    order: inherit;
  }

  .th-archive-tags {
    width: calc(100% + 30px);
    margin: 0 -15px -8px;
    overflow: scroll;
    padding: 0 15px 8px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }

  .th-archive-tags a {
    height: 42px;
    padding: 0 12px;
    font-size: 14px;
    margin-top: 0;
  }

  .th-archive-tags a {
    height: 38px;
    font-size: 13px;
    margin-right: 6px;
  }

  .th-single-cases-title-wrap {
    padding-top: 90px;
  }

  .th-single-cases-block {
    margin-top: 40px;
  }

  .th-single-cases-block .th-section-head {
    padding-bottom: 24px;
  }

  .th-single-cases-content ul,
  .th-single-cases-content ol {
    padding-left: 25px;
  }

  .th-single-cases-gallery {
    margin-top: 40px;
    gap: 10px;
  }

  .th-single-cases-gallery>* {
    width: calc(50% - 5px);
  }

  .th-single-cases-gallery img {
    border-radius: 8px;
  }

  .th-page-services-video {
    border-radius: 16px;
  }

  .th-page-services-video img {
    min-height: 210px;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .th-page-services-video span {
    width: 72px;
    height: 72px;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .th-page-services-video span i:not(.__ico) {
    display: none;
  }

  .th-page-services-video span .__ico {
    width: 32px;
    height: 32px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 32px;
    flex: 0 0 32px;
    margin: 0 -4px 0 0;
  }

  .th-pages__title-blog {
    padding-top: 60px !important;
  }

  .th-blog-archive-wrap .th-archive-tags a {
    height: 38px;
    font-size: 13px;
    margin-right: 6px;
  }

  .th-blog-item .h2 {
    font-size: 32px !important;
  }

  .th-blog-item .__gallery {
    gap: 12px;
  }

  .th-blog-item .__gallery .__img {
    width: calc(50% - 6px);
    padding-top: 24px;
  }

  .th-blog-item .__gallery img {
    height: 180px;
  }

  .th-typography-single h1 {
    font-size: 28px;
  }

  .th-typography-single h2 {
    font-size: 20px;
  }

  .th-typography-single h3 {
    font-size: 18px;
  }

  .th-typography-single blockquote {
    padding-left: 18px;
    border-width: 4px;
  }
}

@media all and (max-width: 576px) {
  .th-block {
    margin-bottom: 50px;
  }

  .th-front-banner__home-slider {
    width: 310px;
  }

  .th-front-banner__bottom .th-front-banner__home-item-title p {
    gap: 4px;
  }

  .th-front-banner__bottom .th-front-banner__home-item-title p>span {
    padding: 4px 6px;
    font-size: 12px;
  }

  .th-front-banner__bottom .th-front-banner__home-item-title p i::before {
    font-size: 18px;
  }

  .th-pages__about {
    background-image: none;
    min-height: 360px;
  }

  .th-pages__video {
    height: 310px;
  }

  .th-front-banner__home {
    padding-bottom: 75px;
  }

  .th-pages__label {
    line-height: 21px;
  }

  .th-front-banner__about .th-pages__title h2 {
    font-size: 18px;
    line-height: 21px;
    margin-bottom: 0;
  }

  .th-pages__about-title {
    font-size: 20px;
  }

  .th-pages__about-descr {
    font-size: 14px;
  }

  .th-pages__about-block {
    font-size: 14px;
  }

  .th-pages__bottom-title {
    font-size: 18px;
    margin-bottom: 40px;
  }

  .fancybox-thumbs {
    width: 110px;
  }

  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }

  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }

  .th-front-banner__home .th-pages__subtitle {
    font-size: 16px;
    margin-bottom: 12px;
  }

  .th-front-banner__home .th-pages__title {
    margin-bottom: 21px;
  }

  .th-front-banner__home .th-pages__title h1 {
    font-size: 28px;
    margin-bottom: 0;
  }

  .th-front-banner__home .th-pages__text {
    font-size: 16px;
    margin: 0 0 52px;
  }

  .th-pages__btn::before {
    width: 295px;
    height: 250px;
    left: -56px;
    top: -90px;
  }

  .th-pages__block-text {
    font-size: 16px;
  }
}

@media (max-width: 575.98px) {
  .th-pages__block-arrow {
    transform: rotate(90deg);
  }

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 46px;
  }

  .th-page-sinlge-img img {
    max-height: 250px;
  }

  .th-send-response-msg__title {
    font-size: 20px;
  }

  .th-send-response-msg__txt {
    font-size: 18px;
  }

  .th-grid__sup-min {
    margin-left: -4px;
    margin-right: -4px;
  }

  .th-grid__sup-min>div {
    padding-left: 4px;
    padding-right: 4px;
  }

  .th-grid__min-xss {
    margin-left: -6px;
    margin-right: -6px;
  }

  .th-grid__min-xss>div {
    padding-left: 6px;
    padding-right: 6px;
  }

  .__hidden-xss {
    display: none !important;
  }

  .th-col-6-xss {
    width: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
  }

  .th-col-12-xss {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-col-7-xss {
    width: 58.33%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.33%;
    flex: 0 0 58.33%;
  }

  .th-col-5-xss {
    width: 41.67%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.67%;
    flex: 0 0 41.67%;
  }

  .th-order-2-xss {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .th-col-2-xss {
    width: 16.6%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.6%;
    flex: 0 0 16.6%;
  }

  .th-col-10-xss {
    width: 83.4%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.4%;
    flex: 0 0 83.4%;
  }

  .th-front-banner h1 {
    font-size: 56px;
    line-height: 0.85;
    margin-bottom: 20px;
  }

  .th-front-banner p {
    font-size: 18px;
    max-width: 380px;
  }

  .th-front-banner.__banner-2 p {
    max-width: 400px;
  }

  .th-block-form {
    padding: 30px 15px;
    margin-left: -15px;
    margin-right: -15px;
    border-radius: 0;
  }

  .th-block-form .__img {
    right: 25px;
  }

  .th-block-form .__img img {
    width: 320px;
  }

  .th-section-services-tabs .th-typography-section .h2>i {
    display: inline;
  }

  .th-services-tabs .__bans-1 {
    margin-bottom: 22px;
  }

  .th-services-tabs-item-first {
    margin-left: auto;
  }

  .th-services-tabs-item-first {
    max-width: 290px;
    width: auto;
  }

  .th-services-tabs-item-step {
    max-width: 290px;
    margin-bottom: 10px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 66px;
  }

  .th-front-banner__home-item-text p {
    font-size: 18px;
    padding-left: 15px;
    padding-right: 15px;
  }

  .th-front-banner__home-item {
    width: 180px;
  }

  .th-front-banner__home-item.swiper-slide-active {
    z-index: 1;
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .th-front-banner__home-item.swiper-slide-active img {
    max-width: none;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 56px;
  }

  .th-pages__title {
    padding-top: 120px;
  }

  .th-pages__title h1 {
    font-size: 46px;
  }

  .th-archive-item .h3 {
    font-size: 24px;
  }

  .th-page-services-work-repeats-blog .__item i {
    font-size: 12px;
  }

  .th-section-other-services .th-grid {
    margin-top: -12px;
  }

  .th-section-other-services .th-grid>* {
    margin-top: 12px;
  }

  .th-blog-item {
    padding: 20px 16px;
  }

  .th-blog-item .h2 {
    font-size: 32px !important;
    padding-top: 16px;
  }

  .th-blog-item .__discr {
    padding-top: 16px;
  }

  .th-blog-item .__gallery {
    padding-top: 0;
  }

  .th-blog-item .__gallery .__img {
    width: 100%;
    padding-top: 16px;
  }

  .th-blog-item .__gallery .__img:last-of-type {
    display: none;
  }

  .th-blog-item .__gallery .__img:last-of-type:first-of-type {
    display: block;
  }

  .th-blog-item .__last {
    padding-top: 16px;
  }

  .th-blog-item .__title-rec {
    font-size: 20px;
    padding-bottom: 16px;
  }

  .th-blog-item .__title-rec::after {
    left: -16px;
    width: calc(100% + 32px);
  }
}

@media (max-width: 480px) {
  .th-404 {
    padding-top: 50px;
    padding-bottom: 120px;
  }

  .th-404 img {
    padding-right: 0;
  }

  .th-404 span {
    font-size: 23px;
  }

  .th-404 .th-section-head p {
    font-size: 14px;
    margin-bottom: 25px;
  }

  .th-404 .th-section-head p br {
    display: none;
  }
}

@media (max-width: 479.98px) {

  .th-typography-section h2,
  .th-typography-section .h2 {
    font-size: 42px;
  }

  .th-col-12-xsss {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-header-logo img {
    width: 100px;
  }

  .th-header-social a {
    margin-right: 10px;
  }

  .th-header-social a i {
    width: 16px;
    height: 16px;
  }

  .th-header-social a i::before {
    width: 16px;
    height: 16px;
  }

  .th-header-contact-item a {
    font-size: 15px;
  }

  .th-hamburger-container {
    height: 24px;
    width: 24px;
  }

  .th-hamburger-container .th-hamburger {
    width: 24px;
  }

  .th-hamburger-container .th-hamburger::after {
    width: 24px;
    -webkit-transform: translateY(8px);
    -ms-transform: translateY(8px);
    transform: translateY(8px);
  }

  .th-hamburger-container .th-hamburger::before {
    -webkit-transform: translateY(-8px);
    -ms-transform: translateY(-8px);
    transform: translateY(-8px);
    width: 24px;
  }

  .th-front-banner h1 {
    font-size: 48px;
  }

  .th-section-block-form .__title img {
    width: 100px;
  }

  .th-section-block-form .__title h2 {
    font-size: 32px;
  }

  .th-section-block-form .__email-wrap a {
    font-size: 22px;
  }

  .th-section-team .th-typography-section .h3 {
    font-size: 19px;
  }

  .th-services-cases-item {
    height: 270px;
  }

  .th-services-cases-item.__big .__text span,
  .th-services-cases-item.__min .__text span {
    font-size: 15px;
  }

  .th-section-about-first .th-about-first-head h2 {
    font-size: 28px;
  }

  .th-section-about-first .__item .__img {
    height: 150px;
  }

  .th-section-about-first .__item img {
    height: 150px;
    margin-left: -10px;
  }

  .th-section-about-first .__item span {
    font-size: 12px;
  }

  .th-section-about-directions .th-typography-section .h3 {
    font-size: 17px;
  }

  .th-section-about-directions .th-typography-section .h2 {
    font-size: 28px;
  }

  .th-section-about-directions .th-typography-section .__wrap {
    padding-right: 34px;
  }

  .th-section-about-directions .th-section-inner>.__img {
    top: auto;
    bottom: 0;
  }

  .th-section-about-directions .th-section-inner>.__img img {
    height: 300px;
  }

  .th-section-directions-2 .th-section-inner>.__img {
    bottom: -20px;
  }

  .th-pages__title h1 {
    font-size: 42px;
  }

  .th-single-cases-title-wrap {
    padding-top: 80px;
  }

  .th-single-cases-title-info .th-section-head p {
    font-size: 13px;
  }

  .th-single-cases-gallery {
    gap: 6px;
  }

  .th-single-cases-gallery>* {
    width: calc(50% - 3px);
  }

  .th-single-cases-content h2 {
    font-size: 16px;
  }

  .th-pages__title-services {
    margin-top: 10px;
  }

  .th-pages__title-services h1 {
    font-size: 32px;
  }

  .th-other-services-item {
    height: 190px;
    padding: 12px 10px;
  }

  .th-other-services-item img {
    width: 80px;
    right: -10px;
    top: -10px;
  }

  .th-other-services-item span {
    font-size: 13px;
  }

  .th-blog-item .h2 {
    font-size: 26px !important;
  }

  .th-typography-single h1 {
    font-size: 28px;
  }
}

@media (max-width: 414px) {
  .th-404 span {
    font-size: 19px;
    margin-top: 8px;
  }
}

@media (max-width: 413.98px) {
  .th-partners-item .__img {
    height: 150px;
  }

  .th-partners-item .__img img {
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
    transform: scale(0.6);
  }

  .th-partners-item span {
    font-size: 12px;
  }

  .th-front-banner__home {
    padding-top: 80px;
    height: 500px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 50px;
  }

  .th-front-banner__home-item-text p {
    font-size: 16px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 46px;
  }

  .th-single-cases-title-wrap .th-typography-section h1 {
    font-size: 36px;
  }
}

@media (max-width: 401.98px) {
  .th-header-navigation-wrap .th-header-mobile {
    padding-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .th-header-navigation-wrap .th-header-mobile .th-header-social {
    padding-top: 0;
    padding-left: 15px;
  }

  .th-header-navigation-wrap .th-navigation-btn-wrap {
    margin-top: 15px;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media (max-width: 384.98px) {
  .th-pages__block-info {
    right: 0;
  }

  .th-pages__block-arrow {
    top: -10px;
    left: -40px;
  }

  .th-pages__block-text {
    margin-left: 0;
  }

  .th-modla-title {
    font-size: 18px;
  }
}

@media (max-width: 374.98px) {
  .th-col-12-xssss {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }

  .th-header-social {
    display: none;
  }

  .th-front-banner h1 {
    font-size: 42px;
  }

  .th-front-banner__home-item-text .h1 {
    font-size: 45px;
  }

  .th-front-banner__home-item-text p {
    font-size: 14px;
  }

  .th-front-banner__home-item-text-3 .h1 {
    font-size: 36px;
  }
}

@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }

  .fancybox-slide--image {
    padding: 6px 0;
  }

  .fancybox-close-small {
    right: -6px;
  }

  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }

  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }

  @supports (padding: max(0px)) {
    .fancybox-caption {
      padding-left: max(12px, env(safe-area-inset-left));
      padding-right: max(12px, env(safe-area-inset-right));
    }
  }
}

.th-support-webp main::after {
  background-image: url(../img/body-bg.webp);
}

.th-support-webp .th-modal {
  background-image: url(../img/form-bg.webp);
}

.th-support-webp .th-block-form {
  background-image: url(../img/form-bg.webp);
}

.th-support-webp .th-404 {
  background-image: url(../img/404-bg.webp);
}

.th-support-webp .th-404::before {
  background-image: url(../img/layout/advantage/advantage-line.webp);
}