@import url('https://fonts.googleapis.com/css?family=Montserrat:400,500,600,700');

/* layout da 240px a 767px */                  
#managament-edit-link
{
    text-align: right;
    margin: 10px 0px;
    display: inline-block;
    width: 100%;
}

#box-development-overlay
{
    position: absolute;
    width: 150px;
    height: 150px;
    background: transparent url(../images/layout/sviluppo.gif) no-repeat top left;
    left: 0px;
    top: 0px;
    margin: 0px;
    padding: 0px;
    z-index: 999999;
}

#header #content-search-key {
    background: #fafafa url(../images/layout/ico-search.png) no-repeat 10px center;
}

#header input#content-search-submit
{
    display: none;
}

input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill
{
    background-image: initial!important;
}

#header #content-search-key {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 10px 13px 50px;
    border: 1px solid #cecece;
    border-radius: 6px;
    position: relative;
}

#header .header-search-td form
{
    background: #fff;
    padding: 0;
    margin: auto;
}

.book-now-button
{
    background: #2ab200;
    font-weight: 500 !important;
    color: #fff !important;
    transition-property: color, background, box-shadow, text-shadow !important;
    transition-duration: 150ms !important;
    transition-timing-function: ease !important;
    border-radius: 4px !important;
    font-size: 20px !important;
    padding: 0.2em 1em !important;
    line-height: 2 !important;
    display: block;
    margin: 0 0 25px 0;
    cursor: pointer !important;
    text-decoration: none !important;
    text-align: center !important;
    font-family: "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif !important;
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
    text-transform: uppercase;
}

.book-now-button.mobile
{
    margin: 5% 0;
}

.book-now-button:hover
{
    background: #208003;
    transition-duration: 95ms !important;
}

