@font-face {
  font-family: "Bounded";
  src:
    url("/static/fonts/Bounded.woff2") format("woff2"),
    url("/static/fonts/Bounded.woff") format("woff");
}

:root {
  font-size: 20px;
  font-size: clamp(13px, 1vw, 30px);
}
body {
  font-family: "Bounded", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  line-height: 1.2;
  background-color: #957df5;
  scroll-behavior: smooth;
}
main {
  overflow: hidden;
}
a {
  text-decoration: none;
  color: #ffffff;
}
.screen {
  min-height: 100vh;
  background-color: #957df5;
}
h2 {
  margin-top: 10vh;
  margin-bottom: 3vh;
  color: #ffffff;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
}
input:not([type]),
input[type="text"],
input[type="date"],
input[type="number"],
input[type="email"],
textarea,
select {
  border: none;
  background: #957df533;
  padding: 0.7rem;
  height: 2.5rem;
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  letter-spacing: 0;
}
form label,
form legend {
  font-family: Inter;
  line-height: 1.3;
  font-weight: 600;
  font-size: 0.9rem;
  letter-spacing: 0;
}
textarea {
  height: auto;
}
select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23222' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 12px 8px;
  background-position: right 0.7rem center;
  padding-right: 2.2rem;
}
input[type="checkbox"] {
  border: none;
  background: #957df533;
  width: 1rem;
  height: 1rem;
  padding: 0;
  transform: translateY(0.2rem);
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
  min-inline-size: 0;
}
input:not([type]):focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #a08af6;
  outline: none;
}
.screen {
  min-height: 100vh;
}
.badge-green {
  color: #ffffff;
  background: #3be3b1;
}
.badge-orange {
  color: #ffffff;
  background: #e97755;
}
.white {
  color: #ffffff !important;
}

