@font-face {
    font-family: "Playfair";
    src: url("../fonts/PlayfairDisplay-Italic.woff2") format("woff2");
    src: url("../fonts/PlayfairDisplay-Italic.woff") format("woff");
    font-weight: 400;
    font-style: italic;
}

.page-new-year-2026 {
    --radius-base: 10px;
    --radius-base-small: 5px;
    --base-bg-radial-blue: radial-gradient(272.3% 396.67% at 63.96% -108.04%, #00AFFF 0%, rgba(14, 0, 205, 0.00) 100%);

    --base-bg-transparent-white: rgba(255, 255, 255, 0.25);
    --base-bg-transparent-black: rgba(0, 0, 0, 0.5);

    --base-bg-beige: #F7E8CE;
    --base-bg-red: #8A0113;
    --base-bg-green: #294920;
    --base-bg-white: #ffffff;


    --base-color-beige: #F7E8CE;
    --base-color-white: #ffffff;
    --base-color-red: #8A0113;
    --base-color-green: #294920;


    --base-border-red: #8A0113;
    --base-border-beige: #F7E8CE;
}

.wrapper {
    max-width: 1200px;
    padding: 0 10px;
    margin: 0 auto;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

figure {
    margin: 0;
}

button {
    font-family: var(--font-harmonia);
    border: none;
    background-color: transparent;
    cursor: pointer;
    padding: 0;
    margin: 0;
}

.decor {
    width: 101px;
    height: 24px;
    stroke-width: 3px;
}

.decor--red {
    stroke: #8A0113;
}

.decor--beige {
    stroke: #F7E8CE;
}

.decor--rotate {
    transform: rotate(180deg);
}

#prizes {
    position: relative;
    overflow: hidden;
    max-width: 350px;
    margin: 20px 0 0 0;
}

#prizes .swiper-button-next,
#prizes .swiper-button-prev {
    background-image: none !important;
    top: 31%;
    width: 33px;
    height: 23px;
    margin-top: 0;
}

#prizes .swiper-button-next {
    right: 4px;
}

#prizes .swiper-button-prev {
    left: 4px;
}

.prize {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
}

.prize__title {
    max-width: 320px;
    font-size: 20px;
    font-weight: 600;
    line-height: 120%;
    text-align: center;
    color: var(--base-color-beige);
    margin: 15px 0 25px;
}

.prize__price {
    text-decoration: none;
    width: 320px;
    font-family: 'Playfair';
    font-size: 28px;
    font-weight: 600;
    font-style: italic;
    line-height: 120%;
    text-align: center;
    color: var(--base-color-red);
    background-color: var(--base-bg-beige);
    border: 2px solid var(--base-bg-beige);
    border-radius: 5px;
    padding: 9px 0 14px;
    margin: 0;
}

.prize__price:hover {
    color: var(--base-color-beige);
    background-color: var(--base-bg-red);
}


/* Categories */
.categories {
    background:
    url(../img/categories-decor-horse.png) 13% 96px / 415px 425px no-repeat,
    url(../img/categories-decor-girl.png) 97.8% 138px / 520px 546px no-repeat,
    url(../img/contest-bottom-decor.svg) center 89.4% / 1471px 94px repeat-x, var(--base-bg-green);
    padding: 82px 0 311px;
}

.categories__title {
    font-family: 'Playfair';
    font-size: 50px;
    font-weight: 400;
    font-style: italic;
    line-height: 130%;
    text-align: center;
    color: var(--base-color-beige);
    margin: 0 auto 21px;
    max-width: 750px;
}

.categories__subtitle {
    font-size: 20px;
    font-weight: 600;
    line-height: 140%;
    color: var(--base-color-beige);
    text-align: center;
    max-width: 530px;
    margin: 0 auto;
}

.categories-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 40px 20px;
    margin: 62px 0 0 0;
}

.categories-list__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 280px;
}

.categories-list__link-img {
    width: 280px;
    height: 248px;
    border-radius: 10px;
}

.categories-list__item:nth-child(1) .categories-list__link-img {
    background: url(../img/categories/category-1.png) center / cover;
}
.categories-list__item:nth-child(2) .categories-list__link-img {
    background: url(../img/categories/category-2.png) center / cover;
}
.categories-list__item:nth-child(3) .categories-list__link-img {
    background: url(../img/categories/category-3.png) center / cover;
}
.categories-list__item:nth-child(4) .categories-list__link-img {
    background: url(../img/categories/category-4.png) center / cover;
}
.categories-list__item:nth-child(5) .categories-list__link-img {
    background: url(../img/categories/category-5.png) center / cover;
}
.categories-list__item:nth-child(6) .categories-list__link-img {
    background: url(../img/categories/category-6.png) center / cover;
}
.categories-list__item:nth-child(7) .categories-list__link-img {
    background: url(../img/categories/category-7.png) center / cover;
}
.categories-list__item:nth-child(8) .categories-list__link-img {
    background: url(../img/categories/category-8.png) center / cover;
}

.categories-list__link-txt {
    display: flex; 
    justify-content: center;
    align-items: center;
    width: 280px;
    height: 80px;
    background: url(../img/categories/bg-border-category.png) center / cover;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    color: var(--base-color-beige);
}