.content-node-children.grid {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

@media (min-width: 240px) and (max-width: 979px)                                                                                                                                                              
{  
    /* RESET 
    ---------------------------------- */
    html, body, div, span, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
    small, strong, var, b, i, dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, figcaption, figure,
    footer, header, hgroup, menu, nav, section, summary,
    time, mark, audio, video {
        margin: 0;
        padding: 0;
        border: 0;
        font-size: 100%;
        vertical-align: baseline; }

    body
    {
        color: #333333;
        font-family: Montserrat, Sans-serif;
        font-size: 12pt;
        line-height: 1.5em;
        margin: 0;
        padding: 0;
    }

    a 
    {
        color: #b20000;
    }

    a:hover
    {
        color: #b20000;
        text-decoration: none;
    }    

    h1, h2, h3, h4, h5, h6
    {
        margin: 0 0 14pt 0;
        text-align: left;
    }

    h1 
    {
        font-size: 22pt;
    }

    h2 
    {
        font-size: 18pt;
    }

    h3 
    {
        font-size: 16pt;
    }

    h4 
    {
        font-size: 15pt;
    }

    h5, h6 
    {
        font-size: 13pt;
    }

    ul, ol {
        margin: 0px 0px 10pt 20pt;
        padding: 0;
    }

    img
    {
        max-width: 100%!important;
        height: auto!important;
        width: auto!important;
    }

    .banner-pdf-it {
        width: 100%;
        height: 70px;
        display: inline-block;
        background: url(../images/layout/banner-pdf.png) no-repeat center top;
        margin: 20pt 0 0 0;
        background-size: contain;
    }

    .slicknav_nav .slicknav_item a
    {
        background: transparent!important;
    }

    .footer-tripadvisor-box 
    {
        padding: 10pt 0 0 0;
        text-align: center;
    }

    .banner-pdf-es {
        width: 100%;
        height: 70px;
        display: inline-block;
        background: url(../images/layout/banner-pdf-es.png) no-repeat center top;
        margin: 20pt 0 0 0;
        background-size: contain;
    }

    .footer-tripadvisor-box .TA_certificateOfExcellence {
        display: inline-block;
    }


    .banner-pdf-en {
        width: 100%;
        height: 70px;
        display: inline-block;
        background: url(../images/layout/banner-pdf-en.png) no-repeat center top;
        margin: 20pt 0 0 0;
        background-size: contain;
    }    

    .col-sx-payment-box {
        margin: 14pt 0;
        display: inline-block;
        width: 100%;
    }

    .content-list li {
        list-style-type: none;
        margin: 0px 0px 10pt 0px;
        padding: 0 0 10pt 0;
        border-bottom: 1px dashed #e2e2e2;
    }

    .content-list-table {
        display: block;
        width: 100%;
    }

    .content-list-text-td, content-list-img-td {
        display: block;
        vertical-align: top;
        text-align: left;
        margin: 10pt 0;
    }

    .content-list-text a
    {
        text-decoration: none;
    }

    #image-header {
        display: none;
    }

    .pagination-links ul {
        margin: 10pt 0;
        display: inline-block;
    }

    .pagination-links {
        text-align: center;
        margin: 0 0 10pt 0;
    }

    .pagination a {
        padding: 4px 8px;
        text-decoration: none;
        border: 1px solid #ddd;
    }

    .pagination li {
        display: inline-block;
        list-style-type: none;
        padding-right: 7pt;
    }



    .content-list-img-td img
    {
        border: 1px solid #ddd;
        padding: 1px;
    }

    .content-list-infos {
        font-size: 12px;
        color: #b5b5b5;
    }

    .content-list-title {
        margin: 0 0 10pt 0;
    }

    .content-list-title a {
        color: #4e5050;
        font-weight: 700;
        text-decoration: none;
        font-size: 14pt;
    }

    .content-list {
        margin: 20pt 0;
    }

    #sidebar .col-sx-payment-form {
        background: url(../images/layout/pagamento-tour.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
    }

    .col-sx-payment-box-img {
        opacity: 0;
        height: 158px;
        padding: 0;
        cursor: pointer;
    }

    #image-header, .content-gmap, .content-video, .content-photo
    {
        margin: 0 0 21pt 0;
    }

    #content
    {
        width: 100%!important;
        order: 1;
    }

    #header 
    {
        text-align: center;
        background: #fff;
        padding: 5% 5% 0 5%;
    }

    .header-table {
        padding: 5% 0;
    }

    #footer_menu
    {
        margin: 5%;
    }

    .phone-number-container
    {
        display: none;
        margin: 0;
    }

    .phone-number-box 
    {
        background: url(../images/layout/ico-contact.png) no-repeat left center;
        background-size: 30px;
        padding: 3% 0 3% 35px;
        text-align: left;
        display: inline-block;
    }

    .mobile-phone-number 
    {
        color: #000;
        text-decoration: none;
        font-weight: 600;
        font-size: 18pt;
    }

    #sidebar-right {
        order: 2;
    }

    .header-whatsapp-box
    {
        background: url(../images/layout/ico-whatsapp.png) no-repeat top left;
        background-size: contain;
        height: 30px;
        width: 30px;
        display: inline-block;
        margin: 0 7pt 0 0;
    }

    .header-information-box {
        border-top: 1px solid #d9d9d9;
        border-bottom: 1px solid #d9d9d9;
        margin: 10pt 0 0 0;
    }

    #region-blocks_header
    {
        display: none;
    }

    .header-whatsappa-text
    {
        display: none;
    }

    #page
    {
        margin: 5%;
        border: 1px solid #EAEAEA;
        padding: 5%;
        text-align: justify;
    }

    .nivo-controlNav
    {
        display: none;
    }

    #language-switcher
    {
        margin: 0;
        padding: 0;
        text-align: center;
    }

    #language-switcher a
    {
        padding: 0;
        margin: 0 0 0 10pt;
        width: 20pt;
        display: inline-block;
    }

    .page-columns-container {
        display: flex;
        flex-direction: column;
    }

    #sidebar
    {
        order: 3;
        margin: 14pt 0;
        text-align: center;
    }

    .tripadvisor-a
    {
        display: inline-block;
        margin: 7pt 0 0 0;
    }

    .node-gmap
    {
        height: 200px;
    }

    .logo-header 
    {
        width: 100%;
        height: 45px;
        background: transparent url(../images/layout/logo-header.png) no-repeat left top;
        display: block;
        margin: 0;
        background-size: contain;
    }

    .logo-footer
    {
        width: 90%;
        height: 46px;
        background: transparent url(../images/layout/logo-header.png) no-repeat center top;
        display: block;
        margin: 5%;
        background-size: contain;        
    }

    label
    {
        text-align: left;
        display: block;
        font-weight: bold;
    }


    .field-captcha-image {
        margin: 0 7pt 0 0;
        float: left;
    }

    .contact-form-captcha {
        width: 90px;
    }

    p.form-submit
    {
        margin: 0;
    }

    .block input
    {
        width: 95%;
    }

    .block input[type="submit"]    
    {
        width: 100%;
    }

    .block h2
    {
        margin: 0;
    }

    #box-newsletter 
    {
        border: 1px solid #E5E5E5;
        padding: 5%;
    }

    .newsletter-title 
    {
        font-weight: bold;
    }

    #box-newsletter input
    {
        width: 95%;
        margin: 0 0 7pt 0;
    }

    #box-newsletter input[type="submit"], #box-newsletter input[type="button"]
    {
        width: 100%;
        margin: 0;
    }

    #breadcrumb 
    {
        margin: 0 0 14pt 0;
        text-align: left;
        display: none;
    }

    .footer-credentials 
    {
        border-top: 1px solid #dcdcdc;
        padding: 10pt 5%;       
    }

    .footer-credentials a
    {
        color: #fff;
        text-decoration: none;
    }

    .message-error 
    {
        background-color: #CE453E;
        color: #FFFFFF;
        padding: 5%;
        margin: 0 0 14pt 0;
    }

    .form-field-error
    {
        color: #CE453E;
        display: block;
    }

    #page #content-search-key {
        margin: 0 0 7pt 0;
    }

    #CDSWIDCOE.widCOE {
        display: inline-block;
    }

    #CDSWIDCOE.widCOE .widCOETitle {
        font-size: 16px!important;
    }

    #CDSWIDCOE.widCOE .widCOEDate .widCOEDateText {
        font-size: 14px!important;
    }

    .social
    {
        margin: 0 0 10pt 0;
        padding: 0;
        list-style-type: none;
        display: flex;
        justify-content: flex-start;
    }

    .social li
    {
        width: auto;
        margin: 0 7pt 0 0;
        max-width: 25%;
    }

    .social li:nth-child(4)
    {
        width: 15%;
    }

    textarea
    {
        width: 100%;
    }

    input[type="submit"]
    {
        width: 100%;
    }

    input[type="checkbox"]
    {
        width: auto;
    }

    .newsletter-description 
    {
        margin: 7pt 0;
    }

    .header-search-box 
    {
        display: inline-block;
        width: 100%;
        border: 1px solid #B2B2B2;
        background: #fff url(../images/layout/cerca-mobile.png) no-repeat 98% center;
    }

    #header #content-search-key 
    {
        box-shadow: none;
        margin: 10pt 0 0 0;
        width: 100%;
    }

    #header #content-search-submit 
    {
        width: 10%;


        cursor: pointer;
        border: none;        
        box-shadow: none;
        float: right;
        background: transparent;
    }

    input
    {
        width: 96%;
        padding: 2%;
        font-size: 12pt;
    }

    p
    {
        margin: 0 0 10pt 0;
    }

    #footer
    {
        background-color: #f0f0f0;
        padding: 5% 0 0 0;
        margin-top: 5%;
        text-align: center;
    }

    .footer-adress-box {
        margin: 14pt 0;
    }

    .footer-table {
        padding: 0 5%;
    }

    #menu_cookie_container {
        display: inline-block;
        margin: 0 0 10pt 0;
    }

    #footer a {
        color: #333333;
    }

    iframe
    {
        width: 100%!important;
        height: auto;
    }

    .nivoSlider, .nivo-controlNav, .content-gallery-title
    {
        font-size: 16pt;
        font-weight: bold;
    }

    .content-gallery figcaption,.content-photo figcaption
    {
        display:none;
    }

    .nomobile
    {
        display: none;
    }

    #backend-goto a
    {
        background-color: #b20000;
        display: block;
        padding: 3% 5%;
        text-align: center;
        color: #fff;
        text-decoration: none;
    }

    .slicknav_menu
    {
        background: transparent!important;
        padding: 0px!important;
        font-size: 14pt!important;
    }

    .slicknav_menu .slicknav_icon
    {
        display: none!important;
    }

    .slicknav_nav .slicknav_arrow
    {
        font-family: sans-serif!important;
    }	

    .slicknav_btn
    {
        width: 100%!important;
        border: none!important;
        background: #232323 url(../images/layout/espand-icon.png) no-repeat 97% center !important;
        padding: 10pt!important;
        margin: 0!important;
        border: none!important;
        border-radius: 0px!important;

    }

    .slicknav_menu .slicknav_menutxt
    {
        color: #fff!important;
        font-weight: normal!important;
        text-shadow: none!important;
    }

    .slicknav_nav li
    {
        text-align: left;
    }

    .slicknav_nav
    {
        background: transparent;
    }

    .slicknav_parent ul li
    {

    }

    .slicknav_nav a
    {
        padding: 10pt!important;
        margin: 1px 0 0 0!important;
        background-color: #383738;
    }

    .slicknav_nav a a
    {
        padding: 9pt!important;
        margin: 0!important;
    }

    .slicknav_nav a:hover
    {
        border-radius: 0!important;
        background: #b20000!important;
        color: #fff!important;
    }

    .hp-info-box {
        background: url(../images/layout/bg-infobox.jpg) no-repeat center center;
        padding: 10pt;
        text-align: center;
        color: #fff;
        font-size: 16pt;
        margin: 10pt 0;
        line-height: 22pt;
    }

    .hp-infobox-tel {
        background: url(../images/layout/ico-phone.png) no-repeat left center;
        padding: 0 0 0 23px;
        display: inline-block;
        margin: 0 10px 0 0;
    }

    .hp-infobox-cel {
        background: url(../images/layout/ico-mobile.png) no-repeat left center;
        padding: 0 0 0 19px;
        height: 21px;
        display: inline-block;
        margin: 0 10px 0 0;
    }

    .hp-infobox-email {
        background: url(../images/layout/ico-email.png) no-repeat left center;
        padding: 0 0 0 25px;
        display: inline-block;
    }

    #block_homepage_contents h2, .homepage-content #region-blocks_evidence h2 {
        text-align: center;
    }

    #block_homepage_contents, .homepage-content #region-blocks_evidence {
        margin: 0;
        text-align: center;
    }

    form {
        background: #f5f5f5;
        padding: 20px;
    }


    .block-title, .block h2, #menu_column h2, .comments-title {
        background: transparent!important;
        font-size: 16pt;
        line-height: 18pt;
        color: #34495e;
        text-transform: uppercase;
        margin: 0 0 20pt 0;
        color: #b31b1b;
        border-bottom: 2px solid #b20000;
        font-weight: 500;
        padding: 0 0 7pt 0;
    }

    .block-homepage-tour-date {
        background: #b20000;
        color: #fff;
        font-size: 11pt;
        font-weight: 600;
        padding: 5pt 10pt;
    }

    #block_homepage_contents ul li a, #block_homepage_contents ul li a:hover {
        color: #333333;
        text-decoration: none;
    }

    .block-homepage-tour-title {
        color: #000;
        font-weight: 600;
        font-size: 16pt;
        text-decoration: none;
        word-break: break-word;
    }

    .block-homepage-text {
        border-top: 1px solid #d9d9d9;
        padding: 10pt 0 0 0;
        margin: 10pt 0 0 0;
    }

    #region-blocks_evidence a {
        padding: 10pt;
        display: block;
        color: #000;
        text-decoration: none;
    }

    .block-homepage-int-text {
        padding: 10pt;
    }



    .tour-start-datetime .ico-data {
        background: url(../images/layout/ico-calendar.png) no-repeat left center;
        padding: 0 0 0 17px;
    }

    .tour-start-datetime .ico-clock {
        background: url(../images/layout/ico-clock.png) no-repeat left center;
        padding: 0 0 0 17px;
    }

    .ico-price {
        white-space: nowrap;
    }

    .hp-info-box a {
        color: #fff;
        text-decoration: none;
    }

    .slicknav_nav a:hover a
    {



    }	

    .slicknav_nav .slicknav_item
    {

        background-color: #383738;
        margin: 1px 0 0 0!important;
    }

    .content-gallery-title 
    {
        display: none;
    }

    .content-img-list
    {
        float: left;
        width: 30.6%;
        max-width: 31%!important;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        margin: 0 2% 2% 0;
    }

    .content-img-list:nth-child(3n+3)
    {
        margin: 0 0 2% 0;

    }  

    #managament-edit-link a
    {
        padding: 7pt;
        background: #b20000;
        border-radius: 2px;
        color: #fff;
        text-decoration: none;
        text-transform: uppercase;
        font-weight: 500;
        font-size: 14pt;
        display: block;
        text-align: center;
    }

    #managament-edit-link
    {
        margin: 10pt 0;
        display: inline-block;
        width: 100%;
    }

    .btn {
        padding: 7pt;
        background: #b20000;
        border-radius: 2px;
        color: #fff;
        text-decoration: none;
        text-transform: uppercase;
        font-weight: 500;
        font-size: 14pt;
        display: block;
        text-align: center;
        border: none;
    }

    .content-gallery figure 
    {
        width: 22.5%;
        display: inline-block;
        float: left;
        margin: 0 2.5% 2% 0;
    }    

    .content-gallery-images
    {
        float: none;
        margin: 0;
    }

    .content-gallery-images img
    {
        width: 99.5%;
        height: auto;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        max-width: 99.5%!important;
    }  

    .nivoSlider
    {
        display: none;
    }

    .content-gallery figure:nth-child(4n+4) a
    {       
        margin: 0 0 2% 0;
    }

    .header-logo-td {
        display: inline-block;
        width: 100%;
    }

    .languages-mobile {

        white-space: nowrap;
        display: inline-block;
    }

    .header-logo-a {
        width: 100%;
        display: inline-block;
        float: left;
    }

    #sidebar .col-sx-payment-form-it
    {
        background: url(../images/layout/pagamento-tour-it.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
        padding: 0;
    }

    #sidebar .col-sx-payment-form-en
    {
        background: url(../images/layout/pagamento-tour-en.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
        padding: 0;
    }

    #sidebar .col-sx-payment-form-es
    {
        background: url(../images/layout/pagamento-tour-es.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
        padding: 0;
    }

    .content-gallery
    {
        width: 100%;
        display: inline-block;
    }

    .content-file 
    {
        background-color: #E5E5E5;
        padding: 10px;
        margin: 14pt 0 7pt 0;
    }

    .filenode-thumb 
    {
        display: table-cell;
    }

    .filenode-title 
    {
        display: table-cell;
        padding: 0 0 0 10px;
        vertical-align: middle;
    }

    .block, #menu_column .menu-item 
    {
        margin: 14pt 0 7pt 0;
    }   

    .block-title, .block h2, #menu_column h2 
    {
        background-color: #B9C01D;
        padding: 14pt;
    }

    .block-int
    {
        padding: 0;
    }

    #cookie-bar
    {
        height: auto !important;
    }

    .logo-2open-credentials
    {
        display: inline-block;
        width: 39pt;
        height: 10pt;
        background: url(https://www.2open.it/loghi/2open-footer-black.png) no-repeat center center;
        float: right;
        margin: 5px 0 0 5px;
    }

    #block_homepage_contents .block-int, #region-blocks_evidence .block-int
    {
        padding: 0;
    }

    #block_homepage_contents ul, .homepage-content #region-blocks_evidence ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
        display: block;
        width: 100%;
    }

    #block_homepage_contents ul li, #region-blocks_evidence ul li {
        width: 100%;
        margin: 0 0 20pt 0;
        border: 1px solid #d9d9d9;
        border-radius: 6px;
    }

    #block_homepage_contents ul li:nth-child(2n+2), #block_homepage_contents ul li:last-child, #region-blocks_evidence ul li:nth-child(2n+2), #region-blocks_evidence ul li:last-child {
        margin: 0 0 20pt 0;
    }

    .logo-footer-credentials-a
    {
        display: inline-block;
    }

    #page-header h1 {
        color: #b31b1b;
        font-size: 20pt;
        line-height: 24pt;
        font-weight: 600;
        margin: 0;
    }

    #mobile-submenu-box {
        margin: 0 0 14pt 0;
    }

    .slicknav_nav .li-active {
        background: #b20000;
        color: #fff;
        padding: 10pt;
    }

    #region-blocks_evidence .block
    {
        margin: 0;
    }

    #page-header {
        margin-bottom: 14pt;
    }

    .mobile.phone-social-table {
        display: table;
        width: 100%;
    }

    .social-table
    {
        display: table;

    }

    .social-table-td
    {
        display: table-cell;
        text-align: left;
        vertical-align: middle;        
    }

    .phone-social-td {
        display: table-cell;
        text-align: left;
        vertical-align: middle;
    }

    .phone-social-td:last-child
    {
        text-align: right;
    }

    .social-fb {
        width: 30px;
        height: 30px;
        display: inline-block;
        background: url(../images/layout/ico-fb.png) no-repeat center center;
        background-size: contain;
        margin: 0 7pt 0 0;
    }

    .social-you {
        width: 30px;
        height: 30px;
        display: inline-block;
        background: url(../images/layout/ico-you.png) no-repeat center center;
        background-size: contain;
        margin: 0 7pt 0 0;
    }

    .social-tw {
        width: 30px;
        height: 30px;
        display: inline-block;
        background: url(../images/layout/ico-tw.png) no-repeat center center;
        background-size: contain;
        margin: 0 7pt 0 0;
    }

    .content-node-children.grid li div a {
        display: flex;
        justify-content: stretch;
        align-items: flex-start;
        margin: 0 0 14pt 0;
        flex-wrap: wrap;
        text-align: center;
        text-decoration: none;
    }

    .content-node-children.grid
    {
        display: flex;
        flex-wrap: wrap;
    }

    .content-node-children.grid li {
        width: 48%;
        margin: 0 4% 14pt 0;
    }

    .content-node-children.grid li:nth-child(2n+2) {
        width: 48%;
        margin: 0 0 14pt 0;
    }

    .node-children-title {
        text-align: center;
        width: 100%;
        margin: 7pt 0 0 0;
        text-transform: uppercase;
        font-weight: 600;
        font-size: 12pt;
        line-height: 15pt;
    }

    .node-children-abstract {
        color: #333;
        line-height: 13pt;
        font-size: 10pt;
        margin: 7pt 0 0 0;
    }
    .thumb-image img {
        width: 100%;
        height: auto;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        box-sizing: border-box;
    }
	
	.calendar-table.small {
		width: 100%;
		border: 0;
		border-spacing: 0;
	}
	
	.calendar-container .calendar-table th {
		font-size: 10pt;
	}
	
	body #events-list
	{
		border: none!important;
	}
}