/* ************ */
/* general */
/* ************ */
.general {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background-image: url(/static/img/general-bg.svg);
  background-position: center 13vh;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.general .ticker {
  z-index: 5;
}
.general .cat {
  position: absolute;
  bottom: 2.3rem;
  right: 0;
}
.general .cat img {
  height: 32vh;
}
.general .dog {
  position: absolute;
  bottom: 1.9rem;
  left: 0;
}
.general .dog img {
  height: 33vh;
}
.general .content {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  flex: 1;
}
.general .content img {
  height: 29vh;
  width: auto;
}
.general .subtitle {
  margin-top: 2vh;
  color: #ffffff;
  text-align: center;
}
.general .buttons {
  margin-top: 3vh;
  gap: 0.5vw;
}

/* ************ */
/* buttons */
/* ************ */
.btn {
  font-family: Inter;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1.3;
  text-align: center;
  letter-spacing: -0.02em;
  padding: 1rem 2rem;
  cursor: pointer;
  color: #ffffff;
  background: transparent;
  border: none;
  transition: background 0.2s ease-in-out;
}
.btn-outline-white {
  border: 1px solid #ffffff;
}
.btn-outline-white:hover {
  background-color: rgba(255, 255, 255, 0.25);
}
.btn-green {
  background: #3be3b1;
}
.btn-green:hover {
  background: #27e294;
}
.btn-orange {
  background: #e97755;
}
.btn-orange:hover {
  background: #f6592a;
}
.btn-outline-orange {
  border: 1px solid #e97755;
  color: #e97755;
}
.btn-outline-orange:hover {
  background: #ffe4dc;
}
.btn.disabled,
.btn:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* ************ */
/* header */
/* ************ */
.header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  color: #ffffff;
  font-size: 0.8rem;
}
.header .inner {
  flex: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 0 0.8vw;
}
.header .inner > * {
  display: flex;
  margin-bottom: 0.5vw;
  align-items: center;
}
.header .inner-left,
.header .inner-right {
  flex: 1;
}
.header .logo-container {
  display: flex;
  align-items: center;
}
.header .logo {
  height: 3.2rem;
  width: auto;
  margin: 0 !important;
}
.icon-geo {
  height: 1.25rem;
  width: auto;
}
.icon-caret {
  height: 0.3vw;
  width: auto;
  transition: transform 0.2s ease;
}
.header .tenant-dropdown {
  position: relative;
  margin-left: 3vw;
  display: flex;
}
.header .tenant-container {
  display: flex;
  color: #ffffff;
  align-items: center;
  gap: 0.5vw;
  cursor: pointer;
  user-select: none;
  background: transparent;
  border: 0;
  padding: 0;
  font: inherit;
}
.header .tenant-container:focus-visible {
  outline: 2px solid #f07a55;
  outline-offset: 0.2vw;
  border-radius: 999px;
}
.header .tenant-dropdown.is-open .icon-caret {
  transform: rotate(180deg);
}
.header .tenant-menu {
  position: absolute;
  top: calc(100% + 0.7vw);
  left: -0.4vw;
  min-width: clamp(12rem, 18vw, 18rem);
  max-width: 80vw;
  max-height: clamp(14rem, 30vh, 22rem);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  padding: 0.6rem;
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(0.4rem);
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0s linear 0.2s;
  z-index: 20;
}
.header .tenant-dropdown.is-open .tenant-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  transition-delay: 0s;
}
.header .tenant-option {
  display: block;
  padding: 0.55rem 0.8rem;
  border-radius: 10px;
  color: #2c1b45;
  font-size: 0.8rem;
  transition:
    background 0.2s ease,
    transform 0.2s ease;
}
.header .tenant-option:hover,
.header .tenant-option:focus-visible {
  background: #eef1ff;
  color: #2c1b45;
}
.header .tenant-option.is-current {
  background: #eef1ff;
}
.header .left {
  background-image: url(/static/img/menu-bg-1.png);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: auto;
  width: 4vw;
  height: 4vw;
}
.header .right {
  background-image: url(/static/img/menu-bg-3.png);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: auto;
  width: 4vw;
  height: 4vw;
}
.menu-top {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  flex-direction: row;
  align-items: center;
  flex: 2;
}
.menu-top ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  gap: 1.6vw;
}
.menu-top li,
.header .phone a {
  transition: transform 0.2s ease-in-out;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
  gap: 0.5rem;
}
.menu-top li:hover,
.header .phone a:hover {
  transform: scale(1.1);
}
.bg-header {
  background-image: url(/static/img/menu-bg-2.png);
  background-position: bottom;
  background-repeat: repeat-x;
  background-size: auto;
  height: 4vw;
}
.header .phone {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
.header .phone img {
  height: 1.25rem;
  width: auto;
}
/* Убираем субпиксельное сглаживание */
.header .left {
  margin-right: -1px;
}
.header .right {
  margin-left: -1px;
}

/* ************ */
/* games */
/* ************ */
.games {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 10rem;
  min-height: auto;
}
.games-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  flex: 0 0 auto;
}
.games-list-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.games-list-empty p {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  color: #ffffff;
  margin-bottom: 4rem;
}
.games-list-empty .no-games {
  width: 18rem;
  height: auto;
  margin-bottom: 5rem;
}
.template-games {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.games h2 {
  margin: 0;
  margin-bottom: 3rem;
}
.games-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  width: 100%;
  padding: 0 2rem;
  margin-bottom: 2rem;
  align-items: end;
}
.games .card-head {
  border-radius: 10px 10px 0 0;
  padding: 20px 40px;
  background: linear-gradient(90.61deg, #3be3b1 61.06%, #d5fff3 100%);
  color: #ffffff;
}
.games-list .card.no-head .card-body {
  border-radius: 10px;
}
.games .card-head.waitlist {
  background: linear-gradient(90.61deg, #ea7758 0%, #fdc855 100%);
}
.games .card-head.closed {
  background: linear-gradient(90deg, #858585 0%, #ffffff 100%);
}
.games .card-body {
  border-radius: 0 0 10px 10px;
  background-color: #ffffff;
  color: #262423;
  padding: 2.5rem 2rem;
}
.games .card-body > * {
  margin-bottom: 0.5vw;
}
.game {
  height: auto;
}
.game .card-body h3 {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
}
.game-date {
  display: flex;
  gap: 0.5rem;
  font-family: Inter;
  line-height: 1.3;
  font-size: 0.9rem;
}
.game-date .icon-clock {
  height: 1.5rem;
}
.game-image img {
  width: 100%;
}
.game .game-venue {
  display: flex;
  gap: 0.5rem;
  font-family: Inter;
  line-height: 1.3;
  font-size: 0.9rem;
  margin-bottom: 1.5rem;
}
.game .game-price {
  display: flex;
  gap: 0.5rem;
  font-family: Inter;
  font-weight: 600;
  font-size: 1.1rem;
  line-height: 1.3;
  margin-bottom: 1.5rem;
}
.game-price > * {
  flex: 1 1 0;
}
.reserve-only {
  font-family: Inter;
  font-size: 0.9rem;
  line-height: 1.3;
  font-weight: 400;
}
.reserve-only .image {
  position: absolute;
  height: 1.2rem;
  width: auto;
  display: inline;
  padding-left: 0.5rem;
}
.reserve-only .hint--bottom {
  width: 1.2rem;
  height: 1.2rem;
  position: absolute;
  margin-left: 0.3rem;
}
.reserve-only .hint--bottom .image {
  position: static;
  width: 100%;
  height: 100%;
  padding-left: 0;
}
.game-buttons {
  display: flex;
  gap: 0.5rem;
}
.game-buttons > * {
  flex: 1 1 0;
  padding: 0.5vw 1vw;
}
.show-all-games {
  margin-bottom: 10rem;
  margin-top: 3rem;
}

/* ************ */
/* photos */
/* ************ */
.photos {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  padding-top: 10rem;
  padding-bottom: 10rem;
}
.photos h2 {
  margin-top: 0;
}
.photos-list {
  margin-bottom: 2rem;
}

/* ************ */
/* Photos dialog */
/* ************ */
.photos-dialog {
  width: auto !important;
  max-width: 90% !important;
}
.photos-dialog h2 {
  text-align: left;
}
.photos-dialog p {
  font-size: 1rem;
  text-align: left;
  margin-bottom: 2.5rem;
}
.photos-dialog .photos-list-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
}
.photos-dialog .photos-list-container a {
  text-decoration: underline;
}
.photos-dialog .link-container {
  display: flex;
  font-weight: 400;
  font-size: 1rem;
  color: #ffffff;
  gap: 0.5rem;
  align-items: center;
}
.photos-dialog .link-container img {
  height: 1.3rem;
  width: auto;
}

/* ************ */
/* about */
/* ************ */
.about {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.about-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 10rem 2rem;
}
.about h2 {
  margin-top: 0;
}

.about-selected {
  background: #3be3b1;
}
.about-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  width: 50%;
  color: #ffffff;
  margin-bottom: 4vh;
}
.about .mini-cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.about .mini-card {
  flex: 1 1 0;
  background: #ffffff;
  border-radius: 10px;
  padding: 1rem;
  color: #262423 !important;
}
.about .mini-card .title {
  display: flex;
  gap: 0.5rem;
  font-weight: 500;
  font-size: 1.5rem;
  align-items: center;
  justify-content: center;
}
.about .mini-card img {
  height: 1.75rem;
}
.about .mini-card .subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.about .cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.about .card {
  flex: 1;
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
}
.about .card img {
  margin-bottom: 1rem;
}
.about .card .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.about .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* ************ */
/* Examples */
/* ************ */
.examples {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 7vh 0;
}
.examples .buttons {
  margin-bottom: 3vh;
}
.examples .tasks {
  display: flex;
  gap: 10px;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: space-between;
  width: 96%;
}
.examples .tasks > * {
  flex: 1 1 0;
}
.examples .tasks .left {
  display: grid;
  grid-template-rows: 1fr auto;
  gap: 12px;
  height: 31vw;
}
.examples .tasks .right {
  height: 31vw;
}

.example-image {
  border-radius: 10px;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: #ffffff;
  max-height: 24vw;
}
.examples .tasks .right .example-image {
  max-height: none;
  object-fit: contain;
}
.example-answer-image {
  border-radius: 10px;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: #ffffff;
  max-height: 24vw;
}
.examples .tasks .right .example-answer-image {
  max-height: none;
  object-fit: contain;
}
.example-text {
  display: flex;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  font-family: Inter;
  font-weight: 400;
  font-size: 1.3rem;
  line-height: 1.3;
}
.question-container {
  display: flex;
  flex-direction: column;
  gap: 0;
  background: #ffffff;
  border-radius: 10px 10px 0 0;
  padding: 2rem;
  flex: 1;
}
.question-container .tabs {
  margin-bottom: 0;
}
.examples .tabs {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  margin-bottom: 40px;
}
.examples .tab {
  border-bottom: #e9775538;
  border-bottom-style: solid;
  flex: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 0.5rem 0;
  color: #e97755;
  font-family: Inter;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1.3;
  cursor: pointer;
}
.examples .tab.active {
  border-bottom: #e97755;
  border-bottom-style: solid;
  background-color: #e97755;
  color: #ffffff;
  flex: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 0.5rem 0;
}
.examples .question .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.examples .question .diff-mark {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  color: #26242380;
  margin-bottom: 10px;
}
.examples .question .diff-image img {
  height: 0.75rem;
  margin-bottom: 40px;
}

.examples .question .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1.3rem;
  line-height: 1.3;
  flex: 1;
}
.examples .question .answer-result {
  font-family: Inter;
  font-weight: 400;
  font-size: 1.3rem;
  line-height: 1.3;
}
.examples .question {
  flex: 1;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.examples figure.question-right {
  display: flex;
  border-radius: 10px;
  width: 100%;
  background: #ffffff;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.examples figure figcaption {
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  margin-bottom: 0.5rem;
}
.input-container {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
}
.examples .answer-input {
  height: 3rem;
  padding: 0.8rem;
  border-radius: 0 0 0 10px;
  flex: 1;
  background: #ffffff !important;
}
.answer-button {
  height: 3rem;
  border-radius: 0 0 10px 0;
  padding: 15px 60px;
}
/* ************ */
/* Orange tickers */
/* ************ */
.tickers {
  min-height: 50vh;
  transform: scale(1.05);
  /* padding: 10vh 0; */
}
.tickers .ticker {
  background: #e97755;
  position: absolute;
}
.tickers .ticker-1 {
  transform: rotateZ(7deg) translateY(23vh);
  opacity: 0.7;
}
.tickers .ticker-2 {
  transform: rotateZ(-7deg) translateY(23vh);
}
.ticker-orange {
  background: #e97755 !important;
}

/* ************ */
/* Benefits */
/* ************ */
.benefits {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
}
.benefits-selected {
  background: #3be3b1;
}
.benefits h2 {
  background-image: url(/static/img/benefits-stars.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 91%;
  margin-top: 0;
  padding-top: 10vh;
  width: 100%;
}
.benefits-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.benefits .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 3vh;
  padding: 40px;
}
.benefits .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
}
.benefits .card-icon {
  margin-bottom: 1rem;
  flex: 1;
}
.benefits .card-icon img {
  width: 4vw;
  height: auto;
}
.benefits .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.benefits .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.benefits .cats {
  height: 100%;
  width: 100%;
  background-image: url(/static/img/benefits-cat-1.jpg), url(/static/img/benefits-cat-2.jpg);
  background-position:
    bottom left,
    top right -17px;
  background-repeat: no-repeat, no-repeat;
  background-size: 50%, 57%;
}