.categories__all-goods {
    display: block;
    width: 100%;
    font-family: 'Playfair';
    font-size: 28px;
    font-weight: 400;
    font-style: italic;
    line-height: 120%;
    text-align: center;
    text-decoration: none;
    color: var(--base-color-red);
    background-color: var(--base-bg-beige);
    border-radius: 5px;
    padding: 10px 0 15px;
    margin: 30px auto 0;
}

.categories__all-goods:hover {
    color: var(--base-color-beige);
    background-color: var(--base-bg-red);
}

/* Popup */
.overlay {
    opacity: 0;
    visibility: hidden;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1000;
    backdrop-filter: blur(4px);
    background-color: rgba(247, 232, 206, 0.8);
}

.popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #294920;
    width: calc(100% - 20px);
    max-width: 1180px;
    padding: 40px;
    z-index: 100;
    border-radius: 20px;
}

.popup__close {
    background-color: transparent;
    width: 20px;
    height: 20px;
    border: none;
    cursor: pointer;
    position: absolute;
    right: 40px;
    top: 25px;
}

.popup__close svg {
    stroke: #F7E8CE;
}

@media(max-width: 1440px) {
    .categories {
        background:
            url(../img/categories-decor-horse.png) 0% 96px / 415px 425px no-repeat, 
            url(../img/categories-decor-girl.png) 121% 138px / 520px 546px no-repeat, 
            url(../img/contest-bottom-decor.svg) center 89.4% / 1471px 94px repeat-x, var(--base-bg-green);
        padding: 82px 0 311px;
    }
}

@media(max-width: 1200px) {
    .categories-list {
        max-width: 882px;
        margin: 62px auto 0;
    }
}

@media(max-width: 1180px) {
    .categories {
        background: url(../img/categories-decor-horse.png) -17% 93px / 415px 425px no-repeat, 
            url(../img/categories-decor-girl.png) 141% 125px / 520px 546px no-repeat, 
            url(../img/contest-bottom-decor.svg) center 89.4% / 1471px 94px repeat-x, var(--base-bg-green);
    }
}

@media(max-width: 1024px) {
        .categories {
            background: url(../img/categories-decor-horse.png) -14% 193px / 215px 225px no-repeat, url(../img/categories-decor-girl.png) 133% 125px / 320px 345px no-repeat, url(../img/contest-bottom-decor.svg) center 89.4% / 1471px 94px repeat-x, var(--base-bg-green);
        }
        
    .categories-list {
        max-width: 100%;
        display: flex;
        overflow-x: scroll;
        flex-wrap: nowrap;
    }

    .popup {
        padding: 40px 20px;
        z-index: 100;
        border-radius: 15px;
    }
}

@media(max-width: 767px) {
    .wrapper {
        padding: 0 16px;
    }

    .wrapper--prices {
        padding: 0;
    }

    .decor  {
        width: 82px;
        height: 18px;
        stroke-width: 4px;
    }

    .decor--m-hidden {
        display: none;
    }

    .categories {
        background: 
        url(../img/contest-bottom-decor.svg) center 88% / 1032px 79px repeat-x, var(--base-bg-green);
        padding: 53px 0 206px;
    }

    .categories__title {
        font-size: 28px;
        line-height: 120%;
        text-align: left;
        margin: 0 auto 19px;
    }

    .categories__subtitle {
        font-size: 16px;
        font-weight: 600;
        line-height: 140%;
        text-align: left;
        margin: 0;
    }

    .categories-list {
        margin: 22px auto 0;
    }

    .categories-list__item {
        gap: 10px;
    }

    .categories-list__link-img {
        width: 206px;
        height: 206px;
    }

    .categories-list__item:nth-child(1) .categories-list__link-img {
        background: url(../img/categories/category-1-m.png) center / cover;
    }
    .categories-list__item:nth-child(2) .categories-list__link-img {
        background: url(../img/categories/category-2-m.png) center / cover;
    }
    .categories-list__item:nth-child(3) .categories-list__link-img {
        background: url(../img/categories/category-3-m.png) center / cover;
    }
    .categories-list__item:nth-child(4) .categories-list__link-img {
        background: url(../img/categories/category-4-m.png) center / cover;
    }
    .categories-list__item:nth-child(5) .categories-list__link-img {
        background: url(../img/categories/category-5-m.png) center / cover;
    }
    .categories-list__item:nth-child(6) .categories-list__link-img {
        background: url(../img/categories/category-6-m.png) center / cover;
    }
    .categories-list__item:nth-child(7) .categories-list__link-img {
        background: url(../img/categories/category-7-m.png) center / cover;
    }
    .categories-list__item:nth-child(8) .categories-list__link-img {
        background: url(../img/categories/category-8-m.png) center / cover;
    }

    .categories-list__link-txt {
        flex-shrink: 0;
        width: 206px;
        height: 70px;
        background: url(../img/bg-border-mob.png) center / cover;
        font-size: 16px;
        padding: 0 35px;
        text-align: center;
    }

    .categories__all-goods {
        font-size: 20px;
        padding: 12px 0 14px;
        margin: 20px auto 0;
    }

    #prizes .swiper-button-prev {
        left: 38px;
    }

    #prizes .swiper-button-next {
        right: 38px;
    }

    .popup {
        padding: 20px;
        border-radius: 10px;
    }

    .popup__close {
        right: 20px;
        top: 14px;
    }

}