@import url("fonts.css");

@desktop_l:  ~"only screen and (min-width: 1200px)";                            // xl   1140
@desktop:    ~"only screen and (min-width: 992px) and (max-width: 1199px)";     // lg   960
@tablet:     ~"only screen and (min-width: 768px) and (max-width: 991px)";      // md   720
@phone_l:    ~"only screen and (min-width: 576px) and (max-width: 767px)";      // sm   540
@phone:      ~"only screen and (max-width: 575px)";                             //      auto

.newline() { content:"\000A"; white-space: pre; }
.menu_delimiter() { 
    content: "|"; 
    margin: 0rem 0.3rem 0rem 0.4rem; 
    display: inline-block; 
}


@yellow: #fcd700;
@yellow_darker: #f4bc00;
@red: #cf152d;
@red_darker: #9e1f00;
@gray: #58595b;
@error_color: @red;


.transition(@selector, @time) {
    -webkit-transition: @selector @time ease-in-out !important;
    -moz-transition: @selector @time ease-in-out !important;
    -o-transition: @selector @time ease-in-out !important;
    -ms-transition: @selector @time ease-in-out !important;
    transition: @selector @time ease-in-out !important;
}

.transition_multiple(@selector_1, @selector_2, @time) {
    -webkit-transition: @selector_1 @time ease-in-out, @selector_2 @time ease-in-out !important;
    -moz-transition: @selector_1 @time ease-in-out, @selector_2 @time ease-in-out !important;
    -o-transition: @selector_1 @time ease-in-out, @selector_2 @time ease-in-out !important;
    -ms-transition: @selector_1 @time ease-in-out, @selector_2 @time ease-in-out !important;
    transition: @selector_1 @time ease-in-out, @selector_2 @time ease-in-out !important;
}


.border_radius(@tl, @tr, @bl, @br) {
    
    -webkit-border-top-left-radius: @tl;
    -moz-border-top-left-radius: @tl;
    border-top-left-radius: @tl;
    
    -webkit-border-top-right-radius: @tr;
    -moz-border-top-right-radius: @tr;
    border-top-right-radius: @tr;
    
    -webkit-border-bottom-left-radius: @bl;
    -moz-border-radius-bottomleft: @bl;
    border-bottom-left-radius: @bl;
    
    -webkit-border-bottom-right-radius: @br;
    -moz-border-radius-bottomright: @br;
    border-bottom-right-radius: @br;
}

.with_shadow(@x, @y, @blur, @spread, @color) {
    -webkit-box-shadow: @x @y @blur @spread @color;
    -moz-box-shadow: @x @y @blur @spread @color;
    box-shadow: @x @y @blur @spread @color;
}







* {
    margin: 0;
    padding: 0;
}

html, body {
    width: 100%;
    /*height: 100%;*/
    /*font-family: "BloggerL";*/
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    text-align: center;
    color: #ffffff;

    background: url("../images/background.jpg") no-repeat center top;
    background-size: cover !important;
    
    @media @phone_l, @phone {
        background: url("../images/background_m.jpg") no-repeat center top;
    }

    background-color: @red;
    
}

body {
    
    &.registration {
        
        @media @desktop_l, @desktop {
            background: url("../images/registration_footer_back.png") no-repeat center bottom -30px;
            background-size: 1150px !important;
        }
        
        @media screen and (min-width: 992px) and (max-width: 1150px) {
            background-size: 100% !important;
            background-position-y: bottom;
        }
    }
}


#wrapper {

    position: relative;
    min-height: 100vh;
    overflow: hidden;
    
    padding-bottom: 130px;
    @media @tablet { padding-bottom: 170px; }
    @media @phone_l { padding-bottom: 210px; }
    @media @phone { padding-bottom: 270px; }
    
    .container-fluid {
        position: relative;
        z-index: 3;
    }
    
    .container-fluid.winners, .container-fluid.registration { z-index: 4; }
    
}




.container {
    
    &.navigation {
        position: relative;
        z-index: 10;
        
        @media @tablet, @phone_l, @phone { 
            position: absolute;
            max-width: 100%; 
        }

        .navbar-nav {
            min-height: 50px;
            align-items: center;
            .nav-item {
                position: relative;
                display: table;
                /*width: 115px;*/
                max-height: 40px;
                margin: auto 0.1rem 0 0.1rem;
                &.logo { margin: -0.2rem 0.5rem 0rem 0.5rem; height: 100%; }
                a, button {
                    position: relative;
                    color: @red;
                    font-size: 1.2em;
                    font-weight: 700;
                    padding: 5px 30px 3px 30px;
                    margin: 0 3px;
                    z-index: 1;
                    background-color: @yellow;
                    border: none;
                    border-color: transparent;
                    .border_radius(10px, 10px, 10px, 10px);
                    .transition_multiple(background-color, color, 0.2s);
                }
                
                &:hover, &.active {
                    a, button {
                        background-color: @red_darker;
                        color: @yellow;
                        text-decoration: none;
                        cursor: pointer !important;
                    }
                    
                }
                
                @media @tablet, @phone_l, @phone {
                    margin: 0.5rem 0rem 0rem auto;
                    /*width: 165px;*/
                    height: auto;
                    a, button {
                        text-align: right;
                        padding-left: 0.5rem;
                        padding-right: 0.5rem;
                        .border_radius(6px, 6px, 6px, 6px);
                    }
                }
                
                &:nth-child(1), &:nth-child(2) { 
                    /*width: 165px;*/
                }
            }

            
            @media @tablet, @phone_l, @phone { width: 99%; }
        }
        
        
        .navbar {
            @media @desktop_l, @desktop { padding: 0; }
            @media @tablet, @phone_l, @phone { padding-top: 0.5rem; }
            @media @phone { padding-left: 0rem; padding-right: 0rem; }
            
            
            a.logo {
                /*
                position: absolute;
                top: 25px;
                left: 0; right: 0;
                margin: auto;
                z-index: 1;
                */
            }
            
            .navbar-toggler {
                outline: none;
                padding: 0.25rem 0.25rem;
                z-index: 2;
                span {
                    display: block;
                    background-color: #ffffff;
                    height: 5px;
                    width: 45px;
                    /*border: 1px solid @violet;*/
                    /*border-radius: 3px;*/
                    margin-top: 4px;
                    margin-bottom: 4px;
                    position: relative;
                    left: 0;
                    opacity: 1;
                    transition: all 0.25s ease-out;
                    transform-origin: center left;
                }
            }
            
            
            
            .logo_m {
                position: absolute; 
                top: 0; 
                left: 0; right: 0;
            }
        }
        
        
        .transition(background-color, 0.25s);
        &.open {
            background-color: #cf152d;
        }
        
        #navbarNav.show {
            /*@media @tablet { margin-bottom: -5rem; }*/
        }
    }

}