/* ************ */
/* Reviews */
/* ************ */
.reviews {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: auto;
  flex-direction: column;
  position: relative;
}
.reviews .bg {
  position: relative;
  bottom: 0;
  width: 100%;
  height: auto;
  z-index: 1;
  object-fit: cover;
}
.reviews .cat {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 62vh;
  margin-bottom: -31vh;
  z-index: 2;
}

/* ************ */
/* Corporate */
/* ************ */
.corporate {
  min-height: auto;
  display: flex;
  flex-direction: column;
}
.corporate-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  gap: 1.5rem;
  background: #e97755;
  border-radius: 0;
  height: 100%;
  width: 100%;
  justify-content: center;
  padding: 10rem 5rem;
  background-image: url(/static/img/corporate-nlo.png), url(/static/img/corporate-bg-new.jpg);
  background-position:
    calc(50% - -23vw) calc(50% - 1vw),
    center;
  background-repeat: no-repeat, no-repeat;
  background-size:
    auto 67%,
    cover;
  flex: 1;
}
.corporate h2 {
  margin: 0;
}
.corporate-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: 0%;
  text-align: center;
  color: #ffffff;
}

/* ************ */
/* FAQ */
/* ************ */
.faq {
  padding: 40px;
}
.faq-selected {
  background: #3be3b1;
}
.faq .cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: 10px;
  align-items: start;
}
.faq .card {
  border-radius: 10px;
  background-color: #ffffff;
  padding: 1rem;
  display: flex;
  flex-direction: column;
}
.faq .head {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
  font-family: Inter;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.3;
  cursor: pointer;
  align-items: center;
}
.faq .body {
  margin-top: 0;
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.3s ease,
    opacity 0.3s ease;
}
.faq .card.is-open .body {
  margin-top: 10px;
  opacity: 1;
}
.faq .body a {
  color: #e97755;
}
.faq .body a:hover {
  text-decoration: underline;
}

