/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Hanlding Updates
-----------------------------------------------------------------*/

/*body a {cursor: pointer !important;}*/


.heading-block h1 {
    font-size: 40px;
    text-shadow: 1px 4px 10px rgba(0,0,0,0.8);
    background: rgba(0, 0, 0, 0.5);
    padding: 15px;
    border-radius: 10px;
}

    .heading-block h1 a {
        color: #fff;
    }

        .heading-block h1 a:hover {
            color: #ebeeef;
        }

.heading-block:after {
    content: '';
    display: block;
    margin-top: 30px;
    width: 160px;
    border-top: 4px solid #910B26 !important;
}



/*altezza video embed home*/


@media (max-width: 479px) {

    .heading-block h1 {
        font-size: 30px !important;
        line-height: 1.2 !important;
    }

    .entry-image .entry-title-float h2 {
        font-size: 16px !important;
    }

    .submenu-fix {
        display: none;
    }
}







/*Data e firma in grigio*/

.entry-meta li {
    color: #8a8a8a !important;
}

/*titolo pagina primo e secondo livello*/

#page-title-top {
    padding: 20px 0 !important;
}

    #page-title-top .container {
        position: relative;
    }

    #page-title-top h1 {
        font-size: 32px !important;
    }




/*titolo focus sull'immagine della home, anche responsive */


.entry-image {
    position: relative;
}


    .entry-image .entry-title-float {
        text-align: center;
        background: rgba(67, 67, 67, 0.7);
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: auto;
        z-index: 10000;
        padding: 15px 15px 0 15px;
    }



        .entry-image .entry-title-float h2 {
            font-size: 34px;
            font-weight: 600;
            text-shadow: 1px 4px 10px rgba(0,0,0,0.8);
        }

        .entry-image .entry-title-float a {
            color: #fff;
        }



.entry-title h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}





#page-title {
    background-color: #666668;
}

#page-title-top {
    margin-top: 29px;
    position: relative;
    padding: 30px 0;
    background-color: #747476;
    border-bottom: none;
}


.breadcrumb {
    position: absolute !important;
    width: auto !important;
    top: 50% !important;
    left: auto !important;
    right: 15px !important;
    margin: -10px 0 0 0 !important;
    background-color: transparent !important;
    padding: 0 !important;
    font-size: 12px;
    color: #fff;
}

h1 > span:not(.nocolor) {
    color: #a5a5a7;
}




.breadcrumb a {
    color: #a1a1a1;
}

.breadcrumb .active {
    color: #fff !important;
    font-weight: 700;
}

.breadcrumb a:hover {
    color: #fff;
}



















/*classe per altezza del testo del post*/

.entry-content-dot {
    height: 140px;
}

/*classe per altezza del testo del post nel carousel*/

.owl-item {
    /*height: 455px;*/
}



/*classi per l'header*/

#primary-menu.style-2 {
    float: none;
    max-width: none;
    background: url("../images/cinecitta/bg_head.jpg") bottom repeat-x #ebeeef;
    height: 131px;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

body:not(.device-sm):not(.device-xs):not(.device-xxs) #primary-menu.style-2.center > ul,
body:not(.device-sm):not(.device-xs):not(.device-xxs) #primary-menu.style-2.center > div {
	float: none;
	display: inline-block !important;
	width: auto;
	text-align: left;
	padding-top: 36px;
}

#primary-menu ul li > a {
    display: block;
    line-height: 15px;
    padding: 39px 10px;
    color: #444;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
    -webkit-transition: margin .4s ease, padding .4s ease, background .4s ease;
    -o-transition: margin .4s ease, padding .4s ease, background .4s ease;
    transition: margin .4s ease, padding .4s ease, background .4s ease;
    
    text-align: center;
}

#primary-menu.style-2 > div > ul > li > a {
	padding-top: 0px;
	padding-bottom: 19px;
}

@media (min-width: 1216px) {
    #primary-menu ul li > a {
        height: 105px;
    }
}

#primary-menu.style-2 > div > ul > li > a {
	padding-top: 35px;
	padding-bottom: 0px;
}

/*submenu a tendina*/

#primary-menu ul ul li > a {
    /*
	font-size: 12px;
	font-weight: 600;
	color: #666;
	padding-top: 10px;
	padding-bottom: 10px;
	border: 0;
	letter-spacing: 0;
	font-family: 'Lato', sans-serif;
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
*/
    height: auto;
    width: 100%;
    text-align: left;
}



#logo {
    display: block;
    height: 100px;
    float: none;
    margin: 20px 0 !important;
    max-width: none;
    text-align: center;
    border: 0 !important;
    padding: 0 !important;
}

#logo.sticky-style-2{
	float: left;
}



@media (max-width: 991px) {

    #primary-menu ul li > a {
        font-size: 13px;
        width: 100%;
        text-align: left;
        height: auto;
    }



    .heading-block h1 {
        font-size: 26px;
        text-shadow: 1px 4px 10px rgba(0,0,0,0.8);
        background: rgba(0, 0, 0, 0.7);
    }



    .heading-block:after {
        content: '';
        display: block;
        margin-top: 30px;
        width: 160px;
        border-top: none !important;
    }

    #logo {
        display: block;
        height: 100px;
        float: none;
        margin: 20px 0 !important;
        max-width: none;
        text-align: center;
        border: 0 !important;
        padding: 0 !important;
    }
}

