


:root {
    --blue: #13BFE1;
    --yellow: #FFCD00;
    --red: #FF4230;
    --light-text: #FEF0D1;
    --black: #131313;
    --white: #fff;
    --grey: #cecece;

    --columns: 12;
    --column-gap: 10px;
    --container: 1220px;
    --oneColumn: calc(calc(var(--container) / var(--columns) ) - var(--column-gap));
}

strong{
    font-weight: bold;
}

body{
    font-family: "KyivType";
    background-color: var(--light-text);
}

.col-12{
    grid-template-columns: repeat(var(--columns), 1fr);
}



h3{
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 18px;
}
p{
    font-size: 14px;
}

.container{
    max-width: var(--container);
    margin: 0 auto;
    width: 100%;
}
.grid.col-12{
    column-gap: var(--column-gap);
}

.heading{
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    text-transform: uppercase;
}

.bottom_line{
    padding: 0 0 16px;
    border-bottom: 1px solid var(--black);
}

.mb-16{
    margin-bottom: 16px;
}

.mb-32{
    margin-bottom: 32px;
}

.mt-16{
    margin-top: 16px;
}

.mt-32{
    margin-top: 32px;
}

.blueBg{
    background-color: var(--blue);
}

.blueBg .heading{
    color: var(--light-text);
}

.justifyBetween,
.justifybetween {
    justify-content: space-between;
}
.justifyCenter{
    justify-content: center;
}

.padding_130{
    padding: 130px 0 0;
}

.margin_130{
    margin: 130px 0 0;
}

.m_b_32{
    margin-bottom: 32px;
}

.padding_72{
    padding: 72px 0 0;
}
.padding_b_130{
    padding-bottom: 130px;
}

/* HEADER */

header {
    background-color: rgb(19 191 225 / .8);
    padding: 20px 0 12px;
    position: fixed;
    z-index: 5000;
    width: 100%;
    transition: all .4s;
}
header.active{
    background-color: rgb(19 191 225);
}
header .header__logo__wrap img{
    transition: all .4s;
}
header.active .header__logo__wrap img {
    height: 60px;
    width: auto;
}
.header__logo__wrap{
    grid-column: 1 / 3;
}
.header__about_text{
    grid-column: 3 / 7;
    color: var(--light-text);
    font-size: 20px;
}
.header__mobile_icon__wrap{
    grid-column: 12 / 13;
    justify-content: end;
}

.header__mobile_icon{
    position: relative;
    height: 33px;
    width: 45px;
    cursor: pointer;
}
.header__mobile_icon span{
    width: 100%;
    height: 7px;
    display: block;
    background-color: var(--light-text);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    border-radius: 5px;
    transition: all .4s;
}
.header__mobile_icon span:nth-of-type(1){
    transform: translate(-50%, 0);
    top: 0;
}
.header__mobile_icon span:nth-of-type(3){
    transform: translate(-50%, -100%);
    top: 100%;
}

body.mobile_icon_opened .header__mobile_icon span:nth-of-type(2){
    width: 0;
}

body.mobile_icon_opened .header__mobile_icon span:nth-of-type(1){
    transform: translate(-50%, -50%) rotate(45deg);
    top: 50%;
}

body.mobile_icon_opened .header__mobile_icon span:nth-of-type(3){
    transform: translate(-50%, -50%) rotate(130deg);
    top: 50%;
}

/* .header__socials{
    grid-column: 9 / 12;
    column-gap: 14px;
} */

.header__socials {
    grid-column: 8 / 10;
    column-gap: 14px;
}
.language__switcher{
    grid-column: 11 / 12;
}
.menu__swither {
    grid-column: 12 / 13;
}

.language__switcher .menu{
    width: 100%;
    justify-content: end;
}

.language__switcher a{
    font-size: 24px;
    text-transform: uppercase;
    color: var(--light-text);
}
.language__switcher li:first-of-type{
    margin: 0 15px 0 0;
    padding: 0 15px 0 0;
    border-right: 3px solid var(--light-text);
    position: relative;
}

.language__switcher li:not(.current_page_item) a{
    opacity: .6;
}


.header__socials a{
    transition: all .4s;
}
.header__socials a:hover{
    opacity: .5;
}
/* HEADER END */



/* EVENTS */


.events h2{
    color: var(--black);
}

.line h2{
    font-weight: bold;
    grid-column: 1 / 4;
    grid-row: 1;
    color: var(--black);
}
.line.reverse h2,
.line__image__wrap{
    grid-column: 9 / 12;
    grid-row: 1;
}

.line.reverse .line__image__wrap{
    grid-column: 2 / 5;
    grid-row: 1;
}

.image__wrap{
    display: block;
}
.image__wrap img{
    width: 100%;
    height: auto;
    display: block;
}

.image__wrap.dice__line{
    position: relative;
    display: inline-flex;
}



.image__wrap.dice__line::after,
.image__wrap.dice__line::before{
    content: '';
    width: calc(calc(var(--oneColumn) * 6) + calc(var(--column-gap) * 5));
    height: 10px;
    background-color: var(--black);
    position: absolute;
    top:50%;
    left: -30px;
    transform: translate(-100%, -50%);
}

.image__wrap.dice__line::after{
    left: unset;
    right: -30px;
    transform: translate(100%, -50%);
    width: calc(calc(var(--oneColumn) * 2) + calc(var(--column-gap) * 1));
}