/* ************ */
/* Cool */
/* ************ */
.cool {
  min-height: 50vh;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.cool > * {
  width: 70%;
}

/* ************ */
/* other screen */
/* ************ */
.other {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  min-height: 64vh;
}
.other .cards {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  padding: 40px;
  margin-bottom: 4vh;
}
.other .card {
  padding: 2rem;
  border-radius: 10px;
  background-color: #ffffff;
  flex: 1;
  transition: transform 0.2s ease;
}
.other .card:hover {
  transform: scale(1.03);
}
.other .card-image {
  margin-bottom: 1rem;
}

.other .card .title {
  font-weight: 500;
  font-size: 1.5rem;
  color: #262423 !important;
}
.other .card-image img {
  width: 100%;
}

/* ************ */
/* Footer */
/* ************ */
.footer {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  min-height: auto;
  padding: 40px;
  font-size: 0.8rem;
  padding-bottom: 20px;
}
.footer-container {
  width: 100%;
}
.footer-general {
  display: flex;
  width: 100%;
  flex-direction: column;
  flex-wrap: nowrap;
  margin-bottom: 25px;
}
.footer-general .top,
.footer-general .bottom {
  display: flex;
}
/* Убираем субпиксельное сглаживание */
.footer-general .top {
  margin-bottom: -1px;
}
.footer-general .bottom {
  margin-top: -1px;
}
.footer-general .top .left,
.footer-general .bottom .left {
  margin-right: -1px;
}
.footer-general .top .right,
.footer-general .bottom .right {
  margin-left: -1px;
}
/* Конец хака */
.footer-general .top > *,
.footer-general .bottom > * {
  height: 36px;
  background-size: auto 100%;
  background-repeat: no-repeat;
}
.footer-general .top .left {
  width: 39px;
  background-image: url(/static/img/footer-1.png);
  background-position: right bottom;
}
.footer-general .top .center {
  flex: 1;
  background-repeat: repeat-x;
  background-position: left bottom;
  background-image: url(/static/img/footer-2.png);
}
.footer-general .top .right {
  width: 39px;
  background-image: url(/static/img/footer-3.png);
  background-position: left bottom;
}
.footer-general .bottom .left {
  width: 39px;
  background-image: url(/static/img/footer-4.png);
  background-position: right top;
}
.footer-general .bottom .center {
  flex: 1;
  background-repeat: repeat-x;
  background-position: left top;
  background-image: url(/static/img/footer-5.png);
}
.footer-general .bottom .right {
  width: 39px;
  background-image: url(/static/img/footer-6.png);
  background-position: left top;
}
.footer-general .middle {
  background-color: #ea7758;
  display: flex;
  padding: 1rem 4vw;
}
.footer .menu ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.footer .central-logo {
  display: flex;
  width: 27vw;
  justify-content: center;
}
.footer .central-logo img {
  height: 60px;
  transform: scale(3.5) translateY(-18px);
}
.footer .menu,
.footer .contacts {
  flex: 1;
}
.footer .contacts {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.footer .contacts .text {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
}
.footer .contacts .icons {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 20px;
}
.footer .contacts .icons img {
  height: 50px;
}
.footer .phone,
.footer .email {
  display: flex;
  gap: 0.5rem;
}
.footer .phone img,
.footer .email img {
  height: 1.25rem;
  width: auto;
}
.footer-links {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.footer .factorrial {
  display: inline-block;
  transition: transform 0.2s ease;
}

.footer-links .designed-by:hover .factorrial {
  transform: scale(1.05);
}
.white-footer .footer {
  background-color: #957df5;
  padding: 95px 40px 40px 40px;
}
.footer .middle a {
  transition: transform 0.2s ease;
  display: flex;
  align-items: center;
}
.footer .middle a:hover {
  transform: scale(1.05);
}

/* ************ */
/* schedule */
/* ************ */
.schedule {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background-image: url(/static/img/schedule-bg.svg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100%;
  margin-bottom: 12vh;
}
.schedule h1 {
  font-weight: 700;
  font-size: 5rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 6vw;
}
.schedule .content {
  display: flex;
  flex-direction: column;
  flex: 1;
  color: #ffffff;
  margin-top: 23vh;
}
.schedule h2 {
  display: none;
}
.schedule .games {
  background: none;
  padding-top: 0;
}
.schedule .show-all-games {
  display: none;
}

/* ************ */
/* Privacy */
/* ************ */
.privacy {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background: #957df5;
  color: #ffffff;
  margin-bottom: 12vh;
}
.privacy .text {
  padding: 0 20vw;
}
.privacy h1 {
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  padding: 6vh;
  padding-top: 10vw;
}
.privacy .footer-links {
  color: #262423;
}

/* ************ */
/* game-desc */
/* ************ */
.game-desc {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  color: #262423;
  background-image: url(/static/img/game-desc-bg.svg);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: 50%;
}
.game-desc .content {
  display: flex;
  flex: 1;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 2vw;
}
.game-desc .left {
  color: #ffffff;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
}
.game-desc .btn-back {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0.8rem;
  padding: 10px 20px;
  margin-bottom: 6vh;
}
.game-desc h1 {
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  margin-bottom: 3vh;
}
.game-desc .subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  margin-bottom: 5vh;
  width: 42vw;
}
.card-game-desc {
  width: 30vw;
  height: auto;
}
.game-desc .card.no-head .card-body {
  border-radius: 10px;
}
.game-desc .card-head {
  border-radius: 10px 10px 0 0;
  padding: 20px 40px;
  background: linear-gradient(90.61deg, #3be3b1 61.06%, #d5fff3 100%);
  color: #ffffff;
}
.game-desc .card-head.waitlist {
  background: linear-gradient(90.61deg, #ea7758 0%, #fdc855 100%);
}
.game-desc .card-head.closed {
  background: linear-gradient(90deg, #858585 0%, #ffffff 100%);
}

.game-desc .card-body {
  border-radius: 0 0 10px 10px;
  background-color: #ffffff;
  color: #262423;
  padding: 50px 40px;
}
.game-desc .price-container {
  display: flex;
  margin-bottom: 2.5rem;
  gap: 1rem;
}
.game-desc .price-container .price {
  font-weight: 700;
  font-size: 2rem;
}
.game-desc .price-container .desc {
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
}
.game-desc .game-date {
  margin-bottom: 1rem;
}
.game-desc .game-venue {
  display: flex;
  gap: 0.5rem;
  font-family: Inter;
  font-size: 0.9rem;
  line-height: 1.3;
  margin-bottom: 1.5rem;
}

/* ************ */
/* Registration */
/* ************ */
.registration {
  min-height: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  position: relative;
  overflow: hidden;
  color: #262423;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  align-items: center;
  padding: 10vh 0;
}

.registration .card {
  padding: 4.5rem;
  max-width: 80%;
  background-color: #ffffff;
  border-radius: 10px;
  font-family: Inter;
  font-weight: 600;
  font-size: 0.9rem;
  line-height: 1.3;
}
.registration-form .tabs {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2.5rem;
}
.registration-form .tab {
  font-family: Inter;
  font-weight: 700;
  text-align: center;
  letter-spacing: -0.02em;
  line-height: 1.3;
  padding: 0.5rem 2rem;
  min-height: 2.5rem;
  cursor: pointer;
  background: transparent;
  border: none;
  border-bottom: 1px solid #e97755;
  color: #f3baa9;
  flex: 1;
}
.registration-form .tab.active {
  background: #e97755;
  color: #ffffff;
}
.registration-form .for-single {
  font-family: Inter;
  line-height: 1;
  font-weight: 400;
  font-size: 1rem;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
}
.registration-form .for-single img {
  height: 2.2rem;
}
.registration-form .grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem 1rem;
  margin-bottom: 1.5rem;
}
.registration-form .form-field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.registration-form .form-field > span,
.registration-form label,
.registration-form legend,
.registration-form .agree-container {
  text-align: left;
}
.registration-form .membersButtons {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
}
.registration-form .members-count {
  margin-bottom: 1.5rem;
}
.registration-form .collapse-triggers {
  display: flex;
  flex-direction: column;
  gap: 0.7em;
  margin-bottom: 1.5rem;
  align-items: flex-start;
}
.registration-form .comment-container {
  margin-bottom: 1.5rem;
}
.registration-form .agree-container {
  margin-bottom: 1.5rem;
}
.agree-container a {
  color: #b85f46;
  text-decoration: underline;
}
.reg-dialog {
  width: max(450px, 46vw);
  background: #ffffff;
  color: #262423;
}

/* ************ */
/* Modals */
/* ************ */
dialog {
  border: 0;
  border-radius: 16px;
  padding: 4.5rem;
  background: #8f7cf7;
  color: #fff;
  width: max(450px, 41vw);
  text-align: center;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
  /* Центрирование */
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-overflow-style: none; /* IE */
  scrollbar-width: none; /* Firefox */
}

dialog::backdrop {
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(6px);
  overflow: hidden;
}

.reg-success-dialog {
  background-image: url(/static/img/modal-cat.png);
  background-position: bottom 2rem right 2rem;
  background-repeat: no-repeat;
  background-size: 18% auto;
}

dialog h2 {
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  margin: 0 0 1.5rem 0 !important;
}

dialog p {
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 1.5rem;
}

dialog button {
  background: #f07a55;
  border: 0;
  color: #fff;
  padding: 0.6rem 1.8rem;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
}
dialog .dialog-close {
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  width: 24px;
  height: 24px;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  line-height: 0;
}
dialog .dialog-close img {
  display: block;
  width: 100%;
  height: 100%;
  filter: brightness(0) invert(1);
}
dialog.white .dialog-close img {
  filter: none;
}
.dialog::-webkit-scrollbar {
  width: 0;
}
.fran-dialog {
  width: max(500px, 36vw);
  padding: 3rem 3rem 2.5rem;
}
.city-dialog {
  padding: 3.5rem 4rem;
}
.city-dialog .cities-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
  margin: 1.5rem 0 2rem;
}
.city-dialog .btn {
  white-space: nowrap;
}
.city-dialog .cities-list > * {
  flex: 1;
}
dialog.small {
  padding: 2rem;
  width: fit-content;
}
dialog.rules-dialog p {
  text-align: left;
}
dialog.rules-dialog h2 {
  font-size: 2rem;
}

/* ************ */
/* any-questions */
/* ************ */
.any {
  min-height: 58vh;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  background-image: url(/static/img/monkey.png);
  background-position: left 90%;
  background-repeat: no-repeat;
  background-size: 36% auto;
  gap: 1.5rem;
  margin-bottom: 12vh;
}
.any h2 {
  margin: 0;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
}
.any p {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  color: #ffffff;
}

/* ************ */
/* 404 error */
/* ************ */
.err404 {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  background: #ffffff;
}
.err404 .content {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  flex: 1;
}
.err404 .hearts {
  height: 2rem;
  width: auto;
}
.err404 h1 {
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
}
.err404 p {
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  text-align: center;
}

/* ************ */
/* franchise */
/* ************ */
.fran {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background-image: url(/static/img/fran-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.fran .facts {
  color: #ffffff;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  gap: 2.5rem;
  margin-bottom: 16vh;
}
.fran .fact {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
}
.fran .fact .title {
  font-weight: 500;
  font-size: 1.5rem;
  text-align: center;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.fran .fact img {
  height: 1.5rem;
  width: auto;
}
.fran .fact .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.fran .cat {
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translateY(7%) translateX(-13%);
}
.fran .cat img {
  height: 28vh;
}
.fran .dog {
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateY(9%) translateX(11%);
}
.fran .dog img {
  height: 30vh;
}
.fran .content {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  flex: 1;
}
.fran .subtitle {
  margin-top: 2vh;
  color: #ffffff;
  text-align: center;
}
.fran h1 {
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
}
.fran .buttons {
  margin-top: 3vh;
  gap: 0.5vw;
}

/* ************** */
/* franchise form*/
/* ************** */
.fran-dialog textarea {
  flex: 1;
}
.fran-dialog form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
}
.fran-dialog .field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 0;
}
.fran-dialog .field-wide,
.fran-dialog .agree-container,
.fran-dialog button {
  grid-column: 1 / -1;
}
.fran-dialog button {
  justify-self: center;
}
.fran-dialog .field label {
  text-align: left;
}
.fran-dialog label,
.fran-dialog .form-label {
  text-align: left;
}
.fran-dialog .agree-container {
  margin-bottom: 1.5rem;
}
.fran-dialog .form-agreement {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  text-align: left;
}
.fran-dialog .form-agreement input[type="checkbox"] {
  margin: 0.2rem 0 0;
}

.fran-dialog input,
.fran-dialog textarea,
.fran-dialog select {
  background: #eae5fd;
}
.fran-dialog select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23222' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 12px 8px;
  background-position: right 0.7rem center;
  padding-right: 2.2rem;
}

/* ************ */
/* Franchise about */
/* ************ */
.fran-about .sub-container {
  background-image: url(/static/img/modal-cat.png);
  background-position: right bottom;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: row;
  justify-content: center;
  background-size: auto 90%;
}

/* ************ */
/* diff */
/* ************ */
.diff {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background-image: url(/static/img/diff-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 92%;
  padding: 9vh 0;
}
.diff-selected {
  background: #3be3b1;
}
.diff h2 {
  margin-top: 0;
  padding-top: 10vh;
}
.diff-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.diff .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 20px;
  margin-bottom: 3vh;
  padding: 40px;
}
.diff .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  min-height: 18rem;
}
.diff .card-icon {
  padding-bottom: 2rem;
}
.diff .card-icon img {
  width: 4vw;
  height: auto;
}
.diff .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 10px;
}
.diff .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  flex: 1;
}

/* ************ */
/* open */
/* ************ */
.open {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
  margin-bottom: 9vh;
}
.open-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  gap: 30px;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  justify-content: center;
  background-image: url(/static/img/pantera.png), url(/static/img/open-bg.svg);
  background-position:
    left 9% bottom 8%,
    center;
  background-repeat: no-repeat, no-repeat;
  background-size:
    12% auto,
    cover;
  flex: 1;
}
.open h2 {
  margin: 0;
}
.open-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: 0%;
  text-align: center;
  color: #ffffff;
}

