/* Медиа-запросы */
@media (max-width: 1800px) {
}
@media (max-width: 1400px) {
}
@media (max-width: 1024px) {
}
@media (max-width: 768px) {
}

/* Базовые стили */
:root {
   font-synthesis: none;
   text-rendering: optimizeLegibility;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   --grey: #cbcbcc;
   --green: #7f9c6c;
   --yellow: #f8cd54;
   --bg: #262324;
   --white: #fff;
}
html {
   font-size: 20px;
   line-height: normal;
   font-weight: 300;
   -webkit-text-size-adjust: 100%;
   overflow-y: scroll;
   scroll-behavior: smooth;
}
@media (max-width: 1800px) {
   html {
      font-size: 20px;
   }
}
@media (max-width: 1400px) {
   html {
      font-size: 1.95vw;
   }
}
@media (max-width: 1024px) {
   html {
      font-size: 2.6vw;
   }
}
@media (max-width: 768px) {
   html {
      font-size: 5.33vw;
   }
}
body {
   background-color: var(--bg);
   color: var(--white);
   font-family: "Geologica";
   scrollbar-gutter: stable;
   overflow: hidden;
   height: fit-content;
}
.container {
   max-width: 86rem;
   margin: 0 auto;
}
@media (max-width: 1800px) {
   .container {
      max-width: 66rem;
   }
}
@media (max-width: 1400px) {
   .container {
      max-width: none;
      margin: 0;
      padding: 0 2rem;
   }
}
@media (max-width: 1024px) {
   .container {
      padding: 0 1rem;
   }
}
@media (max-width: 768px) {
   .container {
      padding: 0 0.6rem;
   }
}
.section {
   margin-bottom: 11rem;
}
@media (max-width: 1800px) {
   .section {
      margin-bottom: 10rem;
   }
}
@media (max-width: 1400px) {
   .section {
      margin-bottom: 8rem;
   }
}
@media (max-width: 1024px) {
   .section {
      margin-bottom: 7rem;
   }
}
.wrapper {
   overflow: hidden;
}
img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}
svg {
   width: 100%;
   height: auto;
}
.yellow {
   color: var(--yellow);
}
.swiper-slide img {
   object-fit: cover;
}
.swiper-wrapper {
   z-index: 0;
}
#tap,
#menu,
#events,
#serts,
#card {
   scroll-margin-top: 5rem;
}

/* Анимации */
@keyframes appearHeader {
   from {
      transform: translateY(-100%);
      background: rgba(0, 0, 0, 0);
   }
   to {
      transform: translateY(0);
      background: rgba(0, 0, 0, 0.5);
   }
}
@keyframes appearLogo {
   from {
      transform: scale(1.4);
      opacity: 0;
   }
   to {
      transform: scale(1);
      opacity: 1;
   }
}
@keyframes appearSub {
   from {
      transform: translate(-50%, 0) scale(1.4);
      opacity: 0;
   }
   to {
      transform: translate(-50%, 0) scale(1);
      opacity: 1;
   }
}
@keyframes appear {
   from {
      opacity: 0;
   }
   to {
      opacity: 1;
   }
}
@keyframes disappear {
   from {
      opacity: 1;
   }
   to {
      opacity: 0;
   }
}
@keyframes delimiter {
   from {
      height: 0;
   }
   to {
      height: 5rem;
   }
}
@media (max-width: 1024px) {
   @keyframes delimiter {
      from {
         height: 0;
      }
      to {
         height: 3rem;
      }
   }
}