.line.reverse .image__wrap.dice__line::after{
    left: unset;
    right: -30px;
    transform: translate(100%, -50%);
    width: calc(calc(var(--oneColumn) * 4) + calc(var(--column-gap) * 3));
}


.line.reverse .image__wrap.dice__line.long::after {
    width: calc(calc(var(--oneColumn)* 8) + calc(var(--column-gap)* 7));
}

.line.reverse .image__wrap.dice__line::before{
    top:50%;
    left: -30px;
    transform: translate(-100%, -50%);
    width: calc(calc(var(--oneColumn) * 1.5) + calc(var(--column-gap) * .5));
}

.image__wrap.dice__line.white__line::after,
.image__wrap.dice__line.white__line::before{
    background-color: var(--light-text);
}

.events__cards{
    column-gap: 112px;
}

.events__card {
    border-radius: 20px;
    border: 12px solid var(--black);
    background: var(--white);
    color: var(--black);
    padding: 16px;
    /* min-height: 508px; */
    justify-content: flex-end;
    position: relative;
    margin: 0 0 64px;
}

.events__card__text{
    height: 100%;
    padding: 32px 22px;
    border-radius: 20px;
    border: 12px solid var(--black);
}

.events__card__text .image__wrap{
    margin: 0 0 32px;
    border-radius: 8%;
    overflow: hidden;
}

.events__card__text p{
    font-size: 16px;
    line-height: 1.5;
}

.events__card .events__card__corner{
    position: absolute;
    top: 0;
    right: 0;
    padding: 15px;
    border-radius: 50%;
    border: 12px solid var(--black);
    border-top-color: transparent;
    border-right-color: transparent;
    background-color: var(--white);
}

.events__card::before,
.events__card::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 20px;
}
.events__card:nth-of-type(1)::before{
    background-color: var(--red);
    transform: translate(10%, 10%) rotate(-6deg);
}
.events__card:nth-of-type(1)::after{
    z-index: -2;
    background-color: var(--yellow);
    transform: translate(10%, -10%) rotate(5deg);
}

.events__card:nth-of-type(2)::before{
    background-color: var(--yellow);
    transform: translate(5%, 8%) rotate(4deg);
}
.events__card:nth-of-type(2)::after{
    z-index: -2;
    background-color: var(--blue);
    transform: translate(10%, -7%) rotate(8deg);
}

.events__card:nth-of-type(3)::before{
    background-color: var(--red);
    transform: translate(0%, -5%) rotate(-6deg);
}
.events__card:nth-of-type(3)::after{
    z-index: -2;
    background-color: var(--blue);
    transform: translate(-10%, 10%) rotate(5deg);
}

.events__card:nth-of-type(5)::before{
    background-color: var(--red);
    transform: translate(10%, 10%) rotate(-6deg);
}
.events__card:nth-of-type(5)::after{
    z-index: -2;
    background-color: var(--blue);
    transform: translate(10%, -10%) rotate(5deg);
}

.events__card:nth-of-type(6)::before{
    background-color: var(--yellow);
    transform: translate(5%, 8%) rotate(4deg);
}
.events__card:nth-of-type(6)::after{
    z-index: -2;
    background-color: var(--red);
    transform: translate(10%, -7%) rotate(8deg);
}

.events__card:nth-of-type(4)::before{
    background-color: var(--yellow);
    transform: translate(0%, -5%) rotate(-6deg);
}
.events__card:nth-of-type(4)::after{
    z-index: -2;
    background-color: var(--blue);
    transform: translate(-10%, 10%) rotate(5deg);
}
/* EVENTS END */

/* TICKETS */
.program_button__wrap,
.tickets__buy_button .tickets__buy_button__wrap{
    grid-column: 4 / 10;
    position: relative;
}

/* OLD */

.program_button__wrap a,
.tickets__buy_button .tickets__buy_button__wrap button{
    appearance: none;
    background-image: url(/wp-content/uploads/2023/07/button_sprites.svg);
    border: unset;
    min-height: 176px;
    width: 100%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center 0;
    color: var(--white);
    font-size: 48px;
    background-color: var(--light-text);
    cursor: pointer;
    font-weight: bold;
    font-family: inherit;
}
.tickets__buy_button button:hover{
    background-position: center -176px;
}

.tickets__buy_button button:focus{
    background-position: center -352px;
}

.tickets__buy_button .tickets__buy_button__wrap::before,
.tickets__buy_button .tickets__buy_button__wrap::after{
    content: '';
    width: calc(calc(var(--oneColumn) * 4) + calc(var(--column-gap) * 3));
    height: 78px;
    background-image: url(/wp-content/uploads/2023/07/leftDice.svg);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-120%, -50%);
    background-repeat: no-repeat;
    background-position: center left;
    background-size: contain;
}

.tickets__buy_button .tickets__buy_button__wrap::after{
    background-image: url(/wp-content/uploads/2023/07/rightDice.svg);
    left: unset;
    right: 0;
    transform: translate(120%, -50%);
    background-position: center right;
}
/* OLD END */

.tickets__buy_button .tickets__buy_button__wrap {
    grid-column: 5 / 9;
    position: relative;
}

a.button{
    min-height: 13vh;
    color: transparent;
    background-image: url(/site/templates/assets/default.svg);
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
}
a.button:hover{
    background-image: url(/site/templates/assets/clicked.svg);
}

html[lang="en"] a.button{
    background-image: url(/site/templates/assets/default-en.svg);
}
html[lang="en"] a.button:hover{
    background-image: url(/site/templates/assets/clicked-en.svg);
}