/* ************ */
/* findout-price */
/* ************ */
.findout-price {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
}
.findout-price-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  gap: 30px;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  justify-content: center;
  background-image: url(/static/img/tomas.png), url(/static/img/open-bg.svg);
  background-position:
    right bottom,
    center;
  background-repeat: no-repeat, no-repeat;
  background-size:
    28% auto,
    cover;
  flex: 1;
  padding: 19vh 0;
}
.findout-price h2 {
  margin: 0;
}
.findout-price-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: 0%;
  text-align: center;
  color: #ffffff;
}

/* ************ */
/* fran-more */
/* ************ */
.fran-more {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  min-height: auto;
}
.fran-more-selected {
  background: #3be3b1;
}
.fran-more h2 {
  margin-top: 0;
  padding-top: 10vh;
}
.fran-more-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.fran-more .cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 3vh;
  padding: 2rem;
  width: 100%;
}
.fran-more .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 1.5rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.fran-more .card-icon {
  flex: 1;
}
.fran-more .card-icon img {
  width: 3.5rem;
  height: auto;
}
.fran-more .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.fran-more .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  flex: 1;
  text-align: center;
}

/* ************ */
/* fran-pavlov */
/* ************ */
.fran-pavlov {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  min-height: auto;
  /* background-image: url(/static/img/franchise-pavlov.jpg);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto; */
  padding-top: 5vh;
}
.fran-pavlov-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.pavlov-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.fran-pavlov .cards {
  display: flex;
  gap: 1.5rem;
  width: 53%;
  flex-direction: row;
  justify-content: center;
  margin-bottom: 10vh;
  position: relative;
  z-index: 1;
}
.fran-pavlov .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: center;
  gap: 0.5rem;
  flex: 1 1 0;
  box-shadow: 0px 4px 4px 0px rgba(149, 125, 245, 1);
}
.fran-pavlov img {
  width: 100%;
}
.fran-pavlov .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.fran-pavlov .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.fran-pavlov .desc {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 0.8rem;
}
.fran-pavlov .card-1 {
  transform: rotateZ(-6deg) translateX(3vh);
  z-index: 1;
}
.fran-pavlov .card-2 {
  transform: rotateZ(6deg) translateX(-3vh);
  z-index: 2;
}

