/*!**************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/swiper/swiper.min.css ***!
  \**************************************************************************************/
/**
 * Swiper 8.4.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 21, 2022
 */

@font-face{font-family:swiper-icons;src:url("data:application/font-woff;charset=utf-8;base64, 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");font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./static/dev/scss/style.scss ***!
  \*********************************************************************************************************************/
* {
  padding: 0;
  margin: 0;
  border: 0;
}

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

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

input,
button,
textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  color: inherit;
  cursor: pointer;
  background: none;
}

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

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

ul,
li {
  text-decoration: none;
  list-style: none;
  margin: 0;
  padding: 0;
}

img {
  vertical-align: top;
}

svg {
  vertical-align: top;
}

th {
  font-weight: inherit;
  text-align: inherit;
}

@font-face {
  font-family: "Fira Sans";
  font-display: swap;
  font-weight: 300;
  font-style: normal;
  src: local("FiraSans-Light"), url(fonts/FiraSans-Light.woff2) format("woff2"), url(fonts/FiraSans-Light.woff) format("woff");
}
@font-face {
  font-family: "Fira Sans";
  font-display: swap;
  font-weight: 400;
  font-style: normal;
  src: local("FiraSans-Regular"), url(fonts/FiraSans-Regular.woff2) format("woff2"), url(fonts/FiraSans-Regular.woff) format("woff");
}
@font-face {
  font-family: "TT Ricordi Allegria";
  font-display: swap;
  font-weight: 400;
  font-style: normal;
  src: local("TT Ricordi Allegria"), url(fonts/TT-Ricordi-Allegria-Regular.woff2) format("woff2"), url(fonts/TT-Ricordi-Allegria-Regular.woff) format("woff");
}
.icon24 {
  width: 24px;
  height: 24px;
}

.icon32 {
  width: 32px;
  height: 32px;
}

.icon48 {
  width: 48px;
  height: 48px;
}

.icon64 {
  width: 64px;
  height: 64px;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.promo {
  position: relative;
  z-index: 1;
  max-height: 980px;
  min-height: 600px;
  height: 100vh;
}
@media screen and (max-width: 475px) {
  .promo {
    max-height: 600px;
    min-height: 400px;
  }
}
.promo h1 {
  color: #FFFFFF;
}
@media screen and (max-width: 991px) {
  .promo h1 {
    max-width: 440px;
  }
}
.promo .content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}
.promo__img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
}
.promo__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.promo__background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.promo__text {
  font-weight: 300;
  font-size: 24px;
  line-height: 34px;
  max-width: 534px;
  margin-top: 32px;
  color: #FFFFFF;
}
@media screen and (max-width: 475px) {
  .promo__text {
    margin-top: 16px;
    font-size: 16px;
    line-height: 24px;
  }
}
.promo__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding-bottom: 64px;
}
@media screen and (max-width: 475px) {
  .promo__content {
    padding-bottom: 24px;
  }
}
.promo__buttons {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .promo__buttons {
    margin-top: 24px;
  }
}
.promo__go-down {
  margin-top: 64px;
  transition: transform 0.4s ease-in-out;
}
.promo__go-down:hover {
  transform: translateY(16px);
}
@media screen and (max-width: 768px) {
  .promo__go-down {
    display: none;
  }
}
.promo__go-down img {
  width: 16px;
}
.promo .circle-button {
  position: relative;
}
.promo .circle-button:hover .circle-button__icon {
  background-color: #CE8246;
}
.promo .circle-button__icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  margin: auto;
  border-radius: 50%;
  background-color: #D4925E;
  transition: background-color 0.3s ease-in-out;
}
@media screen and (max-width: 475px) {
  .promo .circle-button__icon {
    width: 40px;
    height: 40px;
  }
}
@media screen and (max-width: 475px) {
  .promo .circle-button__icon img {
    width: 24px;
    height: 24px;
  }
}
.promo .circle-button__background {
  animation: 15s rotate infinite normal linear;
}
@media screen and (max-width: 475px) {
  .promo .circle-button__background {
    width: 80px;
    height: 80px;
  }
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  padding: 24px 0;
  border-bottom: 1px solid #B9B9B9;
  color: #FFFFFF;
}
@media screen and (max-width: 991px) {
  .header {
    padding: 16px 0;
  }
}
@media screen and (max-width: 475px) {
  .header {
    padding: 8px 0;
  }
}
.header.active {
  background-color: #FFFCF5;
  color: #291403;
}
.header .content {
  display: flex;
  align-items: center;
}
.header__logo svg {
  fill: currentColor;
}
.header .nav {
  display: flex;
  gap: 24px;
  margin-left: 64px;
}
@media screen and (max-width: 1520px) {
  .header .nav {
    margin-left: 32px;
  }
}
@media screen and (max-width: 1280px) {
  .header .nav {
    display: none;
  }
}
.header .nav__item {
  font-weight: 300;
  font-size: 18px;
  line-height: 18px;
}
@media screen and (max-width: 1520px) {
  .header .nav__item {
    font-size: 16px;
    line-height: 16px;
  }
}
.header__phone {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-size: 24px;
  line-height: 48px;
}
@media screen and (max-width: 1520px) {
  .header__phone {
    font-size: 20px;
    line-height: 34px;
  }
}
.header__contacts {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-left: auto;
}
@media screen and (max-width: 1520px) {
  .header__contacts {
    gap: 32px;
  }
}
@media screen and (max-width: 1280px) {
  .header__contacts {
    display: none;
  }
}
.header__messengers {
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 1520px) {
  .header__messengers {
    gap: 16px;
  }
}
.header__messengers svg {
  fill: currentColor;
}
.header__burger-button {
  display: none;
  flex-direction: column;
  gap: 4px;
  width: 32px;
  margin-left: auto;
}
@media screen and (max-width: 1280px) {
  .header__burger-button {
    display: flex;
  }
}
.header__burger-button span {
  display: inline-block;
  width: 100%;
  height: 3px;
  background-color: currentColor;
}