/* layout da 768px in poi */
@media (min-width: 980px)
{
    .mobile
    {
        display: none;
    }

    /* RESET 
    ---------------------------------- */
    html, body, div, span, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
    small, strong, var, b, i, dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, figcaption, figure,
    footer, header, hgroup, menu, nav, section, summary,
    time, mark, audio, video {
        margin: 0;
        padding: 0;
        border: 0;
        font-size: 100%;
        vertical-align: baseline; }

    ins {
        background-color: #ffff99;
        color: black;
        text-decoration: none; }

    mark {
        background-color: #ffff99;
        color: black;
        font-style: italic;
        font-weight: bold; }

    del {
        text-decoration: line-through; }

    abbr[title], dfn[title] {
        border-bottom: 1px dotted;
        cursor: help; }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    hr {
        display: block;
        height: 1px;
        border: 0;
        border-top: 1px solid #cccccc;
        margin: 1em 0;
        padding: 0; }

    input, select {
        vertical-align: middle;
    }

    /* COLORI
    ---------------------------------- */

    /*
    - Grigio scuro #333333 (testo)
    - Grigio chiaro #DDDDDD
    - Verde acido #B9C01D
    - Azzurro #2394C4 (link)
    - Azzurro scuro #186687 (link)
    */


    /* BASE
    ----------------------------------*/
    body {
        color: #333333;
        font-family: Montserrat, sans-serif;
        font-size: 14px;
        line-height: 1.5em;
        font-weight: 500;

    }


    /* TIPOGRAFIA
    ---------------------------------- */

    h1, h2, h3, h4, h5, h6
    {
        margin: 0px;
        line-height: 1.5em; 
    }

    h1 
    {
        font-size: 30px;
    }

    h2 
    {
        font-size: 24px;
    }

    h3 
    {
        font-size: 18px;
    }

    h4 
    {
        font-size: 15px;
    }

    h5, h6 
    {
        font-size: 13px;
    }

    h6 
    {
        color: #676767;
        text-transform: uppercase;
    }

    p 
    {
        margin: 0 0 9px;
        line-height: 1.5em;    
    }

    small 
    {
        color: #999999;
        font-size: 12px;
    }

    blockquote
    {
        border-left: 5px solid #DDDDDD;
        margin: 0 0 18px;
        padding: 0 0 0 15px;
    }

    .blockquote-right
    {
        border-left: 0 none;
        border-right: 5px solid #EEEEEE;
        float: right;
        padding-left: 0;
        padding-right: 15px;
    }

    ul, ol {
        margin: 0px 0px 10px 30px;
        padding: 0;
    }

    ul.unstyled, ol.unstyled {
        list-style: none outside none;
        margin-left: 0px;
    }

    h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
        font-weight: normal;
        font-size: 14px;
    }

    h1 small
    {
        font-size: 18px;
    }

    p.lead
    {
        font-size: 20px;
        font-weight: 200;
        line-height: 27px;
        margin-bottom: 18px;
    }


    .ag-left
    {
        text-align: left;
    }

    .ag-right
    {
        text-align: right;
    }

    .ag-center
    {
        text-align: center;
    }

    .indented-element, .sortable-contents .indented-element
    {
        padding-left: 25px;
    }

    .disabled-element
    {
        color: #999999;
    }

    .li-active
    {
        font-weight: bold;
    }

    #submenu-box .jmenu-level-0 ul
    {
        display: none!important;
    }

    /* LINKS 
    ---------------------------------- */

    a
    {
        color: #b20000;
    }

    a:hover
    {
        color: #b20000;
        text-decoration: none;
    }


    /* STRUTTURA
    ---------------------------------- */

    #page
    {
        width: 980px;	
        margin: 20px auto;	
        position: relative;
    }

    #content
    {
        padding: 0px;
        margin: 0;
        text-align: justify;
        padding: 0 0 0 20px;
        width: 100%;
    }

    .page-columns-container
    {
        display: table;
        table-layout: fixed;
        vertical-align: top;
        width: 100%;
    }

    #page .page-columns
    {
        display: table-cell;
        vertical-align: top;
    }


    #sidebar, #sidebar-right
    {
        width: 230px!important;
    }

    #sidebar-right
    {
        padding: 0 0 0 20px;
    }

    #header
    {
        margin: 0px;
    }

    #image-header
    {
        width: 100%;
        height: auto;
    }

    #page-header
    {
        margin-bottom: 20px;
    }

    #page-header h1
    {
        color: #b31b1b;
        font-size: 24px;
        line-height: 26px;
        font-weight: 600;
    }

    .banner-pdf-it
    {
        width: 100%;
        height: 90px;
        display: inline-block;
        background: url(../images/layout/banner-pdf.png) no-repeat center top;
        margin: 25px 0;
        background-size: contain;
    }

    #TA_certificateOfExcellence997{
        text-align: center;
    }

    #TA_certificateOfExcellence997 img{
        width: 70%;
    }

    .banner-pdf-es
    {
        width: 100%;
        height: 90px;
        display: inline-block;
        background: url(../images/layout/banner-pdf-es.png) no-repeat center top;
        margin: 25px 0;
        background-size: contain;
    }

    .banner-pdf-en
    {
        width: 100%;
        height: 90px;
        display: inline-block;
        background: url(../images/layout/banner-pdf-en.png) no-repeat center top;
        margin: 25px 0;
        background-size: contain;
    }

    #breadcrumb
    {
        margin-bottom: 20px;
        text-align: left;
        display: none;
    }

    .clearfix
    {
        clear: both;
    }

    .closed-element
    {
        display: none;
    }

    .collapsing-trigger, .collapsing-trigger-loader
    {
        background-color: transparent;
        background-repeat: no-repeat;
        background-position:  0px 50%;
        padding-left: 20px;
    }

    .closed-trigger
    {
        background-image: url(../images/icons/chevron-down.png);
    }

    .open-trigger
    {
        background-image: url(../images/icons/chevron-right.png);
    }

    #buttons_top, #language-switcher
    {
        margin-bottom: 20px;
    }

    #language-switcher
    {
        text-align: right;
        width: auto;
        display: inline-block;
        margin: 0px;
    }

    .language-switch-box
    {
        float: right;
        margin: 9px 0 0 0;
    }

    #language-switcher a img
    {
        width: 22px;
        height: 15px;
    }

    #language-switcher a
    {
        margin-left: 10px;
        display: inline-block;
    }

    .loading-indication
    {
        background: url(../images/icons/ajax-loader.gif) no-repeat top center;
    }

    #backend-goto
    {
        position: absolute;
        top: 0px;
        right: 100px;
        background-color: #232323;
        padding: 10px 15px;
        z-index: 9999;
        font-size: 13px;
        line-height: 13px;
    }

    #backend-goto a
    {
        color: #fff; 
        text-decoration: none;
    }

    #backend-goto.backend-goto-cb
    {
        display:none;
    }

    /* FORM
    ---------------------------------- */

    form
    {
        padding-bottom: 20px;
    }

    label, input, select, textarea
    {
        font-size: 13px;
    }

    .content-form .btn
    {
        float: right;
    }

    input, select, textarea
    {
        border: 1px solid #CCCCCC;
        padding: 7px;
        width: 97%;
        background-color: #fff;
    }

    option
    {
        padding: 0px 5px;
    }

    input:focus, textarea:focus, select:focus
    {

    }

    select, .input-file
    {
        line-height: 13px;
    }

    .input-file
    {
        box-shadow: none;
        width: auto;
    }

    input[type=radio], input[type=checkbox]
    {
        vertical-align: top;
        width: auto;
    }

    label
    {
        display: block;
        padding-bottom: 3px;
        font-weight: bold;
    }

    .lb-inline
    {
        display: inline;
        margin-right: 5px;
    }

    .lb-checkbox, .lb-radio
    {
        font-weight: normal;
    }


    .short-field
    {
        width: 25%;
    }

    .medium-field
    {
        width: 50%;
    }

    .long-field
    {
        width: 75%;
    }

    .verylong-field
    {
        width: 93%;
    }

    .inline-field
    {
        margin-right: 5px;
    }

    .form-field-help
    {
        font-size: 0.9em;
        display: block;
        color: #636262;
    }

    .btn
    {
        border-radius: 3px;
        cursor: pointer;
        padding: 10px 15px;
        outline: medium none;
        text-decoration: none;
        display: inline-block;
        width: auto;
        line-height: 13px;
    }

    p.row-actions a.btn
    {
        margin-right: 5px;
    }

    .btn-big
    {
        font-size: 15px;
        padding: 8px;
    }

    .btn-small
    {
        font-size: 0.9em;
    }

    .btn
    {
        background-color: #b20000;
        color: #FFFFFF;
        border: 0px;
    }

    .form-field
    {
        padding: 0;
        display: inline-block;
        width: 100%;
    }

    .form-field.little-text
    {
        font-size: 11px;
        font-weight: bold;
    }

    .form-submit
    {
        padding: 13px 0 0 0;
        margin: 0;
        display: inline-block;
        width: 100%;
    }

    .mid-field label
    {
        width: 40%;
        float: left;
        margin-right: 3.5%;
    }

    .mid-field input
    {
        width: 55%;
        float: left;
    }

    .btn-alternate
    {
        background-color: #b20000;
        color: #fff;
    }

    .btn-secondary
    {
        background-color: #b20000;
        color: #fff;
    }

    .btn-delete
    {
        background-color: #CE453E;
        color: #FFFFFF;	
    }

    .btn:active, .btn:hover
    {
        background-color: #9e0000;
        color: #fff;
    }

    .btn:disabled, .btn-disabled, .btn-disabled:hover
    {
        background-color: #2394C4;
        opacity: 0.5;
        cursor: default;
    }

    .btn-alternate:active, .btn-alternate:hover
    {
        background-color: #9e0000;
        color: #fff;
    }

    .btn-secondary:active, .btn-secondary:hover
    {
        background-color: #9e0000;
        color: #fff;
    }

    input.error-field, select.error-field, textarea.error-field
    {
        border-color: #D01616;
    }

    .field-privacybox
    {
        background-color: #FFFFFF;
        border: 1px solid #CCCCCC;
        height: 70px;
        margin: 0 0 20px 0;
        overflow-y: scroll;
        padding: 10px;
    }

    .rc-label {
        width: 100%!important;
    }

    .field-captcha-image {
        margin: 0 10px 0 0;
        float: left;
    }

    .contact-form-captcha
    {
        width: 90px;
    }


    /* MESSAGGI
    ---------------------------------- */
    .message 
    {
        margin: 10px auto 30px;
        padding: 10px;
    }

    .message-error 
    {
        background-color: #CE453E;
        color: #FFFFFF;
    }

    .message-ok 
    {
        background-color: #A9D673;
    }

    .message-alert
    {
        background-color: #F2D268;
    }

    .form-field-error
    {
        color: #CE453E;
        display: block;
        font-size: 12px;
    }

    /* TABELLE
    ---------------------------------- */


    table
    {
        background-color: transparent;
        border-spacing: 0;
        max-width: 100%;
        font-size: 1em;
        width: 100%;
    }

    th, td
    {
        border-top: 1px solid #ddd;
        line-height: 18px;
        padding: 10px 3px;
        text-align: left;
        vertical-align: top;

    }

    th
    {
        font-weight: bold;
        background-color: #B9C01D;
    }

    th .btn
    {
        font-weight: normal;
    }

    thead th {
        vertical-align: middle;
    }

    .table
    {
        margin: 20px 0px;
    }

    .table-bordered-outside
    {
        border: 1px solid #ddd;
    }

    .table-bordered
    {
        border-bottom: 1px solid #ddd;
    }

    .table-bordered th, .table-bordered td
    {
        border-left: 1px solid #ddd;
        border-right: 1px solid #ddd;
    }

    .tr-odd
    {
        background-color: #e7e7e7;
    }

    td.td-action, td.td-identifier
    {
        width: 22px;
        text-align: center;
        vertical-align: middle;
    }


    .table-hover tr:hover, .table-admin tr:hover
    {
        background-color: #DFE0CC;
    }

    .table-admin a
    {
        color: #333333;
        text-decoration: none;
    }

    .table-vertical th
    {
        background-color: #e7e7e7;
        text-align: right;
        vertical-align: middle;
        width: 170px;
    }

    th .icon-sort
    {
        margin-right: 5px;
    }

    /* COMPONENTI
    ---------------------------------- */

    /* menu */

    .menu 
    {
        margin: 0px;
        padding: 0px 20px;
    }

    .menu li
    {
        list-style-type: none;
        float: left;
        padding: 0;
        margin: 0px !important;
    }

    .menu_primary-box
    {
        background-color: #232323;
    }

    #menu_primary
    {
        margin: 0;
    }

    #menu_primary li ul, #menu_primary li ul li ul
    {
        display: none;
    }

    #menu_primary a, #menu_primary .menu-item-active span
    {	
        display: inline-block;
        text-decoration: none;
        background-repeat: no-repeat;
        background-position: 15px 8px;
        padding: 10px 20px;
    }

    #menu_primary a
    {
        color: #ffffff;
    }

    #menu_primary a.li-active
    {
        background-color: #b20000;
        font-weight: 500;
    }

    #menu_primary a:hover, #menu_primary .menu-item-active span
    {

        color: #fff;
    }

    #menu_column
    {
        padding: 0px;
    }

    /* blocchi generici */

    .block, #menu_column .menu-item
    {
        margin-bottom: 20px;
    }

    .block-title, .block h2, #menu_column h2
    {
        background-color: #B9C01D;
        padding: 10px 15px;
        font-size: 16px;
        margin-bottom: 5px;
        position: relative;
    }

    .block-title a, .block h2 a, #menu_column h2
    {
        color: #333333;
        text-decoration: none;
    }

    .block-int
    {
        padding: 10px 15px;
    }

    .block-simple
    {
        background: none;
    }

    .block-scroll
    {
        height: 150px;
        overflow: auto;
    }

    .categories-menu, .categories-menu ul
    {
        list-style-type: none;
    }

    .categories-menu
    {
        margin: 0px;
    }

    .categories-menu ul
    {
        margin-bottom: 0px;
    }

    .categories-menu a, .categories-menu .li-active
    {
        padding: 3px 7px;
        display: inline-block;
    }

    .categories-menu li
    {
        background-color: #DDDDDD;
    }

    /* contenuti */

    .content-info
    {
        margin: 20px 0;
    }

    .content-social-share 
    {
        margin: 20px 0px;
        padding: 0px;
    }

    .content-social-share  li
    {
        list-style-type: none;
        display: inline-block;
    }

    .content-file, .content-gmap, .content-video, .content-photo, .content-form
    {
        margin: 20px 0;
    }

    form
    {
        background: #f5f5f5;
        padding: 20px;
    }

    form label
    {
        width: 140px;
        float: left;
        padding: 5px 0 0 0;
        margin: 0 10px 10px 0;
    }

    .short-contact-form-filed
    {
        width: 300px;
    }

    .small-contact-form-filed
    {
        width: 150px;
    }

    .content-gallery-title
    {
        display: none;
    }

    .content-photo-image
    {
        width: 100%;
    }

    .content-gallery figcaption,.content-photo figcaption
    {
        display:none;
    }

    .content-file
    {
        margin: 20px 0;
    }

    .content-list
    {
        margin: 20px 0px;
    }

    .content-list li {
        list-style-type: none;
        margin: 0px 0px 10px 0px;
        padding: 0 0 10px 0;
        border-bottom: 1px dashed #e2e2e2;
    }

    .content-list-table {
        display: table;
        width: 100%;
        table-layout: fixed;
    }

    .content-list-img-td {
        display: table-cell;
        padding: 0 10px 0 0;
        vertical-align: top;
        width: 90px;
    }

    .content-list-img-td a {
        width: 89px;
        height: 89px;
        display: inline-block;
    }

    .content-list-img-td img {
        width: 89px;
        height: auto;
        padding: 1px;
        border: 1px solid #e2e2e2;
    }

    .content-list-text-td {
        display: table-cell;
        vertical-align: top;
        text-align: left;
    }

    .content-list-infos {
        font-size: 12px;
        color: #b5b5b5;
    }

    .content-list-title {
        margin: 0 0 10px 0;
    }

    .content-list-title a {
        color: #4e5050;
        font-weight: 700;
        text-decoration: none;
        font-size: 14px;
    }

    .node-gmap
    {
        width: 100%;
        height: 400px;
    }

    .box-960
    {
        width: 960px;
        margin: auto;
        position: relative;
    }

    /* logo header */

    .logo-header
    {
        width: 424px;
        height: 55px;
        background: transparent url(../images/layout/logo-header.png) no-repeat left top;
        display: inline-block;
        margin: 20px 0px;
        background-size: contain;
    }

    /* Header search box */

    .header-search-box
    {
        display: inline-block;
        width: 215px;
        float: right;
        margin: 20px 0;
        background: transparent url(../images/layout/bg-cerca-header.png) no-repeat left top;
    }

    .header-search-box form
    {
        padding: 0px;
        margin: 0px;
    }

    .header-search-box #content-search-key
    {
        border: none;
        box-shadow: none;
        padding: 5px;
        margin: 0px;
        background: transparent;
        width: 175px;
        float: left;
    }

    .btn-header-search
    {
        width: 27px;
        height: 27px;
        cursor: pointer;
        box-shadow: none;
        float: right;
        background: transparent;
    }

    /* social */

    .social
    {
        margin: 20px 0 10px 0;
        padding: 0px;
        list-style-type: none;
        display: inline-block;
    }

    .social li
    {
        display: inline-block;
    }

    /* Newsletter */

    #box-newsletter
    {
        display: block;
        padding: 10px;
        background: #f5f5f5;
    }

    #sidebar form
    {
        background: transparent;
        padding: 0px;
    }

    .newsletter-title
    {
        font-size: 14px;
        color: #3a3a3a;
        font-weight: bold;
        display: block;
        padding: 0 0 10px 0;
    }

    .newsletter-description
    {
        font-size: 12px;
        line-height: 14px;
        padding: 0 0 10px 0;
        display: block;
    }

    .newsletter-field
    {
        width: 58%;
    }

    .left-column-search-field
    {
        width: 60%;
    }

    #box-newsletter form
    {
        padding: 0px;
        margin: 0px;
    }

    /* Footer */

    #footer
    {
        background-color: #f0f0f0;
        padding: 0;
        margin: 0;
    }

    .footer-container
    {    
        padding: 20px 0 0 0;
    }

    #footer-left
    {
        float: left;
        width: 50%;	
    }

    #footer-right
    {
        float: right;
        width: 50%;
        text-align: right;
    }

    .footer-credentials
    {
        font-size: 12px;
    }

    .footer-credentials .box-960
    {
        border-top: 1px solid #dcdcdc;
        padding: 7px 0 0 0;
    }

    .footer-credentials p
    {
        margin: 0px;
    }

    .logo-footer
    {
        width: 240px;
        height: 36px;
        display: inline-block;
        background: transparent url(../images/layout/logo-header.png) no-repeat left top;
        background-size: contain;
    }

    .footer-adress-box
    {
        text-align: left;
    }

    .footer-adress-box p
    {
        margin: 0;
        padding: 0;
    }

    .footer-social
    {
        display: table-cell;
        vertical-align: middle;
        text-align: right;
        padding: 0 0 0 20px;
    }

    .footer-left
    {
        float: left;
    }

    .footer-right
    {
        float: right;
    }

    /* Menu footer */

    #footer #menu_primary
    {
        margin: 0px;
        padding: 0px;
        width: auto;
        display: inline-block;
    }

    #footer #menu_primary_container .box-960
    {
        width: auto;

    }

    .footer-informations-table
    {
        display: table;
        width: 100%;
        margin: 10px 0;
    }

    #footer #menu_primary_container
    {
        width: auto;
        background: transparent;
        text-align: right;
    }

    #footer #menu_primary li
    {
        padding: 0 5px;
        font-size: 12px;
    }

    #footer #menu_primary a, #menu_primary .menu-item-active span
    {
        padding: 5px;
    }

    /* paginazione */

    .pagination
    {
        text-align: center;
        margin-top: 10px;
        display: inline-block;
        width: 100%;
    }

    .pagination ul
    {
        margin: 0px;
    }

    .pagination li
    {
        display: inline-block;
        list-style-type: none;
        padding-right: 5px;
    }

    .pagination a
    {
        padding: 4px 8px;
        text-decoration: none;
        border: 1px solid #ddd;
    }

    li.pagination-active
    {
        padding: 4px 10px; 
        font-weight: bold;   
    }

    .pagination-pager
    {
        width: 20%;
        text-align: right;
        float: right;
    }

    .pagination-links
    {
        text-align: center;
    }

    /* help */

    .ui-tooltip 
    {
        padding: 10px;
        -webkit-box-shadow: none;
        box-shadow: none;
        font-size: 1em;
        color: #333333;
        font-family: Montserrat, sans-serif;
        background: #F2D268;
        border: 1px solid #EAC556;	
        border-radius: 0px;
    }

    body .ui-tooltip {
        border-width: 1px;
    }

    .spacer
    {
        text-align: center;
        border-top: 1px solid #b2b4b3;
    }

    .spacer-text
    {
        display: inline-block;
        position: relative;
        top: -15px;
        padding: 5px 10px;
        background-color: #fff;
        font-size: 11px;
    }

    /* blocchi generici */

    .block-title, .block h2, #menu_column h2, .comments-title
    {
        background: transparent;
        font-size: 20px;
        line-height: 20px;
        color: #34495e;
        text-transform: uppercase;
        margin: 0 0 20px 0;
        color: #b31b1b;
        border-bottom: 2px solid #b20000;
        font-weight: 500;
        padding: 0 0 5px 0;
        font-size: 20px;
    }

    #sidebar .block-int
    {
        padding: 0;
    }

    .comments-title
    {
        background: #385370;
        padding: 8px 0 4px 8px;
        color: #fff;
        margin: 0 0 15px 0;
    }

    /* commenti */

    .content-comment-box {
        margin: 20px 0;
    }



    .commentbox
    {
        border-bottom: 1px solid #ddd;
        margin: 0 0 15px 0;
        padding: 0 0 10px 50px;
        background: url(../images/layout/img-comment-user.png) no-repeat top left;
        background-size: 40px 40px;
        text-align: left;
        font-size: 13px;
    }

    #content_comments_add label
    {
        color: #385370;
        font-weight: 600;
        font-size: 16px;
        line-height: 16px;
        padding: 0 0 10px 0;
    }

    .comment-user-name
    {
        font-weight: 600;
        color: #385370;
        font-size: 16px;
    }

    #add_content_comment_form label[for="comment"] {
        margin: 0 0 10px 0;
        padding: 0;
        font-size: 16px;
        line-height: 16px;
    }

    .commentbox-title
    {
        border-top: 1px solid #d2d2d2;
        background-color: #f9f9f9;
        padding: 10px;        
    }

    .commentbox-body
    {
        margin: 5px 0 0 20px;
        padding: 10px 10px 10px 36px;
        text-align: left;
        font-size: 13px;
        border: 1px solid #e6e5e5;
        background: transparent url(../images/layout/replay-title-img.png) no-repeat 8px 11px;
        background-size: 20px;
    }

    .content-img-list
    {
        float: left;
        width: 31.4%;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        margin: 0 2% 2% 0;
    }

    .content-img-list:nth-child(3n+3)
    {
        margin: 0 0 2% 0;
    }    

    .filenode-thumb
    {
        display: table-cell;
    }

    .filenode-title
    {
        display: table-cell;
        padding: 0 0 0 10px;
        vertical-align: middle;
    }   

    .content-gallery-images
    {
        float: left;
        margin: 0 7px 7px 0;
    }

    .content-gallery-images img
    {
        width: 99.5%;
        height: auto;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
    }    

    figure:nth-child(7n+7) a
    {
        margin: 0 0 7px 0;
    }

    #cookie-bar
    {
        height: auto !important;
    }

    #submenu-box ul 
    {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    #submenu-box ul li 
    {
        padding: 0 0 7px 0;
        margin: 0 0 7px 0;
        border-bottom: 1px solid #d1d1d1;
    }

    #submenu-box ul li a 
    {
        padding: 0;
        text-align: left;
        text-decoration: none;
        display: block;
        font-size: 14px;
        line-height: 16px;
        color: #333;
    }

    #submenu-box .span-li-active 
    {
        padding: 0;
        color: #b20000;
        font-weight: 500;
        line-height: 16px;
    }

    #submenu-box ul li ul 
    {
        margin: 5px 0 0 10px;
        padding: 0;
        list-style-type: none;

    }

    /* */

    #submenu-box ul li ul li:last-child 
    {
        padding: 0;
        margin: 0 10px;
        border-bottom: none;
    }

    #submenu-box ul li:last-child 
    {
        border-bottom: none;
    }

    #submenu-box ul li ul li .span-li-active 
    {
        padding: 0;
        color: #b20000;
        font-weight: 600;
        font-size: 13px;
        line-height: 15px;
        display: block;
    }

    #submenu-box ul li ul li a 
    {
        font-size: 13px;
        line-height: 15px;
        color: #333;
        font-weight: 600;
    }

    #menu_primary li ul 
    {
        background-color: #5d5d5d;
        top: 40px!important;
        width: 200px!important;
        display: none;

    }

    #menu_primary li ul li 
    {
        padding: 0!important;
        background: none;
        display: inline-block;
        float: left;
        width: 100%!important;
        left: 0px!important;
    }

    #menu_primary li ul li ul
    {
        margin: 0;
        left: 200px!important;
        top: 0px!important;        
    }

    #menu_primary li ul li ul
    {
        background-color: #777777;
    }

    #menu_primary_container ul li a:hover {
        color: #ffffff !important;
        background: #880000;
    }

    #menu_primary li ul li a 
    {
        text-transform: initial;
        float: none;
        display: inline-block;
        padding: 8px 10px!important;
        font-weight: 500;
        font-size: 13px;
        white-space: initial;
        width: 180px;
    }

    .logo-2open-credentials
    {
        display: inline-block;
        width: 49px;
        height: 10px;
        float: right;
        margin: 5px 0 0 5px;
        background: url(https://www.2open.it/loghi/2open-footer-black.png) no-repeat center center;
    }

    .logo-footer-credentials-a
    {
        display: inline-block;
    }

    .content-gallery figure
    {
        width: 23.5%;
        display: inline-block;
        float: left;
        margin: 0 2% 2% 0;
    }

    .content-gallery figure:nth-child(4n+4)
    {
        margin: 0 0 2% 0;
    }

    .content-gallery figure a
    {
        float: none;
        margin: 0;
    }

    #content.content-wired
    {
        width: 100%;
    }

    #menu_cookie_container li a
    {
        padding: 0
    }

    .right
    {
        float: right;
    }

    .left
    {
        float: left;
    }

    .social-fb {
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-fb.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }

    .social-tw{
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-tw.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }

    html, body 
    {
        height: 100%;
    }

    #wrapper {
        min-height: 100%;
        height: auto!important;
        height: 100%;
        margin: 0 auto -153px;
    }

    #footer, .push 
    {
        height: 183px;
        clear: both;
    }

    #region-blocks_header
    {
        display: inline-block;
        color: #606060;
        font-size: 13px;
        max-width: 85%;
        margin: 7px 0;
    }

    #region-blocks_header .block, #region-blocks_header .block-int, #region-blocks_header p
    {
        margin: 0;
        padding: 0;
        background: transparent;
    }

    .header-information-box {
        border-bottom: 1px solid #dcdcdc;
    }

    .nivoSlider img {
        position: absolute;
        top: 0px;
        left: 50%!important;
        width: 2500px!important;
        height: 267px!important;
        margin-left: -1250px;
    }

    .nivo-prevNav {
        left: 2%!important;
        text-indent: -999999px;
        width: 32px;
        height: 57px;
        display: inline-block;
        background: url(../images/layout/arr-backward.png) no-repeat center center;
        opacity: 0.5;
    }

    .nivo-nextNav {
        right: 2%!important;
        text-indent: -999999px;
        width: 32px;
        height: 57px;
        display: inline-block;
        background: url(../images/layout/arr-forward.png) no-repeat center center;
        opacity: 0.5;
    }

    .header-table
    {
        display: flex;
        width: 100%;
        justify-content: space-between;
        align-items: center;
    }

    .header-logo-td, .header-contacts-td, header-search-td
    {
        display: table-cell;
        vertical-align: middle;
        text-align: left;
    }

    .header-contacts-td
    {
        text-align: right;
        position: relative;
        top: 4px;
    }

    #header .social-fb, #header .social-tw, #header .social-you
    {
        width: 40px;
        height: 40px;
        margin: 0 7px 0 0;
    }


    .social-you
    {
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-you.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;	
    }

    .header-whatsapp-box
    {
        background: url(../images/layout/header-whatsapp.png) no-repeat top left;
        background-size: contain;
        height: 51px;
        width: 155px;
        float: right;
        color: #fff;
        font-weight: bold;
        font-size: 16px;
        position: relative;
        margin-left: 5px;
        cursor: text;
    }

    .header-whatsapp-box:hover
    {
        color: #fff;
    }

    .header-whatsappa-text
    {
        position: absolute;
        top: 10px;
        right: 9px;
    }

    #sidebar .col-sx-payment-form-it
    {
        background: url(../images/layout/pagamento-tour-it.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
    }

    #sidebar .col-sx-payment-form-en
    {
        background: url(../images/layout/pagamento-tour-en.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
    }

    #sidebar .col-sx-payment-form-es
    {
        background: url(../images/layout/pagamento-tour-es.png) no-repeat top center;
        width: 100%;
        background-size: contain;
        height: 158px;
        display: inline-block;
        cursor: pointer;
    }

    .col-sx-payment-box-img
    {
        opacity: 0;
        height: 158px;
        padding: 0;
        cursor: pointer;
    }

    .tripadvisor-box
    {
        background: url(../images/layout/tripadvisor.png) no-repeat top center;
        width: 250px;
        height: 189px;
        display: inline-block;
    }

    .col-sx-payment-box 
    {
        margin: 0 0 10px 0;
    }

    .hp-info-box
    {
        background: url(../images/layout/bg-infobox.jpg) no-repeat center center;
        padding: 15px;
        text-align: center;
        color: #fff;
        font-size: 16px;
        margin: 35px 0 0 0;
    }

    .hp-info-box a
    {
        color: #fff;
        text-decoration: none;
    }

    .hp-infobox-title {
        text-transform: uppercase;
        display: inline-block;
        margin: 0 10px 0 0;
    }

    .hp-infobox-tel
    {
        background: url(../images/layout/ico-phone.png) no-repeat left center;
        padding: 0 0 0 23px;
        display: inline-block;
        margin: 0 10px 0 0;
    }

    .hp-infobox-cel
    {
        background: url(../images/layout/ico-mobile.png) no-repeat left center;
        padding: 0 0 0 19px;
        height: 21px;
        display: inline-block;
        margin: 0 10px 0 0;
    }   

    .hp-infobox-email
    {
        background: url(../images/layout/ico-email.png) no-repeat left center;
        padding: 0 0 0 25px;
        display: inline-block;        
    }

    #footer a
    {
        color: #333333;
    }

    #menu_cookie_container li
    {
        padding: 0 20px 0 0;
    }

    .footer-info-box {
        margin: 15px 0;
    }

    .footer-info-box span
    {
        margin: 0 10px 0 0;
    }

    .footer-table
    {
        display: table;
        width: 100%;
        margin: 15px 0;
    }

    .footer-info-td, .footer-informations-td, .footer-tripadvisor-box
    {
        display: table-cell;
        vertical-align: middle;
        text-align: left;
    }

    .footer-tripadvisor-box {
        position: relative;
    }

    #CDSWIDCOE {
        width: 100%!important;
        margin: auto!important;
    }

    #CDSWIDCOE.widCOE .widCOETitle 
    {
        font-size: 16px!important;
    }

    #CDSWIDCOE.widCOE .widCOEDate .widCOEDateText
    {
        font-size: 14px!important;
    }

    #region-blocks_tourhp
    {
        text-align: center;
        margin: 35px 0 0 0;
    }

    #region-blocks_tourhp .block-int
    {
        text-align: left;
    }

    #region-blocks_tourhp h2
    {
        color: #b31b1b;
        width: auto;
        border-top: 2px solid #b20000; 
        border-bottom: none;
        margin: auto;
        display: inline-block;
        text-align: center;
        font-weight: 500;
        padding: 5px 0 0 0;
        font-size: 20px;
    }

    .footer-info-td {
        width: 40%;
    }

    #block_homepage_contents, .homepage-content #region-blocks_evidence
    {
        margin: 40px 0 0 0;
        text-align: center;
    }

    #region-blocks_evidence ul
    {
        list-style-type: none;
        margin: 0;
        padding: 0;       
    }

    #block_homepage_contents ul, .homepage-content #region-blocks_evidence ul
    {
        list-style-type: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        justify-content: center;
        flex-wrap: wrap;
    }

    #block_homepage_contents ul li, #region-blocks_evidence ul li
    {
        width: 230px;
        border: 1px solid #d9d9d9;
        border-radius: 6px;
    }

    #block_homepage_contents img
    {
        width: 100%;
        height: 160px;
        max-height: 160px;
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
    }

    .block-homepage-tour-title
    {
        min-height: 30px;       
    }

    .block-homepage-tour-date
    {
        background: #b20000;
        color: #fff;
        font-size: 12px;
        font-weight: 600;
        padding: 5px 10px;
    }

    .tour-start-datetime .ico-data
    {
        background: url(../images/layout/ico-calendar.png) no-repeat left center;
        padding: 0 0 0 17px;
    }

    #block_homepage_contents .tour-price {
        color: #b20000;
        font-size: 21px;
        margin: 0 0 15px 0;
    }

    .tour-start-datetime .ico-clock
    {
        background: url(../images/layout/ico-clock.png) no-repeat left center;
        padding: 0 0 0 17px;      
    }    

    .block-homepage-tour-title
    {
        color: #000;
        font-weight: 600;
        font-size: 18px;
        text-decoration: none;
    }

    .block-homepage-text {
        border-top: 1px solid #d9d9d9;
        padding: 15px 0 0 0;
        margin: 15px 0 0 0;
    }

    .block-homepage-int-text
    {
        padding: 15px;
    }

    #block_homepage_contents .block-int, #region-blocks_evidence .block-int
    {
        padding: 0;
    }

    #block_homepage_contents h2, .homepage-content #region-blocks_evidence h2
    {
        display: inline-block;
    }

    .tour-start-datetime
    {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    #region-blocks_evidence ul li
    {
        margin: 0 0 20px 0;
        width: 100%;
    }

    #block_homepage_contents ul li, .homepage-content #region-blocks_evidence ul li
    {
        width: 223px;
        margin: 0 20px 20px 0;
    }

    #block_homepage_contents ul li a, #block_homepage_contents ul li a:hover
    {
        color: #333333;
        text-decoration: none
    }


    #block_homepage_contents ul li:nth-child(4n+4), #block_homepage_contents ul li:last-child, .homepage-content #region-blocks_evidence ul li:last-child
    {
        margin: 0 0 20px 0;
    }   

    #region-blocks_evidence a {
        padding: 15px;
        display: block;
        color: #000;
        text-decoration: none;
    }

    #menu_primary li.li-6 ul
    {
        display: none!important;
    }

    #header #content-search-key {
        width: 200px;
    }


    .header-search-td {
        text-align: center;
    }

    .content-node-children.grid {
        list-style-type: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: stretch;
        align-items: flex-start;
    }

    .content-node-children.grid li {
        width: 31%;
        margin: 0 3.5% 30px 0;
    }

    .content-node-children.grid li:nth-child(3n+3) {
        margin: 0 0 10px 0;
    }

    .thumb-image img {
        width: 100%;
        height: auto;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        box-sizing: border-box;
    }

    .content-node-children.grid li a {
        text-decoration: none;
        text-align: center;
    }

    .node-children-title {
        font-weight: 600;
        font-size: 14px;
        line-height: 16px;
        margin: 10px 0 0 0;
        text-transform: uppercase;
    }

    .node-children-abstract {
        color: #333;
        font-size: 13px;
        line-height: 15px;
        margin: 5px 0 0 0;
    }

}