/* ************ */
/* numbers */
/* ************ */
.numbers {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.numbers-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
}
.numbers-selected {
  background: #3be3b1;
}
.numbers-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  width: 50%;
  color: #ffffff;
  margin-bottom: 4vh;
}
.numbers .mini-cards {
  gap: 0.5rem 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin-bottom: 2rem;
}
.numbers .mini-card {
  display: flex;
  background: #ffffff;
  border-radius: 10px;
  padding: 0.5rem 1rem;
  color: #262423;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.numbers .mini-card .title {
  font-family: Inter;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1.3;
}
.numbers .mini-card .badge {
  font-family: Inter;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1.3;
  letter-spacing: 0%;
  padding: 0.5rem;
  border-radius: 5px;
}
.numbers .cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.numbers .card {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
  align-items: center;
}
.numbers .card .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.numbers .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.numbers .profit {
  margin-bottom: 3rem;
}
.numbers .profit .card {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  border-radius: 10px;
  padding: 1rem;
  background: #ffffff;
  align-items: center;
}
.numbers .profit .title {
  display: flex;
  flex-direction: column;
  font-weight: 500;
  font-size: 1.5rem;
}
.numbers .profit .desc {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.numbers .plus {
  display: flex;
}
.numbers .plus .card {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-weight: 500;
  font-size: 15rem;
  text-align: center;
  padding: 1rem;
}
.numbers .plus img {
  height: 6rem;
  width: auto;
}

/* ************ */
/* more-profit */
/* ************ */
.more-profit {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.more-profit-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
}
.more-profit-selected {
  background: #3be3b1;
}
.more-profit .cards {
  gap: 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin-bottom: 2rem;
}
.more-profit .card {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
  align-items: center;
}
.more-profit .card .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.more-profit .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.more-profit .right {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.more-profit h2 {
  margin-bottom: 4rem;
}

/* ************ */
/* partner */
/* ************ */
.partner {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  background-image: url(/static/img/partner-bg.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 90% auto;
}
.partner-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
}
.partner .subtitle {
  color: #ffffff;
}
.partner .card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #e97755;
  color: #ffffff;
  align-items: center;
  width: 24vw;
  height: 14vw;
  flex-wrap: nowrap;
  justify-content: center;
}
.partner .card-white {
  background: #ffffff;
  color: #262423;
}
.partner .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.partner img {
  height: 4rem;
  width: auto;
}
.partner h2 {
  margin-bottom: 4rem;
}

/* ************ */
/* franchise-benefits */
/* ************ */
.franchise-benefits {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
}
.franchise-benefits-selected {
  background: #3be3b1;
}
.franchise-benefits h2 {
  margin-top: 0;
  padding-top: 10vh;
}
.franchise-benefits-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.franchise-benefits .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 3vh;
  padding: 40px;
}
.franchise-benefits .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  min-height: 20vw;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
}
.franchise-benefits .card > img {
  margin-bottom: 1rem;
  width: 100%;
  height: auto;
}
.franchise-benefits .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.franchise-benefits .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  flex: 1;
}
.franchise-benefits .card-dog-1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
.franchise-benefits .card-dog-1 img {
  width: 60%;
  height: auto;
  transform: scale(1.3) translateY(calc(19% + 1rem)) translateX(17%);
}
.franchise-benefits .card-dog-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.franchise-benefits .card-dog-2 img {
  width: 35%;
  height: auto;
  transform: translateX(1rem) translateY(calc(25%));
}

/* ************ */
/* contact-founder */
/* ************ */
.contact-founder {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
}
.contact-founder-selected {
  background: #3be3b1;
}
.contact-founder-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  gap: 3rem;
}
.contact-founder h2 {
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 0;
}
.contact-founder .socials {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 2rem;
}
.contact-founder .mockup {
  width: 34vw;
}
.fr .footer {
  padding-top: 0;
}

/* ************ */
/* Beginners */
/* ************ */
.beginners {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background-image: url(/static/img/general-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.beginners .in-fire {
  position: absolute;
  bottom: 0;
  left: 5vw;
  transform: scale(1.3) translateX(1rem);
}
.beginners .in-fire img {
  height: 28vh;
}
.beginners .content {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  flex: 1;
}
.beginners h1 {
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
}
.beginners .buttons {
  display: flex;
  margin-top: 3rem;
  gap: 0.5vw;
}

/* ************ */
/* Beginners about */
/* ************ */
.beginners-about .sub-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 100%;
  position: relative;
  background-color: transparent;
}
.beginners-about .sub-container .about-subtitle {
  flex: 2;
  min-height: 4rem;
  margin-bottom: 0;
}
.beginners-about .sub-container .sub {
  flex: 1;
}
.beginners-about .sub-container .sub-img {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}
.beginners-about .sub-container .bear {
  position: absolute;
  height: 7rem;
  top: -3rem;
}
.beginners-about .cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  width: 100%;
  margin-bottom: 3rem;
}
.beginners-about .card {
  display: flex;
  gap: 1rem;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}
.beginners-about .card img {
  margin-bottom: 0;
}
.beginners-about .title {
  font-family: "Bounded", sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.2;
}
.beginners-about .desc {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* ***************** */
/* beginners-about-2 */
/* ***************** */
.beginners-about-2 {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  margin-top: -50px;
}
.beginners-about-2-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.beginners-about-2-selected {
  background: #3be3b1;
}
.beginners-about-2-subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  width: 50%;
  color: #ffffff;
  margin-bottom: 4vh;
}
.beginners-about-2 .mini-cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.beginners-about-2 .mini-card {
  flex: 1 1 0;
  background: #ffffff;
  border-radius: 10px;
  padding: 1rem;
  color: #262423 !important;
}
.beginners-about-2 .mini-card .title {
  display: flex;
  gap: 0.5rem;
  font-weight: 500;
  font-size: 1.5rem;
  align-items: center;
  justify-content: center;
}
.beginners-about-2 .mini-card img {
  height: 1.75rem;
}
.beginners-about-2 .mini-card .subtitle {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}
.beginners-about-2 .cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.beginners-about-2 .card {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
}
.beginners-about-2 .card .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.beginners-about-2 .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.beginners-about-2 .two-cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3rem;
}
.beginners-about-2 .card-one {
  flex: 1;
  display: flex;
  flex-direction: row;
  gap: 20px;
  border-radius: 10px;
  padding: 40px;
  background: #ffffff;
  align-items: center;
}
.beginners-about-2 .card-one > img {
  max-width: 50%;
}
.beginners-about-2 .two-cards .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.beginners-about-2 .two-cards .desc {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
  gap: 0.5rem;
  display: flex;
  flex-direction: column;
}

/* ************ */
/* video */
/* ************ */
.video {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.video .screen-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
}
.video-selected {
  background: #3be3b1;
}
.video .video-container {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
}
.video h2 {
  margin-bottom: 3rem;
}
.video .video-container .left {
  flex: 1;
  background-image: url(/static/img/video-dog-1.png);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: auto 59%;
}
.video .video-container .right {
  flex: 1;
  background-image: url(/static/img/video-dog-2.png);
  background-position: bottom 22px left;
  background-repeat: no-repeat;
  background-size: auto 48%;
}
.video video {
  width: 62vw;
  height: auto;
  background: #ffffff;
}
.video .vid {
  display: grid;
  grid-template-columns: 22px auto 22px;
}
.video .border-2,
.video .border-4,
.video .border-6,
.video .border-8 {
  background-color: #b85f46;
}
.video .border-1 {
  background-image: url(/static/img/video-border-1.png);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: 22px;
  height: 22px;
  width: 22px;
  margin-bottom: -1px;
  margin-right: -1px;
}
.video .border-2 {
  margin-bottom: -1px;
}
.video .border-3 {
  background-image: url(/static/img/video-border-3.png);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 22px;
  height: 22px;
  width: 22px;
  margin-bottom: -1px;
  margin-left: -1px;
}
.video .border-4 {
  margin-right: -1px;
}
.video .border-6 {
  margin-left: -1px;
}
.video .border-7 {
  background-image: url(/static/img/video-border-7.png);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: 22px;
  height: 22px;
  width: 22px;
  margin-top: -1px;
  margin-right: -1px;
}
.video .border-8 {
  margin-top: -1px;
}
.video .border-9 {
  background-image: url(/static/img/video-border-9.png);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 22px;
  height: 22px;
  width: 22px;
  margin-top: -1px;
  margin-left: -1px;
}