.footer {
  padding: 40px 0;
  background: #291403;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .footer {
    padding: 16px 0;
  }
}
.footer .content {
  display: flex;
  align-items: flex-start;
  gap: 120px;
}
@media screen and (max-width: 991px) {
  .footer .content {
    gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .footer .content {
    flex-direction: row-reverse;
    gap: 0;
  }
}
.footer__content {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .footer__content {
    flex-direction: column;
    gap: 8px;
  }
}
.footer__logo {
  fill: #FFFFFF;
}
.footer__go-up-button {
  transition: transform 0.4s ease-in-out;
}
.footer__go-up-button:hover {
  transform: translateY(-16px);
}
.footer__go-up-button img {
  width: 16px;
  transform: rotate(180deg);
}
.footer__text {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .footer__text {
    gap: 8px;
  }
}
.footer__links {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 24px;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .footer__links {
    align-items: flex-start;
    margin-left: 0;
    gap: 16px;
  }
}

.about__content {
  display: grid;
  grid-template-columns: minmax(160px, 390px) minmax(450px, 820px) minmax(300px, 320px);
  gap: 40px;
}
@media screen and (max-width: 1280px) {
  .about__content {
    gap: 24px;
  }
}
@media screen and (max-width: 991px) {
  .about__content {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .about__content {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@media screen and (max-width: 991px) {
  .about__info {
    grid-column: 1/3;
    grid-row: 2;
  }
}
@media screen and (max-width: 768px) {
  .about__info {
    grid-column: 1;
  }
}
.about__text {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 670px;
}
@media screen and (max-width: 991px) {
  .about__text {
    max-width: 100%;
  }
}
.about__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 40px;
}
@media screen and (max-width: 1280px) {
  .about__list {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-top: 32px;
  }
}
@media screen and (max-width: 991px) {
  .about__list {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 40px;
  }
}
@media screen and (max-width: 475px) {
  .about__list {
    gap: 16px;
  }
}
.about__list-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
@media screen and (max-width: 1280px) {
  .about__list-item {
    flex-direction: row;
    align-items: center;
  }
}
@media screen and (max-width: 991px) {
  .about__list-item {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media screen and (max-width: 768px) {
  .about__list-item svg {
    width: 32px;
    height: 32px;
  }
}
.about__bottom-img {
  position: relative;
  z-index: 0;
  margin-top: 64px;
}
@media screen and (max-width: 1280px) {
  .about__bottom-img {
    margin-top: 48px;
  }
}
.about__bottom-img img {
  width: 100%;
}
.about__bottom-img .background {
  position: absolute;
  top: 64px;
  right: 64px;
  z-index: -1;
  width: 100%;
}
@media screen and (max-width: 991px) {
  .about__bottom-img .background {
    display: none;
  }
}
.about__left-img {
  width: 100%;
}
@media screen and (max-width: 991px) {
  .about__left-img {
    grid-column: 1;
    grid-row: 1;
  }
}
.about__left-img img {
  width: 100%;
}
.about .services-list {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-self: start;
  padding-left: 24px;
  border-left: 1px solid #D4925E;
}
@media screen and (max-width: 1280px) {
  .about .services-list {
    padding-left: 16px;
  }
}
@media screen and (max-width: 991px) {
  .about .services-list {
    grid-column: 2;
    grid-row: 1;
  }
}
@media screen and (max-width: 768px) {
  .about .services-list {
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  .about .services-list {
    grid-column: 1;
    grid-row: 3;
  }
}
.about .services-list .service__title, .about .services-list .service__time {
  color: #D4925E;
}
.about .services-list .service__title {
  margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
  .about .services-list .service__title {
    margin-bottom: 8px;
  }
}

.gallery {
  max-width: 1920px;
  margin: 200px auto 0;
}
.gallery .swiper {
  height: 83vh;
}
.gallery .swiper-slide {
  height: auto;
}
.gallery .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  height: 4px !important;
  background: #FFFFFF !important;
}
.gallery .swiper-pagination-progressbar {
  background: #B9B9B9;
}
.gallery .swiper-horizontal > .swiper-pagination-progressbar, .gallery .swiper-pagination-progressbar.swiper-pagination-horizontal {
  height: 2px;
}
.gallery .swiper-button-prev, .gallery .swiper-button-next {
  position: static;
  margin-top: 0;
}
.gallery .swiper-pagination-progressbar.swiper-pagination-horizontal {
  position: static;
}
@media screen and (max-width: 991px) {
  .gallery .swiper-pagination-progressbar.swiper-pagination-horizontal {
    position: absolute;
    left: 8px;
    right: 8px;
    top: calc(100% - 16px);
    width: auto;
  }
}
.gallery .swiper-navigation {
  display: flex;
  gap: 40px;
  bottom: unset;
  right: unset;
}
@media screen and (max-width: 991px) {
  .gallery .swiper-navigation {
    position: absolute;
    top: 50%;
    left: 16px;
    right: 16px;
    justify-content: space-between;
  }
}
@media screen and (max-width: 475px) {
  .gallery .swiper-navigation {
    left: 8px;
    right: 8px;
  }
}
.gallery .swiper-buttons {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 40px;
  z-index: 99;
  display: flex;
  align-items: center;
  gap: 200px;
  max-width: 1760px;
  margin: 0 auto;
  padding: 0 40px;
}
@media screen and (max-width: 991px) {
  .gallery .swiper-buttons {
    position: static;
  }
}
.gallery .swiper-button-prev, .gallery .swiper-button-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: #D4925E;
}
@media screen and (max-width: 991px) {
  .gallery .swiper-button-prev, .gallery .swiper-button-next {
    width: 48px;
    height: 48px;
  }
}
@media screen and (max-width: 475px) {
  .gallery .swiper-button-prev, .gallery .swiper-button-next {
    width: 32px;
    height: 32px;
  }
}
.gallery .swiper-button-prev::after, .gallery .swiper-button-next::after {
  display: none;
}
.gallery .swiper-button-prev img, .gallery .swiper-button-next img {
  height: 56px;
  width: 16px;
}
@media screen and (max-width: 991px) {
  .gallery .swiper-button-prev img, .gallery .swiper-button-next img {
    height: 32px;
    width: 12px;
  }
}
@media screen and (max-width: 475px) {
  .gallery .swiper-button-prev img, .gallery .swiper-button-next img {
    height: 24px;
    width: 7px;
  }
}
.gallery .swiper-button-prev {
  transform: rotate(90deg);
}
.gallery .swiper-button-next {
  transform: rotate(-90deg);
}

.advantages {
  position: relative;
  padding: 140px 0;
}
@media screen and (max-width: 768px) {
  .advantages {
    padding: 64px 0;
  }
}
.advantages__background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.advantages__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 64px 40px;
}
@media screen and (max-width: 991px) {
  .advantages__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 32px;
  }
}
@media screen and (max-width: 768px) {
  .advantages__list {
    gap: 16px;
  }
}
.advantages .advantage {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  padding-left: 24px;
  border-left: 1px solid #D4925E;
}
@media screen and (max-width: 768px) {
  .advantages .advantage {
    padding-left: 8px;
  }
}
@media screen and (max-width: 768px) {
  .advantages .advantage__icon {
    width: 32px;
    height: 32px;
  }
}

.events__list {
  display: flex;
  flex-direction: column;
  gap: 64px;
}
@media screen and (max-width: 991px) {
  .events__list {
    gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .events__list {
    gap: 32px;
  }
}
.events__group {
  display: grid;
  gap: 40px;
}
.events__group:nth-child(odd) {
  grid-template-columns: minmax(380px, 680px) minmax(440px, 820px);
  margin-right: 120px;
}
@media screen and (max-width: 1520px) {
  .events__group:nth-child(odd) {
    margin-right: 80px;
  }
}
@media screen and (max-width: 1280px) {
  .events__group:nth-child(odd) {
    margin-right: 40px;
  }
}
@media screen and (max-width: 991px) {
  .events__group:nth-child(odd) {
    grid-template-columns: 1fr;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .events__group:nth-child(odd) {
    gap: 32px;
  }
}
.events__group:nth-child(even) {
  grid-template-columns: minmax(440px, 820px) minmax(380px, 680px);
  margin-left: 120px;
}
@media screen and (max-width: 1520px) {
  .events__group:nth-child(even) {
    margin-left: 80px;
  }
}
@media screen and (max-width: 1280px) {
  .events__group:nth-child(even) {
    margin-left: 40px;
  }
}
@media screen and (max-width: 991px) {
  .events__group:nth-child(even) {
    grid-template-columns: 1fr;
    margin-left: 0;
  }
}
@media screen and (max-width: 991px) {
  .events__group .event:nth-child(even) {
    margin-left: auto;
  }
}
@media screen and (max-width: 768px) {
  .events__group {
    margin-left: 0;
  }
}
.events .event {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
}
@media screen and (max-width: 991px) {
  .events .event {
    max-width: 520px;
  }
}
@media screen and (max-width: 768px) {
  .events .event {
    max-width: 100%;
    gap: 16px;
  }
}
.events .event img {
  width: 100%;
}

.hall {
  position: relative;
  z-index: 1;
  height: 100vh;
  max-height: 980px;
  min-height: 640px;
  padding-top: 80px;
}
@media screen and (max-width: 768px) {
  .hall {
    padding-top: 40px;
  }
}
@media screen and (max-width: 475px) {
  .hall {
    max-height: 600px;
    min-height: 440px;
  }
}
.hall__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
}
.hall__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hall__background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.hall .content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 80px;
}
@media screen and (max-width: 1280px) {
  .hall .content {
    grid-template-columns: 1fr;
  }
}
.hall h2 {
  color: #FFFFFF;
}
.hall__button {
  grid-column: 1;
  padding-top: 40px;
}
.hall__button .button {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .hall__button .button {
    display: inline-block;
    width: 100%;
  }
}
.hall__characteristics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 64px 40px;
  grid-column: 2;
  grid-row: 1/4;
  color: #FFFFFF;
}
@media screen and (max-width: 1520px) {
  .hall__characteristics {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 1280px) {
  .hall__characteristics {
    grid-template-columns: repeat(3, 1fr);
    grid-column: 1;
    grid-row: 2;
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .hall__characteristics {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 16px;
  }
}
.hall .characteristic {
  display: flex;
  flex-direction: column;
}
.hall .characteristic__number {
  padding-bottom: 16px;
  margin-bottom: 16px;
  white-space: nowrap;
  border-bottom: 1px solid #FFFFFF;
}
@media screen and (max-width: 768px) {
  .hall .characteristic__number {
    padding-bottom: 8px;
    margin-bottom: 8px;
    font-size: 32px;
    line-height: 40px;
  }
}
@media screen and (max-width: 475px) {
  .hall .characteristic__number {
    font-size: 24px;
    line-height: 24px;
  }
}

.contacts__list {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 80px;
}
@media screen and (max-width: 991px) {
  .contacts__list {
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .contacts__list {
    gap: 24px;
  }
}
.contacts .contact {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .contacts .contact {
    gap: 8px;
  }
}
.contacts .contact__title {
  font-weight: 300;
  font-size: 20px;
  line-height: 24px;
  color: #D4925E;
}
@media screen and (max-width: 768px) {
  .contacts .contact__title {
    font-size: 16px;
    line-height: 24px;
  }
}
.contacts .contact__text {
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .contacts .contact__text {
    font-size: 24px;
    line-height: 24px;
  }
}
.contacts__messengers {
  display: flex;
  gap: 16px;
  margin-top: 16px;
}
.contacts .messenger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #D4925E;
  transition: background-color 0.3s ease-in-out;
}
.contacts .messenger:hover {
  background-color: #CE8246;
}
.contacts .messenger svg {
  fill: #FFFFFF;
}
.contacts #map {
  width: 100%;
  height: 600px;
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  .contacts #map {
    height: 512px;
  }
}
.contacts .ymaps-2-1-79-balloon, .contacts .ymaps-2-1-79-balloon__tail {
  box-shadow: none;
  background-color: #FFFCF5;
  border: 1px solid #D4925E;
}
.contacts .ymaps-2-1-79-balloon__layout, .contacts .ymaps-2-1-79-balloon__content {
  background-color: #FFFCF5;
}
.contacts .ymaps-2-1-79-balloon__content {
  padding: 40px 0 40px 32px;
}
.contacts .ymaps-2-1-79-balloon-content__header {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-weight: 400;
  font-size: 40px;
  line-height: 48px;
  font-weight: 400;
}
@media screen and (max-width: 991px) {
  .contacts .ymaps-2-1-79-balloon-content__header {
    font-size: 40px;
    line-height: 48px;
  }
}
@media screen and (max-width: 475px) {
  .contacts .ymaps-2-1-79-balloon-content__header {
    font-size: 24px;
    line-height: 36px;
  }
}
.contacts .ballon-content {
  font-family: "Fira Sans", "sans-serif";
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
}
@media screen and (max-width: 475px) {
  .contacts .ballon-content {
    font-size: 16px;
    line-height: 24px;
  }
}
.contacts .ballon-content .link {
  display: none;
  margin-top: 16px;
  color: #D4925E;
}
@media screen and (max-width: 991px) {
  .contacts .ballon-content .link {
    display: inline-block;
  }
}

.feedback {
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .feedback {
    margin-bottom: 64px;
  }
}
.feedback .content {
  display: grid;
  grid-template-columns: minmax(600px, 820px) minmax(460px, 680px);
  gap: 180px;
}
@media screen and (max-width: 1520px) {
  .feedback .content {
    gap: 120px;
  }
}
@media screen and (max-width: 1280px) {
  .feedback .content {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 768px) {
  .feedback .content {
    gap: 32px;
  }
}
.feedback .feedback-form__text {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .feedback .feedback-form__text {
    margin-top: 16px;
  }
}
.feedback .feedback-form__group {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  margin: 40px 0;
}
@media screen and (max-width: 768px) {
  .feedback .feedback-form__group {
    gap: 24px;
  }
}
@media screen and (max-width: 475px) {
  .feedback .feedback-form__group {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 32px;
  }
}
.feedback .feedback-form__button {
  margin-top: 48px;
}
@media screen and (max-width: 475px) {
  .feedback .feedback-form__button {
    width: 100%;
    margin-top: 32px;
  }
}
.feedback__img {
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1280px) {
  .feedback__img {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .feedback__img {
    display: block;
  }
}
.feedback__img .animate-image__inner img {
  aspect-ratio: 1.5/1;
}
.feedback .background {
  position: absolute;
  top: 64px;
  right: 64px;
  z-index: -1;
  width: 100%;
}
@media screen and (max-width: 991px) {
  .feedback .background {
    display: none;
  }
}
.feedback .input {
  position: relative;
  display: inline-block;
  width: 100%;
}
.feedback .input.error input {
  color: #FF0000;
}
.feedback .input input {
  width: 100%;
  padding: 16px 0;
  border-bottom: 1px solid #D4925E;
  background: transparent;
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
}
.feedback .input input:focus + .input__label, .feedback .input input:valid + .input__label {
  font-size: 16px;
  transform: translateY(-28px);
}
.feedback .input__label {
  position: absolute;
  left: 0;
  bottom: 16px;
  color: #D4925E;
  transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
}
.feedback .error-text {
  font-weight: 300;
  font-size: 12px;
  line-height: 20px;
  color: #FF0000;
}
.feedback .checkbox {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  user-select: none;
}
@media screen and (max-width: 768px) {
  .feedback .checkbox {
    gap: 8px;
  }
}
.feedback .checkbox__input {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #291403;
  cursor: pointer;
}
.feedback .checkbox__input img {
  opacity: 0;
}
.feedback .checkbox input:checked + .checkbox__input {
  background-color: #291403;
}
.feedback .checkbox input:checked + .checkbox__input img {
  opacity: 1;
}
.feedback .checkbox__label a {
  color: #D4925E;
  text-decoration: underline;
}

.cookie {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 25;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  max-width: 1760px;
  padding: 0 40px 40px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .cookie {
    justify-content: center;
    padding: 0 16px 16px;
  }
}
.cookie .cookie-notification {
  position: relative;
  max-width: 830px;
  width: 100%;
  background: #FFFCF5;
  border: 1px solid #D4925E;
  padding: 16px 80px 16px 40px;
}
@media screen and (max-width: 991px) {
  .cookie .cookie-notification {
    padding: 16px 64px 16px 24px;
  }
}
@media screen and (max-width: 768px) {
  .cookie .cookie-notification {
    max-width: 460px;
    padding: 48px 16px 16px;
  }
}
.cookie .cookie-notification__close {
  position: absolute;
  top: 16px;
  right: 16px;
}
.cookie .cookie-notification__close:hover svg {
  fill: #CE8246;
}
.cookie .cookie-notification__close svg {
  fill: #D4925E;
  transition: fill 0.2s ease-in-out;
}
.cookie .cookie-notification__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
@media screen and (max-width: 991px) {
  .cookie .cookie-notification__content {
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  .cookie .cookie-notification__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}
@media screen and (max-width: 768px) {
  .cookie .cookie-notification__ok-button {
    width: 100%;
  }
}

.popup-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 40px;
  background: rgba(19, 17, 18, 0.4);
}
@media screen and (max-width: 768px) {
  .popup-wrapper {
    padding: 0;
  }
}
.popup-wrapper .popup {
  max-width: 924px;
  width: 100%;
  background: #FFFCF5;
  border: 1px solid #D4925E;
}
@media screen and (max-width: 768px) {
  .popup-wrapper .popup {
    max-width: 100%;
    height: 100%;
    overflow-y: auto;
    border: none;
  }
}
.popup-wrapper .popup__head {
  display: flex;
  justify-content: end;
  padding: 16px 16px 0;
}
@media screen and (max-width: 768px) {
  .popup-wrapper .popup__head {
    padding: 16px;
    border-bottom: 1px solid #B9B9B9;
  }
}
@media screen and (max-width: 475px) {
  .popup-wrapper .popup__head {
    padding: 8px 16px;
  }
}
.popup-wrapper .popup__close:hover svg {
  fill: #CE8246;
}
.popup-wrapper .popup__close svg {
  transition: fill 0.2s ease-in-out;
}
.popup-wrapper .popup__close .cross {
  fill: #D4925E;
}
@media screen and (max-width: 768px) {
  .popup-wrapper .popup__close .cross {
    display: none;
  }
}
.popup-wrapper .popup__close .cross-bold {
  display: none;
  fill: #291403;
}
@media screen and (max-width: 768px) {
  .popup-wrapper .popup__close .cross-bold {
    display: block;
  }
}
.popup-wrapper .popup__body {
  padding: 0 32px 40px;
}
@media screen and (max-width: 768px) {
  .popup-wrapper .popup__body {
    padding: 40px 16px;
  }
}

#nav-popup .popup {
  max-width: 400px;
}
@media screen and (max-width: 768px) {
  #nav-popup .popup {
    max-width: 100%;
    clip-path: inset(0 100% 0 0);
    pointer-events: none;
    transition: clip-path 1s cubic-bezier(0.77, 0, 0.175, 1);
  }
}
#nav-popup .popup.active {
  clip-path: inset(0 0 0 0);
  pointer-events: auto;
}
#nav-popup .popup__contacts {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  #nav-popup .popup__contacts {
    margin-top: 64px;
  }
}
#nav-popup .popup .nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media screen and (max-width: 768px) {
  #nav-popup .popup .nav {
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  #nav-popup .popup .nav .p_lg {
    font-size: 18px;
    line-height: 18px;
  }
}
#nav-popup .popup .contacts {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#nav-popup .popup .contacts__phone {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-size: 24px;
  line-height: 48px;
}
#nav-popup .popup .messengers {
  display: flex;
  gap: 16px;
}