@media (min-width: 1247px)
{

    body
    {
        font-size: 14px;
    }

    #block_homepage_contents ul li, #block_homepage_contents ul li:nth-child(4n+4), .homepage-content #region-blocks_evidence ul li
    {
        width: 288px;
        margin: 0 20px 20px 0;
    }

    #block_homepage_contents ul li:nth-child(4n+4), #block_homepage_contents ul li:last-child, #region-blocks_evidence ul li:nth-child(4n+4), #region-blocks_evidence ul li:last-child
    {
        margin: 0 0 20px 0;
    }   

    #sidebar, #sidebar-right {
        width: 250px!important;
    }   

    #page, .box-960 
    {
        width: 1227px;
        padding: 0 10px;
    }

    .col-sx-payment-box {
        margin: 0 0 25px 0;
    }

    #footer #menu_primary a, #menu_primary .menu-item-active span
    {
        font-size: 14px;
    }

    #footer
    {
        font-size: 14px;
    }

    #footer, .push {
        height: 163px;
        clear: both;
    }

    #content
    {
        padding: 0 0 0 30px;
    }

    #sidebar-right {
        padding: 0 0 0 30px;
    }

    #header #content-search-key 
    {
        width: 280px;
    }

}

ul.breadcrumb-ul {
    list-style-type: none;
    display: inline-block;
    margin: 0 0 0 5px;
}