.divcenter {
	position: relative !important;
	float: none !important;
	margin-left: auto;
	margin-right: auto !important;
}


iframe.video_home {
    height: 450px;
}

iframe.video_sidebar {
    height: 250px;
}


/*submenu fisso*/



#primary-menu .submenu-fix {
    padding-left: 20px;
    position: absolute;
    top: 14px;             
    width: 100%;
    left: 50%;
    margin-left: -50%;
}


    #primary-menu .submenu-fix a {
        font-size: 14px;
        color: #292b2c;
        font-weight: 500;
        text-transform: uppercase;
    }

        #primary-menu .submenu-fix a:hover {
            color: #910B26;
        }






        #header2 #header-wrap {                      /* menu sistemazione per bug IE/Safari*/
           position: relative;
            z-index: 199;
            -webkit-backface-visibility: hidden;
            margin-bottom: 121px;
        }
        #header2.sticky-style-2 #header-wrap {          /* menu allo scroll */
            margin-bottom: 0px;

        }
        #header2.sticky-style-2{            /* */
            height: 131px;
        }
        
#header2 {                          
    position: relative;
    background-color: #fff;
    border-bottom: 1px solid #F5F5F5;
    
}

    #header2 .container {
        position: relative;
    }

    #header2.transparent-header {
        background: transparent;
        border-bottom: none;
        z-index: 199;
    }

    #header2.semi-transparent {
        background-color: rgba(255,255,255,0.8);
    }

    #header2.transparent-header.floating-header {
        margin-top: 60px;
    }

        #header2.transparent-header.floating-header .container {
            width: 1220px;
            background-color: #FFF;
            padding: 0 40px;
            border-radius: 2px;
        }

        #header2.transparent-header.floating-header.sticky-header .container {
            width: 1170px;
            padding: 0 15px;
        }

    #header2.transparent-header + #slider,
    #header2.transparent-header + #page-title.page-title-parallax,
    #header2.transparent-header + #google-map,
    #slider + #header.transparent-header {
        top: -100px;
        margin-bottom: -100px;
    }

    #header2.transparent-header.floating-header + #slider,
    #header2.transparent-header.floating-header + #google-map {
        top: -160px;
        margin-bottom: -160px;
    }

    #header2.transparent-header + #page-title.page-title-parallax .container {
        z-index: 5;
        padding-top: 100px;
    }

    #header2.full-header {
        border-bottom-color: #EEE;
    }

body.stretched #header2.full-header .container {
    width: 100%;
    padding: 0 30px;
}

#header2.transparent-header.full-header #header-wrap {
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

#slider + #header2.transparent-header.full-header #header-wrap {
    border-top: 1px solid rgba(0,0,0,0.1);
    border-bottom: none;
}

#header2.sticky-style-2 {
	position: fixed;
	width: 100%;
	z-index: 100;
	top: 0;
}
#header2.sticky-style-2 #logo { height: 100%; }
#header2.sticky-style-2 #logo img { height: 60px; padding-left: 200px; top: 39px; }

.fancy-title_as h4 {
    position: relative;
    display: block;
    background-color: #2a4b5e;
    margin-bottom: 0;
    border-bottom: 3px solid #061b36;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    padding: 10px;
    margin-bottom: 5px;
}

.fancy-title_cn h4 {
    position: relative;
    display: block;
    background-color: #e42e33;
    margin-bottom: 0;
    border-bottom: 3px solid #ba0f13;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    padding: 10px;
    margin-bottom: 5px;
}




.entry-menu h3 {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 10px;
}


    .entry-menu h3 a {
        color: #19557b;
    }

        .entry-menu h3 a:hover {
            color: #a5a5a5;
        }









.spost2 {
    margin-bottom: 3px;
    padding-left: 10px;
    background-color: #eeeeee;
}

    .spost2 .entry-meta {
        margin: 16px -10px 0 0;
    }






.entry-menu2 h3 {
    margin: 0px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 0px;
}


    .entry-menu2 h3 a {
        color: #19557b;
    }

        .entry-menu2 h3 a:hover {
            color: #a5a5a5;
        }






ul.menu_amm {
    list-style: none;
    display: block;
}

    ul.menu_amm li a {
        margin: 2px 0px;
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 1px;
        padding: 10px;
        display: block;
        background-color: #eeeeee;
        color: #19557b;
        -webkit-transition: background .4s ease, color .4s ease;
        -o-transition: background .4s ease, color .4s ease;
        transition: background .4s ease, color .4s ease;
    }

        ul.menu_amm li a i {
            color: #a5a5a5 !important;
            margin-right: 10px;
        }


        ul.menu_amm li a:hover {
            background-color: #19557b;
            color: #fff;
        }

        ul.menu_amm li a.active {
            background-color: #8f0129;
            color: #fff;
        }