#success-popup .popup__body {
  display: grid;
  grid-template-columns: auto minmax(240px, 390px);
  gap: 40px;
  padding-right: 56px;
}
@media screen and (max-width: 768px) {
  #success-popup .popup__body {
    grid-template-columns: 1fr;
    gap: 16px;
    padding-right: 16px;
  }
}
#success-popup .popup__text {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  #success-popup .popup__text {
    margin-top: 16px;
  }
}
#success-popup .popup__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.privacy-policy {
  padding-top: 140px;
}
@media screen and (max-width: 768px) {
  .privacy-policy {
    padding-top: 80px;
  }
}
@media screen and (max-width: 768px) {
  .privacy-policy h1 {
    font-size: 40px;
    line-height: 58px;
  }
}
@media screen and (max-width: 475px) {
  .privacy-policy h1 {
    font-size: 24px;
    line-height: 36px;
  }
}
.privacy-policy__content {
  max-width: 1100px;
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .privacy-policy__content {
    margin-bottom: 64px;
  }
}
.privacy-policy .header {
  color: #291403;
}
.privacy-policy .header__logo svg {
  fill: #291403;
}
.privacy-policy .header__messengers svg {
  fill: #291403;
}
.privacy-policy h2 {
  font-weight: 400;
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-size: 32px;
  line-height: 40px;
  margin: 64px 0 24px;
}
@media screen and (max-width: 475px) {
  .privacy-policy h2 {
    font-size: 24px;
    line-height: 36px;
  }
}
@media screen and (max-width: 768px) {
  .privacy-policy h2 {
    margin: 40px 0 16px;
  }
}
.privacy-policy p {
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
  margin-top: 16px;
}
@media screen and (max-width: 475px) {
  .privacy-policy p {
    font-size: 16px;
    line-height: 24px;
  }
}
.privacy-policy ul {
  margin-top: 16px;
}
.privacy-policy li {
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
  display: flex;
  align-self: flex-start;
  gap: 16px;
  margin-top: 8px;
}
@media screen and (max-width: 475px) {
  .privacy-policy li {
    font-size: 16px;
    line-height: 24px;
  }
}
.privacy-policy li:before {
  content: "-";
  font-size: 40px;
  color: #D4925E;
}