body::after{
    position:absolute; width:0; height:0; overflow:hidden; z-index:-1;
    content:url(/site/templates/assets/default.svg) url(/site/templates/assets/clicked.svg) url(/site/templates/assets/default-en.svg) url(/site/templates/assets/clicked-en.svg);
 }


.tickets_info__box{
    color: var(--black);
    border-radius: 20px;
    border: 10px solid var(--black);
    background: var(--white);
    padding: 50px 36px 30px;
    position: relative;
}

.tickets_info .grid:not(.line){
    column-gap: 74px;
}
.tickets_info__box h2{
    font-size: 25px;
    text-align: center;
    font-weight: bold;
}
.tickets_info__box h2.price{
    font-size: 32px;
}
.tickets_info__box ul {
    font-size: 14px;
    margin: 16px 0 6px;
    list-style: disc;
    line-height: 1.5;
    padding: 0 16px;
}

.tickets_info__box ul li{
    position: relative;
}


.tickets_info__box.special {
    grid-column: 2 / 3;

}


.tickets_info__box::before{
    content: '';
    width: 66px;
    height: 66px;
    background-image: url(/wp-content/uploads/2023/08/d2.svg);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -60%);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
.tickets_info__box:nth-of-type(2):before{
    background-image: url(/wp-content/uploads/2023/08/d6.svg);
    width: 66px;
    height: 66px;
}
.tickets_info__box:nth-of-type(3):before{
    background-image: url(/wp-content/uploads/2023/08/d10.svg);
    width: 66px;
    height: 66px;
}
.tickets_info__box:nth-of-type(4):before{
    background-image: url(/wp-content/uploads/2023/07/price_3.svg);
    width: 66px;
    height: 66px;
}

.gamers .tickets_info__box::before{
    background-image: url(/wp-content/uploads/2023/07/price_1.svg);
}
.gamers .tickets_info__box:nth-of-type(2)::before{
    background-image: url(/wp-content/uploads/2023/08/d8.svg);
}
.gamers .tickets_info__box:nth-of-type(3)::before{
    background-image: url(/wp-content/uploads/2023/08/d12.svg);
}
.gamers .tickets_info__box:nth-of-type(4)::before{
    width: 110px;
    height: 66px;
    background-image: url(/wp-content/uploads/2023/08/d20.svg);
}

.tickets_info__box.special::before {
    width: 132px;
    height: 66px;
    background-image: url(/wp-content/uploads/2023/08/d100.svg);
}


.tickets_info__box::after{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background-color: var(--blue);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 20px;
    transform: translate(10%, 10%);
}
.tickets_info__box:nth-of-type(2)::after{ background-color: var(--yellow);}
.tickets_info__box:nth-of-type(3)::after{ background-color: var(--red);}

.yellow__line{
    border-bottom: 2px solid var(--yellow);
}


.tickets_info__box p{
    font-size: 22px;
    text-align: center;
    margin: 32px 0;
}

.tickets_info .grid.line h2{
    grid-column: 1 / 6;
}
.tickets_info .grid.line p {
    grid-column: 1 / 9;
    grid-row: 2;
    font-size: 32px;
    color: var(--black);
    margin: 32px 0 0;
}

.tickets_info .grid.line .image__wrap.dice__line::before {
    width: calc(calc(var(--oneColumn) * 3.5) + calc(var(--column-gap) * 5));
}

/* TICKETS END */

/* PROGRAM */

.news .line .image__wrap.dice__line::before,
.program .line .image__wrap.dice__line::before{
    width: calc(calc(var(--oneColumn) * 5) + calc(var(--column-gap) * 4));
}

.program_list {
    column-gap: calc(var(--column-gap) * 6.4);
}

.program_list h2{
    font-size: 25px;
    font-weight: bold;
    margin: 0 0 52px;
    color: var(--black);
    text-transform: uppercase;
}