/* Шапка */
header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   padding: 0.6rem 0;
   z-index: 1;
   background: rgba(0, 0, 0, 0);
   transform: translateY(-100%);
   animation: appearHeader 0.5s ease 0.2s forwards;
}
.header-nav {
   display: flex;
   justify-content: space-between;
   align-items: center;
}
.header-nav__menu {
   display: flex;
   align-items: baseline;
   gap: 4rem;
}
.header-nav__menu-item:hover {
   color: var(--yellow);
}
.header-nav__menu-item:active {
   transform: scale(0.96);
}
.header-nav__menu-item {
   font-size: 0.8rem;
   display: block;
   transition:
      color 0.2s ease,
      transform 0.1s;
}
.header-nav__call:active,
.header-nav__call-mobile:active,
.btn:active {
   transform: scale(0.98);
}
.header-nav__call,
.btn,
.header-nav__call-mobile,
.location__call {
   font-size: 0.8rem;
   font-family: Geologica;
   color: var(--yellow);
   border: 1px solid var(--yellow);
   border-radius: 4.5rem;
   padding: 0.8rem 2rem;
   backdrop-filter: blur(4px);
   background: rgba(248, 205, 84, 0.2);
   display: block;
   width: fit-content;
   transition: transform 0.1s;
}
.header-nav__call-mobile {
   display: none;
   text-align: center;
   width: 100%;
}
.header-nav__closer {
   display: none;
   transition: transform 0.1s;
}
.header-nav__burger {
   display: none;
}
@media (max-width: 1400px) {
   .header-nav__menu {
      gap: 2rem;
   }
   .header-nav__menu-item {
      font-size: 0.7rem;
   }
   .header-nav__call,
   .btn,
   .header-nav__call-mobile {
      font-size: 0.7rem;
      padding: 0.6rem 1.2rem;
   }
}
@media (max-width: 1024px) {
   header {
      padding: 1rem 0;
   }
   .header-nav__menu {
      gap: 1.2rem;
   }
   .header-nav__call,
   .btn,
   .header-nav__call-mobile,
   .location__call {
      font-size: 0.6rem;
   }
   .header-nav__menu-item:hover {
      color: var(--white);
   }
}
@media (max-width: 768px) {
   header {
      padding: 1.2rem 0.6rem;
      display: flex;
      justify-content: flex-end;
   }
   .header-nav__burger {
      display: block;
      width: 1.2rem;
      height: 1.2rem;
      background: none;
   }
   .header-nav {
      position: absolute;
      right: 0;
      top: 0;
      padding: 4rem 4rem 4rem 2rem;
      background: var(--bg);
      border-radius: 0.6rem 0 0 0.6rem;
      height: 100vh;
      align-items: flex-start;
      transform: translate(100%, 0);
      transition:
         transform 0.3s ease,
         box-shadow 0.3s ease;
   }
   .header-nav.opened {
      transform: translate(0, 0);
      -webkit-box-shadow: -50vw 0px 50vw 10px rgba(0, 0, 0, 0.4);
      -moz-box-shadow: -50vw 0px 50vw 10px rgba(0, 0, 0, 0.4);
      box-shadow: -50vw 0px 50vw 10px rgba(0, 0, 0, 0.4);
   }
   .header-nav__closer {
      display: block;
      position: absolute;
      background: none;
      width: 1.2rem;
      height: 1.2rem;
      top: 1.2rem;
      right: 0.6rem;
   }
   .header-nav__menu {
      flex-direction: column;
      gap: 1.6rem;
   }
   .header-nav__call {
      display: none;
   }
   .header-nav__call-mobile {
      display: block;
   }
}

/* Первый экран */
.front {
   position: relative;
   width: 100%;
   min-height: 100vh;
   display: flex;
   align-items: center;
   justify-content: center;
}
.front__bg-alfa {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.5);
   z-index: -1;
}
.front__bg {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   overflow: hidden;
   z-index: -1;
}
.front__bg > img {
   object-fit: cover;
}
.front__logo {
   width: 10rem;
   transform: scale(1.4);
   opacity: 0;
   animation: appearLogo 0.5s ease 0.7s forwards;
}
.front_subtitles {
   position: absolute;
   top: 60%;
   left: 50%;
   transform: translate(-50%, 0) scale(1.4);
   display: flex;
   flex-direction: column;
   gap: 2rem;
   opacity: 0;
   animation: appearSub 0.5s ease 0.7s forwards;
}
.front__sub-block {
   display: flex;
   gap: 10rem;
   align-items: flex-start;
}
.front__subtitles-item.item-1 {
   width: 7rem;
}
.front__subtitles-item.item-2 {
   width: 4.5rem;
}
@media (max-width: 1800px) {
   .front_subtitles {
      top: 65%;
   }
}
@media (max-width: 1400px) {
   .front__logo {
      width: 6.5rem;
   }
}
@media (max-width: 768px) {
   .front__sub-block {
      gap: 6rem;
   }
   .front_subtitles {
      top: 60%;
   }
}

