/* Десктоп, разрешение <= 1700 */
@media screen and (max-width: 1700px) { 
    .schedule::after {
        width: calc(318px - 5%);
    }

    .schedule::before {
        left: -5%;
    }
}

/* Десктоп, разрешение <= 1500 */
@media screen and (max-width: 1500px) { 
    .schedule::after {
        width: calc(318px - 10%);
    }

    .schedule::before {
        left: -10%;
    }

    .themes__title-wrapper {
        bottom: 200px;
    }

    .schedule::after,
    .schedule::before {
        display: none;
    }
}

/* Десктоп, разрешение <= 1370 */
@media screen and (max-width: 1370px) { 
    body {
        min-width: unset;
    }

    .container {
        width: auto;
    }

    .header__container {
        width: 80vw;
    }

    .themes__item {
        padding-right: 30px;
        padding-left: 30px;
    }

    .schedule
    {
        background-position: 40% 0;
    }

    .schedule__title
    {
        right: unset;
        left: 2%;
    }

    .shcedule__list
    {
        left: 40%;
    }

    .footer::after {
        width: calc(431px - 10%);
    }

    .footer::before {
        left: -10%;
    }
}


/* Десктоп, разрешение <= 1200 */
@media screen and (max-width: 1200px) { 
    .footer::after {
        width: calc(431px - 17%);
    }

    .footer::before {
        left: -17%;
    }
}

/* Десктоп, разрешение <= 1100 */
@media only screen and (max-width: 1100px) {
    .header__container {
        width: 90vw;
    }
}

/* Десктоп, разрешение <= 1000 */
@media screen and (max-width: 1000px) { 
    .footer::after,
    .footer::before {
        display: none;
    }
}