.program_button__wrap a{
    color: var(--black);
    min-height: 136px;
    font-size: 40px;
    width: 504px;
    margin: 0 auto;
    background-image: url(/wp-content/uploads/2023/07/program.svg);
    background-color: var(--blue);
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.program_button__wrap a:hover {
    background-position: center -136px;
}
.program_button__wrap a:focus {
    background-position: center -272px;
}

.program_list__item{
    padding: 48px 24px;
    background-color: var(--light-text);
    border-radius: 20px;
    border: 12px solid var(--black);
}
.program_list__item strong{
    font-weight: bold;
    color: var(--black);
    text-transform: uppercase;
    font-size: 18px;
}

.program_list__item ul li{
    margin: 0 0 24px;
    font-size: 16px;
}

.program_list__item ul li:last-of-type,
.program_list__item strong:not(:last-of-type){
    margin: 0 0 24px;
    display: block;
}



/* PROGRAM END */

/* donations */
    .donations__group .image__wrap_sp,
    .donations__group .image__wrap {
        grid-column: 1 / 6;

    }
    .donations__group .donations__text {
        grid-column: 7 / 13;

    }

    .donations__group .donations__text p{
        color: var(--light-text);
        text-align: justify;
        font-size: 24px;
        font-weight: 500;
        line-height: 1.5;
    }
    .donations__group .donations__text h3{
        color: var(--light-text);
        font-size: 28px;    
    }
/* donations end */


/* MUSICIANS */
.musicians .donations__group .image__wrap {
    grid-column: 2 / 5;
    border-radius: 20px;
    overflow: hidden;
}
.musicians .donations__group .donations__text {
    grid-column: 6 / 12;
}
.musicians .line.reverse h2 {
    grid-column: 9 / 13;
}

.musicians,
.musicians .donations__group:last-of-type .image__wrap{
    margin: 0 0 64px;
}



/* MUSICIANS END */

/* NEWS */
.news__list__item h3{
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
    padding: 23px 38px 0 38px;
    color: var(--yellow);
}
.news__list__item p{
    color: var(--black);
    text-align: justify;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.5;
    padding: 6px 38px 0 38px;
}

.news__list__item__image{
    border-radius: 30px;
    border: 10px solid var(--black);
    background: var(--light-text);
    min-height: 340px;
}
.news__list{
    column-gap: calc(var(--column-gap) * 6);
}
.news__list__item:not(:nth-last-of-type(1), :nth-last-of-type(2)) {
    margin: 0 0 72px;
}
/* NEWS END */


/* partners */
.partners{
    column-gap: 32px;
}

.partners__wrap .heading{ 
    color: var(--black);
}

.partners .image__wrap{
    margin: 0 0 32px;
}

.partners__wrap .image__wrap.dice__line::before {
    width: calc(calc(var(--oneColumn) * 5) + calc(var(--column-gap) * 4));
}


.line__center h2{
    grid-column: 5 / 9;
    grid-row: 1;
    text-align: center;
}

.about .line__center h2{
    grid-column: 3 / 11;
    color: var(--black);
}

.line__center .image__wrap.dice__line:nth-of-type(1){
    grid-column: 2 / 4;
}

.line__center .image__wrap.dice__line:nth-of-type(2){
    grid-column: 10 / 12;
}

.line__center .image__wrap.dice__line:nth-of-type(1)::after,
.line__center .image__wrap.dice__line:nth-of-type(2)::before{
    width: calc(calc(var(--oneColumn) * 1) + calc(var(--column-gap) * 0));
}

.line__center .image__wrap.dice__line:nth-of-type(2)::after,
.line__center .image__wrap.dice__line:nth-of-type(1)::before{
    width: calc(calc(var(--oneColumn) * 2) + calc(var(--column-gap) * 1));
}
/* partners END*/


/* FOOTER */
footer{
    padding: 72px 0;
}

footer .footer__logo {
    grid-column: 1 / 3;
}

footer .footer__logo .header__socials{
    margin: 40px 0 0;
}

footer .menu-menu-container{
    /* grid-column: 4 / 8; */
}
footer .liqpay {
    /* grid-column: 1 / 12; */
    margin-top: 32px;
}

footer ul.menu {
    display: flex;
    flex-flow: row wrap;
}


footer ul.menu li a{
    text-decoration: underline;
}

.tickets_return,
footer ul.menu li a,
footer .liqpay h2{
    font-size: 20px;
    font-weight: 500;
    color: var(--black);
    margin: 8px 0 16px;
}
footer .liqpay img:not(:last-of-type){
    margin: 0 16px 0 0;
}


/* FOOTER END */

/* FIRST BLOCK */

.home__main_block{
    height: 100%;
}

.ww__block{
    position: relative;
    /* min-height: calc(100vh - 154px); */
    min-height: calc(100vh - 0px);
    overflow: hidden;
}
.ww__block__promo {
    grid-column: 1 / 9;
    padding: 238px 0 0;
}
.ww__block__promo p,
.ww__block__promo h1{
    color: var(--yellow);
    /* font-size: 110px; */
    font-size: 5.72vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 1.1px;
    display: inline-block;
    position: relative;
    z-index: 1;
}
.ww__block__promo p{
    color: var(--white);
    /* font-size: 60px; */
    font-size: 3.125vw;
    font-weight: 300;
    letter-spacing: 0.6px;
    margin: 16px 0 0;
}
.ww__block .image__wrap {
    grid-column: 10 / 13;
    grid-row: 1;
    align-self: center;
}
.ww__block img.main__bg{
    transform: scale(1.05);
    width: auto;
    height: 100vh;
}

.ww__block .container__wrap{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.ww__block__promo h1::before{
    content: '';
    border-radius: 20px;
    background: rgba(102, 230, 255, 0.15);
    backdrop-filter: blur(20px);
    width: 120%;
    height: 120%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

/* FIRST BLOCK END */


/* footer{
    margin: 130px 0 0;
} */


/* DEFAULT*/

.page-template-default li,
.page-template-default p {
    font-size: 18px;
    color: var(--black);
    line-height: 1.5;
    margin: 0 0 16px;
}
.page-template-default .content {
    margin: 130px 0 0;
}

.page-template-default .content ol,
.page-template-default .content ul {
    list-style: auto;
    list-style-position: inside;
}

/* DEFAULT END */



.textBlock {
    text-align: center;
    grid-column: 3 / 11;
    line-height: 1.5;
}

.partnership h2,
.about_event h2,
.textBlock h2{
    text-transform: uppercase;
    margin: 0 0 24px;
    font-weight: bold;
    font-size: 40px;
    color: var(--blue);
}

.partnership p,
.donations__wrap .grid.col-2 p,
.textBlock p{
    font-size: 20px;
    color: var(--black);
}
.second_block .socials{
    grid-column: 5 / 9;
    border: 4px solid var(--black);
    border-radius: 16px;
    padding: 48px 32px;
    margin: 42px 0 0;
    position: relative;
}

.second_block .socials::before,
.second_block .socials::after{
    content: '';
    background-image: url(/site/templates/assets/polygon_4.svg);
    width: 34px;
    height: 34px;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -19px;
    left: 34px;
}
.second_block .socials::after{
    left: unset;
    right: 34px;
}
.grid.col-2 .textBlock{
    text-align: left;
    grid-column: 1 / 2;
}
.grid.col-2 .textBlock h2{
    color: var(--light-text);
}
.grid.col-2 .textBlock p{
    color: var(--white);
}

.grid.col-2 .video{
    grid-column: 2 / 3;
    position: relative;
}
.grid.col-2 .video video{
    width: 100%;
    height: auto;
    border: 8px solid var(--black);
    border-radius: 16px;
}
.grid.col-2 .video::after{
    content: '';
    display: block;
    position: absolute;
    top: -24px;
    right: 60px;
    width: 43px;
    height: 48px;
    background-image: url(/site/templates/assets/heart.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.third_block .grid.col-2{
    padding: 42px 0 72px;
}

.about_event h2{
    text-align: center;
    margin: 72px 0;
}
.about_event__items{
    column-gap: 16px;
}
.about_event__items p{
    padding: 48px 12px 12px;
    border: 8px solid var(--black);
    border-radius: 16px;
    text-align: center;
    background-color: var(--white);
    font-size: 32px;
    color: var(--black);
    font-weight: 500;
    line-height: 1.3;
    position: relative;
}


.about_event__items p::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 50%;
    width: 66px;
    height: 66px;
    transform: translate(50%, -50%);
    background-image: url(/site/templates/assets/Vector-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.about_event__items p:nth-of-type(2)::after{
    background-image: url(/site/templates/assets/Vector-2.svg);
}
.about_event__items p:nth-of-type(3)::after{
    background-image: url(/site/templates/assets/Vector-3.svg);
}
.about_event__items p:nth-of-type(4)::after{
    background-image: url(/site/templates/assets/Vector-4.svg);
}

.about_event__items p strong{
    font-size: 40px;
    font-weight: bold;
    line-height: 1.5;
}


.donations__wrap .image__wrap img{
    width: 100%;
    height: auto;
    border: 8px solid var(--black);
    border-radius: 16px;
    max-width: 557px;
}
.donations__wrap .grid.col-2 p{
    color: var(--white);
    line-height: 1.5;
}

.donations__wrap .grid.col-2 p strong{
    font-size: 40px;
    margin: 16px 0 0;
    display: block;
}

.donations__wrap .grid.col-2{
    row-gap: 48px;
    padding: 48px 0 64px;
}

.donations__logos{
    justify-content: space-evenly;
    color: var(--white);

}
.donations__logos .flex.flexColumn img{
    margin: 0 auto;
}
.donations__logos .flex.flexColumn span{
    font-size: 16px;
    font-weight: 400;
    margin: 8px 0;
}

.partnership{
    padding: 92px 0 72px;
}

.button__white,
.partnership h2{
    color: var(--black);
}
.partnership p{
    margin: 0 0 64px;
}

.button__white{
    font-weight: bold;
    font-size: 20px;
    border: 8px solid var(--black);
    border-radius: 16px;
    text-align: center;
    padding: 12px 80px;
    background-color: #FFDD93;
    position: relative;
    height: 48px;
}
.button__white::after{
    content: '';
    display: block;
    position: absolute;
    bottom: -32px;
    left: -8px;
    width: 100%;
    height: 100%;
    border: 8px solid var(--black);
    border-radius: 16px;
    background-color: #F7C453;
    z-index: -1;

}

.tickets__buy_button,
.slider__wrap{
    padding:  0 0 136px;
}

.tickets__buy_button.no_padding{
    padding: 0;
}

.slider{
    position: relative;
}
.slider .arrow{
    content: '';
    position: absolute;
    top: 50%;
    left: -40px;
    width: 48px;
    height: 54px;
    background-image: url(/site/templates/assets/arrow.svg);
    transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}
.slider .arrow.next-arrow{
    left: unset;
    right: -40px;
    transform: translateY(-50%) rotate(180deg);
}

.tickets__buy_button__header__wrap{
    grid-column: 8 / 10;
}
.tickets__buy_button__header__wrap .tickets__buy_button__wrap{
    width: 100%;
}

.tickets__buy_button__header__wrap .tickets__buy_button__wrap a {
    min-height: unset;
    width: 100%;
    height: 60px;
}

.slider .arrow.slick-disabled{
    display: none !important;
}

.slider .image__wrap{
    margin: 0 24px;
    border: 8px solid var(--black);
    border-radius: 16px;
}

.slider .slick-list {
    margin: 0 -40px;

}

.slider:not(.slick-initialized) .image__wrap{ display: none; }
.slider:not(.slick-initialized) .image__wrap:first-of-type{ display: flex; width: 416px; opacity: 0;}

.main_body {
    min-height: calc(100vh - 362px);
}

#register label{
    display: flex;
    flex-flow: column;
    margin: 0 0 16px;
}
#register label[for="master"]{
    flex-flow: row;
    justify-content: flex-start;
    align-items: center;
}
#register label[for="master"] input{
    margin: 0 0 0 16px;
}

#register label p{
    margin: 0 0 16px;
}


/* .button__white:hover{

}
.button__white:hover:after{

} */

.side__socials{
    position: fixed;
    left: 32px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 100;
}
.side__socials a:not(:last-of-type){
    display: block;
    margin: 0 0 16px;
}

.side__socials a img{
    border-radius: 12px;
    overflow: hidden;
    border: solid 2px var(--blue);
}


/* TICKETS */

.gap_42{
    gap: 42px;
}
h2.event-title,
p.event-title,
.event-title p,
.product h2{
    font-size: 22px;
    font-weight: bold;
    color: var(--black);
    padding: 12px 8px;
}

h2.event-title{
    font-size: 34px;
}


p.event-title {
    font-size: 18px;
}


.tickets {
    margin: 32px 0 64px;
}

.tickets .image__wrap.no_quantity,
.tickets .image__wrap.low_quantity{
    position: relative;
}

.tickets .image__wrap.no_quantity::after,
.tickets .image__wrap.low_quantity::after {
    display: block;
    content: 'Залишилось менше 5 квитків!';
    position: absolute;
    top: -10px;
    right: -20px;
    width: 40%;
    background-color: var(--red);
    color: var(--white);
    font-size: 14px;
    padding: 6px 8px;
    border-radius: 8px;
    font-weight: 500;
    text-align: center;
}
.tickets .image__wrap.no_quantity::after{
    content: 'Усі квитки продано';
}

.tickets .product > .flex.flexColumn{
    height: 100%;
}


.tickets:not(:last-of-type){
    padding: 0 0 64px;
    border-bottom: 2px solid var(--black);
}

.product p {
    color: var(--black);
    font-size: 16px;
    padding: 8px 8px;
}

.teckers-promo-adm .to_checkout{
    margin-top: 100px;
}

.promocode__button,
.compost__button,
.payment__button,
.buy__button{
    padding: 10px 16px;
    background-color: var(--yellow);
    text-transform: uppercase;
    color: var(--black);
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
}

.payment__button:hover,
.buy__button:hover{
    opacity: .5;
}

.cart{
    position: fixed;
    top: 232px;
    min-width: 110px;
    height: 70px;
    background-color: var(--blue);
    color: var(--black);
    padding: 4px 4px;
    cursor: pointer;
    right: -100%;
    transition: right .4s;
}
.cart img{
    width: 28px;
    margin: 0 0 8px;
}
.cart span{
    font-size: 12px;
    font-weight: 500;
    color: #fff;
}

.cart.filled {
    right: 0;
}

.payment{

}

.checkout_form,
.payment__inner{
    position: fixed;
    width: 30vw;
    height: 100vh;
    top: 0;
    right: -100%;
    background-color: var(--white);
    z-index: 10000;
    transition: all .4s;
}
.payment__inner{
    width: 70vw;
}


.payment__inner .personal_data, .payment__inner .to_checkout, .payment__inner .cart_results {
    padding: 60px 42px;
    width: calc(40vw - 84px);
}
.payment__inner .cart_results,
.payment .checkout_form__inner{
    padding: 60px 42px; 
}


.payment__inner .cart_results,
.payment__inner .personal_data{
    padding-bottom: 0px;
}

.payment .checkout_form__inner h2{
    font-size: 26px;
    margin: 32px 0;
    color: var(--black);
    line-height: 1.5;
}

.payment.opened .back{
    position: fixed;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, .7);
    top: 0;
    left: 0;
    z-index: 10000;
    backdrop-filter: blur(3px);
}

.payment.opened .payment__inner {
    right: -30vw;
}

.payment.opened.checkout_opened .payment__inner {
    right: 0;
    z-index: 9999;
}



.cart-table .grid.col-5 {
    gap: 16px;
    grid-template-columns: 50px 1fr 50px 100px auto;
    margin: 8px 0;
    padding: 0 0 12px;
    border-bottom: 1px solid var(--grey);
}
#full_price{
    font-size: 20px;
    font-weight: 500;
    color: var(--black);
}
.remove-item{
    cursor: pointer;
}