/* Блок Пространство */
.title {
   font-size: 1rem;
   text-transform: uppercase;
   text-align: center;
   color: var(--grey);
}
.place__delimiter {
   height: 5rem;
   margin: 0.4rem 0;
}
.place__delimiter.animate {
   animation: delimiter 0.5s ease forwards;
}
.place__main-title {
   font-weight: 600;
   font-size: 1.4rem;
   line-height: 170%;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   text-align: center;
   padding: 0 22rem;
   margin-bottom: 2rem;
}
.place__main-title span.yellow {
   color: var(--yellow);
}
.place__grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   gap: 1rem;
}
.place__img {
   aspect-ratio: 1 / 1;
   border-radius: 0.6rem;
   overflow: hidden;
}
.place__img > img {
   object-fit: cover;
}
.place__text {
   font-size: 1rem;
   line-height: 140%;
   display: flex;
   align-items: flex-end;
}
@media (max-width: 1800px) {
   .place__delimiter {
      margin: 0.4rem 0;
   }
   .place__main-title {
      padding: 0 12rem;
   }
   .place__grid {
      grid-template-columns: repeat(6, 1fr);
      gap: 1rem;
   }
   .place__text {
      font-size: 0.8rem;
   }
}
@media (max-width: 1400px) {
   .place__main-title {
      font-size: 1.2rem;
      padding: 0 4rem;
      margin-bottom: 3rem;
   }
   .place__text {
      font-size: 0.7rem;
      grid-column: 4 / 6;
   }
}
@media (max-width: 1024px) {
   .place__delimiter {
      height: 3rem;
      margin: 0.4rem 0;
   }
   .place__main-title {
      font-size: 1.2rem;
      padding: 0;
      margin-bottom: 2rem;
   }
   .place__grid {
      grid-template-columns: repeat(5, 1fr);
      gap: 0.8rem;
   }
   .place__text {
      font-size: 0.6rem;
      grid-column: 4 / -1;
   }
}
@media (max-width: 768px) {
   .place__main-title {
      font-size: 0.8rem;
   }
   .place__grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 0.4rem;
   }
   .place__img {
      aspect-ratio: 1 / 1.5;
   }
   .place__text {
      margin-top: 0.8rem;
      grid-column: 2 / -1;
   }
}

/* Блок Тап-лист и Меню */
.menu {
   overflow: hidden;
}
.menu-title {
   font-size: 20.62rem;
   line-height: 70%;
   text-transform: uppercase;
   margin-bottom: 4rem;
   margin-left: -0.7rem;
}
.menu-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
}
.menu-block {
   grid-column: 4 / 6;
}
.menu-text {
   font-size: 1rem;
   line-height: 140%;
   margin-bottom: 1.2rem;
}
.menu .menu-title {
   margin-left: -1.7rem;
   color: var(--grey);
}
.menu .menu-block {
   grid-column: 1 / 3;
}
.menu .menu-grid {
   grid-template-columns: repeat(8, 1fr);
   margin-bottom: 4rem;
}
.menu-btn-block {
   margin-bottom: 1.2rem;
   display: flex;
   gap: 1.2rem;
}
.menu .menu-text {
   margin-bottom: 0;
   padding-right: 2rem;
}
.menu .btn {
   color: var(--white);
   border-color: var(--white);
   background: rgba(255, 255, 255, 0.2);
}
.swiper-menu .swiper-slide {
   aspect-ratio: 1 / 1;
   overflow: hidden;
   border-radius: 0.6rem;
}
@media (max-width: 1800px) {
   .menu-title {
      font-size: 15.794rem;
      margin-bottom: 3.5rem;
      margin-left: -0.4rem;
   }
   .menu-text {
      font-size: 0.8rem;
      margin-bottom: 1.2rem;
   }
   .menu .menu-title {
      margin-left: -1.4rem;
   }
   .menu .menu-block {
      grid-column: 1 / 4;
   }
   .menu .menu-text {
      padding-right: 10rem;
   }
   .menu .menu-grid {
      margin-bottom: 3.5rem;
   }
}
@media (max-width: 1400px) {
   .menu-title {
      font-size: 11.318rem;
      margin-bottom: 3rem;
      margin-left: -0.3rem;
   }
   .menu-grid {
      grid-template-columns: repeat(2, 1fr);
      margin-bottom: 3rem;
   }
   .menu-block {
      grid-column: 2 / -1;
   }
   .menu-text {
      font-size: 0.7rem;
   }
   .menu .menu-title {
      margin-left: -1rem;
   }
   .menu .menu-block {
      grid-column: 1 / 2;
   }
   .menu .menu-grid {
      grid-template-columns: repeat(2, 1fr);
   }
   .menu .menu-text {
      padding-right: 10rem;
   }
   .swiper-menu .swiper-slide {
      aspect-ratio: 1 / 1.2;
   }
}
@media (max-width: 1024px) {
   .menu-title {
      font-size: 8.74rem;
   }
   .menu-grid {
      grid-template-columns: repeat(6, 1fr);
   }
   .menu-block {
      grid-column: 4 / -1;
   }
   .menu-text {
      font-size: 0.6rem;
      margin-bottom: 1.2rem;
   }
   .menu .menu-title {
      margin-left: -0.9rem;
   }
   .menu .menu-block {
      grid-column: 1 / 2;
   }
   .menu .menu-grid {
      grid-template-columns: repeat(2, 1fr);
   }
   .menu .menu-text {
      padding-right: 7rem;
   }
   .swiper-menu .swiper-slide {
      aspect-ratio: 1 / 1.5;
   }
}
@media (max-width: 768px) {
   .menu-title {
      font-size: 4.175rem;
      margin-bottom: 2rem;
      margin-left: 0;
   }
   .menu-grid {
      display: block;
   }
   .menu-text {
      font-size: 0.6rem;
      margin-bottom: 0.8rem;
   }
   .menu .menu-title {
      margin-left: 0;
   }
   .menu .menu-grid {
      display: block;
      margin-bottom: 2rem;
   }
   .menu-btn-block {
      margin-bottom: 0.8rem;
      gap: 0.8rem;
   }
   .menu .menu-text {
      padding-right: 2rem;
   }
   .menu-grid .btn {
      width: 100%;
      text-align: center;
      flex: 1;
   }
}