.page_header {
    
}



.section_title {
    
    margin: 0.5rem auto 1.0rem auto;
    font-size: 2.4em; line-height: 1.1em;
    /*font-family: 'BloggerB';*/
    font-weight: 900;
    
    &.red { color: @red; }
    &.yellow { color: @yellow_darker; }
    
}


.section_subtitle { 
    font-size: 1.1rem; 
    line-height: 1.3rem;
    margin: 0rem auto 0.5rem auto;
    
    &.red { color: @red; }
    &.yellow { color: @yellow_darker; }
    
    @media @phone {
        font-size: 1.1rem; line-height: 1.3rem;
    }
}




.container-fluid.home {
    
    .container-fluid {
        
        @media @desktop { max-width: 990px; }
        
        .home_container {
            position: relative;
            z-index: 2;
            height: 100%;
            margin-top: 40px;
            
            @media @tablet, @phone_l, @phone {
                margin-top: 60px;
            }
            
            .cta {
                margin-top: -170px;
                
                p, h1 { font-size: 1.1em; line-height: 1.2em; font-weight: 400; }
                
                @media @desktop { margin-top: -150px; }
                @media @tablet, @phone_l, @phone { 
                    margin: 0px auto 10px auto; 
                    max-width: 360px;
                }
            }
            
            .header_img {
                @media @tablet, @phone_l, @phone {
                    position: relative;
                    left: calc((100vw - 1020px) / 2);
                }
                @media @phone_l, @phone {
                    max-width: 134%;
                    left: -16.8%;
                }
            }
        }
    }
    
}

.container-fluid.home, .container-fluid.prizes {
    &.coming_soon {
        
        
        .prizes_container {
            padding-bottom: 15rem;
            margin-bottom: -11rem;
            
            @media @phone_l { 
                padding-bottom: 18rem;
                margin-bottom: -14rem;
            }
            
            @media @phone { 
                padding-bottom: 21rem;
                margin-bottom: -17rem;
            }
        }
    }
}


.container-fluid.howto, .container-fluid.prizes, .container-fluid.rules, .container-fluid.winners {
    
    width: calc(100% - 30px);
    max-width: 850px;
    padding: 20px 20px 20px 20px;
    
    .border_radius(60px, 60px, 60px, 60px);
    
    @media @phone_l, @phone {
        .border_radius(40px, 40px, 40px, 40px);
    }
}



/*
.container-fluid.howto, .container-fluid.prizes {
    
    .steps, .note {
        font-size: 1.1rem;
        line-height: 1.3rem;
        color: @red;
        
        a { color: @red; text-decoration: underline; }
    }
}
*/



.container-fluid.howto {
    
    
    margin-top: 20px;
    color: #ffffff;
    /*font-family: 'BloggerN';*/
    background-color: @red;
    padding: 20px 20px 80px 20px;
    
    @media @phone {
        padding-bottom: 70px;
    }
    
    @media screen and(max-width: 445px) {
        padding-bottom: 13vw;
    }
    
    &:before {
        content: '';
        background: url('../images/Moreni_pack.png') no-repeat center bottom;
        position: absolute;
        top: 0; 
        bottom: -80px;
        left: 0; right: 0;
        margin: auto;
        
        @media @phone {
            /*top: -10vw;*/
            background-size: 95%;
            max-width: 417px;
        }
    }
    
    .steps {
        
        .howto_description {
            font-size: 1.0em; line-height: 1.2em; 

            p.step_num {
                font-size: 2.5em;
                font-weight: 900;
                color: @red;
                margin-top: 1.0rem;
                position: relative;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                background-color: @yellow_darker;
                width: 45px;
                height: 45px;
                .border_radius(40px, 40px, 40px, 40px);
            }
        }
        
        .note {
            text-align: center;
            font-size: 0.85em; line-height: 1.1em;
            margin-top: 0.5rem;
            margin-bottom: 2rem;
        }
    }
    
    
    
    
    @media @tablet, @phone_l, @phone {
        .steps {
            .note { text-align: center; }
        }
    }
}