.payment.opened.checkout_opened .checkout_form{
    right: 0;
}

.personal_data label{
    margin: 16px 8px 0;
}
.personal_data label span{
    font-size: 14px;
    font-weight: 500;
    color: var(--black);
    display: block;
    margin: 4px 4px 8px;
}

.personal_data input {
    padding: 8px;
    appearance: none;
    border: 2px solid var(--black);
    border-radius: 8px;
}
.personal_data input.error{
    border-color: var(--red);
}

.personal_data label:not(:last-of-type){
    margin-bottom: 16px;
}


body.paymentOpened{
    height: 100vh;
    overflow: hidden;
}

body.paymentOpened #content {
    min-height: unset;
}


body.qrscaner-page #content {
    min-height: calc(100vh - 0px);
}



.loading-bar {
    width: 130px;
    height: 5px;
    margin: 50px 0;
    border-radius: 2px;
    background-color: #fff;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transform: rotateY(0);
    transition: transform .3s ease-in;
}
  .blue-bar {
    height: 100%;
    width: 68px;
    position: absolute;
    transform: translate(-34px);
    background-color: #0a66c2;
    border-radius: 2px;
    animation: initial-loading 1.5s ease infinite
  }
  @keyframes initial-loading {
    0% {
      transform: translate(-34px)
    }
  
    50% {
      transform: translate(96px)
    }
  
    to {
      transform: translate(-34px)
    }
  }