/* Блок События */
.events .title {
   margin-bottom: 3rem;
}
.swiper-events {
   overflow: hidden;
}
.events__slider {
   position: relative;
}
.events__slider .swiper-slide {
   height: auto;
}
.events__slider .events__btn.swiper-button-prev,
.events__slider .events__btn.swiper-button-next {
   position: absolute;
   top: 50%;
   cursor: pointer;
   display: block;
   width: 2.4rem;
   height: 2.4rem;
   padding: 0.6rem;
   border-radius: 50%;
   -webkit-box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   -moz-box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   background: var(--yellow);
   margin: 0;
   z-index: 0;
}
.events__btn .swiper-navigation-icon {
   display: none;
}
.events__slider .events__btn.swiper-button-next {
   left: auto;
   right: 0;
   transform: translate(130%, -50%);
}
.events__slider .events__btn.swiper-button-prev {
   right: auto;
   left: 0;
   transform: translate(-130%, -50%);
}
.events__slider .events__btn.swiper-button-prev img {
   transform: rotate(180deg);
}
.events__slider .events__btn.swiper-button-next.swiper-button-disabled,
.events__slider .events__btn.swiper-button-prev.swiper-button-disabled {
   opacity: 1;
   background: rgba(203, 203, 204, 0.5);
}
.events__slide-holder {
   border-radius: 0.6rem;
   padding: 0.6rem;
   background: rgba(203, 203, 204, 0.2);
   display: grid;
   grid-template-columns: auto 1fr;
   gap: 1rem;
   height: 100%;
}
.events__img {
   border-radius: 0.4rem;
   width: 7rem;
   height: auto;
   overflow: hidden;
}
.events__content {
   display: flex;
   flex-direction: column;
   gap: 0.6rem;
}
.events__name {
   font-weight: 500;
   font-size: 1rem;
   line-height: 1.2;
}
.events__description {
   font-size: 0.8rem;
   opacity: 0.6;
   line-height: 1.2;
}
.events__footer {
   display: flex;
   align-items: baseline;
   justify-content: space-between;
   margin-top: auto;
}
.events__date,
.events__link {
   line-height: 1.2;
   font-size: 0.8rem;
   color: var(--yellow);
   display: block;
}
.events__link:hover,
.events__link:visited {
   text-decoration: underline;
}
.events__link {
   text-decoration: underline;
   text-underline-offset: 0.15rem;
   cursor: pointer;
}
@media (max-width: 1800px) {
   .events__slider {
      padding: 0 3rem;
   }
   .events__slider .events__btn.swiper-button-next {
      transform: translate(0, -50%);
   }
   .events__slider .events__btn.swiper-button-prev {
      transform: translate(0, -50%);
   }
}
@media (max-width: 1400px) {
   .events__slider {
      padding: 0 2.5rem;
   }
   .events .title {
      margin-bottom: 2rem;
   }
   .events__slider .events__btn.swiper-button-prev,
   .events__slider .events__btn.swiper-button-next {
      width: 2rem;
      height: 2rem;
      padding: 0.4rem;
   }
   .events__slide-holder {
      padding: 0.4rem;
      gap: 0.6rem;
   }
   .events__img {
      width: 5rem;
   }
   .events__content {
      gap: 0.4rem;
   }
   .events__name {
      font-size: 0.8rem;
   }
   .events__description {
      font-size: 0.6rem;
   }
   .events__date,
   .events__link {
      font-size: 0.6rem;
   }
   .events__link {
      text-decoration: underline;
      text-underline-offset: 0.1rem;
      cursor: pointer;
   }
}
@media (max-width: 1024px) {
   .events__slider {
      padding: 0 2rem;
   }
   .events .title {
      margin-bottom: 2rem;
   }
   .events__slider .events__btn.swiper-button-prev,
   .events__slider .events__btn.swiper-button-next {
      width: 1.6rem;
      height: 1.6rem;
   }
}
@media (max-width: 768px) {
   .events__slide-holder {
      grid-template-columns: 1fr;
      padding: 0.6rem;
   }
   .events__content {
      gap: 0.6rem;
   }
   .events__img {
      width: 100%;
      height: auto;
   }
   .events__name {
      font-size: .8rem;
      line-height: 1.2;
   }
   .events__description,
   .events__date,
   .events__link {
      font-size: .6rem;
      line-height: 1.2;
   }
}