.error.promo {
  max-height: calc(100vh - 158px);
}
@media screen and (max-width: 475px) {
  .error.promo {
    max-height: calc(100vh - 156px);
  }
}
.error.promo .button {
  margin-top: 64px;
}
@media screen and (max-width: 475px) {
  .error.promo .button {
    width: 100%;
    margin-top: 24px;
  }
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

body {
  font-family: "Fira Sans", "sans-serif";
  color: #291403;
}

.wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: #FFFCF5;
  overflow: hidden;
}

.main {
  flex: 1 0 auto;
}

.content {
  max-width: 1760px;
  margin: 0 auto;
  padding: 0 40px;
}
@media screen and (max-width: 768px) {
  .content {
    padding: 0 16px;
  }
}

h1, .h1 {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-weight: 400;
  font-size: 120px;
  line-height: 120px;
}
@media screen and (max-width: 991px) {
  h1, .h1 {
    font-size: 100px;
    line-height: 100px;
  }
}
@media screen and (max-width: 475px) {
  h1, .h1 {
    font-size: 34px;
    line-height: 42px;
  }
}

h2, .h2 {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-weight: 400;
  font-size: 80px;
  line-height: 100px;
}
@media screen and (max-width: 991px) {
  h2, .h2 {
    font-size: 60px;
    line-height: 80px;
  }
}
@media screen and (max-width: 475px) {
  h2, .h2 {
    font-size: 34px;
    line-height: 42px;
  }
}