/* TICKETS END */

.login_personal_page a{
    color: #fff;
    text-decoration: underline;
    display: inline;
}
.login_personal_page{
    text-align: center;
    font-size: 24px;
}


.page-personal h2{
    font-size: 28px;
}


.google-login-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: white;
    color: #444;
    padding: 10px 16px;
    border-radius: 4px;
    border: 1px solid #ddd;
    font-family: Arial, sans-serif;
    font-size: 14px;
    text-decoration: none;
    transition: box-shadow .2s;
}

.google-login-btn:hover {
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

@media screen and (max-width: 1500px){
    :root {
        --columns: 12;
        --column-gap: 10px;
        --container: 1140px;
        --oneColumn: calc(calc(var(--container) / var(--columns) ) - var(--column-gap));
    }

    .side__socials a img {
        width: 40px;
        height: 40px;
    }

    .ww__block__promo {
        grid-column: 1 / 9;
    }

    .events__cards {
        grid-template-columns: repeat(2, 1fr);
    }
    .line.reverse .image__wrap.dice__line::after {
        width: calc(calc(var(--oneColumn) * 3) + calc(var(--column-gap) * 3));
    }
    .tickets_info .grid.line .image__wrap.dice__line::before {
        width: calc(calc(var(--oneColumn) * 2.5) + calc(var(--column-gap) * 5));
    }
    .tickets_info__box {
        padding: 42px 18px 22px;
    }

}
@media screen and (max-width: 1000px){


    .tickets.col-3,
    .container.grid.col-3.liqpay{
        grid-template-columns: repeat(1, 1fr);
    }
    .tickets_return, footer ul.menu li a, footer .liqpay h2 {
        margin: 16px 0 16px;
    }

    /* tickets */



    footer .liqpay img:not(:last-of-type){
        margin: 0 8px 0 0;
    }
    .payment__inner {
        width: 90vw;
    }

    .payment.opened .payment__inner {
        right: -5vw;
    }
    .payment__inner .personal_data, .payment__inner .to_checkout, .payment__inner .cart_results {
        padding: 60px 20px;
        width: calc(85vw - 40px);
    }
    .payment__inner .cart_results{
        overflow: scroll;
    }

    .payment__inner .personal_data{
        padding-bottom: 0;
    }
    .payment__inner .personal_data{
        padding: 42px 20px;
    }
    .payment__inner .to_checkout{
        padding-top: 0;
        padding-bottom: 140px;
    }
    .checkout_form {
        width: 80vw;
    }
    
    .cart-table .grid.col-5 {
        gap: 16px;
        grid-template-columns: 32px calc(85vw - 240px) 32px 50px 20px;
        font-size: 14px;
    }

    #full_price,
    .payment__button, .buy__button {
        font-size: 16px;
    }
    .buy__button {
        margin: 8px 0;
    }

    .tickets.col-2 {
        grid-template-columns: repeat(1, 1fr);
    }
    /* tickets end*/

    .tickets__buy_button__header__wrap,
    .side__socials{
        display: none;
    }

    header {
        position: absolute;
    }
    
    :root {
        --columns: 6;
        --container: 82vw;
    }
    .heading {
        font-size: 32px;
    }
    
    .line__center h2.heading,
    .line h2 {
        grid-column: 1 / 5;
        text-align: left;
    }
    .margin_130{
        margin: 65px 0 0;
    }
    .padding_130{
        padding: 32px 0;
    }

    /* FIRST BLOCK */
    .ww__block .grid{
        grid-template-columns: repeat(12, 1fr);
    }
    .ww__block__promo {
        grid-column: 1 / 13;
        padding: 130px 0 42px;
    }
    .ww__block__promo h1 {
        font-size: 36px;
    }
    .ww__block__promo h1::before {
        width: 105%;
        height: 180%;
    }
    .ww__block__promo p {
        font-size: 28px;
    }
    .ww__block .image__wrap {
        grid-column: 2 / 12;
        margin: 0;
        transform: translateY(0%);
        grid-row: unset;
        z-index: 10;
    }
    .ww__block img.main__bg {
        transform: translate(-30%, 0);
        max-height: 100vh;
        width: unset;
    }

    .home__main_block {
        height: 100%;
        display: flex;
        flex-flow: column;
    }


    /* FIRST BLOCK END */

    /* HEADER */
    
    .header__socials{
        display: none;
    }
    .header__about_text {
        display: none;
    }

    .header__logo__wrap img {
        height: auto;
        display: block;
        width: 100%;
        max-width: 54px;
    }
    .header__mobile_icon__wrap {
        grid-column: 6 / 7;
    }
    /* HEADER END */

    /* EVENTS */
    .line__center .image__wrap.dice__line:nth-of-type(2),
    .donations .line.reverse .line__image__wrap,
    .line.reverse h2,
    .line__image__wrap {
        grid-column: 5 / 7;
        grid-row: 2;
        display: flex;
    }
    .line__center .image__wrap.dice__line:nth-of-type(2)::before,
    .line.reverse .image__wrap.dice__line::before,
    .news .line .image__wrap.dice__line::before,
    .program .line .image__wrap.dice__line::before,
    .image__wrap.dice__line::after,
    .image__wrap.dice__line::before {
        width: calc(calc(var(--oneColumn) * 4) + calc(var(--column-gap) * 3));
        height: 5px;
        left: -14px;
    }
    .image__wrap.dice__line::after{
        display: none;
    }
    .events__card {
        border: 12px solid var(--black);
        min-height: 508px;
        margin: 0 0 32px;
    }

    .program_button__wrap a, .tickets__buy_button .tickets__buy_button__wrap button {
        min-height: 56px;
        font-size: 18px;
    }

    .program_button__wrap, .tickets__buy_button .tickets__buy_button__wrap {
        grid-column: 2 / 6;
    }

    .tickets__buy_button .tickets__buy_button__wrap::before,
    .tickets__buy_button .tickets__buy_button__wrap::after {
        /* width: calc(calc(var(--oneColumn) * 4) + calc(var(--column-gap) * 3));
        height: 78px;
        transform: translate(-85%, -50%);
        z-index: -1; */
        display: none;
    }
    .tickets__buy_button .tickets__buy_button__wrap::after {
        transform: translate(85%, -50%);
    }

    .events__card__text {
        height: 100%;
        padding: 22px 16px;
    }
    /* EVENTS END */


    /* TICKETS */
    .tickets_info .grid.col-3,
    .events__cards.col-3{
        grid-template-columns: repeat(1, 1fr);
    }

    .tickets_info__box{
        margin: 0 0 64px;
    }
    /* TICKETS END */

    /* PROGRAM */
    .program_list {
        grid-template-columns: 1fr;
    }
    .program_list h4 {
        margin: 32px 0 18px;
    }
    .program_list > div:first-of-type h4{
        margin: 0 0 18px;
    }
    .program_button__wrap a {
        width: 100%;
        min-height: 63px;
    }
    /* PROGRAM END */

    /* DONATIONS */
    .donations__group .donations__text,
    .donations__group .image__wrap,
    .line.reverse h2{
        grid-column: 1 / 7;
    }
    .line.reverse h2{
        grid-row: 1;
    }
    
    /* DONATIONS END */

    /* PARTNERS */

    .line__center .image__wrap.dice__line:nth-of-type(1){
        display: none;
    }
    .partners.col-5{
        grid-template-columns: 1fr 1fr;
    }
    /* PARTNERS END */

    /* FOOTER */

    footer{
        margin: 0;
    }
    footer .container.grid.col-12.alignCenter{
        grid-template-columns: 1fr; 
    }

    footer .liqpay,
    footer .header__socials,
    footer .menu-menu-container,
    footer .footer__logo {
        grid-column: unset;
    }


    footer .footer__logo .image__wrap img{
        width: 50%;
    }

    footer .footer__logo,
    footer ul.menu{
        flex-flow: column;
        margin: 0 0 32px;
    }
    footer .header__socials{
        display: flex;
        margin: 0 0 32px;
    }
    

    /* FOOTER END*/


    .donations__group .image__wrap_sp,
    .donations__group .image__wrap {
        margin: 0 auto 32px;
        grid-column: 1 / 7;
    }
    .donations__group .donations__text p {
        text-align: left;
        font-size: 22px;
    }

    .tickets_info .grid.line h2,
    .tickets_info .grid.line p,
    .musicians .donations__group .donations__text,
    .musicians .donations__group .image__wrap,
    .musicians .line.reverse h2 {
        grid-column: 1 / 7;
    }
    .musicians .donations__group .image__wrap{
        margin: 0 0 32px;
    }
    .tickets_info .grid.line p{
        grid-row: 3;
        font-size: 20px;
    }

    .tickets .padding_130.grid.col-3,
    .tickets_info .padding_130.grid.col-4{
        grid-template-columns: repeat(1, 1fr);
    }
    .tickets_info__box.special{
        grid-column: unset;
    }
    a.button {
        min-height: 54px;
    }
    
    /* PROGRAM */
    .program_list__item{
        margin: 0 0 64px;
    }
    /* PROGRAM END */

    .third_block .grid.col-2,
    .grid.col-12.second_block{
        grid-template-columns: 1fr;
    }

    .third_block .grid.col-2 .textBlock{
        margin: 0 0 32px;
    }
    .third_block .grid.col-2 {
        padding: 42px 0;
    }
    .grid.col-2 .video{
        display: block;
        width: 100%;
    }
    .slider .image__wrap,
    .slider .slick-list {
        margin: 0;
    }
    .grid.col-2 .video video {
        width: calc(100% - 16px);
        display: block;
    }
    .slider .arrow{
        left: -20px;
    }
    .slider .arrow.next-arrow{
        right: -20px;
    }
    .slider__wrap {
        padding: 0 0 32px;
    }

    .third_block .grid.col-2 .video,
    .third_block .grid.col-2 .textBlock,    
    .grid.col-12.second_block .textBlock,
    .grid.col-12.second_block .socials{
        grid-column: unset;
    }
    .partnership h2, .about_event h2, .textBlock h2 {
        font-size: 28px;
    }
    .grid.col-12.second_block .socials {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        padding: 38px 16px 12px;
        gap: unset;
    }
    .grid.col-12.second_block .socials a{
        flex-grow: 1;
        width: 33%;
        margin: 0 0 18px;
    }
    .grid.col-12.second_block .socials a img{
        display: block;
        margin: auto;
    }

    .about_event__items {
        grid-template-columns: repeat(1, 1fr);
        row-gap: 42px;
    }
    .donations__wrap .grid.col-2 {
        row-gap: 48px;
        padding: 48px 0 64px;
        grid-template-columns: repeat(1, 1fr);
    }
    .button__white {
        font-weight: bold;
        font-size: 20px;
        border: 8px solid var(--black);
        border-radius: 16px;
        text-align: center;
        padding: 12px 50px;
        background-color: #FFDD93;
        position: relative;
        height: 48px;
    }

    .header__logo__wrap {
        grid-column: 1 / 6;
    }
}


@supports (-webkit-touch-callout: none) {
    @media (pointer: coarse) and (hover: none) {
        .payment__inner .to_checkout{
            padding-bottom: 140px;
        }
    }
}