:root{
    --color-primary: #01425D;
    --color-secondary: #0C2136;
    --color-tertiary: #89B1C5;
    --color-light: #dfeaef;
    --color-gray: #575757;
    --color-white: #ffffff;
    --color-black: #000000;
}

.hide { 
    display:none; 
}

.new .mw-1200 {
    max-width: 1200px;
    margin: 0 auto;
}

/* text colors */
.new .color-primary,
.new .color-primary p,
.new .color-primary h1,          
.new .color-primary h2,
.new .color-primary h3,
.new .color-primary h4,
.new .color-primary h5,
.new .color-primary h6 {
    color: var(--color-primary) !important;
}
.new .color-secondary,
.new .color-secondary p,
.new .color-secondary h1,
.new .color-secondary h2,
.new .color-secondary h3,
.new .color-secondary h4,
.new .color-secondary h5,
.new .color-secondary h6  {
    color: var(--color-secondary) !important;
}
.new .color-gray,
.new .color-gray p,
.new .color-gray h1,
.new .color-gray h2,
.new .color-gray h3,
.new .color-gray h4,
.new .color-gray h5,
.new .color-gray h6  {
    color: var(--color-gray) !important;
}
.new .color-white,
.new .color-white p,
.new .color-white h1,
.new .color-white h2,
.new .color-white h3,
.new .color-white h4,
.new .color-white h5,
.new .color-white h6  {
    color: var(--color-white) !important;
}
.new .color-black,
.new .color-black p,
.new .color-black h1,
.new .color-black h2,
.new .color-black h3,
.new .color-black h4,
.new .color-black h5,
.new .color-black h6  {
    color: var(--color-black) !important;
}

/* backgrounds */
.new .bg-primary {   
    background-color: var(--color-primary) !important;
}
.new .bg-secondary {   
    background-color: var(--color-secondary) !important;            
}
.new .bg-tertiary,
.new .fondo1 {   
    background-color: var(--color-tertiary) !important;            
}
.new .bg-light,
.new .fondo2 {   
    background-color: var(--color-light) !important;            
}
.new .bg-gray{   
    background-color: var(--color-gray) !important;            
}
.new .bg-white{   
    background-color: var(--color-white) !important;            
}
.new .bg-black{   
    background-color: var(--color-black) !important;            
}


/******************/
/* OVERRIDE FONTS */
/******************/


/*@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;700&display=swap');*/


html.new,
.new body {
    font-family: "Barlow", sans-serif !important;
    font-optical-sizing: auto;
    font-style: normal;
}

/* headings */
h1, h2, h3, h4, h5,
.navbar-expand-md .navbar-nav li .nav-link, 
.numero-utile p,
.data-programma,
.ora-programma  {
    font-family: "Barlow", sans-serif !important;
}

/* dynamic height navbar - nick 05-05-23 */
.new .navbar-expand-md .navbar-nav {
    display:flex!important;
    flex-direction:column!important;
    justify-content: flex-start!important;
    gap: 1.8vh;
}
.new .navbar-expand-md .navbar-nav li {
    padding: 0!important;    
}
.new .navbar-expand-md .navbar-nav li .nav-link {
    font-size:17px;
}

.new .slick-carousel .slick-slide {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height:70vw;
    max-height:786px;
    display:flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}
.new .slick-carousel .slick-slide .overlay {
    width:100%;
    height:60%;
    position:relative;
    display:flex;
    justify-content: center;  
    margin-bottom:4vw; 
}

.new .slick-carousel .slick-slide .overlay .inner{
    max-width:1200px;
    min-width: 50vw;
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: rgba(255,255,255,0.85);
    padding: 2.7vw 4.4vw;
}
.new .slick-carousel .slick-slide .overlay div.logo {
    max-width:200px;
    width:40vw;
    margin-bottom:30px;
}
.new .slick-carousel .slick-slide .overlay div.logo img {
    width:100%;
}
.new .slick-carousel .slick-slide .overlay div.text {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.436vw;
    font-weight: bold;
    color:#c42426;
}
.new .slick-arrow {
    position:absolute;
    top:46%;
    width:40px;
    height:40px;
    background-color:rgba(201,201,201,0.75);
    border:1px solid #fff;
    font-size:0;
    line-height:0;
    z-index:5;
}
.new .slick-arrow:hover {
    text-decoration: none;
    cursor: pointer;
}

.new .slick-arrow:before {
    font-family: 'revicons';
    font-size: 15px;
    color: #ffffff;
    display: block;
    line-height: 40px;
    text-align: center;
}
.new .slick-arrow.slick-prev {
    left:0;
    transform: matrix(1, 0, 0, 1, 20, 0); 
}
.new .slick-arrow.slick-prev:before {
    content: '\e824'
}
.new .slick-arrow.slick-next {
    left:100%; 
    transform: matrix(1, 0, 0, 1, -60, 0); 
}
.new .slick-arrow.slick-next:before {
    content: '\e825'
}

