
:root{
    --color-dark-green: #023D25;
    --color-red: #C50402;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-SemiBold.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/* @font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Medium.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
} */

@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Black.woff2') format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'News702Cyril';
  src: url('../fonts/news702bt_italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

*{
    scroll-behavior: smooth;
    font-family: 'Inter', 'Arial', sans-serif;
}
.container{
    max-width: 1200px;
    width: 100%;
    padding: 0 15px;
    margin: 0 auto;
}

.hero{
    background: radial-gradient(74.02% 74.02% at 50.03% 74.02%, #C50402 0%, #5F0201 100%);
    color: #fff;
    /* height: 95vh; */
    /* height: 1000px; */
    padding: 200px 0 70px 0;
    overflow: hidden;
    position: relative;
}
/* .hero::after{
    content: '';
    width: 100%;
    display: block;
    position: absolute;
    bottom: -130px;
} */
.block-waves{
    height: 180px;
    margin-top: -100px;
    margin-bottom: -20px;
    background: url(../img/snow-waves-2.png) center center / contain repeat-x;
    position: relative;
    z-index: 20;
}
.hero__container{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 50px;
    z-index: 10;
    position: relative;
}
.hero__string{
    font-size: 20px;
    font-weight: lighter;
    opacity: .5;
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    flex-direction: row;
    gap: 40px;
    white-space: nowrap;
}
.hero__track {
    justify-content: center;
    display: inline-flex;
    gap: 40px;
    animation: marquee 45s linear infinite;
    animation-direction: alternate;

}

@keyframes marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-20%);
  }
}
.badge {
    display: inline-block;
    padding: 5px 25px;
    font-size: 1rem;
    border-radius: 100px;
}
.badge--white{
    background: #fff;
    color: var(--color-dark-green);
}
.badge--green{
    color: #fff;
    background: var(--color-dark-green);
}

.hero__title-wrapper{
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.hero__title{
    /* font-size: 55px; */
    font-size: clamp(1.9rem, 5vw, 3.5rem);
    line-height: 1.125em;
    font-family: "News702Cyril";
    font-style: italic;
    font-weight: 400;
}
.hero__subtitle{
    text-align: center;
    /* font-size: 30px; */
    font-size: clamp(1.3rem, 5vw, 2rem);
    /* line-height: 1em; */
    line-height: 1.125em;
}
.hero__cta{
    display: flex;
    justify-content: center;
}
.quote{
    display: flex;
    flex-direction: row;
    gap: 30px;
    align-items: center;
}
.quote__avatar-wrapper{
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    width: 200px;
    height: 200px;
    box-shadow: 0px 0px 50px rgba(251, 255, 195, 0.5);
}
.quote__avatar{
    width: 100%;
    height: 100%;
}
.quote__text{
    /* font-size: 20px; */
    font-size: clamp(.8rem, 5vw, 1.125rem);
    margin-bottom: 10px;
}
.quote__autor{
    font-size: 25px;
    font-size: clamp(1rem, 5vw, 1.5rem);
    font-weight: bold;
}

.hero-button{
    display: inline-block;
    text-decoration: none;
    color: var(--color-dark-green);
    background-color: #fff;
    padding: 25px 160px 25px 40px;
    border-radius: 10px;
    box-shadow: 0px 0px 50px rgba(251, 255, 195, 0.5);
    transition: all .3s;
    position: relative;
    /* text-transform: uppercase; */
    /* font-size: 23px; */
    font-size: clamp(1.2rem, 5vw, 1rem);
    font-family: 'News702Cyril';
    font-weight: 400;
    font-style: italic;
}
.hero-button:hover{
    box-shadow: 0px 0px 50px rgba(251, 255, 195, 0.8);
}
.hero-button::after{
    content: '';
    position: absolute;
    right: -20px;
    bottom: -15px;
    width: 140px;
    height: 140px;
    background: url(../img/present.png) center center / cover no-repeat;
}

.hero__decor{
    position: absolute;
    z-index: 1;
    pointer-events: none;
    /* transition: transform 0.15s ease-out; */
}
.hero__decor.__js-move{
    transform: translate(var(--parallax-x, 0px), var(--parallax-y, 0px));
    transition: transform 0.2s ease-out;
    will-change: transform;
}
.hero__decor--top{
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 260px;
    width: 100%;
    background: url(../img/hero-decor--top.png) top center / contain repeat-x;
    display: inline-block;
}
.hero__decor--snowman{
    bottom: -50px;
    right: 0;
}
.hero__decor--drum{
    left: 20px;
    top: 100px
}
.hero__decor--candle-1{
    right: 20px;
    top: 140px;
}
.hero__decor--candle-1-2{
    right: 80px;
    top: 90px;
    /* transform: scale(.8); */
    /* transform: scale(-1, 1) scale(.6) translate(var(--parallax-x, 0px), var(--parallax-y, 0px)); */
}
.hero__decor--candle-2{
    left: -60px;
    bottom: 150px;
}



.lottery-section{
    background: url(../img/snow-pattern.webp);
    overflow: hidden;
    /* padding: 150px 0; */
}
.lottery-section__container{
    position: relative;
    min-height: 700px;
    padding-top: 100px;
    padding-bottom: 100px; 
}
.lottery-section__decor{
    position: absolute;
    z-index: 1;
    pointer-events: none;
}
.lottery-section__decor.__tree{
    right: 0;
    bottom: 0;
    transform: translateX(50%);
}
.lottery-section__decor.__moroz{
    left: 0;
    bottom: 0;
    transform: translateX(-40%);
}
.lottery-section__title-wrapper{
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    text-align: center;
}
.lottery-section__title{
    /* font-size: 35px; */
    font-size: clamp(1.6em, 5vw, 2.2rem);
    text-transform: uppercase;
    /* line-height: 1em; */
    line-height: 1.125em;
    color: var(--color-dark-green)
}


.footer{
    background: var(--color-dark-green);
    min-height: 200px;
    position: relative;
    z-index: 200;
    color: #fff;
    text-align: center;
    left: 0;
    padding: 0 0 200px 0;
}
.footer__item{
    z-index: 5;
}
.footer img{
    display: inline-block;
}
.footer::before{
    content: '';
    position: absolute;
    top: -70px;
    left: 0;
    width: 100%;
    height: 100px;
    background: url(../img/footer-waves.svg) repeat-x;
    z-index: 1;
    pointer-events: none;
}
.footer::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 250px;
    background: url(../img/footer-forest.png) repeat-x;
    z-index: 3;
}
.footer__container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}