ul.menu_luce_side {
    list-style: none;
    display: block;
}

    ul.menu_luce_side li a {
        margin: 2px 0px;
        font-size: 14px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
        padding: 15px 10px;
        display: block;
        color: #19557b;
        -webkit-transition: background .4s ease, color .4s ease, padding-left .3s ease;
        -o-transition: background .4s ease, color .4s ease, padding-left .3s ease;
        transition: background .4s ease, color .4s ease, padding-left .3s ease;
        border-bottom: 1px dashed #ccc;
    }

        ul.menu_luce_side li a i {
            color: #a5a5a5 !important;
            margin-right: 10px;
            font-size: 20spx;
        }


        ul.menu_luce_side li a:hover {
            background-color: #fcfcfc;
            color: #920029;
            padding-left: 18px;
        }






/*

.postcontent { width: 760px;}
.sidebar { width: 340px; }
.postcontent .post-grid.grid-2 .entry { width: 360px; }


*/

.flexcontainer {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */
    display: -webkit-flex; /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

.flexfluid {
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
    /* For old syntax, otherwise collapses. */
    -webkit-flex: 1; /* Chrome */
    -ms-flex: 1; /* IE 10 */
    flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
}



#top-bar {
    position: relative;
    border-bottom: 1px solid #515151;
    height: 36px;
    line-height: 34px;
    font-size: 13px;
    background: #515151;
}






.nivo-prevNav,
.nivo-nextNav {
    display: none !important;
}

.nivo-caption,
.slider-caption p,
.slider-caption .button {
    display: block !important;
    font-size: 22px;
    padding: 5px 12px;
    border-radius: 2px;
    background-color: rgba(0, 0, 0, 0.7);
    top: auto;
    bottom: 20px;
    left: 20px;
}

@media (max-width: 767px) {
    .nivo-caption,
    .slider-caption p,
    .slider-caption .button {
        display: block !important;
        font-size: 16px;
        padding: 5px 12px;
        border-radius: 2px;
        background-color: rgba(0, 0, 0, 0.7);
        top: auto;
        bottom: 0px;
        left: 0px;
    }
}




#slider{                     /*Abbasamento dello slider*/

/*    top: 29px;
    min-height: 440px; */
}

@media (max-width: 1440px) {                            /*Breackpoint per ridemensionamento logo durante il restringimento*/
#header2.sticky-style-2 #logo img{
    padding-left: 40px;
    height: 50px;
}
}
@media (max-width: 1240px) {
    #header2.sticky-style-2 #logo img{
       padding-left: 10px;
       height: 35px;
       margin-top: 10px;
       
    }
}
    @media (max-width: 1130px) {
        #header2.sticky-style-2 #logo img{
           padding-left: 5px;
           height: 21px;
           margin-top: 20px;
        }
    }




/*riposizionamento hamburger menu mobile e dimensione logo*/

    @media (max-width: 768px) {
        #primary-menu-trigger{
            left: -15px;
            
        }
        #logo img{
            height: 80px;
            
        }
    }
    @media (max-width: 479px) {
        #primary-menu-trigger{
            left: -20px;
        }
        #logo img{
            height: 60px;
        
        }
    }

.sf-with-ul{                    /*Menu (sub-menu) impostazione altezza, hover (rosso)*/ --> /* riga 210 #primary-menu.style-2 altezza barra menu*/
    padding-bottom: 0px;
    /*background: yellow;*/
    margin-top: 11px;
    height: 82px !important;
}

/*-----------------*/

/* riga 387 modifche per bug IE-safari*/

/*-----------------*/

#header .sf-with-ul{                /*Menu mobile rimozione altezza*/
    padding-bottom: 0px;
    /*background: magenta;*/
    margin-top: 13px;
    height: unset !important;
}


.owl-carousel .owl-item img {
	border-radius: 10px !important;
}

.post-grid .entry-image img {
    border-radius: 10px !important;
}

.entry-image img {
    border-radius: 10px !important;
}





/* Box-menu page chi siamo */

.box-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 10px;
}

.box-container .box {
    box-shadow: 0 5px 10px rgba(0,0,0,.2);
    height: auto;
    border-radius: 10px;
    background: #fff;
    text-align: center;
    padding: 20px;
}

.box-container .box .transparent-background {
    padding-bottom: 15px;
    background: rgba(0, 0, 0, 0.5);
}

.box-container .box .transparent-background h3 {
    color:white;
    font-size: 22px;
    margin: 0;
    padding: 15px 0px 5px 0px;
    text-shadow: 1px 4px 10px rgb(0 0 0 / 80%);
}

.box-container .box .transparent-background hr {
    margin: 0px 50px 5px 50px;
}

.box-container .box .transparent-background a {
    color: white;
    font-size: 16px;
    padding: 10px 0;
    text-shadow: 1px 4px 10px rgb(0 0 0 / 80%);
    text-transform: uppercase;
}

.box-container .box .transparent-background a:hover {
    font-weight: bold;
}

.box-container .box:hover {
    box-shadow: 0 10px 15px rgba(0,0,0,.3);
    transform: scale(1.03);
}

