@font-face {
    font-family: 'NeueHaas';
    src: url('/TEMPLATE/CSS/NeueHaas/NeueHaasGrotDisp-55Roman.woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'NeueHaas';   
    src: url('/TEMPLATE/CSS/NeueHaas/NeueHaasGrotDisp-75Bold.woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'NeueHaas';
    src: url('/TEMPLATE/CSS/NeueHaas/NeueHaasGrotDisp-95Black.woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --bila: #f2f2f2;
    --bila2: #fff;
    --cerna: #171c21;
    --modra: #9adbff;

}
::selection{
    color: black;
    background-color: rgba(255, 255, 255, 0.7);
    text-shadow: 0 0 0 #000;
}
/*////////////////////////////////////////*/
@view-transition {
    navigation: auto;
}

html {
    scroll-behavior: smooth;
    background-color: var(--cerna);
}
/*////////////////////////////////////////*/
body::-webkit-scrollbar {
    width:15px;
}
body::-webkit-scrollbar-track {
    background: #fff;
    box-shadow: inset 2px 0 0 0 #000;
    box-shadow: inset 0 0 0 2px #000;
    cursor: pointer;
}
body::-webkit-scrollbar-thumb {
    background: #000;
}
body::-webkit-scrollbar-thumb:hover {
    background: #000;
}
/*////////////////////////////////////////*/




/*////////////////////////////////////////*/
body
{
    font-family: 'NeueHaas', sans-serif;
    font-weight: 400;
    line-height: 160%;
    color: var(--cerna);
    background-color: var(--bila);
    margin: 0;
    font-size: 18px;
    letter-spacing: .2px;
}
a,a:hover,a:focus
{
    color: var(--cerna);
    text-decoration: none;
}
h1, h2,h3{font-family: 'NeueHaas', sans-serif;font-weight: 400;line-height: 160%}
b, strong{font-family: 'NeueHaas', sans-serif;font-weight: 700}
/*////////////////////////////////////////*/
h1{
    font-size: 50px;
}
/*////////////////////////////////////////*/
header{
    color: var(--bila);
    background-color: var(--cerna);
    display: flex;
    position: sticky;
    flex-direction: row;
    justify-content: space-between;
    padding: 10px 20px;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    flex-wrap: wrap;
    align-items: center;
}
header .logo{
    color: var(--modra);
    width: 100px;
    font-size: 40px;
    font-weight: 900;
    line-height: 120%;
}
header .datum{
    text-align: center;
    font-size: 25px;
    position: absolute;
    left: 100px;
    right: 100px;
    z-index: 0;
    letter-spacing: 2px;
}
header .logo IMG{display: block;width: 100%;}

header .menu a{
    color: #c7c7c7;
    cursor: pointer;
    transition: .2s all linear;
    position: relative;
}

header .menu a:hover{
        text-shadow: 0 0 1px white;
}
header .menu a:hover,
header .menu a.active{
    color: var(--bila2);
}
header .menu{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 40px;
}
/*////////////////////////////////////////*/
.page{
    min-height: 100vh;
}
.underline{
    text-decoration: underline;
}
.bold{
    font-weight: 900;
}
/*////////////////////////////////////////*/
.menu a::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--fialova);
    opacity: 0;
    transform: scale(.5);
    transition: opacity .2s ease, transform .2s ease;
    position: absolute;
    top: calc(50% - 3px);
    left: -13px;
}

.menu a.active::before {
    opacity: 1;
    transform: scale(1);
}
/*////////////////////////////////////////*/
.hero{
    position: relative;
    width: 100%;
    min-height: 60vh;
}
.hero.small{
    
    min-height: 30vh;
}
.hero .centered{
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    text-align: center;
    z-index: 2;
    max-width: 90%;
    width: 600px;
}
.hero .centered h1{
    line-height: 80%;
    font-size: 120px;
    font-weight: 900;
}
.hero .centered .btn{}
.hero picture img{width: 100%;display: block;position: absolute;left: 0;top: 0;height: 100%;object-fit: cover;}

/*////////////////////////////////////////*/
.full_bar{
    width: 100%;
    height: 20vw;
    position: relative;
    min-height: 500px;
}
.full_bar .centered{
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    z-index: 2;
    text-align: center;
}
.full_bar .title{
    font-size: 70px;
    line-height: 100%;
    max-width: 90%;
    text-align: center;
    width: 600px;
}
.full_bar img{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    object-fit: cover;
}
/*////////////////////////////////////////*/
footer{
    padding: 40px 0;
    background-color: var(--bila2);
}
footer .social_bar{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: calc(100% - 40px);
    width: 1440px;
    margin: auto;
    align-content: center;
    align-items: center;
    gap: 20px;
}
footer .social_bar .left{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
}
footer .social_bar .left a{
    width: 70px;
}
footer .social_bar .left a img{width: 100%;display: block;}
footer .social_bar .right{
    display: flex;
    gap: 10px;
    flex-direction: row;
}
footer .social_bar .right a{}
footer .footer_logo{
    text-align: center;
    font-size: 70px;
    font-weight: 900;
    text-align: center;
    max-width: 90%;
    margin: 100px auto;
    width: 600px;
    line-height: 100%;
}

footer .footer_legal{
    max-width: calc(100% - 40px);
    width: 1440px;
    margin: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
footer .footer_legal .legal{}
footer .footer_legal .logos{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-end;
    gap: 20px;
    align-items: center;
}
footer .footer_legal .logos a{
    width: 200px;
}
footer .footer_legal .logos a img{
    width: 100%;
}

/*////////////////////////////////////////*/
.top_claim{
    max-width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    width: 440px;
    margin: 80px auto;
}
.top_claim .ctas{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    
}
.top_claim .text{
    text-align: center;
}
.top_claim .text+.ctas{
    margin-top: 30px;
}
.top_claim .ctas+.text{
    margin-top: 60px;
}
/*////////////////////////////////////////*/
.cont{
    max-width: calc(100% - 40px);
    width: 1440px;
    margin: auto;
    overflow: hidden;
}
/*////////////////////////////////////////*/
.loga{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    /* gap: 20px; */
    margin: 100px auto;
}
.loga a{
    width: calc(100% / 7);
    min-width: 200px;
}
.loga img{
    width: 100%;
    display: block;
}
/*////////////////////////////////////////*/

.bg_white{
    background-color: var(--bila2);
    background-color: #f2f2f2;
}

.black_text{
    color: var(--cerna);
}
.blue_text{
    color: var(--modra);
}

/*////////////////////////////////////////*/
.btn{
    transition: .2s all ease-in-out;
    transition-delay: .05s;
    background-color: var(--bila);
    padding: 6px 12px 4px;
    border-radius: 2px;
    font-weight: 900;
    font-size: 30px;
    line-height: 120%;
}
.btn span{
    margin-right: 10px;
}


.btn.blue{
    background-color: var(--modra);
    color: var(--cerna);
    border: 2px solid var(--modra);
}
.btn.blue:hover{
    color: var(--modra);
    background-color: var(--bila);
}
.btn.blue:active{
    color: var(--modra);
    background-color: var(--bila2);
}


.btn.black{
    background-color: var(--cerna);
    color: var(--bila);
    border: 2px solid var(--cerna);
}
.btn.black:hover{
    color: var(--cerna);
    background-color: var(--bila);
}
.btn.black:active{
    color: var(--cerna);
    background-color: var(--bila2);
}

.btn.white{
    background-color: var(--bila);
    color: var(--cerna);
    border: 2px solid var(--bila);
}
.btn.white:hover{
    color: var(--cerna);
    background-color: transparent;
}
.btn.tran{
    background-color: transparent;
    color: var(--cerna);
    border: 2px solid var(--bila);
}
.btn.tran:hover{
    color: var(--cerna);
    background-color: var(--bila);;
}

/*////////////////////////////////////////*/
.hp_panel{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 20px;
    margin-bottom: 120px;

}
.hp_panel a{
    width: calc(50% - 10px);
    position: relative;
    background-color: var(--modra);
    font-weight: 900;
    border-radius: 8px;
    overflow: hidden;
}



.hp_panel a img{
    width: 100%;
    display: block;
    transition: all .3s ease;
}





.hp_panel a .title{
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    text-align: center;
    font-size: 70px;
    line-height: 100%;
    transition: .2s all linear;
}
.hp_panel a:hover .title{
    color: var(--bila2);
}
.hp_panel:hover img{
    filter: brightness(0.8);
}

.hp_panel a:hover img{
    filter: brightness(1);
}
/*////////////////////////////////////////*/
.hamburger{
    display: block;
    width: 40px;
    cursor: pointer;
    padding: 10px;
    margin: -10px;
    position: relative;
    z-index: 2;
}
/*////////////////////////////////////////*/
.text_mobule{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 80px;
    gap: 40px;
}
.text_mobule.mb80{
     margin-bottom: 80px;
}
.text_mobule .left{
    width: calc(50% - 40px);
}
.text_mobule .left .title{
    font-size: 50px;
    margin: initial;
    line-height: 100%;
    padding-top: 2px;
    max-width: 440px;
}

.text_mobule .left .title.bold{
    font-weight: 900;
}
.text_mobule .right{
    width: 500px;
    max-width: 50%;
}
/*////////////////////////////////////////*/
.slider_widget{
    display: flex;
    flex-wrap: nowrap;
    overflow: auto;
    gap: 1rem;
    margin: 50px 10px 150px;
    padding-bottom: 40px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: flex-start;
    width: calc(100% - 20px);
    overflow-y: auto;
}
.slider_widget .item {
    /* flex: 0 0 auto; */
    width: 100%;
    /* border-radius: 15px; */
    padding: 0;
    box-sizing: border-box;
    flex-shrink: 0;
    scroll-snap-align: start;
    width: auto;
    object-fit: cover;
    height: 500px;
    overflow: hidden;
}
.slider_widget .item img{
    height: 100%;
    width: auto;
    display: block;
}

.slider_widget::-webkit-scrollbar {
    width: 5px;
    border-radius:10px;
    -webkit-appearance: none;

}
/* Track */
.slider_widget::-webkit-scrollbar-track {
    background: #fff;
    background: #CACACA;
    border-radius:10px;
}


/* Handle */
.slider_widget::-webkit-scrollbar-thumb {
    background: #000;
    border-radius:10px;
    transition: .2s all linear ;
}

/* Handle on hover */
.slider_widget::-webkit-scrollbar-thumb:hover {
    background: #000;
}
/*////////////////////////////////////////*/

.smalltext_img{
    display: none;
}

.program_page .panel{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: calc(100% - 40px);
    margin: auto;
    margin-bottom: 30px;
    gap: 30px;
}
.program_page{
    
    .panel{
        .cta_l{
            .mesic{
                font-size: 50px;
                line-height: 120%;
                display: none;
            }
        }
        .cta_r{
            .btn{

            }
            
            display: flex;flex-direction: row;flex-wrap: wrap;align-content: center;gap: 10px;

        }

    }
}

.program_page.partnerstvo{
    /* margin-top: 100px; */
    margin-bottom: 100px;
}
.program_page .cover{
    margin-bottom: 20px;
}
.program_page .cover img{
    width: 100%;
    max-height: 50vh;
    object-fit: cover;
    display: block;
}
.program_page .additional{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    align-content: center;
    align-items: flex-start;
}
.program_page .additional .back{}
.program_page .additional .nav{
    display: flex;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.program_page .additional .nav a{
    text-align: center;
}
.program_page .date{
    font-size: 50px;
    line-height: 100%;
    margin: 100px 0;
    max-width: 100%;
    width: 700px;
}
.program_page .date .dash{

}
.program_page .text{
    max-width: 100%;
    width: 500px;
}
.program_page .content{
    margin-top: 100px;
}

.program_page .text a{
    text-decoration: underline;
}

.photo_page> .title,
.program_page>.title
{
    text-align: center;
    font-size: 100px;
    line-height: 110%;
    margin: 100px auto;
}
.program_page .title.small{
    max-width: 800px;
}

.program_page .program {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    min-height: 300px;
    margin-bottom: 100px;
}

.program_page .program .program_mesic{

    display: flex;
    flex-direction: row;
    width: 100%;
    font-size: 50px;
    line-height: 120%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: calc(100% - 40px);
    margin: auto;
    margin-bottom: 30px;
    gap: 30px;
    margin-top: 100px;
}

.program_page .program .item {
    width: calc(33.333% - 20px);
    margin: 10px;
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    box-sizing: border-box;
    overflow: hidden;
    color: white;
    background-color: black;
    transition: 0.2s all ease-in-out;
}

.program_page .program .item.active,
.program_page .program .item:hover
{
    color: black;
    background-color: var(--modra);
}

.program_page .program .item picture {
    display: block;
}

.program_page .program .item img {
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    display: block;
}
.program_page .program .item .tag{
    position: absolute;
    right: 20px;
    top: 20px;
    background-color: var(--cerna);
    color: var(--bila);
    border-radius: 20px;
    padding: 0px 10px;
    font-size: 14px;
}

.program_page .program .item .desc {
    padding: 20px;
    /* background-color: white; */
    flex: 1;
}
.program_page .program .item .desc .time{
    font-weight: 900;
    margin-bottom: 1rem;
    line-height: 120%;
}
.program_page .program .item .desc .text{}

.program_page .content .flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 100px;
}

.program_page .content .header {
    font-size: 50px;
    line-height: 100%;
    max-width: 100%;
    width: 440px;
}
.program_page .content .col {
    width: 50%;
}


/******************************************/

.photo_panels{
    display: flex;
    margin-bottom: 200px;
    flex-direction: row;
    flex-wrap: wrap;
}
.photo_panels .photo_panel{
    width: calc(50% - 0px);
    position: relative;
    box-sizing: border-box;
    padding: 10px;
}
.photo_panel .title{
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    text-align: center;
    font-size: 30px;
    color: white;
    /*
    mix-blend-mode: difference;
    isolation: isolate;*/
    min-width: 300px;
    z-index: 2;
}
.photo_panel img{
    width: 100%;
    display: block;
    object-fit: cover;
    height: 100%;
    z-index: 1;
    position: relative;
    filter: brightness(0.8);
}

.gallery {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: 100px;
    gap: 0;
}

.gallery picture {
    display: block;
    width: 50%;
    padding: 8px;
    box-sizing: border-box;
    height: auto;
    transition: opacity .3s ease;
}

.gallery picture.big {
    width: 100%;
}
.gallery picture img {
    width: 100%;
    transition: opacity .3s ease;
    display: block;
}

.gallery:hover img {
    opacity: .80;
}

.gallery img:hover {
    opacity: 1;
}
.slider_container{
    position: relative;
}

@media (max-width: 600px) {
    .gallery img {
        padding: 4px;
    }
}

.mobile_menu{
    position: fixed;
    right: -100%;
    top: 0;
    background-color: var(--bila);
    bottom: 0;
    z-index: 10;
    width: 100%;
    transition: .3s all linear;
}
.mobile_menu a.menu_logo{width: calc(100% - 200px);padding: 0 50px;color: var(--modra);/* width: 100px; */font-size: 100px;font-weight: 900;line-height: 120%;box-sizing: border-box;}
.mobile_menu .menu_logo a{display: block; width: 100%}
.mobile_menu .items{display: flex;flex-direction: column;/* flex-wrap: wrap; */align-content: center;align-items: center;margin: 0px 10px;/* margin-top: 60px; */position: absolute;transform: translate(-50%, -50%);left: 50%;top: 50%;text-align: center;}
.mobile_menu .items a{/* color: var(--bila); */font-size: 4vw;line-height: 110%;display: block;padding-bottom: 6px;font-weight: 900;}
.mobile_menu .items a:active,
.mobile_menu .items a:hover
{   
    color: var(--bila2);
    color: var(--modra);
    
    text-shadow: 0 0 0 #000;
}
.mobile_menu.open{
    right: 0;
}
.mobile_menu .menu_close{width: 160px;padding: 10px;display: block;box-sizing: border-box;cursor: pointer;}
.mobile_menu .menu_logo img{
    width: 100%;
}

.mobile_menu .items a {
    opacity: 0;
    transform: translateX(20px);
    transition:
    opacity .35s ease,
    transform .45s cubic-bezier(.22, 1, .36, 1);
}

.mobile_menu.open .items a {
    cursor: pointer;
    opacity: 1;
    transform: translateX(0);
}
.mobile_menu.open .items a:nth-child(1) { transition-delay: 100ms; }
.mobile_menu.open .items a:nth-child(2) { transition-delay: 150ms; }
.mobile_menu.open .items a:nth-child(3) { transition-delay: 200ms; }
.mobile_menu.open .items a:nth-child(4) { transition-delay: 250ms; }
.mobile_menu.open .items a:nth-child(5) { transition-delay: 300ms; }
.mobile_menu.open .items a:nth-child(6) { transition-delay: 350ms; }
.mobile_menu.open .items a:nth-child(7) { transition-delay: 400ms; }
.mobile_menu.open .items a:nth-child(8) { transition-delay: 450ms; }


.mobile_menu .top{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: space-between;
}


/**********************/
.kontakty{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px 20px;
    margin-bottom: 200px;
}
.kontakty>.kontakt{
    width: calc(50% - 10px);
    background-color: var(--modra);
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    overflow: hidden;
}
.kontakty>.kontakt .img{
    width: 50%;
}
.kontakty>.kontakt  img{
    width: 100%;
    object-fit: cover;
    display: block;
    border-radius: 8px;
}
.kontakty>.kontakt .text{
    width: 50%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 25px;
    box-sizing: border-box;
    justify-content: space-between;
}
.kontakty>.kontakt .text .title{
    font-size: 40px;
    line-height: 120%;
    font-weight: 900;
    margin-bottom: 40px;
}
.kontakty>.kontakt .text .cred{}
/**********************/
.partneri.top{
    margin-top: 100px;
}
.partneri .title{
    text-align: center;
    font-size: 50px;
    font-weight: bold;
    line-height: 120%;
    max-width: 600px;
    margin: auto;
}
.partneri .logos{display:flex;flex-direction: row;flex-wrap: wrap;justify-content: center;}
.partneri .logos img{
    width: 100%;
}
.partneri .logos a{
    width: 300px;
}
.partneri.bottom{
    margin-bottom: 50px;
    margin-top: 50px;
}

/**********************/
.vstupenky_cta{
    display: flex;
}
.vstupenky_cta a{
    margin: 80px auto;
}
/**********************/
.mapa_akci{
    background-color: var(--modra);
    width: 100%;
    min-height: 500px;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    margin-bottom: 80px;
}
.mapa_akci iframe{
    position: absolute;
    width: 100%;
    bottom: -20px;
    top: -100px;
    border: none;
    height: calc(100% + 120px);
    margin-bottom: 80px;
}
/**********************/

@media only screen and (max-width: 1224px){
    .program_page .program .item{
        width: calc(50% - 10px);
    }
}

@media only screen and (max-width: 1024px){
    header .menu{
        display: none;
    }
    .hero picture img{width: 100%;aspect-ratio: 1236/889}
    .hp_panel a{
        width: 100%;
    }
    .hamburger{
        display: block;
    }
    .program_page .program .item{
        width: calc(50% - 10px);
    }

    header .datum{
        font-size: 16px;
    }
    .full_bar .title{
        font-size: 50px;
    }
    .mobile_menu a.menu_logo{
        width: calc(100% - 100px);
        font-size: 40px;
        opacity: 0;
    }
    .mobile_menu .menu_close{
        width: 80px;
    }
    .mobile_menu .items a
    {
        font-size: 50px;
    }
    .text_mobule .left{
        width: 100%;
    }
    .text_mobule .right{
        width: 100%;
    }
    footer .footer_logo{
        font-size: 50px;
    }
    .hp_panel a .title{
        font-size: 50px;
    }


}

@media only screen and (max-width: 820px){
    .photo_panels .photo_panel{
        width: 100%;
    }
    .slider_widget .item
    {
        width: 90%;
        height: initial;
    }
    .slider_widget .item img{
        height: initial;
        width: 100%;
    }
    .hero .centered h1{
        font-size: 50px;
        line-height: 120%;
    }
    .big_text_img{
        display: none;
    }
    .smalltext_img{
        display: block;
        width: 100%;
    }

    footer .legal1{
        width: 100%;
        text-align: center;
    }
    footer .legal2{
        width: 100%;
        text-align: center;
    }

    footer .line {
        order: 2;
        display: flex;
        flex-direction: column;
        width: 100%;
        align-content: center;
    }
    footer .social {
        order: 1;
        margin-bottom: 40px;
    }
    footer .line_big {
        display: flex;
        justify-content: center;
        padding: 10px;
    }


    .text_mobule .right{
        max-width: 100%;
    }

    .text_mobule .left{
        width: 100%;
    }
    .program_page .program .item{
        width: 100%;
    }

    .program_page .content .col{
        width: 100%;
    }


    .program_page .date{
        text-align: center;
        font-size: 40px ;
    }
    .program_page .date .dash{
        opacity: 0;
        display: flex;
        height: 1px;
    }
    .program_page .title{
        font-size: 40px ;
    }
    .program_page .additional {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-content: center;
        align-items: center;
        gap: 10px;
        margin-top: 20px;
    }
    .program_page .additional a,
    .program_page .additional span
    {

        width: 200px;
        text-align: center;
    }
    .cont{
        max-width: calc(100% - 20px);
    }
    .program_page .panel{
        display: flex;
        justify-content: center;
    }
    .program_page .text{
        width: 100%;
    }
    .program_page .panel .cta_l .mesic {
        font-size: 40px;
    }

    .panel .cta_r{
        order: 1;
    }
    .panel .cta_l{
        order: 2;
    }
    .text_mobule{
        /* gap: 0; */
    }
    header{
        padding: 10px;
    }
    .gallery img {
        width: 100%;
    }

    footer .social_bar{
        display: flex;
        flex-direction: row;
        justify-content: center;
    }
    .full_bar .centered{
        left: 0;
        right: 0;
        transform: translateY(-50%);
        width: 100%;
    }
    .full_bar .title{
        width: 100%;
        margin: auto;
    }
    .mobile_menu.open .items a{
        font-size: 40px;
        font-size: 30px;
        line-height: 160%;
    }
    .program_page .additional .back
    {
        display: none;
    }
}

@media only screen and (max-width: 500px){
    .text_mobule .left .title,
    .hero .centered h1{
        font-size: 40px;
        line-height: 120%;
    }
    .mobile_menu .menu_logo{
        max-height: 40px;
    }
    .photo_page> .title, .program_page>.title{
         font-size: 40px;
        line-height: 120%;
    }

    footer .social_bar .right {
        display: flex;
        width: 100%;
        flex-direction: column;
        align-content: center;
        align-items: center;
        margin-top: 60px;
    }
}


@supports (-webkit-touch-callout: none) {
    .slider_widget::-webkit-scrollbar
    {
        display: none;
    }
    .scrollbar-track-h {
        position: absolute;
        bottom: 0;
        left: 0;
        width: calc(100% - 0px);
        height: 16px;
        background: rgba(0, 0, 0, 0.08);
        border-radius: 10px;
    }

    .scrollbar-thumb-h {
        position: absolute;
        height: 16px;
        background: rgba(0, 0, 0, 1);
        border-radius: 20px;
        transition: background 0.2s;
        cursor: grab;
    }

    .scrollbar-thumb-h:hover {
        background: rgba(0, 0, 0, 0.5);
    }

    .scrollbar-thumb-h.active {
        background: rgba(0, 0, 0, 0.6);
        cursor: grabbing;
    }
}

@media (max-width: 767px) {
  @keyframes slide-out {
    to {
      transform: translateX(-20%);
      opacity: .6;
    }
  }

  @keyframes slide-in {
    from {
      transform: translateX(100%);
    }
  }

  html.ios-transition-active::view-transition-old(root) {
    animation: slide-out .3s ease both;
  }

  html.ios-transition-active::view-transition-new(root) {
    animation: slide-in .3s cubic-bezier(.22, 1, .36, 1) both;
  }
}