.rules-list{
    list-style: none;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}
.rules-list li::before{
    content: "";
    width: 1em;
    height: 1em;
    background: url(../img/mandarin.png) center center / cover no-repeat;
    margin-right: 5px;
    display: inline-block;
}
.lottery-wrapper{
    background: #fff url(../img/snow-pattern-3.jpg);
    border: 6px solid var(--color-dark-green);
    width: 80%;
    margin: 70px auto;
    border-radius: 30px;
    padding: 7px;
}
.lottery{
    text-align: center;
    border: 1px solid var(--color-dark-green);
    padding: 50px;
    position: relative;
    border-radius: 22px;
}
.lottery__step-rules{
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.lottery__start-button{
    border-radius: 10px;
    background: var(--color-red);
    padding: 30px 80px;
    text-transform: uppercase;
    border: none;
    color: #fff;
    cursor: pointer;
    transition: all .3s;
}
.lottery__start-button:not(:disabled):not(.lottery__start-button--disabled){
    box-shadow: 0px 4px 40px rgba(245, 44, 44, 0.6);
}
.lottery__start-button:not(:disabled):not(.lottery__start-button--disabled):hover{ 
    box-shadow: 0px 4px 40px rgba(245, 44, 44, 0.9);
}
.lottery__start-button:disabled,
.lottery__start-button--disabled{
    background: #d1d1d1;
    color: #747474;
    cursor: not-allowed;
    /* pointer-events: none; */
}


@media screen and (max-width: 760px){
    .hero__quote{
        flex-direction: column;
    }
    
    .hero__decor--snowman{
        bottom: -100px;
        right: -70px;
        transform: scale(.7);
    }
    .hero__decor--drum{
        left: -60px;
        top: 10px;
        width: 200px;
        /* transform: scale(.7); */
    }
    .hero__decor--candle-1{
        right: -43px;
        top: 56px;
        transform: scale(.8);
    }
    .hero__decor--candle-1-2{
        right: -30px;
        top: 28px;
        /* transform: scale(-1, 1) scale(.4); */
    }
    .hero__decor--candle-2{
        left: -90px;
        bottom: 150px;
        width: 200px;
        /* transform: scale(.7); */
    }
    .lottery-wrapper{
        margin: inherit auto;
        width: 100%;
    }
    .lottery{
        padding: 20px;
    }
    .lottery-section__decor.__tree{
        transform: translate(50%, 20%) scale(.5);
    }
    .lottery-section__decor.__moroz{
        transform: translate(-40%, 20%) scale(.5);
    }
    
}
@media screen and (max-width: 500px){
    .hero{
        padding-top: 120px;
    }
    .hero__decor--candle-2 {
        left: -60px;
        width: 160px;
    }
    .hero__decor--drum {
        left: -30px;
        width: 140px;
    }
    .hero__decor--candle-1-2 {
        right: 20px;
    }
    .hero-button{
        padding: 10px 120px 10px 23px;
    }
    .hero-button::after{
        width: 120px;
        height: 120px;
    }
    .hero__string{
        font-size: 15px;
    }
    .block-waves{
        background-size: cover;
    }
    
    .lottery__start-button{
        
    }
}

@media screen and (max-width: 350px){
    .lottery__start-button{
        padding: 10px 60px;
    }
}