.new .button a,
.new .vc_btn3.vc_btn3-size-md {
    font-family: "Barlow", sans-serif !important;
    font-weight:500;
    font-size:18px!important;
    padding:5px 20px;
    transition: opacity 0.3s;
}
.new .new .button a:hover{
    opacity:0.7;

}
.new .button.green a{
    color:#fff!important;
    background-color: var(--color-primary)!important;
    border:0!important;
}
.new .button.green.reverse a{
    color: var(--color-primary)!important;
    background-color:#fff!important;
    border:0!important;
}
.new .custom_btn { 
    color:unset!important; 
    text-decoration:none; 
    cursor:pointer; 
    font-size:18px;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align:center;
    font-weight:bold;
}
.new .custom_btn .inner {
    padding: 5px 20px;
}
.new .custom_btn:hover .inner {
    opacity: 0.7;
}
.new .institution-wrapper {
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.new .institution-wrapper .logo {
    width:20%;
}

.new .institution-wrapper .portrait img.institution-img {
    width: 90%;
    max-width: 120px;
}

.new .institution-wrapper .landscape img.institution-img {
    height: 90%;
    max-height: 50px;
    max-width:none;
    width: auto;
}

.new .bookings>.vc_column_container {
    padding:0;
}
.new .bookings .booking-row {
    display:flex;
    justify-content: space-between;
    /*gap: 15px;*/
}
.new .bookings .booking-row .vc_column_container .vc_column-inner {
    margin:7px;
    padding:0;
}
.new .bookings .booking-row .vc_column_container .vc_column-inner .wpb_wrapper {
    padding:20px;
    background-color: #fff;
    height:100%;
}
.new .slick-carousel .slick-slide {
    justify-content: center;
    height:unset;
    max-height: unset;
}
.new .slick-carousel .slick-slide .overlay {
    height:unset;
}
.new .slick-carousel .slick-slide .inner {
    position:absolute;
    width:100%;
    height:100%;
    z-index:9;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.new .slick-carousel .slick-slide a.link {
    width:100%;
    height:100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-decoration:none;
}
.new .slick-carousel .slick-slide .slick-arrow {
    top:unset;
}
.new .slick-carousel .slick-slide .content {
    background-color: rgba(255,255,255,0.85);
    color:#000;
    padding: 20px;
}
.new .slick-carousel .slick-slide div.logo {
    max-width:200px;
    width:40vw;
    margin-bottom:30px;
}
.new .slick-carousel .slick-slide div.logo img {
    width:100%;
}
.new .slick-carousel .slick-slide div.text {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.436vw;
    font-weight: bold;
    color:#c42426;
}

.new .slick-carousel .slick-slide img {
    width:100%;
    height: auto;
}
.new .slick-carousel .slick-slide img.mobile {
    display:none;
}

.new .home-green .wpb_text_column {
    font-size:18px; 
    line-height:normal;
}

.new h1,
.new h2,
.new h3,
.new h4,
.new h5,
.new h6 {
    color:#000;
}

.new h1,
.new h2,
.new h3 {
    font-family: "Trebuchet MS", sans-serif;
    font-weight: bold;
    font-size: 48px;
    line-height: 56px;
    /*margin: 0px 0px 20px;
    padding: 0px;*/
    position: relative;
    margin: 0;
    padding-bottom:40px;
}
.new h1:after,
.new h2:after,
.new h3:after {
    /*content: "";*/
    position: absolute;
    left: 50%;
    bottom:20px;
    /*bottom: -8px;*/
    transform: translateX(-50%);
    width: 100px;
    height: 8px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000; 
}


/* header */
.new .header-row {
    padding-top: 10px;
    padding-bottom: 10px;
}
.new .col-logo img {
    width: 180px;
}
.new .hamburger-icon .ico-menu-mobile {
    margin:0;
}
.new .button a,
.new .custom_btn .inner {
    line-height: 1.3em;
    font-weight:500;
}
.new .custom_btn .inner {
    background-color: var(--color-primary) !important;
}


.new .bg-intro {
    background-color: var(--color-secondary) !important;
    color:#fff;
    background-image: url(../../img/background-intro.jpg);
    background-size: 100%;
    background-position: bottom center;
    background-repeat: no-repeat;
    margin-top:-1px;
    padding-bottom:10rem;
    position: relative;
}
.new .bg-intro .vc_column_container .vc_column-inner {
    padding-top:0 !important;
}
.new .bg-intro .flag {
    padding: 3rem 0 4rem;
    background-image: url(../../img/bandiera.svg);
    background-size: 100%;
    background-position: top center;
    background-repeat: no-repeat;
    z-index:0;
}
.new .bg-intro h3 {
    font-size: 36px;
    line-height: 1.2em;
    font-weight: 500;
    padding-bottom: 30px;
}
.new .bg-intro p {
    font-size:24px;
    line-height: 1.5em;
}

/* box news */
.new .box-news {
    background: var(--color-light);
}
.new .box-news h1 {
    color: var(--color-primary);
}
.new .box-news.home-news {
    width: unset !important;
    background: var(--color-light) url(../../img/background-comunicati.jpg) bottom center no-repeat !important;
    padding: 60px 0 220px !important;
    background-size: 100% !important;
}

.new .box-news .post-date,
.new .box-news .post-text {
    color:#575757;
}
.new .box-news .post-title {
    color:var(--color-primary);
}   
.new .box-news .button {
    margin-top:20px;
    text-transform: uppercase;
    transition: opacity 0.3s ease-in-out;
}
.new .box-news .button:hover {
    opacity: 0.7;
}


/* scopri il territorio */
.new .scopri-block .vc_gitem-col {
    position:relative;
}
.new .scopri-block .post-title,
.new .scopri-block .button {
    position:absolute;
    bottom:100px;
    left:0px;
    width:100%;
    text-align:center;
}
.new .scopri-block .post-title {
    color:#fff;
}
.new .scopri-block .button {
    bottom:20px;
}
.new .scopri-block .button a {
    padding:15px 30px;
    transition: all 0.3s ease-in-out;
}
.new .scopri-block .button a:hover {
    background-color: var(--color-white) !important;
    color: var(--color-primary) !important;
}
.new .scopri-block .wpb_single_image {
    position: relative;
}
.new .scopri-block .wpb_single_image:after {
    content: "";
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: rgba(0, 0, 0, 1);
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 60%);
}
.new .scopri-block .wpb_single_image img {
    width:100%;
}

/* partners */
.group-partners h4 {
    color:#575757;
}

/* programma */
.new .ora-programma {
    color:var(--color-primary);
}

.new .btn-prenota.pdf {
    font-family: "Barlow", sans-serif !important;
}

/* footer */
.new footer.new {
    position:relative;
    background-position: bottom center;
    background-repeat:repeat-x;
    background-image: url('../../img/background-footer.jpg');
    background-color: var(--color-secondary);
    padding:64px 0 280px;
}
.new footer.new .inner {
    width:100%;
    max-width:none;
}

/* media queries */

@media screen and (min-width: 1200px) {
    .new .slick-carousel .slick-slide .overlay div.text {
        font-size: 48px;
    }
    .new .slick-carousel .slick-slide div.text {
        font-size: 48px;
    }
}

@media screen and (max-width: 1200px) {
    .new .institution-wrapper .logo {
        width:33%;
    }
}

@media screen and (max-width: 1024px) {
    .new h1,
    .new h2,
    .new h3 {
        font-size: 32px;
        line-height: 38px; 
    } 
    .new .box-news {
        padding: 60px 0 120px !important;
        background-size: 190% !important;
    }
}

@media screen and (max-width: 978px) {
    .new .col-logo img {
        width: 120px;
    }
}

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

    .new .logo-mobile .vc_column-inner {
        padding:10px 0!important;
    }
    .new .logo-mobile .vc_column-inner .title-white {
        margin-bottom:20px;
    }
    .new .logo-mobile .vc_column-inner .title-white h3 {
        color:#fff;
        padding-top:20px;
    }
    .new .logo-mobile .vc_column-inner .title-white h3:after {
        display:none;
    }
    .new .logo-mobile .logo-mobile-img {
        max-width:140px;
        width:100%;
        margin:0 auto;
    }   

    .new .institution-wrapper .logo {
        width:50%;
    }

    .new .bookings .booking-row {
        flex-wrap:wrap;
    }

    .new .slick-carousel .slick-slide {
        height: unset;
    }

    .new .slick-carousel .slick-slide div.logo {
        margin-bottom:5px;
    }
    .new .slick-carousel .slick-slide .inner {  
        display:none;
    }
    .new .slick-carousel .slick-slide img.mobile {
        display:block;
    }
    .new .slick-carousel .slick-slide img.desktop {
        display:none;
    }
    .new .slick-arrow {
        top:40%;
    }
    .new .slick-carousel .slick-slide .overlay div.logo {
        margin-bottom:5px;
    }
    .new .slick-carousel .slick-slide .overlay .inner{
        width:100%;
    } 
    .new .slick-carousel .slick-slide .overlay {
        margin-bottom:8vw; 
    }
    .new footer.adunata2024 {
        padding:20px 0;
    }
}

@media screen and (max-width: 680px) {
   .new .box-news.home-news {
        background-size: 300% !important;
    }
    .new .bg-intro p {
        font-size:20px;
    }
}

@media screen and (max-height: 1080px) {
    .new .slick-carousel .slick-slide {
        max-height:550px;
    }
}

@media screen and (max-width: 575px), screen and (max-height: 850px){
    .new .navbar-expand-md .navbar-nav {
        height: 80%;
        justify-content: space-between!important;
        gap:unset;
    }
    .new .navbar-expand-md .navbar-nav li {
        padding: 0!important;
        font-size: 15px!important;
    }
}

@media screen and (max-width: 575px) {
    .new h1,
    .new h2,
    .new h3 {
        font-size: 24px;
        line-height: 29px; 
    } 
}

@media screen and (max-width: 520px) {
    .new .institution-wrapper .logo {
        width:100%;
    }
}