.howto_wrapper, .prizes_wrapper, .rules_wrapper, .winners_wrapper {
    
    position: relative;
    width: calc(100% - 30px);
    max-width: 850px;
    margin: auto;
    
    .peanuts_left, .peanuts_right {
        content: '';
        position: absolute;
        top: 0px; 
        bottom: 0px;
        left: -430px; right: auto;
        z-index: 0;
        width: 422px;
        height: 966px;
    }
    .peanuts_right {
        left: auto; right: -430px;
    }
    
    @media @tablet, @phone_l, @phone {
        .peanuts_left, .peanuts_right {
            display: none;
        }
    }
}

.container-fluid.prizes {
    
    position: relative;
    margin-top: 100px;
    margin-bottom: 1rem;
    color: @red;
    background-color: @yellow_darker;
    
    
    .prize {
        @media @desktop_l, @desktop {
            margin-top: -55px;
        }
        p { color: #000000; }
    }
    
}

.container-fluid.rules, .container-fluid.winners {
    
    margin-top: 3rem;
    padding: 0rem 1rem;
    

    .scroll_area {

        max-height: 600px;

        .mCSB_scrollTools { opacity: 1; }
        /*.mCSB_scrollTools { width: 45px; }*/
        /*.mCSB_inside > .mCSB_container { margin-right: 60px; }*/
        .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y { margin-right: 0px; }
/*        .mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_buttonDown { width: 45px; height: 47px; opacity: 1 !important; }
        .mCSB_scrollTools .mCSB_buttonUp   { background: url("../images/scroller_UP_arrow_white.png") no-repeat center top; }
        .mCSB_scrollTools .mCSB_buttonDown { background: url("../images/scroller_DOWN_arrow_white.png") no-repeat center top; }*/
        .mCSB_draggerContainer { 
            background-color: #ffffff; 
            margin: 0;
            width: 10px;
            .border_radius(10px, 10px, 10px, 10px);
        }
        .mCSB_dragger {
            width: 100%;
            background-color: @yellow;
            .border_radius(10px, 10px, 10px, 10px);
        }
        
        .mCSB_dragger_bar, .mCSB_draggerRail { display: none; }

/*        .mCSB_outside + .mCSB_scrollTools { right: 0; }
        .mCSB_buttonUp { margin-top: -50px; }
        .mCSB_buttonDown { margin-bottom: -50px; }*/

        .mCSB_buttonUp, .mCSB_buttonDown {
            width: 24px;
            height: 24px;
        }
    }
}



.container-fluid.rules {
    
    padding: 20px 20px 90px 20px;
    background-color: @red;
    
    @media @phone_l { padding: 20px 10px 90px 10px; }
    @media @phone { padding: 20px 0px 20vw 0px; }
    
    @media screen and(max-width: 445px) {
        padding-bottom: 15vw;
    }
    
    &:before {
        content: '';
        background: url('../images/Moreni_pack_opened.png') no-repeat center bottom;
        position: absolute;
        top: 0; 
        bottom: -90px;
        left: 0; right: 0;
        margin: auto;
        
        @media @phone {
            /*top: -12vw;*/
            background-size: 90%;
        }
        
        
    }
    
    
    
    /*
    &:before {
        content: '';
        background: url('../images/Moreni_pack.png') no-repeat center bottom;
        position: absolute;
        top: 0; 
        bottom: -80px;
        left: 0; right: 0;
        margin: auto;
        
        @media @phone {
            top: -10vw;
            background-size: 100%;
            max-width: 417px;
        }
    }
    */
    
    .scroll_area {
        
        margin: 1rem 0 1rem 1rem;
        
        /* ------- doc formating */
        ul {
            /*width: 465px;*/
            width: 100%;
            list-style-type: none;
            font-size: 1rem;
            text-align: justify;
            color: #ffffff;
            padding-left: 0px;
            margin-bottom: 0;
            
            p.doc_title {
                font-size: 1.1rem;
                line-height: normal;
                text-align: center;
                padding-bottom: 20px;
            }
            
            p.game_title {
                font-size: 1.0rem;
                text-align: left;
                font-family: "BloggerB";
            }
            
            span { font-family: "BloggerB"; }
            span.underline { text-decoration: underline; }
            
            a { color: #ffffff !important; text-decoration: underline; }
            
            li {
                margin-top: 2rem;
                margin-bottom: 0px;
                line-height: 1.2rem;
                
                &:first-child { margin-top: 0; }
                
                ul {
                    display: flex;
                    flex-wrap: wrap;
                    
                    li {
                        font-weight: normal;
                        margin-left: 10px;
                        margin-top: 10px;
                        margin-bottom: 5px;
                        /*text-align: center;*/
                        width: 100%;
                        
                        &.products { 
                            width: 45%; 
                            @media @phone { width: 100%;  }
                        }

                        ul li {
                            font-weight: normal;
                            margin-left: 10px;
                            margin-top: 10px;
                            padding-right: 10px;

                            ul li {
                                font-weight: normal;
                                margin-left: 10px;
                            }
                        }
                    }
                }
                
                
            }
        }

        li.rules_strong { 
            margin-bottom: 5px; 
        }
        li.italic { font-style: italic; }
        ul.disc { 
            list-style-type: disc; 
            li { margin-left: 15px; }
        }
        li.dash {
            margin-top: 0;
            margin-bottom: 0;
            &::before { 
                content: "-";
                /*text-indent: -5px;*/
                margin-left: -5px;
                margin-right: 2px;
            }
        }
        
        span.underline { text-decoration: underline; }
        /* ------- end doc formating */
        
    }
}



    

.container-fluid.winners {
    
    padding: 20px 20px 20px 20px;
    background-color: @red;
    color: #ffffff;
    margin-top: 110px;
    margin-bottom: 60px;
    
    .select_winners_btns {
        display: flex;
        align-items: center;
        justify-content: center;
        
        a, button { 
            margin: 0.5rem; 
            background: none;
            border: none;
            box-shadow: none;
            outline: none;
            cursor: pointer;
            
            @media @phone { margin: 1rem 0.5rem; }
            
            img { 
                opacity: 0.6; 
                .transition(opacity, 0.25s);
            }
            
            &:hover, &.active {
                img { opacity: 1; }
            }
        }
        
    }
    
    .winners_list_container {
        
        position: relative;
        width: 100%;
        /*max-width: 670px;*/
        min-height: 230px;
        max-height: 400px;
        margin: 0rem auto 1rem auto;
        padding: 0rem 2.5rem 1rem 2rem;
        /*background-color: @yellow;*/
        .border_radius(10px, 10px, 10px, 10px);
                
        @media @phone {
            margin-top: 1rem;
            padding: 0rem 1rem 1rem 1rem;
        }
    }
    
    .prize_title {
        /*color: @red;*/
        font-size: 1.2rem; line-height: 1.4rem;
        font-weight: 600;
        margin-bottom: 0;
        /*font-style: italic;*/
    }
    
    .winners_list {
        
        display: flex;
        justify-content: center;
        align-items: center;
        max-height: 80%;
        margin-top: 2rem;
        
        .mCustomScrollBox { width: 100%; }
        /*.mCSB_dragger { background-color: #ffffff; }*/
        
        /*
        .slick-list.draggable {
            width: 100%;
        }
        */
        
        span {
            align-self: center;
            margin-bottom: 6rem;
        }
        
        ul {
            display: flex !important;
            flex-wrap: wrap;
            list-style-type: none;
            margin: 0rem auto 0 auto;
            /*color: @red;*/
            
            li {
                width: 33.3%;
                
                @media @tablet { width: 33.33%; }
                @media @phone_l, @phone { width: 50%; }
            }
        }
        
        
    }
}






.container-fluid.registration {
    
    margin-bottom: 3rem;
    
    @media @desktop_l, @desktop {
        /*min-height: 930px;*/
        margin-bottom: 320px;
    }
    
    @media screen and (min-width: 992px) and (max-width: 1150px) {
        /*min-height: calc(500px + 40vw);*/
        /*margin-bottom: calc(50px + 25vw);*/
        
        margin-bottom: 30vw;
    }
    
    .container {
        
        position: relative;
        max-width: 850px;
        height: auto;
        min-height: 400px;
        
        background-color: @yellow_darker;
        background-position-y: center;
        .border_radius(60px, 60px, 60px, 60px);
        
        
        @media @tablet, @phone_l, @phone {
            margin-top: 1rem;
        }
        
        @media @phone_l, @phone {
/*            background: none;
            background-color: @yellow;*/
            height: auto;
            .border_radius(40px, 40px, 40px, 40px);
            
            &:before {
                bottom: 15vw;
            }
        }
    }
    
    
    &:not(.confirm) {
        .container {
            @media @tablet {
                &:before { bottom: 280px; }
            }
        }
    }
    
    &.confirm, &.out_of_promo {
        @media @desktop_l, @desktop, @tablet {
            .container {
                &:before { bottom: 100px; }
            }
        }
    }
    
    
    
    
    /*&.confirm, &.choose_prize { padding-bottom: 4rem; }*/
    
    .regform_container, .confirm_wrapper, .choose_prize_wrapper, .message_container, .out_of_promo_wrapper {
        
        
        color: @red;
        
        & > .container > .row > div {
            width: 100%;
            margin: 2rem auto 1rem auto;
            
            &:nth-child(2) { margin-top: 1rem; }
            
            .border_radius(20px, 20px, 20px, 20px);
            
            
        }
        
    }
    
    
    .confirm_wrapper, .choose_prize_wrapper, .message_container, .out_of_promo_wrapper {
        
        
        /*margin-bottom: 3rem;*/
        text-align: center;
        
        @media @phone_l, @phone { 
            /*margin-bottom: 7rem;*/ 
        }
        
        & > .container > .row {
            /*padding: 2rem;*/
            
            &:first-child {
                position: relative;
                z-index: 2;
            }
            
            /*@media @phone { padding: 1rem; }*/
        }
        
        /*
        & > .container > .row > div { 
            padding: 5rem 3rem;
            
            &:first-child {
                padding: 2rem 3rem;
            }
        }
        */
        
        & > .container > .row:first-child > div {
            /*background-color: @yellow;*/
            margin: 1rem auto 1rem auto;
            
            @media @phone_l, @phone {
                margin-bottom: 0;
                padding: 1.5rem !important;
            }
        }
        
        .win_title {
            font-size: 1.2em; line-height: 1.2em; 
        }
        
        .description { 
            max-width: 700px;
            margin: 0rem auto 1rem auto;
            font-size: 0.9em; line-height: 1.1em; 
            color: @gray;
            span { font-weight: bold; }
        }
        
        input { text-align: center; margin-bottom: 1rem; }
        
        .error_message, label.error { 
            color: @error_color; 
            min-height: 25px;
        }
        
    }
    
    
    .reg_footer_img {
        
        img {
            @media @tablet, @phone_l, @phone {
                position: relative;
                left: calc((100vw - 990px) / 2);
                top: 25px;
            }
            @media @phone_l, @phone {
                max-width: 130%;
                left: -14.8%;
            }
        }
        
    }
    
    
    .message_container { 
        & > .container > .row > div { 
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: space-between;
            /*min-height: 400px;*/ 
            
            /*@media @phone { min-height: 450px;  }*/
        }
    }
    
    
    
    .choose_prize_wrapper {
        
        
/*        color: @red;
        text-align: center;*/
        
        /*@media @phone_l, @phone { margin-top: 6rem; }*/
        
        &>.container {
/*            background-color: #ffffff;
            max-width: 670px;
            margin: 1rem auto 3rem auto;
            padding: 1.5rem 3rem;
            .border_radius(20px);

            @media @phone_l, @phone { 
                padding: 1.5rem;
                margin-bottom: 0;
            }*/
        }
        
        p.cta { 
            
            font-size: 1.3em; line-height: 1.2em;
            font-weight: 800;
            text-transform: uppercase;
            
            span { 
                display: block; 
                font-size: 1rem; 
                line-height: 1.2rem; 
                color: @red;
                margin-top: 0.5rem;
                margin-bottom: 1.5rem;
            }
            
            @media @phone {
                font-size: 1.15em;
            }
        }
        
        .cta_prizes {
            
            display: flex;
            flex-direction: row;
            justify-content: center;
            margin-bottom: 1rem;
            
            
            @media @desktop_l, @desktop, @tablet {
                margin-top: -60px;
                &>div {
                    &:nth-child(1) { margin-right: 100px; }
                    &:nth-child(2) { margin-left: 100px; }
                }
            }
            
            @media @phone_l, @phone {
                &>div {
                    &:nth-child(1) img { padding-right: 15px; }
                    &:nth-child(2) img { padding-left: 15px; }
                }
            }
            
            
            p {
                margin-top: 0.5rem;
                font-size: 1.5rem;
                line-height: 1.8rem;
                span {
                    display: block;
                    font-size: 0.9em;
                    line-height: 1.2em;
                    color: @red;
                }
            }
            
            span {
                font-size: 0.9em; line-height: 1.2em;
            }
            
            img {
                margin-bottom: 0.25rem;
/*                width: 85%;
                max-width: 230px;*/
                &.disabled { opacity: 0.5; }
            }
            
            .participate_btn {
                a { 
                    display: block; 
                    max-width: 180px;
                    margin: auto;
                }
            }
            
            @media @phone_l, @phone {
                p { text-align: center; }
            }
            
            @media @phone_l, @phone {
                .participate_btn {
                    a { max-width: 200px; }
                }
            }
            
            @media @phone_l, @phone {
                flex-direction: column;
                
                /*&>div:nth-child(2) { margin-top: 10vw; }*/
                
                p { 
                    span {
                        margin-left: 5px;
                    }
                }
            }
        }
        
        .participate_btn {
            margin-top: 1rem;
            a { 
                min-width: auto; 
                padding: 0.3rem 1rem 0.0rem 1rem;
            }
        }
    }
    
    
    
    

    form {
        position: relative;
        z-index: 1;
        text-align: left;
        /*background-color: @yellow;*/
        padding: 15px;
        .border_radius(10px, 10px, 10px, 10px);
        color: @gray;
        
        &#confirm_number {
            max-width: 500px;
            margin: auto;
        }
        
        p {
            
            &.title {
                font-size: 1.05em;
                font-weight: 700;
                text-transform: uppercase;
                /*font-family: 'BloggerB';*/
                color: @red_darker;
            }
            
            &.restriction {
                font-size: 0.75em;
                margin-top: 5px;
                margin-bottom: 20px;
                color: #000000;
            }

            &.error_message {
                color: @error_color;
                min-height: 55px;
                margin: 0.0rem auto 0.2rem auto;
                font-size: 0.9em;
                /*font-family: 'BloggerN';*/
                /*text-decoration: underline;*/
                /*font-weight: 900;*/
                a { color: @error_color; text-decoration: underline; }
                
            }
            
            @media @phone_l, @phone {
                &.restriction { margin-bottom: 10px; }
                &.error_message { min-height: 0px; }
            }
        }
        
        p, label {
            line-height: 1.2em;
            padding-left: 5px;
        }

        input {
            height: calc(2.6rem + 2px);
            .border_radius(0px, 0px, 0px, 0px);
            border: 2px solid #ffffff;
            font-family: 'BloggerN';
            font-size: 1.15rem;
            line-height: calc(1.9rem + 2px);
            /*color: @gray;*/
            padding-top: 0.6rem;
            box-shadow: none;

            &.error, &.date_error {
                border-color: @error_color;
            }
            
            @media @phone_l, @phone { margin-bottom: 1rem; }
        }
        
        #u_receipt_number_group {
            position: relative;
            a { 
                position: absolute; 
                top: 6px; 
                right: 5px; 
            }
            
            .receipt_example {
                position: absolute;
                top: 15px;
                right: 30px;
                z-index: 1;
                display: none;
            }
        }

        label {
            font-size: 0.9em;
            margin-top: 0.8rem;
            margin-bottom: 0.0rem;
            color: #000000;
        }
        label:first-child { margin-top: 0.3rem; }



        .amount_container {
            
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            
            span:not(.price_delimiter) { width: 100%; display: block; font-size: 0.75rem; line-height: 0.9rem; margin-top: 0.5rem; }
            
            label.amount_label { 
                flex-basis: 40%;
                display: block; 
                /*float: left;*/

                @media @phone_l { flex-basis: 40%; }
                @media @phone { width: 100%; }
                
                span { 
                    width: 60%; 
                    margin-top: 0.2rem;
                    font-size: 0.9rem; line-height: 1rem;
                }
            }
            
            /*label.amount_label, .amount_section { margin-top: 1rem; }*/
            
            @media @phone_l, @phone { margin-bottom: 1rem; }
            
            @media @phone {
                flex-direction: column;
                align-items: baseline;
            }
        
        }

        .amount_section, .date_section {
            /*display: inline-block;*/
            display: flex;
            align-items: flex-end;

            @media @phone { margin-top: 0rem; }


            input {
                width: 35px;
                margin: 0 0.2rem;
                font-size: 1.3rem;
                text-align: center;
                padding: 0.55rem 0.2rem 0.2rem 0.2rem;
                float: left;

                &#input_amount_1 { margin-left: 0; }
                
                &#input_amount_5, &#input_year { margin-right: 0; }
                
                &::placeholder { color: #dddddd; }
                
                @media @phone {
                    margin: 0.2rem 0.1rem auto 0.1rem;
                }
            }

            span.price_delimiter, span.date_delimiter {
                font-size: 1.7rem;
                margin: 0px 0px 0px 0px;
                padding-top: 13px;
                padding-bottom: 0px;
                float: left;
            }

/*            &:after { 
                visibility: hidden;
                display: block;
                content: "";
                clear: both;
                height: 0;
            }*/
        }
        
        .amount_section {
            
            position: relative;
            
            &:after {
                content: '€';
                position: absolute;
                bottom: -5px;
                right: -18px;
                font-size: 1.2em;
            }
            
            @media @tablet { 
                input { width: 31px; }
            }
            
            @media @phone_l, @phone {
                input {
                    width: 48px;
                    margin: auto 0.1rem;
                    padding: 0.55rem 0.0rem 0.2rem 0.0rem;
                }
            }
            
            @media screen and (max-width: 350px) {
                input { width: 13vw; }
            }
        }

        
        .date_container { 
            display: flex;
            flex-direction: row; 
            justify-content: space-between;
            align-items: center;
            /*margin-top: 1rem;*/
            .date_label { flex-shrink: 1; padding-right: 1rem; }
            .date_section { 
                flex-shrink: 0; margin-top: 0rem; 
            
                input:nth-child(1), input:nth-child(3) { width: 55px; }
                input:nth-child(5) { width: 75px; }
            }
            
            @media @phone { 
                flex-direction: column;
                align-items: initial;
                .date_section { margin-right: 0; }
                .date_label { margin-top: 0; }
            }
        }
        


        @media (max-width: 485px) {
            .amount_label { width: 100%; }
            .amount_section { 
                #input_amount_1 { margin-left: 0; }
            }
        }



        .recaptcha-outer {

            width: 100%;
            max-width: 260px;
            text-align: center;
            background: #f9f9f9;
            border: 2px solid #f9f9f9;
            .border_radius(0px, 0px, 0px, 0px);
            margin: 0.4rem 0rem 0.2rem 0rem;
            overflow: hidden;
            /*float: right;*/
            align-self: flex-end;

            /*@media @desktop_l, @desktop, @tablet, @phone_l { margin-left: auto; }*/
            @media @phone_l { margin-left: auto; margin-top: 25px; }
            @media @phone   { margin-top: 15px; }

            .recaptcha-inner{
                width: 154px;
                height: 61px;
                overflow: hidden;
                margin: 0 auto;
                margin-top: -20px;
                padding: 0;

                #input_captcha { margin-left: -1px; }
            }

            &.error { border-color: @error_color; }

        }
        
        
        
        .checkboxes {
        
            margin: 1rem auto;

            @media @tablet, @phone_l, @phone {
                margin-bottom: 0.5rem;
            }

            .form-check-label {
                position: relative;
                padding-right: 60px;
                min-height: 45px;
                display: flex;
                align-items: center;
                margin-bottom: 10px;


                /*font-size: 1.1em; line-height: 1.0rem;*/


                input {
                    position: absolute;
                    opacity: 0;
                    top: 0; bottom: 0; right: 0;
                    width: auto; height: auto;
                    cursor: pointer;
                }

                span {
                    position: absolute;
                    top: 0;
                    right: 0;
                    height: 40px;
                    width: 40px;
                    background-image: url('../images/checkbox.png');
                    background-size: 40px;
                }

                input:checked~span {
                    background-position: 0 center;
                }

                input.error~span {
                    background-position: 0 bottom;
                }

                p {
                    display: block;
                    margin-bottom: 0px;
                    margin-top: -3px;
                }
                
                /*
                a {
                    text-decoration: underline;
                    &:hover { color: @gray; }
                }
                */
            }
        }
        
        
        .form_comment {
            margin-top: 1em;
            font-size: 0.75rem !important; line-height: 1.1em;
            text-align: justify;
            color: #000000;
        }
        
        label, .form_comment {
            a { color: #000000; text-decoration: underline; }
        }
        
        
        .participate_btn {
            text-align: center;
            
            @media @desktop_l, @desktop, @tablet {
                align-self: flex-end;
            }
            
            a {
                width: 100%;
                max-width: 280px;
            }
        }
    }
    
    .slogan_mobile {
        position: relative;
        z-index: 2;
        padding: 0 !important;
        img { max-width: 80vw; }
    }
    
    
    
    .subscription {
        margin-top: 4rem;
        color: @gray;
        font-size:  0.9em;
        
        .subscribe_btn { 
            a { 
                font-size: 1.3rem !important; 
                min-width: 100px;
            }
        }
    }
    
    
    
    
    &.out_of_promo {
        
        .out_of_promo_wrapper {
            /*margin-top: 8rem;*/
            
            .container {
                min-height: 330px;
            }
            
            & > .container > .row > div {
                /*padding: 5rem 3rem;*/
            }
            
            .description {
                font-size: 1.7rem;
                line-height: 2rem;
                font-family: "BloggerB";
                
                a {
                    color: @gray;
                    text-decoration: underline;
                }
            }
            
            @media @phone {
                /*margin-top: 20vw;*/
                & > .container > .row > div {
                    padding: 4rem 1rem;
                }
                .description {
                    font-size: 1.5rem; line-height: 1.8rem;
                }
            }
            
        }
        
    }
    
    
    
    .section_delimiter {
        margin-top: -4rem;
        margin-bottom: -2rem;
        
        @media @phone {
            margin-top: -3rem;
            margin-bottom: -1rem;
        }
    }
    
    
    .win_preview_img {
        width: 80%;
        max-width: 300px;
        margin: 2rem auto 0rem auto;
        filter: drop-shadow(2px 5px 10px rgba(0, 0, 0, 0.5));
        
        @media @phone {
            max-width: 100%;
            margin: 2rem auto 0rem auto;
        }
    }
    
}







footer {
    
    /*background-color: @yellow;*/
    
/*    background: url("../images/wooden_boards.jpg") no-repeat center bottom;
    background-size: cover !important;*/
    
    position: absolute;
    left: 0; right: 0;
    bottom: 0px;
    /*height: 130px;*/
    padding-top: 130px;
    z-index: 3;
    
    @media @tablet { padding-top: 170px; }
    @media @phone_l { padding-top: 210px; }
    @media @phone { padding-top: 270px; }
    
    

    font-size: 0.9rem;
    color: #ffffff;
    text-align: left;
    padding-bottom: 1rem;
    
    @media @phone_l, @phone {
        text-align: center;
    }
    
    
    
    .container { 
        max-width: 830px; 
        margin: auto;
        @media @desktop { max-width: 800px; }
        @media @tablet  { max-width: 630px; }
    }
    
    a { 
        color: #ffffff; 
        &#fb_btn, &#mdlz_btn {text-decoration: none;}
        &:hover { color: #ffffff; }
    }
    
    p span { 
        
        &.copyright_d { display: none; }
        &.copyright_m { display: block; }
        
        @media @desktop_l, @desktop {
            &.privacy_btn:after, 
            &.rules_btn:after, 
            &.aboutus_btn:after, 
            &.contacts_btn:after { 
                .menu_delimiter; 
            }
            
            &.cookies_btn:after {
                .newline;
            }
        }

        @media @tablet, @phone_l {
             
            &.aboutus_btn:after, 
            &.contacts_btn:after { 
                .menu_delimiter; 
            }
            
            &.privacy_btn:after, &.cookies_btn:after, &.rules_btn:after {
                .newline;
            }
        }
        
        @media @phone_l {
            &.copyright_m {
                font-size: 0.85rem;
                padding: 0rem; 
                /*padding-bottom: 1rem;*/
            }
        }
        
        @media @phone   { 
            
            &.privacy_btn:after, &.cookies_btn:after, &.rules_btn:after, &.aboutus_btn:after, &.contacts_btn:after, &.terms_btn:after {
                .newline;
            }
            
            /*font-size: 0.9rem;*/ 
            padding: 0 0.5rem; 
            &.copyright_m {
                font-size: 0.85rem;
                padding: 0rem; 
                /*padding-bottom: 1rem;*/
                padding-left: 8px;
                &:before { content:"\000A"; white-space: pre; }
            }
            
        }
    }
    

    &.coming_soon {
        color: @red;
        /*text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);*/
    
        a { 
            color: @red; 
            &:hover { color: @red; }
        }
    }

}

.goto_top_arrow {
    position: fixed;
    bottom: 20px;
    right: 10px;
    z-index: 100;
    max-width: 40px;
    opacity: 0.5;
    .transition(opacity, 0.2s);
    
    &:hover { opacity: 1; }
    
    @media @phone {
        bottom: 10px;
        max-width: 35px;
    }
}



.participate_btn, .subscribe_btn {
    
    a, button {
        position: relative;
        display: block;
        width: 100%;
        max-width: 300px;
        padding: 0.5rem 1rem 0.3rem 1rem;
        /*font-family: "BloggerN";*/
        font-size: 2em;
        font-weight: 800;
        color: @yellow_darker;
        background-color: @red;
        .border_radius(8px, 8px, 8px, 8px);
        border-color: transparent;
        margin: auto auto 0.3rem auto;
        /*min-width: 250px;*/
        z-index: 1;
        .transition(background-color, 0.2s);
        transition-property: color, background-color !important;
        text-decoration: none;
        
        &:hover {
            text-decoration: none;
            color: @yellow_darker;
            background-color: @red_darker;
            cursor: pointer;
        }
        
        @media (max-width: 400px) {
            display: block;
            padding: 0.4rem 1rem 0.1rem 1rem;
        }
        
        &.smaller {
            font-size: 1.4em;
        }
    }
    span { 
        display: block; 
        font-family: 'Montserrat';
        font-size: 0.75rem;
        line-height: 1rem;
        color: #000000;
    }
    
    /*
    @media @phone { 
        width: 100%;
        max-width: 250px; 
        margin: auto;
    }
    */
    
    &.yellow {
        a {
            color: @red;
            background-color: @yellow;
            
            &:hover {
                color: @yellow;
                background-color: @red_darker;
            }
        }
        
        span { color: #ffffff; }
    }
    
    &.red {
        a {
            color: @yellow;
            background-color: @red;
            
            &:hover {
                color: @red;
                background-color: @yellow;
            }
        }
        span { color: @red; }
    }
    
    &.red_white {
        a {
            color: #ffffff;
            background-color: @red;
            
            &:hover {
                color: @red;
                background-color: #ffffff;
            }
        }
        span { color: @red; }
    }
}




.text_border_2 {
    text-shadow: rgb(0, 98, 198) 2px 0px 0px, rgb(0, 98, 198) 1.75517px 0.958851px 0px, rgb(0, 98, 198) 1.0806px 1.68294px 0px, rgb(0, 98, 198) 0.141474px 1.99499px 0px, rgb(0, 98, 198) -0.832294px 1.81859px 0px, rgb(0, 98, 198) -1.60229px 1.19694px 0px, rgb(0, 98, 198) -1.97999px 0.28224px 0px, rgb(0, 98, 198) -1.87291px -0.701566px 0px, rgb(0, 98, 198) -1.30729px -1.51361px 0px, rgb(0, 98, 198) -0.421592px -1.95506px 0px, rgb(0, 98, 198) 0.567324px -1.91785px 0px, rgb(0, 98, 198) 1.41734px -1.41108px 0px, rgb(0, 98, 198) 1.92034px -0.558831px 0px;
}

.text_border_3 {
    text-shadow: rgb(0, 98, 198) 3px 0px 0px, rgb(0, 98, 198) 2.83487px 0.981584px 0px, rgb(0, 98, 198) 2.35766px 1.85511px 0px, rgb(0, 98, 198) 1.62091px 2.52441px 0px, rgb(0, 98, 198) 0.705713px 2.91581px 0px, rgb(0, 98, 198) -0.287171px 2.98622px 0px, rgb(0, 98, 198) -1.24844px 2.72789px 0px, rgb(0, 98, 198) -2.07227px 2.16926px 0px, rgb(0, 98, 198) -2.66798px 1.37182px 0px, rgb(0, 98, 198) -2.96998px 0.42336px 0px, rgb(0, 98, 198) -2.94502px -0.571704px 0px, rgb(0, 98, 198) -2.59586px -1.50383px 0px, rgb(0, 98, 198) -1.96093px -2.27041px 0px, rgb(0, 98, 198) -1.11013px -2.78704px 0px, rgb(0, 98, 198) -0.137119px -2.99686px 0px, rgb(0, 98, 198) 0.850987px -2.87677px 0px, rgb(0, 98, 198) 1.74541px -2.43999px 0px, rgb(0, 98, 198) 2.44769px -1.73459px 0px, rgb(0, 98, 198) 2.88051px -0.838247px 0px;
}

.text_border_5 {
    text-shadow: rgb(0, 98, 198) 5px 0px 0px, rgb(0, 98, 198) 4.90033px 0.993347px 0px, rgb(0, 98, 198) 4.60531px 1.94709px 0px, rgb(0, 98, 198) 4.12668px 2.82321px 0px, rgb(0, 98, 198) 3.48353px 3.58678px 0px, rgb(0, 98, 198) 2.70151px 4.20736px 0px, rgb(0, 98, 198) 1.81179px 4.6602px 0px, rgb(0, 98, 198) 0.849836px 4.92725px 0px, rgb(0, 98, 198) -0.145998px 4.99787px 0px, rgb(0, 98, 198) -1.13601px 4.86924px 0px, rgb(0, 98, 198) -2.08073px 4.54649px 0px, rgb(0, 98, 198) -2.94251px 4.04248px 0px, rgb(0, 98, 198) -3.68697px 3.37732px 0px, rgb(0, 98, 198) -4.28444px 2.57751px 0px, rgb(0, 98, 198) -4.71111px 1.67494px 0px, rgb(0, 98, 198) -4.94996px 0.7056px 0px, rgb(0, 98, 198) -4.99147px -0.291871px 0px, rgb(0, 98, 198) -4.83399px -1.27771px 0px, rgb(0, 98, 198) -4.48379px -2.2126px 0px, rgb(0, 98, 198) -3.95484px -3.05929px 0px, rgb(0, 98, 198) -3.26822px -3.78401px 0px, rgb(0, 98, 198) -2.4513px -4.35788px 0px, rgb(0, 98, 198) -1.53666px -4.75801px 0px, rgb(0, 98, 198) -0.560763px -4.96846px 0px, rgb(0, 98, 198) 0.437495px -4.98082px 0px, rgb(0, 98, 198) 1.41831px -4.79462px 0px, rgb(0, 98, 198) 2.34258px -4.41727px 0px, rgb(0, 98, 198) 3.17346px -3.86382px 0px, rgb(0, 98, 198) 3.87783px -3.15633px 0px, rgb(0, 98, 198) 4.4276px -2.32301px 0px, rgb(0, 98, 198) 4.80085px -1.39708px 0px, rgb(0, 98, 198) 4.98271px -0.415447px 0px;
}


.clear { clear: both; }