/* Блок Сертификаты */
.sert .title {
   margin-bottom: 3rem;
}
.sert__grid {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   gap: 1rem;
   align-items: center;
}
.sert__info {
   grid-column: 1 / 4;
}
.sert__text {
   font-weight: 500;
   font-size: 1rem;
   margin-bottom: 1rem;
   line-height: 140%;
}
.sert__info span {
   display: block;
   font-size: 0.9rem;
   opacity: 0.6;
   margin-bottom: 2rem;
}
.sert__imgs {
   grid-column: 6 / -1;
   display: flex;
   gap: 1.8rem;
   padding: 0 2rem;
}
@media (max-width: 1800px) {
   .sert__info {
      grid-column: 1 / 5;
   }
   .sert__imgs {
      grid-column: 6 / -1;
      gap: 1.8rem;
      padding: 0;
   }
}
@media (max-width: 1400px) {
   .sert .title {
      margin-bottom: 2rem;
   }
   .sert__info {
      grid-column: 1 / 7;
   }
   .sert__imgs {
      flex-direction: column;
      grid-column: 8 / -1;
      gap: 0;
   }
   .sert__img-2 {
      margin-top: -50%;
   }
}
@media (max-width: 1024px) {
   .sert__grid {
      grid-template-columns: repeat(8, 1fr);
      gap: 0.4rem;
   }
   .sert__info {
      grid-column: 1 / 5;
   }
   .sert__text {
      font-size: 0.8rem;
   }
   .sert__info span {
      font-size: 0.7rem;
      margin-bottom: 1.2rem;
   }
   .sert__imgs {
      grid-column: 6 / -1;
   }
}
@media (max-width: 768px) {
   .sert__grid {
      grid-template-columns: repeat(4, 1fr);
      gap: 0.4rem;
   }
   .sert__info {
      grid-column: 1 / -1;
   }
   .sert__imgs {
      display: none;
   }
}