/* Смартфон, разрешение <= 950 */
@media only screen and (max-width: 950px), screen and (orientation: portrait) {
    div.top,
    section.section
    div.bottom {
        overflow-x: hidden;
    }

    div.top {
        background-image: url("img/mobile/title-bg.png");
        background-size: 100%;
        background-position-y: 11%;
    }

    .banner {
        padding-bottom: 19vw;
    }

    .banner__button::after {
        opacity: 0.5;
    }

    .logo_new .logo__link {
        background-image: url("img/mobile/logo.png");
        background-size: auto 100%;
        width: 3em;
        height: 3.3em;
        margin-top: 10px;
    }

    .banner__title {
        background-image: url("img/mobile/title.png");
        background-position: 0 0;
        background-size: 100%;
        background-repeat: no-repeat;
        width: 100vw;
        height: 100vw;
        margin-bottom: -23vw;
    }

    .contacts__title {
        font-size: 20px;
        font-weight: 600;
        text-align: center;
    }

    .contacts__body {
        font-size: 28px;
    }

    .themes {
        padding-top: 0;
        padding-bottom: 20px;

        opacity: unset;
    }

    .themes__title {
        background-image: url("img/mobile/sec2_head.png");
        background-size: auto 100%;
        background-repeat: no-repeat;
        transform: unset;
        width: 100vw;
        height: 43vw;

        margin: 0;
        position: unset;
    }

    .themes__title-wrapper {
        background: unset;
        top: -30vw;
        bottom: unset;
        width: 100vw;
        height: 43vw;
    }

    .themes__list {
        flex-direction: column;
        padding-top: 65px;
    }

    .themes__list .themes__item {
        position: relative;

        width: 80%;
        height: 170px;

        padding: 0;
        border-right: unset;
        margin: auto;
    }

    .themes__list .themes__item::after {
        position: absolute;
        bottom: -5px;
        left: 50%;
        transform: translateX(-50%);

        display: inline-block;

        content: '';

        width: 75%;
        height: 2px;
        
        background: #baa495;
    }

    .themes__list .themes__item:last-child::after { display: none; }

    .themes__list .themes__item .themes__icon {
        position: absolute;
        left: 0;
        top: 60%;
        transform: translateY(-50%);
    }

    .themes__list .themes__item .themes__name {
        position: absolute;
        left: 17vw;
        top: 50%;

        margin: 0;

        transform: translateY(-50%);

        font-size: 2em;
        text-align: left;
        word-wrap: wrap;
    }

    .banner__button {
        z-index: 10;
    }

    .top__section.section.themes::before {
        position: absolute;

        left: 0;
        /*top: -20em;*/
        top: -19em;

        width: 100%;
        /*height: 700px;*/
        height: 30em;

        border-radius: 100% 100% 0 0;

        background: #f4e8d9;
        /*content: "";*/
    }

    .top__section.section.themes {
        position: relative;
    }

    .schedule__title {
        position: relative;
        left: -3px;
        top: -20px;
        bottom: unset;

        width: 100%;
        height: 60vw;

        background-image: url("img/mobile/sec3_title_new.png");
        background-size: auto 100%;
        background-repeat: no-repeat;

        z-index: 5;
    }

    .section.schedule {
        height: auto;
    }

    .section.info {
        padding-top: 0;
    }

    .schedule {
        background: #f4e8d9;
    }

    .schedule__body {
        position: unset;
        margin-bottom: 0;
    }

    .shcedule__list {
        position: unset;
        transform: unset;
        left: unset;
        top: unset;

        width: 80vw;
        letter-spacing: 2px;

        margin: auto;
    }

    .schedule__item {
        transform: unset;
        text-align: center;
        font-size: 1.5em;
    }

    .schedule__button {
        position: unset;
        transform: unset;
        text-align: center;
        margin-top: 15px;
    }

    .schedule__bottom {
        position: unset;
        padding: 10px 0 15px 0;
        font-size: 1.8em;
    }

    .schedule__bottom p {
        width: 80%;
    }

    .info__title {
        position: absolute;
        left: 0;
        top: 0;
        background-image: url("img/mobile/info-title.png");
        background-repeat: no-repeat;
        background-size: auto 100%;
        width: 97.8vw;
        height: 52vw;
        transform: unset;
        margin-bottom: -20px;
    }

    .section.info .container {
        padding-top: 46vw;
    }

    .invitation::before {
        content: unset;
    }

    .info__cards-wrapper {
        display: block;

        padding: 50px 40px 50px 40px;
        border-radius: 12px;
        margin: auto;

        width: 90vw;

        background-color: #9b806e;
    }

    .info__card {
        padding: 0;
        background: rgba(0, 0, 0, 0);
        width: 100%;
    }

    .info__card:first-child {
        margin-right: unset;
    }

    .info__card:last-child {
        margin-left: unset;
        padding-bottom: 150px;
    }

    .info__card:first-child .info__list::after {
        content: unset;
    }

    li.info__item .info__name,
    li.info__item .info__details {
        font-size: 1.5em;
    }
}

/* Смартфон, разрешение <= 750 */
@media only screen and (max-width: 750px) {
    .info__title {
        width: 97.6vw;
    }
}

/* Смартфон, разрешение <= 700 */
@media only screen and (max-width: 700px) {
    .shcedule__list {
        width: 75vw;
    }

    .info__title {
        width: 97.3vw;
    }

    .schedule__item {
        font-size: 1.2em;
    }
}

/* Смартфон, разрешение <= 650 */
@media only screen and (max-width: 650px) {
    .themes__list {
        padding-top: 0.7em;
    }

    .themes__list .themes__item .themes__name {
        left: 20vw;
        font-size: 2em;
    }

    .info__title {
        width: 97vw;
    }

    .shcedule__list {
        width: 80vw;
    }

    .schedule__bottom {
        font-size: 1.5em;
    }

    .schedule__item {
        font-size: 1.05em;
    }
    
    .invitation__title {
        width: 90vw;
        height: 20vw;

        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center center;
    }
}