/* ************** */
/* beginners-more */
/* ************** */
.beginners-more {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 10vh;
}
.beginners-more-selected {
  background: #3be3b1;
}
.beginners-more h2 {
  padding-top: 31vh;
  width: 100%;
  background-image: url(/static/img/beginners-more-bg.jpg);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  margin: 0;
  padding-bottom: 6vh;
}
.beginners-more-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.beginners-more .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 3vh;
  padding: 0 40px;
}
.beginners-more .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.beginners-more .card-icon {
  flex: 1;
}
.beginners-more .card-icon img {
  width: 4vw;
  height: auto;
}
.beginners-more .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* ************ */
/* beginners-cool */
/* ************ */
.beginners-cool {
  min-height: 50vh;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.beginners-cool > * {
  width: 95%;
}
.beginners-cool .cool-1 {
  margin-left: -10vw;
}
.beginners-cool .cool-2 {
  margin-right: -10vw;
}

/* ************ */
/* advice */
/* ************ */
.advice {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  padding: 0;
  padding-bottom: 5rem;
  min-height: auto;
  background-image: url(/static/img/advice-bg.svg);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.advice-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
}
.advice h2 {
  margin: 0;
  width: 100%;
  background-image: url(/static/img/advice-superman.png);
  background-position: right 6rem bottom 1rem;
  background-repeat: no-repeat;
  background-size: auto 5rem;
  padding-bottom: 3rem;
}
.advice-selected {
  background: #3be3b1;
}
.advice .cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1rem;
  row-gap: 0.5rem;
  width: 100%;
  margin-bottom: 3vh;
}
.advice .card {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
  align-items: center;
}
.advice .card .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.advice .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* ************ */
/*    how-to    */
/* ************ */
.how-to {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  margin-top: -50px;
  margin-bottom: 50px;
}
.how-to-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 18vh 2vw;
}
.how-to-selected {
  background: #3be3b1;
}
.how-to .cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3vh;
}
.how-to .card {
  flex: 1;
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
}
.how-to .card img {
  margin-bottom: 1rem;
}
.how-to .card .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.how-to .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.how-to h2 {
  margin: 0;
  margin-bottom: 3rem;
}

/* *************** */
/* beginners-games */
/* *************** */
.beginners-games {
  background: none;
}

/* *************** */
/* beginners-sleep */
/* *************** */
.sleep {
  background-color: transparent;
  margin-bottom: -9.1vw;
  z-index: 3;
  position: relative;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
}
.sleep img {
  width: 100%;
  height: auto;
}

/* *************** */
/* beginners-feedback */
/* *************** */
.beginners-feedback {
  background-image: url(/static/img/beginners-feedback-bg.svg);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  min-height: auto;
  margin-bottom: 9vw;
  margin-top: 11vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
}
.beginners-selected {
  background: #3be3b1;
}
.beginners-feedback h2 {
  margin-bottom: 3rem;
  margin-top: 1rem;
}
.beginners-feedback .form-container {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: space-between;
  font-family: Inter;
  font-weight: 600;
  font-size: 0.9rem;
  line-height: 1.3;
}
.beginners-feedback .feedback-form {
  flex: 2;
}
.beginners-feedback .left {
  flex: 1;
}
.beginners-feedback .center {
  flex: 1.5;
}
.beginners-feedback .right {
  flex: 1;
  background-image: url(/static/img/beginners-parrot.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
}
.beginners-feedback .form-lr {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
}
.beginners-feedback .form-lr > * {
  display: flex;
  flex-direction: row;
  flex: 1;
  margin-bottom: 1.5rem;
}
.beginners-feedback .form-left {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 1.5rem;
}
.beginners-feedback .form-right {
  display: flex;
  flex-direction: column;
}
.beginners-feedback textarea {
  flex: 1;
}
.beginners-feedback .field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.beginners-feedback .agree-container {
  margin-bottom: 3rem;
}

.beginners-feedback input,
.beginners-feedback textarea {
  background: #eae5fd;
}

/* ************ */
/* Corp general */
/* ************ */
.corp-general {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  background-image: url(/static/img/general-bg.svg);
  background-position: center 14vh;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.corp-general .logo {
  max-width: 12vw;
  margin-bottom: 2.5rem;
}
.corp-general .cat {
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateX(16%);
}
.corp-general .cat img {
  height: 28vh;
}
.corp-general .content {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  flex: 1;
}
.corp-general .subtitle {
  color: #ffffff;
  text-align: center;
  max-width: 55%;
  margin-bottom: 2rem;
}
.corp-general h1 {
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
  margin-bottom: 2rem;
}
.corp-general .buttons {
  margin-top: 3vh;
  gap: 0.5vw;
}

/* ************ */
/* Corporate about */
/* ************ */
.corp-about .sub-container {
  background-image: url(/static/img/modal-cat.png);
  background-position: right bottom;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: row;
  justify-content: center;
  background-size: auto 90%;
}
.corp-about .sub-container {
  background: none;
}
.corp-about .mini-cards {
  gap: 1rem;
  margin-bottom: 3rem;
}
.corp-about .cards {
  gap: 1rem;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 3vh;
}
.corp-about .card {
  flex: 1;
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
}
.corp-about .card img {
  margin-bottom: 1rem;
}
.corp-about .card .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.corp-about .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* ***************** */
/* corp any event */
/* ***************** */
.corporate-any-event {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  min-height: auto;
}
.any-event-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 10rem 2rem;
  background-image: url(/static/img/games-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.corporate-any-event .cards {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3rem;
  gap: 1rem;
}
.corporate-any-event .card {
  flex: 1 1 0;
  min-width: 0;
  max-width: 100%;
  height: auto;
}
.corporate-any-event h2 {
  margin: 0 0 3rem 0;
}

/* ************** */
/* Corporate care */
/* ************** */
.care {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  padding: 0 0 9vh 0;
}
.care-selected {
  background: #3be3b1;
}
.care h2 {
  background-image: url(/static/img/corporate-care-cat.png);
  background-position: left calc(40px + 3vw) bottom;
  background-repeat: no-repeat;
  background-size: auto 90%;
  margin: 0;
  padding-top: 19vh;
  padding-bottom: 7vh;
  width: 100%;
}
.care-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.care .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 3vh;
  padding: 0 40px 40px 40px;
}
.care .card {
  background: #ffffff;
  border-radius: 10px;
  padding: 2rem;
  color: #262423;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
}
.care .card-icon {
  margin-bottom: 2rem;
  flex: 1;
}
.care .card-icon img {
  height: 4vw;
  width: auto;
}
.care .title {
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 10px;
}
.care .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}

/* **************** */
/* corporate-photos */
/* **************** */
.corporate-photos {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background-image: url(/static/img/corporate-duck.png), url(/static/img/corporate-photos-bg.svg);
  background-position:
    right 12vw bottom,
    bottom;
  background-repeat: no-repeat, no-repeat;
  background-size:
    4% auto,
    100% auto;
  padding: 0 2rem 10rem 2rem;
}

/* ************ */
/* cases */
/* ************ */
.cases {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.cases-container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  background: #e97755;
  border-radius: 50px;
  height: 100%;
  width: 100%;
  flex: 1;
  justify-content: center;
  padding: 15vh 2vw;
  position: relative;
}
.cases h2 {
  margin-top: 7vh;
  margin-bottom: 10vh;
}
.cases .cards {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 6vh;
  width: 100%;
}
.cases .card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 10px;
  padding: 2rem;
  background: #ffffff;
  width: 100%;
}
.cases .card .title {
  font-weight: 500;
  font-size: 1.5rem;
}
.cases .card .text {
  font-family: Inter;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.3;
}
.cases .cat {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 42vh;
}