/* Блок Карта лояльности */
.card .title {
   margin-bottom: 3rem;
}
.card__grid {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   gap: 1rem;
   align-items: center;
}
.card__info {
   grid-column: 1 / 6;
}
.card__text {
   font-weight: 500;
   font-size: 4rem;
   color: var(--grey);
   margin-bottom: 2rem;
}
.card__link {
   font-weight: 500;
   font-size: 1rem;
   text-transform: uppercase;
   text-decoration: underline;
   color: var(--grey);
   opacity: 0.8;
   text-underline-offset: 4px;
}
.card__link-item {
   color: #e66300;
   line-height: 100%;
   font-size: 1.4rem;
}
.card__img {
   grid-column: 8 / 11;
}
@media (max-width: 1800px) {
   .card__text {
      font-size: 2.9rem;
   }
   .card__link {
      font-size: 0.8rem;
   }
}
@media (max-width: 1400px) {
   .card .title {
      margin-bottom: 2rem;
   }
   .card__info {
      grid-column: 1 / 7;
   }
   .card__text {
      font-size: 2.4rem;
      margin-bottom: 1.2rem;
   }
   .card__link {
      font-size: 0.7rem;
   }
   .card__link-item {
      font-size: 1.2rem;
   }
   .card__img {
      grid-column: 8 / 12;
      padding: 0 1rem;
   }
}
@media (max-width: 1024px) {
   .card__grid {
      grid-template-columns: repeat(8, 1fr);
      gap: 0.4rem;
   }
   .card__info {
      grid-column: 1 / 5;
   }
   .card__text {
      font-size: 1.9rem;
   }
   .card__img {
      grid-column: 6 / 8;
      padding: 0 1rem;
   }
}
@media (max-width: 768px) {
   .card__grid {
      grid-template-columns: repeat(4, 1fr);
      gap: 0.4rem;
   }
   .card__info {
      grid-column: 1 / 3;
   }
   .card__text {
      font-size: 0.8rem;
   }
   .card__link {
      font-size: 0.4rem;
   }
   .card__link-item {
      font-size: 0.6rem;
   }
   .card__img {
      grid-column: 3 / -1;
      padding: 0 0 0 2rem;
   }
}

/* Блок Площадка */
.location {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   gap: 1rem;
   position: relative;
}
.location__text {
   font-size: 6rem;
   line-height: 140%;
   text-transform: uppercase;
   grid-column: 1 /11;
}
.location__line {
   position: absolute;
   left: 50%;
}
.location__line img {
   height: 3.6rem;
   width: auto;
}
.location__line.line-1 {
   top: 185%;
   transform: rotate(19deg) translate(-50%, 0);
}
.location__line.line-2 {
   top: 38%;
   transform: rotate(-3.5deg) translate(-50%, 0);
}
.location__call {
   grid-column: 11 / -1;
   height: fit-content;
   width: 100%;
   text-align: center;
}
@media (max-width: 1800px) {
   .location__text {
      font-size: 4.5rem;
      grid-column: 1 /10;
   }
   .location__line img {
      height: 3.1rem;
   }
   .location__line.line-1 {
      top: 210%;
   }
   .location__line.line-2 {
      top: 32%;
   }
   .location__call {
      grid-column: 10 / -1;
   }
}
@media (max-width: 1400px) {
   .location__text {
      font-size: 3rem;
      grid-column: 1 / 10;
   }
   .location__line img {
      height: 2rem;
   }
   .location__line.line-1 {
      top: 210%;
   }
   .location__line.line-2 {
      top: 32%;
   }
}
@media (max-width: 1024px) {
   .location {
      grid-template-columns: repeat(8, 1fr);
      gap: 0.4rem;
   }
   .location__text {
      font-size: 2.5rem;
      grid-column: 1 / 7;
   }
   .location__line img {
      height: 1.5rem;
   }
   .location__line.line-1 {
      top: 155%;
   }
   .location__line.line-2 {
      top: 32%;
   }
   .location__call {
      grid-column: 1 / -1;
   }
}
@media (max-width: 768px) {
   .location {
      grid-template-columns: repeat(4, 1fr);
      gap: 0.4rem;
   }
   .location__text {
      font-size: 1.5rem;
      grid-column: 1 / -1;
   }
   .location__line img {
      height: 1rem;
   }
   .location__line.line-1 {
      top: 147%;
   }
   .location__line.line-2 {
      top: 27%;
   }
}