/* Смартфон, разрешение <= 550 */
@media only screen and (max-width: 550px) {
    .themes__list .themes__item {
        height: 140px;
    }

    div.top {
        background-position-y: 13%;
    }

    .header {
        padding-bottom: 35px;
    }

    .banner__title {
        width: 97vw;
    }

    .info__title {
        width: 96.5vw;
    }

    .schedule__bottom {
        font-size: 1.2em;
    }

    .schedule__bottom p {
        margin-top: 5px;
    }

    .banner__button::after {
        width: 400px;
        height: 313px;
        position: absolute;
        right: -40px;
        background-size: 100%;
    }

    .shcedule__list {
        width: 95vw;
        font-size: 1.5em;
        letter-spacing: unset;
    }

    .schedule__item {
        font-size: 1.2em;
    }

    .schedule__item {
        margin-bottom: 10px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .btn {
        width: 60vw;
        height: 16.9vw;
        background-size: 100%;
    }

    .btn.btn_red {
        background-position-y: -16.7vw;
    }

    .btn.btn_yellow {
        background-position-y: -33.2vw;
    }

    .themes__list .themes__item {
        width: 85%;
    }

    .themes__list .themes__item .themes__name {
        left: 22vw;
        font-size: 1.8em;
    }

    .themes__list .themes__item .themes__icon {
        zoom: 0.7;
    }

    .info__cards-wrapper {
        padding: 50px 25px 20px 25px;
    }

    li.info__item .info__name, li.info__item .info__details {
        font-size: 1.2em;
    }
}

/* Смартфон, разрешение <= 500 */
@media only screen and (max-width: 500px) {
    .shcedule__list {
        width: 95vw;
        font-size: 1.1em;
    }

    .schedule__item {
        margin-bottom: 8px;
        padding-top: 8px;
        padding-bottom: 8px;
        
        font-size: 1.2em;
        font-weight: 700;
    }

    .info__title {
        width: 96vw;
    }

    .schedule__bottom {
        font-size: 1em;
    }
}

/* Смартфон, разрешение <= 450 */
@media only screen and (max-width: 450px) {
    .banner__title {
        width: 96vw;
    }

    div.top {
        background-position-y: 13%;
    }

    .info__title {
        width: 95.5vw;
    }

    .themes__list .themes__item .themes__name {
        font-size: 1.5em;
    }

    li.info__item .info__details {
        font-size: 1em;
        font-weight: 600;
    }

    .info__cards-wrapper {
        padding: 50px 25px 0 25px;
    }

    .info__card .info__list::after {
        zoom: 0.85;
        bottom: 20px;
    }

    .info__button {
        bottom: -40px;
    }
}

/* Смартфон, разрешение <= 380 */
@media only screen and (max-width: 380px) {
    .shcedule__list {
        width: 80vw;
        font-size: 1em;
    }

    .schedule__bottom {
        font-size: 0.8em;
    }

    .schedule__item {
        font-size: 1.1em;
    }

    .info__title {
        width: 95.2vw;
    }

    .themes__list .themes__item {
        height: 140px;
    }

    .themes__list .themes__item .themes__icon {
        zoom: 0.6;
    }

    .info__cards-wrapper {
        padding: 50px 20px 0 20px;
    }

    li.info__item .info__details {
        font-size: 0.9em;
        font-weight: 600;
    }

    .info__card:last-child {
        padding-bottom: 120px;
    }

    .info__card .info__list::after {
        zoom: 0.7;
    }
}

/* Смартфон, разрешение <= 380 */
@media only screen and (max-width: 350px) {
    div.top {
        background-position-y: 14%;
    }

    .shcedule__list {
        font-size: 1.05em;
    }

    .contacts__title {
        font-size: 18px;
    }

    .info__title {
        width: 94.5vw;
    }

    .contacts__body {
        font-size: 24px;
    }

    .themes__list .themes__item {
        height: 115px;
    }

    .themes__list .themes__item .themes__name {
        font-size: 1.2em;
    }

    .themes__list .themes__item .themes__icon {
        zoom: 0.55;
    }
}