/* *************** */
/* coprorate book  */
/* *************** */
.book {
  background-image: url(/static/img/zhdun.png), url(/static/img/beginners-feedback-bg.svg);
  background-position:
    calc(96%) bottom,
    bottom;
  background-repeat: no-repeat, no-repeat;
  background-size:
    auto 69%,
    100% auto;
  min-height: auto;
  margin-bottom: 7vw;
  margin-top: 11vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
}
.book-selected {
  background: #3be3b1;
}
.book h2 {
  margin-bottom: 3rem;
  margin-top: 0;
}
.book .form-container {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: space-between;
  font-family: Inter;
  font-weight: 600;
  font-size: 0.9rem;
  line-height: 1.3;
}
.book .left {
  flex: 1;
  /* background-image: url(/static/img/corporate-book-ducks-2.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 80% auto; */
}
.book .center {
  flex: 2.5;
}
.book .right {
  flex: 1;
  /* background-image: url(/static/img/corporate-book-ducks-1.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 80% auto; */
}
.book .fields-group {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem 1.5rem;
}
.book .field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.book .agree-container {
  margin-bottom: 2rem;
}
.book input {
  background: #eae5fd;
}
.book select {
  background: #eae5fd;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23222' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 12px 8px;
  background-position: right 0.7rem center;
  padding-right: 2.2rem;
}
.book .btn-center {
  display: flex;
  justify-content: center;
}

/* ************** */
/* Feedback float */
/* ************** */
.feedback-float {
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  display: flex;
  gap: 0.8rem;
  z-index: 50;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    visibility 0s linear 0.2s;
}
.feedback-float.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.2s ease;
}
.feedback-float-action {
  position: relative;
  display: flex;
  align-items: center;
}
.feedback-float-icon {
  width: 3.5rem;
  height: 3.5rem;
  z-index: 50;
  cursor: pointer;
}
.feedback-float-popup {
  position: absolute;
  right: 0.5rem;
  bottom: calc(100% + 0.6rem);
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0s linear 0.2s;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 0.7rem;
}
.feedback-float-popup .social {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
}
.feedback-float-popup .social img {
  cursor: pointer;
}
.feedback-float-popup .social-name {
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  color: #957df5;
  background-color: #ffffff;
  padding: 0.7rem 1.3rem;
  border-radius: 10px;
  box-shadow: 1px 2px 4px 0px rgba(38, 36, 35, 0.5);
}
.feedback-float-popup img {
  width: 2.5rem;
  height: 2.5rem;
  display: block;
  flex-shrink: 0;
}
.feedback-float.is-open .feedback-float-popup {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease;
}
.feedback-float-text {
  background-color: #ffffff;
  font-family: Inter;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.3;
  padding: 0.7rem 1.3rem;
  border-radius: 10px;
  color: #957df5;
  box-shadow: 1px 2px 4px 0px rgba(38, 36, 35, 0.5);
  cursor: default;
}
.feedback-float.is-open .feedback-float-text {
  display: none;
}

/* ************ */
/* Team confirm */
/* ************ */
.team-confirm {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  color: #262423;
  background: url(/static/img/pixelate-bg.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.team-confirm h2 {
  margin-top: 0;
  font-size: 3rem;
  color: #262423;
  margin-bottom: 1rem;
  text-align: left;
}
.team-confirm .card {
  background-color: #ffffff;
  padding: 4.5rem;
  border-radius: 10px;
  max-width: 90%;
  position: relative;
}
.team-confirm .form-field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.team-confirm .form-error-general {
  display: none;
}
.team-confirm .decline-form {
  margin-top: 10px;
}
.team-confirm .buttons {
  display: flex;
  gap: 0.5rem;
}
.team-confirm .cat {
  position: absolute;
  bottom: 3rem;
  right: 4.5rem;
  height: 6rem;
}
.team-confirm .members-count {
  margin-bottom: 3rem;
}

/* ************ */
/* button group */
/* ************ */
.members-count-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.members-count-buttons .members-count-button {
  cursor: pointer;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 0;
  border: 1px solid #f1eeff;
  background: #f1eeff;
  color: #26242380;
  font-size: 1.1rem;
  font-weight: 600;
  transition:
    background 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease;
  padding: 0;
  font-family: Inter;
}
.members-count-buttons .members-count-button.is-active {
  background: #957df5;
  border-color: transparent;
  color: #ffffff;
}
.members-count-buttons .members-count-button:hover {
  border-color: #a08af6;
}

/* ************ */
/* Modal */
/* ************ */
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  align-items: center;
  justify-content: center;
}
.modal-content {
  background: #ffffff;
  padding: 2em;
  border-radius: 10px;
  max-width: 90vw;
  max-height: 90vh;
  position: relative;
}
.modal-text {
  padding: 2rem;
}
.modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  font-size: 1.5em;
}

/* ************ */
/* Utils */
/* ************ */
.invalid-feedback {
  color: rgb(255, 39, 39);
}
.hidden {
  display: none !important;
}

/* ************ */
/* ticker */
/* ************ */
@keyframes ticker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-33.333333%);
  }
}

.ticker {
  background: #b9a9ff;
  color: #ffffff;
  font-weight: 400;
  font-size: 1.4rem;
  width: 100%;
  overflow: hidden;
  text-transform: lowercase;
}
.ticker img {
  height: 0.7rem;
  width: auto;
}

.ticker__in {
  display: flex;
  width: fit-content;
  animation: ticker 50s linear infinite;
  transform: translate3d(0, 0, 0);
  will-change: transform;
  align-items: center;
}

.ticker__item {
  padding: 0.6rem 0.8rem;
  white-space: nowrap;
  -webkit-backface-visibility: hidden;
}
.slow .ticker__in {
  animation: ticker 100s linear infinite;
}
.tickers-index {
  margin-bottom: 1vh;
}