@media screen and (max-width: 475px) {
  .h2 {
    font-family: "TT Ricordi Allegria", "sans-serif";
    font-weight: 400;
    font-size: 120px;
    line-height: 120px;
  }
}
@media screen and (max-width: 475px) and (max-width: 991px) {
  .h2 {
    font-size: 100px;
    line-height: 100px;
  }
}
@media screen and (max-width: 475px) and (max-width: 475px) {
  .h2 {
    font-size: 34px;
    line-height: 42px;
  }
}

h3, .h3 {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-size: 64px;
  line-height: 64px;
  font-weight: 400;
}
@media screen and (max-width: 991px) {
  h3, .h3 {
    font-size: 44px;
    line-height: 44px;
  }
}
@media screen and (max-width: 475px) {
  h3, .h3 {
    font-size: 16px;
    line-height: 24px;
  }
}

h4, .h4 {
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-weight: 400;
  font-size: 40px;
  line-height: 48px;
}
@media screen and (max-width: 991px) {
  h4, .h4 {
    font-size: 40px;
    line-height: 48px;
  }
}
@media screen and (max-width: 475px) {
  h4, .h4 {
    font-size: 24px;
    line-height: 36px;
  }
}

h5, .h5 {
  font-weight: 400;
  font-family: "TT Ricordi Allegria", "sans-serif";
  font-size: 32px;
  line-height: 40px;
}
@media screen and (max-width: 475px) {
  h5, .h5 {
    font-size: 24px;
    line-height: 36px;
  }
}