ul.breadcrumb-ul li {
    display: inline-block;
}

.breadcrumb-prefix
{
    display:inline-block;
}


#cookie-bar .cb-enable, #cookie-bar .cb-enable:hover, #cookie-bar .cb-policy, #cookie-bar .cb-policy:hover {
    background: #b20000!important;
}

.homepage-event-info{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 15px 15px 0 15px;
    border-top: 1px solid #e6e6e6;
}
.event-price{
    font-size: 22px
}
#events-list{
    border: 1px solid #f0f0f0;
}
#events-list th{
    background: #f0f0f0
}
#events-list th, #events-list td{
    vertical-align: middle
}
@media (max-width: 979px) and (min-width: 240px){
    #events-list {
        border: none;
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
    .nomobile {
        display: none;
    }
    #events-list, #events-list tbody, #events-list tr, #events-list td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
    #events-list tr {
        border: 1px solid #ddd;
        border-radius: 3px;
        margin: 0 0 10pt 0;
    }
    #events-list td {
        padding: 5pt;
        border-bottom: 1px solid #ddd;
    }
}
@media (min-width: 980px){
    .calendar-container {
        margin-top: 47px;
    }
}
.calendar-container, .hp-visit-guide-container {
    background: #fff;
    border-radius: 6px;
    margin: 0 0 30px 0;
	font-weight: 600;
}
.calendar-container .calendar-title, .visit-guide-title {
    background: #b20000;
    color: #fff;
    padding: 10px 0;
    font-size: 16px;
    text-align: center;
}
.calendar-container .calendar-body, .hp-visit-guide-body {
    padding: 0;
    border: 1px solid #eab8b8;
    border-top: none;
}
.calendar-container .calendar-month-box {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 8px 8px 0 8px;
    background: #f3f3f3;
}