/* Футер */
footer {
   background: rgba(203, 203, 204, 0.1);
   padding: 4rem 0 2rem;
}
.footer {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   gap: 1rem;
   row-gap: 3rem;
   position: relative;
}
.footer__info {
   grid-column: 1 / 7;
}
.footer__phone a {
   font-size: 1.2rem;
}
.footer__phone {
   margin-bottom: 1.2rem;
}
.footer__social {
   display: flex;
   gap: 0.8rem;
   align-items: center;
   margin-bottom: 3rem;
}
.footer__social div {
   width: 1.2rem;
   height: 1.2rem;
}
.footer__social a {
   font-size: 1.2rem;
}
.footer__time {
   font-size: 1.2rem;
   line-height: 160%;
}
.footer__map {
   grid-column: 7 / -1;
}
.footer__adress {
   margin-bottom: 2rem;
}
.footer__adress a {
   font-size: 1.2rem;
}
.footer__y-map {
   border-radius: 0.6rem;
   overflow: hidden;
}
.footer__y-map div {
   height: 19rem;
}
.footer__sub {
   grid-column: 1 / -1;
   display: flex;
   justify-content: space-between;
}
.footer__doc {
   font-size: 0.8rem;
   opacity: 0.6;
}
@media (max-width: 1800px) {
   footer {
      padding: 3.5rem 0 0.8rem;
   }
   .footer__map {
      grid-column: 8 / -1;
   }
   .footer__y-map div {
      height: 15rem;
   }
}
@media (max-width: 1400px) {
   footer {
      padding: 2rem 0 2rem;
   }
   .footer__y-map div {
      height: 12rem;
   }
   .footer__info {
      grid-column: 1 / 6;
   }
   .footer__phone a {
      font-size: 0.8rem;
   }
   .footer__social div {
      width: 1rem;
      height: 1rem;
   }
   .footer__social a {
      font-size: 0.8rem;
   }
   .footer__time {
      font-size: 0.8rem;
   }
   .footer__map {
      grid-column: 6 / -1;
   }
   .footer__adress a {
      font-size: 0.8rem;
   }
   .footer__doc {
      font-size: 0.6rem;
   }
}
@media (max-width: 1024px) {
   .footer__info {
      grid-column: 1 / 4;
   }
   .footer__map {
      grid-column: 4 / -1;
   }
   .footer {
      grid-template-columns: repeat(8, 1fr);
      gap: 0.4rem;
      row-gap: 3rem;
   }
   .footer__phone {
      margin-bottom: 0.8rem;
   }
   .footer__adress {
      margin-bottom: 0.8rem;
   }
   .footer__doc {
      font-size: 0.5rem;
   }
   .footer__y-map div {
      height: 10rem;
   }
}
@media (max-width: 768px) {
   .footer__info {
      grid-column: 1 / -1;
   }
   .footer__social {
      margin-bottom: 1.2rem;
   }
   .footer__map {
      grid-column: 1 / -1;
   }
   .footer__sub {
      flex-direction: column;
      gap: 0.4rem;
   }
   .footer {
      grid-template-columns: repeat(4, 1fr);
      gap: 0.4rem;
      row-gap: 2rem;
   }
}

/* Полноэкранный слайдер */
.clickable {
   cursor: pointer;
}
.modal {
   position: fixed;
   top: 0;
   left: 0;
   align-items: center;
   justify-content: center;
   width: 100%;
   height: 100%;
   z-index: 1;
   background: rgba(0, 0, 0, 0.8);
   display: none;
}
.modal.active {
   display: flex;
   animation: appear 0.3s ease;
}
.modal.disappear {
   animation: disappear 0.3s ease;
}
.modal__container {
   width: 96%;
   height: 96%;
}
.modal__closer {
   display: block;
   position: absolute;
   background: none;
   width: 2.4rem;
   height: 2.4rem;
   top: 2rem;
   right: 0;
   transform: translate(-100%, 0);
}
.modal__container .modal__btn.swiper-button-prev,
.modal__container .modal__btn.swiper-button-next {
   position: absolute;
   top: 50%;
   cursor: pointer;
   display: block;
   width: 2.4rem;
   height: 2.4rem;
   padding: 0.6rem;
   border-radius: 50%;
   -webkit-box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   -moz-box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.4);
   background: var(--yellow);
   margin: 0;
   z-index: 0;
}
.modal__btn .swiper-navigation-icon {
   display: none;
}
.modal__container .modal__btn.swiper-button-next {
   left: auto;
   right: 0;
   transform: translate(-100%, -50%);
}
.modal__container .modal__btn.swiper-button-prev {
   right: auto;
   left: 0;
   transform: translate(100%, -50%);
}
.modal__container .modal__btn.swiper-button-prev img {
   transform: rotate(180deg);
}
.modal__container .modal__btn.swiper-button-next.swiper-button-disabled,
.modal__container .modal__btn.swiper-button-prev.swiper-button-disabled {
   opacity: 1;
   background: rgba(203, 203, 204, 0.5);
}
@media (max-width: 1400px) {
   .modal__container .modal__btn.swiper-button-prev,
   .modal__container .modal__btn.swiper-button-next {
      width: 2rem;
      height: 2rem;
      padding: 0.4rem;
   }
   .modal__closer {
      width: 2rem;
      height: 2rem;
   }
}
@media (max-width: 1024px) {
   .modal__container .modal__btn.swiper-button-prev,
   .modal__container .modal__btn.swiper-button-next {
      width: 1.6rem;
      height: 1.6rem;
      transform: translate(0, -50%);
   }
   .modal__closer {
      width: 1.6rem;
      height: 1.6rem;
      transform: translate(0, -50%);
   }
}
.swiper-modal {
   height: 100%;
}
.modal__container .swiper-slide img {
   object-fit: contain;
}

