@charset "UTF-8";
@media (min-width: 1920px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 100px);
  }
  html {
    font-size: 16px;
  }
  .header__block-left {
    gap: 40px;
  }
  .header__right-content {
    gap: 40px;
  }
  .header__nav-list {
    gap: 30px;
  }
}
/* Для экранов шириной от 1671px до 1919px -----------------------*/
@media (max-width: 1919px) and (min-width: 1671px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 60px);
  }
  html {
    font-size: 16px;
  }
  .header__block-left, .header__right-content, .header__nav-list {
    gap: 25px;
  }
}
/* Для экранов шириной от 1562px до 1670px -----------------------*/
@media (max-width: 1670px) and (min-width: 1562px) {
  html {
    font-size: 16px;
  }
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 40px);
  }
  .header__tagline {
    max-width: 100px;
  }
  .header__block-left, .header__right-content, .header__nav-list {
    gap: 25px;
  }
  .header__search-bar input[type=text] {
    width: 230px;
  }
  .footer__wrapper {
    padding: 60px 0;
  }
}
/* Для экранов шириной от 1440px до 1561px -----------------------*/
@media (max-width: 1561px) and (min-width: 1440px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 40px);
  }
  .header__block-left, .header__right-content, .header__nav-list {
    gap: 20px;
  }
  .header__logo-icon {
    margin-right: 5px;
  }
  .header__search-bar input[type=text] {
    width: 220px;
  }
  .header__tagline {
    max-width: 100px;
  }
  html {
    font-size: 15px;
  }
  .main__adv {
    gap: 30px;
  }
  .main__adv-top {
    height: 340px;
  }
  .main__adv-bottom {
    padding: 25px 10px;
  }
  .main__section, .main__block {
    gap: 30px;
  }
  .footer__wrapper {
    padding: 60px 0;
  }
}
/* Для экранов шириной от 1200px до 1439px -----------------------*/
@media (max-width: 1439px) and (min-width: 1200px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 10px);
  }
  html {
    font-size: 14px;
  }
  .header__wrapper {
    padding: 20px 0;
  }
  .header__nav {
    display: none;
  }
  .header__burger {
    display: block;
  }
  .header__menu .header__city-block, .header__menu .header__btn, .header__menu .header__search, .header__menu .header__language {
    display: none;
  }
  .header__menu.open {
    height: 214px;
  }
  .header__menu.open .header__menu-block {
    padding: 30px 0;
  }
  .header__menu.open .header__city-block, .header__menu.open .header__btn, .header__menu.open .header__search, .header__menu.open .header__language {
    display: none;
  }
  .header__menu.open .header__nav-list,
  .header__menu.open .header__nav-item,
  .header__menu.open .header__nav-link {
    width: 100%;
  }
  .header__menu.open .header__nav-list {
    gap: 10px;
  }
  .header__menu.open .header__nav-link {
    padding: 5px 0;
    text-align: center;
  }
  .header__logo-icon {
    margin-right: 5px;
    width: 30px;
  }
  .header__logo-text {
    width: 70px;
  }
  .header__search-bar input[type=text] {
    width: 400px;
    padding: 10px 15px;
  }
  .header__search-btn {
    padding: 10px 12px;
  }
  .header__search-select {
    padding-left: 15px;
  }
  .header__search-bar-div {
    padding-right: 5px;
  }
  .header__tagline {
    max-width: 80px;
  }
  .main__adv {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
  .main__section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 80px;
  }
  .main__block {
    width: 100%;
  }
  .footer__wrapper {
    padding: 60px 0;
    gap: 40px;
  }
  .footer__column {
    gap: 15px;
  }
}
@media (max-width: 1199px) {
  .header__nav, .header__language, .header__btn {
    display: none;
  }
  .header__burger {
    display: block;
  }
}
/* Для экранов шириной от 1024px до 1199px -----------------------*/
@media (max-width: 1199px) and (min-width: 1024px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 40px);
  }
  html {
    font-size: 14px;
  }
  .header__wrapper {
    padding: 20px 0;
  }
  .header__logo-icon {
    margin-right: 5px;
    width: 30px;
  }
  .header__logo-text {
    width: 70px;
  }
  .header__menu .header__city-block {
    display: none;
  }
  .header__menu .header__search {
    display: none;
  }
  .header__tagline {
    max-width: 80px;
  }
  .main__adv {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
  .main__section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 80px;
  }
  .main__block {
    width: 100%;
  }
  .footer__wrapper {
    padding: 60px 0;
    gap: 40px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer__column {
    gap: 15px;
    width: calc((100% - 40px) / 2);
  }
  .footer__column:nth-child(1) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .footer__column:nth-child(2) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .footer__column:nth-child(3) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .footer__column:nth-child(4) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
/* Для экранов шириной от 768px до 1023px -----------------------*/
@media (max-width: 1023px) and (min-width: 768px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 40px);
  }
  html {
    font-size: 15px;
  }
  .header__search {
    display: none;
  }
  .header__menu .header__city-block {
    display: none;
  }
  .header__menu.open {
    height: 400px;
  }
  .header__menu.open .header__menu-block {
    padding: 30px 0;
  }
  .header__menu.open .header__search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .header__menu.open .header__nav-list,
  .header__menu.open .header__nav-item,
  .header__menu.open .header__nav-link {
    width: 100%;
  }
  .header__menu.open .header__nav-list {
    gap: 10px;
  }
  .header__menu.open .header__nav-link {
    padding: 5px 0;
    text-align: center;
  }
  .header__tagline {
    max-width: 80px;
  }
  .main__adv {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 30px;
  }
  .main__adv-top {
    height: 310px;
  }
  .main__section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 80px;
  }
  .main__block {
    width: 100%;
  }
  .main__event-item {
    height: 340px;
  }
  .main__event-item {
    width: calc((100% - 20px) / 2);
  }
  .footer__wrapper {
    padding: 80px 0;
    gap: 40px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer__column {
    gap: 15px;
    width: calc((100% - 40px) / 2);
  }
  .footer__column:nth-child(1) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .footer__column:nth-child(2) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .footer__column:nth-child(3) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .footer__column:nth-child(4) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
/* Для экранов шириной от 480px до 767px -----------------------*/
@media (max-width: 767px) and (min-width: 480px) {
  html {
    font-size: 14px;
  }
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 40px);
  }
  .header__block-left, .header__right-content, .header__nav-list {
    gap: 12px;
  }
  .header__logo-icon {
    margin-right: 5px;
    width: 30px;
  }
  .header__logo-text {
    width: 70px;
  }
  .header__search {
    display: none;
  }
  .header__search-bar input[type=text] {
    width: 220px;
  }
  .header__menu .header__city-block {
    display: none;
  }
  .header__menu.open {
    height: 400px;
  }
  .header__menu.open .header__menu-block {
    padding: 30px 0;
  }
  .header__menu.open .header__search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .header__menu.open .header__nav-list,
  .header__menu.open .header__nav-item,
  .header__menu.open .header__nav-link {
    width: 100%;
  }
  .header__menu.open .header__nav-list {
    gap: 15px;
  }
  .header__menu.open .header__nav-link {
    text-align: center;
    padding: 5px 0;
  }
  .header__tagline {
    max-width: 80px;
  }
  .main__adv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 30px;
  }
  .main__adv-top {
    height: 300px;
  }
  .main__section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 80px;
  }
  .main__block {
    width: 100%;
  }
  .main__event-item {
    height: 340px;
    width: 100%;
  }
  .main__event-recomend-info-block {
    margin: auto 20px;
  }
  .footer__wrapper {
    padding: 80px 0;
    gap: 60px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__column {
    gap: 20px;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__column:nth-child(1) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .footer__column:nth-child(2) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .footer__column:nth-child(3) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .footer__column:nth-child(4) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .footer__desc {
    text-align: center;
  }
  .snackbar__popup {
    padding: 13px 20px;
  }
}
/* Для экранов шириной от 320px до 479px -----------------------*/
@media (max-width: 479px) and (min-width: 320px) {
  html {
    font-size: 13px;
  }
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 10px);
  }
  .header__block-left, .header__right-content, .header__nav-list {
    gap: 12px;
  }
  .header__city-block {
    display: none;
  }
  .header__logo-icon {
    margin-right: 5px;
    width: 30px;
  }
  .header__logo-text {
    width: 70px;
  }
  .header__search {
    display: none;
  }
  .header__search-bar {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .header__search-bar input[type=text] {
    width: 220px;
  }
  .header__menu.open {
    height: 450px;
  }
  .header__menu.open .header__menu-block {
    padding: 30px 0;
  }
  .header__menu.open .header__search, .header__menu.open .header__city-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .header__menu.open .header__city-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header__menu.open .header__nav-list,
  .header__menu.open .header__nav-item,
  .header__menu.open .header__nav-link {
    width: 100%;
  }
  .header__menu.open .header__nav-list {
    gap: 10px;
  }
  .header__menu.open .header__nav-link {
    display: block;
    text-align: center;
    padding: 5px 0;
  }
  .header__tagline {
    max-width: 80px;
  }
  .main__adv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 30px;
  }
  .main__adv-top {
    height: 250px;
  }
  .main__adv-type {
    left: 15px;
    bottom: 15px;
  }
  .main__adv-desc-text, .main__adv-title {
    padding: 0;
  }
  .main__section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 80px;
  }
  .main__block {
    width: 100%;
  }
  .main__event-item {
    height: 300px;
    width: 100%;
  }
  .main__event-recomend-item-link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .main__event-recomend-img {
    border-radius: 30px 30px 0 0;
  }
  .main__event-recomend-img-block {
    width: 100%;
    height: 250px;
  }
  .main__event-recomend-item {
    height: auto;
  }
  .main__event-recomend-info {
    width: 100%;
  }
  .main__event-recomend-info-block {
    margin: 20px;
  }
  .main__event-info-block {
    padding: 20px 20px 20px 50px;
  }
  .main__event-status {
    right: 20px;
    top: 20px;
  }
  .main__event-link--more {
    width: 100%;
    text-align: center;
  }
  .main__frame {
    width: 40px;
  }
  .main__event-item-details .main__frame-item + .main__event-info,
  .main__event-item-details .main__frame-item-border + .main__event-info {
    left: 50px;
  }
  .footer__wrapper {
    padding: 80px 0;
    gap: 60px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__column {
    gap: 20px;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .footer__column:nth-child(1) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .footer__column:nth-child(2) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-align: center;
  }
  .footer__column:nth-child(3) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .footer__column:nth-child(4) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .footer__desc {
    text-align: center;
  }
  .snackbar__popup {
    padding: 13px 20px;
  }
}
/* Для экранов шириной до 319px -----------------------*/
@media (max-width: 319px) {
  html {
    font-size: 13px;
  }
}
@media (min-width: 2560px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: calc(100% - 120px);
  }
  html {
    font-size: 17px;
  }
}