.p_lg {
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
}
@media screen and (max-width: 475px) {
  .p_lg {
    font-size: 16px;
    line-height: 24px;
  }
}

.p_lt {
  font-weight: 300;
  font-size: 16px;
  line-height: 24px;
}
@media screen and (max-width: 475px) {
  .p_lt {
    font-size: 12px;
    line-height: 20px;
  }
}

.link {
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
  text-decoration: underline;
}
@media screen and (max-width: 475px) {
  .link {
    font-size: 16px;
    line-height: 24px;
  }
}

.logo {
  width: 255px;
  height: 28px;
}
@media screen and (max-width: 1520px) {
  .logo {
    width: 200px;
  }
}

.active-popup {
  overflow: hidden;
  touch-action: none;
}

.hidden {
  display: none;
}

.button, a.button {
  font-weight: 300;
  font-size: 20px;
  line-height: 34px;
  padding: 14px 32px;
  background-color: #D4925E;
  border-radius: 40px;
  color: #FFFFFF;
  text-align: center;
  user-select: none;
  transition: background-color 0.3s ease-in-out;
}
@media screen and (max-width: 475px) {
  .button, a.button {
    font-size: 16px;
    line-height: 24px;
  }
}
.button:hover, a.button:hover {
  background-color: #CE8246;
}
.button:disabled, a.button:disabled {
  pointer-events: none;
  background-color: #E1B28B;
}