/* Страница события */
.singleEvent {
   padding-top: 6rem;
}
.grid {
   display: grid;
   grid-template-columns: repeat(12, 1fr);
   gap: 1rem;
   row-gap: 3rem;
   position: relative;
}
.singleEvent__img {
   grid-column: 2 / 6;
   border: .5px solid #CBCBCC;
   height: fit-content;
}
.singleEvent__content {
   grid-column: 7 / 12;
}
.singleEvent__subtitle {
   font-size: .8rem;
   line-height: 170%;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   opacity: 0.6;
   margin-bottom: 0.6rem;
}
.singleEvent__title {
   font-weight: 600;
   font-size: 1.4rem;
   line-height: 170%;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   margin-bottom: 0.6rem;
}
.singleEvent__info {
   display: flex;
   gap: 0.6rem;
   justify-content: space-between;
   align-items: flex-end;
   margin-bottom: 2.4rem;
}
.singleEvent__list {
   display: flex;
   flex-direction: column;
   gap: 0.6rem;
}
.singleEvent__item {
   display: flex;
   gap: 0.4rem;
   align-items: center;
}
.singleEvent__icon {
   width: 1.2rem;
   height: 1.2rem;
}
.singleEvent__param {
   font-size: .8rem;
   line-height: 170%;
   letter-spacing: -0.01em;
   text-transform: uppercase;
}
.singleEvent__book.btn {
   color: var(--white);
   border-color: var(--white);
   background: rgba(255, 255, 255, 0.2);
}
.singleEvent__description {
   font-size: .8rem;
   line-height: 130%;
   letter-spacing: -0.01em;
   margin-bottom: 0.6rem;
}
@media (max-width: 1800px) {
   .singleEvent {
      padding-top: 5rem;
   }
   .singleEvent__img {
      grid-column: 1 / 6;
   }
   .singleEvent__content {
      grid-column: 7 / -1;
   }
}
@media (max-width: 1400px) {
   .singleEvent__content {
      grid-column: 6 / -1;
   }
   .singleEvent__subtitle {
      font-size: .6rem;
   }
   .singleEvent__title {
      font-size: .8rem;
   }
   .singleEvent__icon {
      width: 1rem;
      height: 1rem;
   }
   .singleEvent__param {
      font-size: .6rem;
   }
   .singleEvent__description {
      font-size: .6rem;
   }
}
@media (max-width: 1024px) {
   .grid {
      grid-template-columns: repeat(8, 1fr);
      gap: 0.4rem;
      row-gap: 3rem;
   }
   .singleEvent {
      padding-top: 4rem;
   }
   .singleEvent__img {
      grid-column: 1 / 4;
   }
   .singleEvent__content {
      grid-column: 4 / -1;
   }
}
@media (max-width: 768px) {
   .grid {
      grid-template-columns: repeat(4, 1fr);
      gap: 0.4rem;
      row-gap: 2rem;
   }
   .singleEvent {
      padding-top: 3rem;
   }
   .singleEvent__img {
      grid-column: 1 / 3;
   }
   .singleEvent__content {
      grid-column: 1 / -1;
   }
}