#sidebar .calendar-arrow
{
	width: 11px;
	height: 11px;
	display: inline-block;
	overflow: hidden;
	text-indent: -9999999px;
}

.calendar-body {
    font-weight: 600;
}

#sidebar .calendar-arrow.prev
{
	background: url(../images/layout/arr-left.png) no-repeat center center;
	background-size: contain;
}

#sidebar .calendar-arrow.next
{
	background: url(../images/layout/arr-right.png) no-repeat center center;
	background-size: contain;
}

@media (min-width: 980px){
    .calendar-container .calendar-table th {
		background: #efefef;
		border-top: none;
		padding: 8px 0;
		text-align: center;
		vertical-align: middle;
		font-size: 11px;
		color: #b20000;
    }
	
	#sidebar .calendar-month {
		font-size: 13px;
	}
}
.calendar-container .calendar-table th {
    border-top: none;
    padding: 4px;
    text-align: center;
    vertical-align: middle;
	background: #f3f3f3;
	color: #b20000;
}
.content-list-text .tour-start-datetime {
    background: #b20000;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 2px 10px;
    margin-bottom: 10px;
}

.calendar_day-today, .calendar_day-active, .calendar-table td {
    padding: 5px;
    text-align: center;
    vertical-align: middle;
    font-weight: 600;
	border-top: none;
}

.calendar-table td {
    width: 35px;
    height: 35px;
    box-sizing: border-box;
}

.calendar-table td b, .calendar-table td a {
    font-weight: 600;
    font-size: 14px;
}

.calendar_day-active a{
    color: #b20000;
    text-decoration: none;
    border: 1px solid #b20000;
    padding: 0;
    border-radius: 100px;
    width: 25px;
    height: 25px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
	font-size: 13px!important;
    line-height: 15px;
}
 #events-list td{
     border-top: 1px solid #ddd;
     border-bottom: 0;
	 padding: 10px;
	 box-sizing: border-box:
}
#events-list th{
    border-top: 0;
	padding: 10px;
	box-sizing: border-box:
}
#events-list{
    border: 1px solid #ddd !important;
    border-radius: 5px;
    overflow: hidden;
    border-collapse: inherit;
	margin-bottom: 20px;
}
.reserve{
    float:right
}

#events-list a {
    text-decoration: none;
}

.booking{
    width: 20px;
    fill: #b31b1b;
    margin: 0 3px 0 0;
}
.box-booking{
    display: flex;
    justify-content: flex-end;
    align-items: center
}
.form-field{
    text-align: left !important;
}

#region-blocks_evidence a{
    font-weight: 600 !important
}