.link-hover {
  position: relative;
  transition: border-bottom 0.5s ease-in-out;
}
.link-hover:not(.active)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0px;
  height: 1px;
  width: 0%;
  background-color: currentColor;
  transition: width 0.5s ease-in-out, left 0.5s ease-in-out;
}
.link-hover:not(.active):hover:after {
  left: 0;
  width: 100%;
}
.link-hover:before {
  position: absolute;
  left: 0;
  bottom: 0px;
  display: block;
  content: "";
  height: 1px;
  width: 100%;
  background-color: currentColor;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.link-hover.active:before {
  transition: opacity 0.8s ease-in-out;
  opacity: 1;
}

.section {
  margin-top: 140px;
}
@media screen and (max-width: 991px) {
  .section {
    margin-top: 100px;
  }
}
@media screen and (max-width: 768px) {
  .section {
    margin-top: 64px;
  }
}
.section.advantages {
  margin-top: 0;
}
.section__title {
  margin-bottom: 64px;
}
@media screen and (max-width: 768px) {
  .section__title {
    margin-bottom: 40px;
  }
}
.section h2 {
  transform: translateY(40px);
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.section h2.visible {
  transform: translateY(0px);
  opacity: 1;
}
.section .animate-image {
  position: relative;
  width: 100%;
}
.section .animate-image.visible .animate-image__overlay {
  width: 0%;
}
.section .animate-image__overlay {
  position: absolute;
  left: auto;
  top: 0%;
  right: 0%;
  bottom: 0%;
  z-index: 4;
  width: 100%;
  background-color: #FFFCF5;
  transition: width 0.9s cubic-bezier(0.67, 0.01, 0.69, 0.84);
}
.section .animate-image__inner {
  position: relative;
  z-index: 1;
  width: 100%;
}
.section .animate-image__inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
