/* Regular */
@font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-Regular.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-Regular.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  
  /* Light */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-Light.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-Light.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
  }
  
  /* Medium */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-Medium.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-Medium.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
  }
  
  /* SemiBold */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-SemiBold.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-SemiBold.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }
  
  /* Bold */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-Bold.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-Bold.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
  }
  
  /* ExtraBold */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-ExtraBold.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-ExtraBold.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
  }
  
  /* Black */
  @font-face {
    font-family: 'Nuventa';
    src: url('../css/fonts/Nuventa/Nuventa-Black.woff2') format('woff2'),
         url('../css/fonts/Nuventa/Nuventa-Black.woff') format('woff'),
         url('../css/fonts/Nuventa/Nuventa-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
  }

  @font-face {
    font-family: 'Kohinoor';
    src: url('../css/fonts/Kohinoor/kohinoor-devanagari.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  

/* layout da 240px a 767px */
html {
    font-family: 'Nuventa';
}

html p {
    font-size: 14pt;
    font-family: 'Kohinoor';
    margin: 0 auto !important;    
} 

#managament-edit-link
{
    text-align: right;
    margin: 10px 0px;
}

#footer #menu_primary ul li, 
#footer #menu_works ul li,
#footer #menu_last_works ul li {
    position: relative;
    padding-left: 25px;
}

#footer #menu_primary ul li::before,
#footer #menu_works ul li::before{
    content: '';
    position: absolute;
    left: 0;
    top: 5px;
    width: 16px;
    height: 16px;
    background-image: url('../images/layout/ico_arrow_right.png');
    background-size: contain;
    background-repeat: no-repeat;
}

#footer #menu_last_works ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 16px;
    height: 16px;
    background-image: url('../images/layout/ico_arrow_menu.png');
    background-size: contain;
    background-repeat: no-repeat;
}

#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;
}

.same-width {
    display:flex; 
    align-items:center; 
    height:105px;
}

.same-width > div{
    text-align: left;
}

.same-width > div a{
    color: #fff;
}

.truncate-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; /* numero massimo di righe */
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    line-height: 1.5;              
    white-space: normal;  
  }

.abstract {
    color: #003d8f;
}

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

#region-blocks_lastworks li
{
    background: #fff;
    padding: 10px;
    margin: 0 10px 15px 10px;
}

#region-blocks_lastworks a
{
	text-decoration: none;
}

#region-blocks_lastworks #block_block_13,
#region-blocks_lastworks #block_block_14
{
	background-color: #f7f7f7;
}

.sx-lastworks-img img {
    width: 50%;
}



#region-blocks_lastworks #block_block_14 h3 {
    margin-left: 8px !important;
}

#region-blocks_lastworks #block_block_14 ul > li{
    background-color: transparent;
}

#menu_cookie li{
    font-size: 14pt;
    line-height: 1.5;
}

#sidebar .block{
    margin: 20px auto;
}

#block_block_7 .card-header a{
    text-decoration: none;
    color: #000
}

#block_block_7 .card-header a h4{
    line-height: 1.5;
}

/* content list - liste create da 'visualizza le sottopagine' */

.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: 89px;
    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;
}

.footer-credentials .box-960 #footer-left,
.footer-credentials .box-960 #footer-right{
    font-size: 10pt !important;
}
    
@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: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif; */
        font-size: 12pt;
        line-height: 1.5em;
        margin: 0;
        padding: 0;
    }
    
	html, body 
    {
        height: 100%;
    }
	
    a 
    {
        color: #003d8f;
    }  
    
    h1, h2, h3, h4, h5, h6
    {
        margin: 0 0 14pt 0;
        text-align: left;
    }

    h1 
    {
        font-size: 26pt;
        line-height: 36pt;
    }

    h2 
    {
        font-size: 27pt;
        line-height: 37pt;
    }

    h3 
    {
        font-size: 23pt;
        line-height: 33pt;
    }

    h4 
    {
        font-size: 20pt;
        line-height: 30pt;
    }

    h5, h6 
    {
        font-size: 18pt;
		line-height: 28pt;
    }

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

    img
    {
        max-width: 100%!important;
        height: auto;
        width: auto;
    }
	
	#cookie-bar
	{
		background: rgba(0,0,0,0.8)  !important;
		position: fixed !important;
		height: 100% !important;
		width: 100% !important;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
	}
	
	#cookie-bar p
	{
		width: 75%;
		margin: auto;
		background: #fff;
		height: auto;
		padding: 30px;
		color: #000;
		text-align: center;
		-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		border-top: 15px solid #184360;
		border-image-source: linear-gradient(to left, #B9C01D 0%, #2394C4 100%); 
		border-image-slice: 4;
		position: relative;
	}
	
	#cookie-bar p:before
	{
		content: "";
		display: block;
		background: url(../images/layout/logo-footer.png) no-repeat 50% 50%;
		height: 40px;
		width: 210px;
		background-size: 180px;
		margin: auto;
		margin-bottom: 20px;
	}
	
	#cookie-bar p b
	{
		/* font-family: Arial; */
		width: 100%;
		margin: auto;
		font-size: 14pt;
		font-weight: bold;
		text-transform: uppercase;
		margin-bottom: 10px;
	}
	
	
	#cookie-bar .cb-enable, #cookie-bar .cb-enable:hover
	{
		background: #2394C4!important;
		color: #fff;
		padding: 10px 0px;
		margin: auto;
		text-align: center;
		width: 100%;
		margin-top: 20px;
	}
	
	#cookie-bar .cb-policy, #cookie-bar .cb-policy:hover
	{
		background: #000!important;
		color: #fff;
		padding: 10px 0px;
		margin: auto;
		text-align: center;
		width: 100%;
		margin-top: 20px;
	}
	
	#cookie-bar .cb-policy:hover, #cookie-bar .cb-enable:hover
	{
		opacity: 0.8;
	}
    
    #image-header, .content-gmap, .content-video, .content-photo
    {
        margin: 0 0 21pt 0;
    }

    #content
    {
        width: 100%!important;
    }

    #header 
    {
        height: 114px;
        text-align: center;
        background: #fff;
    }

    #menu_top
    {
        margin: 5%;
    }

    #footer_menu
    {
        margin: 5%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 1.25rem;
    }
    
    .phone-number-container
    {
        text-align: center;
        padding: 10px;
    }
    
    .phone-number-box 
    {
        background: url(../images/layout/ico-contact.png) no-repeat left center;
        background-size: 40px;
        padding: 3% 0 3% 45px;
        text-align: left;
        display: inline-block;
    }
    
    .mobile-phone-number 
    {
        color: #000;
        text-decoration: none;
        font-weight: 600;
        font-size: 16px;
    }

    #page
    {
        /* margin: 5%; */
        padding: 0;
        /* text-align: justify; */
    }

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

    #language-switcher a
    {
        padding: 2%;
        margin: 0 7pt;
        width: 20pt;
        height: 20pt;
        display: inline-block;
    }
    
    .node-gmap
    {
        height: 200px;
    }

    .logo-header 
    {
        width: 300px;
        height: 40px;
        background: transparent url(../images/layout/logo-header.png) no-repeat center top;
        display: block;
        margin: 5% 0;
        background-size: contain;
    }
    
    .logo-footer
    {
        width: 100%;
        height: 46px;
        background: transparent url(../images/layout/logo-footer.png) no-repeat center top;
        display: block;
        margin: 5% 0;
        background-size: contain;        
    }
    
    label
    {
        text-align: left;
        display: block;
    }
    
    .block input
    {
        width: 100%;
    }
    
    .block input[type="submit"]    
    {
        width: 100%;
    }
    
    .block h2
    {
        margin: 0 auto;
    }
    
    #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: 14pt 0;
        text-align: left;
    }
    
    .footer-credentials 
    {
        background: #595959;
        color: #ffffff;
        padding: 14pt 5%;
    }
    
    .footer-credentials a
    {
        color: #fff;
        text-decoration: none;
    }
    
    .message-error 
    {
        background-color: #CE453E;
        color: #FFFFFF;
        padding: 5%;
        margin: 0 0 14pt 0;
    }
	
	.message-ok 
    {
        background-color: #A9D673;
		color: #FFFFFF;
        padding: 5%;
        margin: 0 0 14pt 0;
    }

    .message-alert
    {
        background-color: #F2D268;
		color: #FFFFFF;
        padding: 5%;
        margin: 0 0 14pt 0;
    }
	
	.field-privacybox, .scroll-box
    {
        background-color: #FFFFFF;
        border: 1px solid #CCCCCC;
        height: 70px;
        margin: 0 0 20px 0;
        overflow-y: scroll;
        padding: 10px;
		box-sizing: border-box;
    }
	
	.content-gallery-img {
		display: inline-block;
		width: 100%;
		box-sizing: border-box;
	}
	
	.social
	{
		margin: 10pt 0;
		padding: 0;
		list-style-type: none;
		display: inline-block;
		width: 100%;
		box-sizing: border-box;
	}
	
	.btn
	{
		display: block;
		padding: 7pt;
		font-size: 12pt;
		background: #FDC900;
		border: none;
		text-decoration: none;
		text-align: center;
		color: #000;
		font-family: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif;

	}
	
	.social li
	{
		float: left;
		margin: 0 7pt 0 0;
	}
	
	.social li:nth-child(4)
	{
		max-width: 70px;
	}
    
    .form-field-error
    {
        color: #CE453E;
        display: block;
    }
	
	.footer-right {
		text-align: center;
		padding: 0 5%;
	}
	
	#menu_cookie_container {
		display: inline-block;
	}
    
    textarea
    {
        height: 140px;
        width: 100%;
		/* font-family: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif; */
		padding: 7pt;
		box-sizing: border-box;

    }
    
    input[type="submit"]
    {
        width: 100%;
		/* font-family: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif; */

    }
    
    input[type="checkbox"]
    {
        width: auto;
    }
    
    .newsletter-description 
    {
        margin: 7pt 0;
    }
	
	#sidebar .block .btn
	{
		margin-top: 15px;
	}
	
	#sidebar form.block
	{
		background: transparent;
	}

    .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 
    {
        border: none;
        box-shadow: none;
        padding: 7pt;
        margin: 0px;
        background: transparent;
        width: 82%;
        float: left;
    }

    #header #content-search-submit 
    {
        width: 10%;   
        cursor: pointer;
        border: none;        
        box-shadow: none;
        float: right;
        background: transparent;
    }

    input
    {
        width: 100%;
        padding: 7pt;
        font-size: 12pt;
		/* font-family: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif; */
		box-sizing: border-box;
    }

    p
    {
        margin: 0 0 10pt 0;
    }

    #footer
    {
        background-color: #f7f7f7;
        padding: 0;
        border-top: 1px solid #CCCCCC;
        margin-top: 5%;
    }

    .footer-left{
        padding: 20px;
    }

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

    .content-gallery-title
    {
        font-size: 16pt;
        font-weight: bold;
    }
        
    .content-gallery figcaption,.content-photo figcaption
    {
        display:none;
    }

    .nomobile
    {
        display: none;
    }
	
	.comments-title
    {
		background: #2394C4;
		padding: 8px 0 4px 8px;
		color: #fff;
		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;
	}

    #backend-goto a
    {
        background-color: #2394C4;
        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_menu .slicknav_menutxt
    {
        color: #707173!important;
        text-shadow: none!important;
    }

    .slicknav_nav li
    {

    }

    .slicknav_nav
    {
        background: transparent;
    }

    .slicknav_parent ul li
    {

    }

    .slicknav_nav a
    {
        padding: 10pt!important;
        margin: 1px 0 0 0!important;
        background-color: #222628;
	    text-align: left;
        color: #fff;
    }
	
	#menu_primary-mobile {
		/* margin: 5% 0 0 0; */
	}

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

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

    .slicknav_nav a:hover a
    {

        background: #222628!important;

    }	

    .slicknav_nav .slicknav_item
    {

        background-color: #222628;
        margin: 1px 0 0 0!important;
    }
    
    .content-gallery-title 
    {
        margin: 14pt 0 7pt 0;
    }
    

    
    .content-img-list:nth-child(4n+4)
    {
        margin: 0 0 2% 0;
        
    }  
    
    .content-gallery figure 
    {
        width: 22.5%;
        display: inline-block;
        float: left;
        margin: 0 2.5% 2% 0;
    }  

	.content-img-list
    {
        float: left;
        width: 22.5%;
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
        margin: 0 2.5% 2% 0;
		box-sizing: border-box;
    }	
    
    .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;
    }
    
    .content-gallery figure:nth-child(4n+4) a
    {       
        margin: 0 0 2% 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; */
        background-color: #e7e7e7;
    }
	
	#sidebar form#sidebar-form
	{
		padding: 20px;
	}
    
    .block-int
    {
        padding: 5%;
    }
	
	 /* paginazione */

    .pagination
    {
        text-align: center;
        margin-top: 10px;
    }

    .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
    {
            width: 80%;
            text-align: center;
            float: left;
    }
    
    .logo-2open-credentials
    {
        display: inline-block;
        width: 53pt;
        height: 10pt;
        background: url(https://www.2open.it/loghi/2open-footer-mobile.png) no-repeat center center;
        background-size: contain;
        float: right;
        margin: 0 0 0 5px;
    }
    
    .logo-footer-credentials-a
    {
        display: inline-block;
    }
	
	
	.node-product-text-box {
		padding: 10pt;
	}
	
	
	.node-product-text-box {
		padding: 10pt;
	}
	
	#region-blocks_child .block
	{
		background: transparent !important;
	}
	
	#region-blocks_child a
	{
		text-decoration: none;
	}
	
	#region-blocks_child .block h2
	{
		padding-left: 0px;
		background: transparent;
		text-align: center;
	}
	
	#region-blocks_child ul
	{
		list-style-type: none;
		margin: 10px 0px;
	}
	
	#region-blocks_child .container-li
	{
		display: flex;
		flex-direction: column;
	}
	
	#region-blocks_child .block-img
	{
		width: 100%;
		margin: 10px auto;
		text-align: center;
	}
	
	#region-blocks_child .container-li .btn
	{
		margin: 20px auto;
	}
	
	ul.content-node-children.grid
	{
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}

    .content-node-children a {
		text-decoration: none;
	}
	
	.content-node-children li
	{
		margin: 0 0 20px 0;
		padding: 20px;
		width: 48%;
        box-sizing: border-box;
		background: #fff;
		box-shadow: 0px 0px 15px -10px rgba(0, 0, 0, 0.7);
	}

    .content-node-children .thumb-image img {
		width: 100%;
		height: 150px;
		max-width: 100%;
		object-fit: cover;
	}

	.content-node-children .node-children-title {
		text-align: center;
		font-weight: bold;
		font-size: clamp(0.625rem, 0.5032rem + 0.8119vw, 1rem);
		margin: 10px 0 0 0;
		display: block;
	}
	
	.ml-auto
	{
		margin-left: auto;
	}

	.accordion
	{
		border: 1px solid rgba(0,0,0,.125);
		border-radius: .25rem;
		margin: 20px auto;
	}
	
	.accordion-header
	{
		padding: .75rem 1.25rem;
		margin-bottom: 0;
		background-color: rgba(0,0,0,.03);
		border-bottom: 1px solid rgba(0,0,0,.125);
		cursor: pointer;
		display: flex;
		align-items: center;
	}
	
	.accordion-body
	{
		padding: 1.25rem 1.25rem 0.8rem 1.25rem;
	}
	.accordion .collapsed
	{
		display: none;
	}

	.arrow-down
	{
		width: 0; 
		height: 0; 
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #000;
	}
	.arrow-up
	{
		width: 0; 
		height: 0; 
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-bottom: 10px solid black;
	}
	
	.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;
    }
	
	.social-insta
	{
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-insta.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }
	
	.social-wa
	{
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-wa.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }
	
	/* nivo slider  MOBILE */
	
	.nivoSlider
	{
		position: relative !important;
		width:100%;
		height:auto;
		overflow: hidden;
		margin: 0;
	}
	
	.nivoSlider img
	{
		left: 0 !important;
        width: 100% !important;
        height: auto !important;
        margin-left: 0 !important;
	}
	
	.nivo-controlNav
	{
		display: none !important;
	}
	
	.nivo-prevNav
	{
		left: 2%!important;
		top: 0 !important;
		text-indent: -999999px;
		width: 32px;
		height: 100%;
		display: inline-block;
		background: url(../images/layout/arrow-left.png) no-repeat center center;
		background-size: 30px;
		opacity: 0.5;
	}
	
	.nivo-nextNav
	{
		right: 2%!important;
		top: 0 !important;
		text-indent: -999999px;
		width: 32px;
		height: 100%;
		display: inline-block;
		background: url(../images/layout/arrow-right.png) no-repeat center center;
		background-size: 30px;
		opacity: 0.5;
	}
	
	.nivo-caption
	{
		position: relative;
		bottom: 80px;
		background: transparent;
		padding: 0;
		width: 90%;
		opacity: 1;
		overflow: visible;
		-moz-opacity: 1;
		filter: alpha(opacity=1);
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		margin: auto;
		height: auto;
		z-index: 99 !important;
		font-size: 30px;
		text-align: center;
		text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.40);
	}

    #block_block_4 h1{
        border-bottom: 2px solid #FDC900;
        padding-bottom: 25px;
        margin-bottom: 25px;
    }

    .overlay-main-slideshow{
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        padding: 13px;
        color: white;
        z-index: 10;
        background-color: rgba(0,0,0,0.6);
        height: calc(100dvh - 325px);
    }

    .overlay-main-slideshow a{
        position: relative;
        top: 150px;
    }

    .button-main-slideshow{
        width:98%; 
        height:50px;
        border-radius: 50px; 
        display:flex; 
        align-items:center; 
        justify-content:center; 
        gap: 1.2rem; 
        border: 2px solid white; 
        background:white;
    }

    .button-main-slideshow img{
        width:25px; 
        height:25px;
    }

    .button-contact{
        width:350px; 
        height:50px;
        border-radius: 50px; 
        display:flex; 
        align-items:center; 
        justify-content:center; 
        gap: 1.2rem; 
        border: 2px solid white; 
        background:white;
    }

    #block_block_4{
        background-color: white;
    }

    #block_block_6{
        padding: 20px;
    }

    #block_block_6 p{
        font-size: 16px;
    }

    #block_block_7{
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 20px;
    }

    .mobile-contact-form{
        border-radius: 25px;
        border: 1px solid grey;
    }

    .content-wrapper{
        padding: 0 20px;
    }

    .max-image-size{
        width:100%;
        height: 100%;
        object-fit: cover;
    }

    .overlay-title-slide {
        position: relative;
        font-family: 'Nuventa';
        font-size: 4rem; 
        font-weight: 700;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3; /* numero massimo di righe */
        overflow: hidden;
        text-overflow: ellipsis;
        width: 400px; 
        line-height:1;
        top: 90px;
    }
    
    .overlay-sub-slide {
        position: relative;
        font-size: 1.5rem;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4; /* numero massimo di righe */
        overflow: hidden;
        text-overflow: ellipsis;
        width: 400px;
        line-height: 1.5;
        top: 90px;
      }

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

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

    .same-width {
        height: 200px;
        background-color: #292d2f;
        color: #fff;
        justify-content: space-around;
    }

    .same-width p{
        margin: 0 auto !important;
    }

    .iso9001-header, 
    .exc4-header, 
    .all-cert-header, 
    .iso9001-header > div, 
    .exc4-header > div, 
    .all-cert-header > div,
    .all-cert-header a{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    #block_block_5 > .box-960 h1{
        text-align: center;
        margin: 40px auto auto auto;
    }


    #block_block_5 .slick-slide{
        padding: 5px;
    }
    
    #block_block_5 .slick-slide > div{
        padding: 20px;
        width: 290px;
        height: 290px;
        display: flex;
        justify-content: center;
        border: 1px solid #F7F7F7;
        background-color: #f7f7f7;
    }
    
    #block_block_5 img{
        object-fit: contain;
        max-width: 90%;
    }

    #block_block_7{
        display:flex;
        justify-content: center;
        border-bottom: 3px solid #F7F7F7;
    }

    #block_block_7 .card {
        width: 185px;
    }

    #block_block_7 .card-header {
        border-bottom: 2px solid #FDC900;
        margin-bottom: 40px;
    }

    #block_block_7 .card-header h3{
        margin-bottom: 30px;
    }

    #block_block_7 .card-body {
        border: 1px solid #F7F7F7; 
        background: white;
        height: 285px;
    }

    #block_block_8 > div h2 {
        border-bottom: 2px solid #FDC900;
        font-weight: 400;
    }

    #block_block_8 .card {
        position: relative; /* necessario per posizionare l’h3 all’interno */
        width: calc(100% / 2);
    }

    #block_block_8 .card img {
        position: relative; /* necessario per posizionare l’h3 all’interno */
        width: 100%;
    }
    
    #block_block_8 .card h3 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;              /* copre tutta la card */
        display: flex;             /* centra il testo */
        justify-content: start;
        align-items: start;
        background: rgba(0, 0, 0, 0.5); /* overlay semi-trasparente */
        color: #fff;
        font-size: 1.2rem;
        margin: 0;
    }

    #block_block_8 .card h3 span{
        padding: 15px;
    }

    #block_block_8 #more-works-card .card-body{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }

    #block_block_8 #more-works-card img{
        width: 80px;
    }

    #block_block_9 {
        background-color: #222628;
        color: #fff;
    }

    #block_block_9 a{
        color: #fff;
    }

    #block_block_9 .box-960{
        padding: 20px 0 60px;
    }

    #block_block_9 .header-gallery{
        padding: 20px;
    }

    #block_block_9 .slick-slide > div{
        padding: 20px;
        display: flex;
        justify-content: center;
    }

    #block_block_9 img{
        object-fit: contain;
        max-width: 100%;
        height: 110px;
    }

    .footer-informations-table p{
        margin: 0 auto;
    }
    
    .footer-container {
        background-color: #222628;
        color: #fff;
    }

    .footer-container a{
        color: #fff;
    }

    .footer-credentials {
        background-color: #292D2F;
        color: #fff;
    }

    .footer-credentials > .box-960{
        display:flex;
        justify-content: space-between;
    }

    #footer-left, #footer-right{
        font-size: 12pt !important;
    }

    .truncate-text {
        -webkit-line-clamp: 6; /* numero massimo di righe */
    }

    .slicknav_menu .slicknav_menutxt
    {
        color: #0464b3 !important;
        text-shadow: none!important;
    }

    .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: 50px !important;
        background: transparent url(../images/layout/espand-icon.png) no-repeat 97% center !important;
        position: absolute;
        right: 5%;
        top: 70px;
        padding: 10pt!important;
        margin: 0!important;
        border: none!important;
        border-radius: 0px!important;
    }

    #menu_public-mobile .slicknav_menu .slicknav_menutxt
	{
		display: none !important;
	}
	
	#menu_public-mobile .slicknav_menu .slicknav_btn
	{
	  width: 50px !important;
	  background: transparent url(../images/layout/espand-icon.png) no-repeat 97% center !important;
	  position: absolute;
	  right: 5%;
	  top: 80px;
	}

    #public-menu-container-sticky-wrapper.sticky-wrapper.is-sticky
	{
		z-index: 99;
	}
	
	#public-menu-container .slicknav_nav ul.menu-1
	{
		  background: #0464b3;
		  position: absolute;
		  width: 110%;
		  z-index: 9;
		  margin-left: -5%;
		  padding: 0 0 0 5%;
		  margin-right: -5%;
		  box-sizing: border-box;
	}
	
	#public-menu-container .slicknav_nav ul.menu-2,
	#public-menu-container .slicknav_nav ul.menu-3
	{
		position: relative;
		top: 0 !important;
		left: 19pt !important;
	}

    #wrapper .slicknav_nav a {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .form-field{
        margin-bottom: 15px !important;
    }

    .gallery-button{
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .gallery-button button {
        width: 350px;
        height: 50px;
        border-radius: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1.2rem;
        border: 0;
        background: #4c4f50;
        color: #fff;
        font-size: 1.2rem;
    }

    .footer-button button {
        width: 350px;
        height: 50px;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border: 1px solid #fff;
        background: #222628;
        color: #fff;
    }

    #region-blocks_lastworks a {
		text-decoration: none;
		margin: 0;
		display: flex;
	    align-items: center;
	}	

    #region-blocks_lastworks {
        padding: 10pt 0 0 0;
    }

    #block_block_4 h2,
    #block_block_8 h2 {
        margin-bottom: 30px;
    }

    #sidebar .block h3{
        text-align: center;
    }

    #region-blocks_lastworks a{
        width: 80%;
        display: flex;
        justify-content: center;
        margin: 0 auto;
    }

    #page-header h1,
    .content-info,
    .abstract{
        margin-left: 20px !important;
    }

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

/* layout da 768px in poi */
@media (min-width: 980px)
{
    .mobile
    {
        display: none;
    }
	
	#cookie-bar
	{
		background: rgba(0,0,0,0.8)  !important;
		position: fixed !important;
		height: 100% !important;
		width: 100% !important;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
	}
	
	#cookie-bar p
	{
		width: 40%;
		max-width: 650px;
		min-width: 550px;
		margin: auto;
		background: #fff;
		height: 350px;
		padding: 30px 60px 10px 60px;
		color: #000;
		text-align: center;
		-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.5);
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		border-top: 15px solid #184360;
		border-image-source: linear-gradient(to left, #B9C01D 0%, #2394C4 100%); 
		border-image-slice: 4;
		position: relative;
	}
	
	#cookie-bar p:before
	{
		content: "";
		display: block;
		background: url(../images/layout/logo-footer.png) no-repeat 50% 50%;
		height: 40px;
		width: 210px;
		background-size: 180px;
		margin: auto;
		margin-bottom: 20px;
	}
	
	#cookie-bar p b
	{
		/* font-family: Arial; */
		width: 100%;
		margin: auto;
		font-size: 18px;
		font-weight: bold;
		text-transform: uppercase;
		margin-bottom: 0px;
	}
	
	#cookie-bar .cb-enable, #cookie-bar .cb-enable:hover
	{
		background: #2394C4!important;
		color: #fff;
		padding: 10px 0px;
		margin: auto;
		text-align: center;
		width: 45%;
		margin-top: 40px;
	}
	
	#cookie-bar .cb-policy, #cookie-bar .cb-policy:hover
	{
		background: #000!important;
		color: #fff;
		padding: 10px 0px;
		margin: auto;
		text-align: center;
		width: 45%;
		margin-top: 40px;
	}
	
	#cookie-bar .cb-policy:hover, #cookie-bar .cb-enable:hover
	{
		opacity: 0.8;
	}
    
    /* 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: Arial,Verdana,sans-serif; */
        font-size: 13px;
        line-height: 1.5em;
    }


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

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

    h1 
    {
        font-size: 36pt;
    }

    h2 
    {
        font-size: 27pt;
    }

    h3 
    {
        font-size: 23pt;
    }

    h4 
    {
        font-size: 20pt;
    }

    h5
    {
        font-size: 18pt;
    }

    h6 
    {
        font-size: 17pt;
        color: #676767;
        text-transform: uppercase;
    }

    p 
    {
        /* font-size: 14.5px;
        margin: 0 0 9px !important; */
        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
    {
       border-bottom: 6px solid #FDC900;
       color: #FDC900;
    }

    /* LINKS 
    ---------------------------------- */
    a
    {
        color: #003d9f;
    }


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

    #page
    {
        /* width: 960px;	 */
        margin: 20px auto;	
        position: relative;

    }

    #content
    {
            padding: 0px;
            float: left;
            margin-right: 30px;
            text-align: justify;
            width: 680px;
    }

    #sidebar
    {
            width: 250px;
            float: right;
    }

    #header
    {
            margin: 0px;
            border-bottom: 1px solid #cccccc;
    }

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

    #page-header
    {
        margin-bottom: 20px;
        padding-bottom: 5px;
        border-bottom: 1px solid #DDDDDD;
    }

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

    .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: 24px 40px 0 0;
    }
    
    #language-switcher a img
    {
        width: 27px;
        height: 18px;
    }

    #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: #E5E5E5;
            padding: 10px 20px;
            z-index: 9999;
    }
    
    #backend-goto.backend-goto-cb
    {
            display:none;
    }

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

    form
    {
        padding-bottom: 20px;
    }

    label, input, select, textarea
    {
        font-size: 13px;
    }
	
	textarea
	{
		resize: vertical;
		min-height: 130px;
	}
    
    .content-form .btn
    {
        float: right;
    }

    input, select, textarea, button
    {
        border: 1px solid #CCCCCC;
        padding: 7px;
        width: 100%;
        background-color: #fff;
		/* font-family: Arial, Trebuchet MS, Helvetica, Verdana, Sans-serif; */
		box-sizing: border-box;
    }

    option
    {
        padding: 0px 5px;
    }

    input:focus, textarea:focus, select:focus
    {
		outline: none;
    }

    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: 5px;
        cursor: pointer;
        padding: 7px 15px;
        outline: medium none;
        text-decoration: none;
        display: inline-block;
        width: auto;
        font-size: 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: #FDC900;
        color: #000;
        border: 0px;
    }
	
	.small
	{
		font-size: 12px;
	}

    .form-field
    {
        padding: 0;
        display: flex;
        width: 100%;
        margin-bottom: 10px !important;
    }
    
    .form-field.little-text
    {
        font-size: 11px;
        font-weight: bold;
    }
    
    .form-submit
    {
        padding: 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: #B9C01D;
        color: #fff;
    }

    .btn-secondary
    {
        background-color: #ddd;
        color: #5A554E;
    }

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

    .btn:active, .btn:hover
    {
        background-color: #FDC900;
        color: #000;
    }

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

    .btn-alternate:active, .btn-alternate:hover
    {
        background-color: #B9C01D;
        color: #333;
    }

    .btn-secondary:active, .btn-secondary:hover
    {
        background-color: #E5E5E5;
        color: #5A554E;
    }

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

    .field-privacybox, .scroll-box
    {
        background-color: #FFFFFF;
        border: 1px solid #CCCCCC;
        height: 70px;
        margin: 0 0 20px 0;
        overflow-y: scroll;
        padding: 10px;
		box-sizing: border-box;
    }
    
    .rc-label {
        width: 100%!important;
        line-height: 1.5;
        margin-left: 15px;
    }

    .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;
		margin: 5px 0;
		font-weight: normal;
    }

    /* 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 8px;
        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;
    }

    .menu li
    {
            list-style-type: none;
            padding: 0px;
            /* margin: 10px 20px 10px 0 !important; */
    }

    .menu_primary-box
    {
        /* background-color: #e5e5e5; */
        height: 60px;
    }

    #menu_primary
    {
        display: flex;
        justify-content: space-between; /* spazia equamente tra gli elementi */
        padding: 0;
        margin: 0;
        list-style: none;
        text-transform: uppercase;
    }
    
    #menu_primary li ul, #menu_primary li ul li ul
    {
        display: none;
    }

    #menu_primary > li {
        text-align: center; /* centra il testo all’interno */
        font-weight: 800;
        font-size: 13pt;
      }

    #menu_primary a, #menu_primary .menu-item-active span
    {	
            display: inline-block;
            text-decoration: none;
            padding: 17px;
    }

    #menu_primary a
    {
        color: #333333;
    }

    #menu_primary a:hover
    {
        color: #FDC900 !important;
    }

    #menu_primary a.li-active
    {
        color: #FDC900;
    }

    #menu_primary .menu-item-active span
    {
        border-bottom: 3px solid red;
    }

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

            /* color: #b9c01d; */
    }

    #menu_column
    {
            padding: 0px;
    }

    /* blocchi generici */

    .block, #menu_column .menu-item
    {
            background-color: #f7f7f7;
    }

    .block-title, .block h2, #menu_column h2
    {
            background-color: #B9C01D;
            padding: 10px 0px;
            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: #F7F7F7;
        padding: 20px;
		box-sizing: border-box;
		/* margin: 20px 0; */
    }
    
    form label
    {
        width: 140px;
        float: left;
        padding: 5px 0 0 0;
        margin: 0 10px 10px 0;
    }
    
    .short-contact-form-filed
    {
        width: 445px;
        height: 50px;
    }
    
    .small-contact-form-filed
    {
        width: 150px;
    }

    .content-gallery-title
    {
        padding: 20px 0 10px 0;
        font-weight: bold;
        font-size: 22px;
    }
    
    .content-photo-image
    {
        width: 100%;
    }
    
    .content-gallery figcaption, .content-photo figcaption
    {
        display:none;
    }

    .content-file
    {
        margin: 20px 0;
    }
	
	/* node children - nodo elenco di contenuti e contenuti correlati */

	.content-node-children 
    {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }
    
    .content-node-children li
    {
		margin: 0 2% 20px 0;
		padding: 20px;
		width: 23%;
		box-sizing: border-box;
		background: #fff;
		box-shadow: 0px 0px 15px -10px rgba(0, 0, 0, 0.7);
    }
	
	.content-node-children a
    {
        text-decoration: none;
		display: block;
    }
	
	.content-node-children .node-children-title
    {
        text-align: center;
		font-weight: 400;
		font-size: clamp(0.625rem, 0.5032rem + 0.8119vw, 1rem);
		margin: 10px 0 0 0;
		display: block;
    }
	
	.content-node-children .thumb-image 
    {
		width: 100%;
		height: 150px;
		display: block;
		text-align: center;
		background: #f9f9f9;
    }
	
	.content-node-children .thumb-image img {
		width: auto;
		height: 150px;
		max-width: 100%;
		object-fit: cover;
	}

    .content-node-children a {
		text-decoration: none;
		display: block;
	}
	
	.content-node-children.grid
    {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: flex-start;
	}
	
	.content-node-children li:nth-child(4n + 4) {
		margin-right: 0px;
	}

   
    .content-node-children.list-photo.grid li
    {
        width: 32%;
        margin: 0 2% 2% 0;
        text-align: center;
        background: #fff;
        position: relative;
    }

    .content-node-children.list-photo.grid li:nth-child(4),
	.content-node-children.list-photo.grid li:nth-child(5),
	.content-node-children.list-photo.grid li:nth-child(6) {
		margin-bottom: 0 !important;
	}

	.content-node-children.list-photo.grid li:nth-child(3n + 3) {
		margin: 0 0 2% 0;
	}
   
    .content-node-children.list-photo.grid li img
    {
       max-width: 100%;
       width: auto;
       height: auto;
       max-height: 203px;
    }
	
	.node-children-abstract
	{
		text-align: center;
        line-height: 20px;
	}
	
	.content-node-children.list-photo.grid li .content-node-childre-hover-box 
    {
        display:none;
    }

    .content-node-children.list-photo.grid li:hover .content-node-childre-hover-box {
		display: block;
		width: 100%;
		height: 252px;
		position: absolute;
		top: 0;
		left: 0;
		background: rgba(0, 0, 0, 0.11);
	}

	.content-node-children .node-children-title {
		text-align: center;
		font-size: clamp(0.6875rem, 0.3938rem + 0.4795vw, 1.125rem);
		line-height: 20px;
		margin: 10px 0 5px;
		display: block;
	}
	
	.children-photo-list-no-img 
    {
        margin-top: 20px;
        width: 160px!important;
    }
	
	/*  */

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

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

    /* logo header */

    .logo-header
    {
            width: 300px;
            height: 70px;
            background: transparent url(../images/layout/logo-header.png) no-repeat left top;
            display: inline-block;
            float: left;
            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: #F7F7F7;
    }

    #sidebar .coldx-contact-form-box
    {
        background-color: #F7F7F7;
    }
    
    #sidebar form
    {
        padding: 0px;
    }
	
	#sidebar form#sidebar-form
	{
		padding: 0 20px 20px 20px;
	}
	
	#sidebar form#sidebar-form .privacy-container
	{
		display: flex;
		align-items: start;
	}
	
	#sidebar form#sidebar-form .privacy-container label
	{
		width: auto;
		padding: 0px;
		margin: 0 0 0 5px;
	}
	
	#sidebar .form-field.privacy label
	{
		width: 100%;
	}
	
	.form-field.last-field.small
	{
		margin-top: 10px;
	}

    .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: 60%;
			margin-right: 15px;
    }
    
    .left-column-search-field
    {
        width: 60%;
		margin-right: 10px;
    }

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

    /* Footer */

    #footer
    {
            background-color: #f7f7f7;
            padding: 0;
            margin: 0;
    }
    
    .footer-container
    {
        border-top: 1px solid #f7f7f7;       
        padding-bottom: 20px;
        background-color: #222628;
        color: #fff
    }

    #footer-left
    {
            float: left;
    }

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

    .footer-credentials
    {
            background: #222628;
            color: #ffffff;
            font-size: 12px;
            padding: 5px 0;
    }

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

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

    .logo-footer
    {
            width: 123px;
            height: 23px;
            display: inline-block;
            background: transparent url(../images/layout/logo-footer.png) no-repeat left top;
            padding: 0 0 30px 0;
            border-bottom: 1px solid #d3d3d3;
            background-size: contain;
    }

    .footer-adress-box
    {
       display: table-cell;
       vertical-align: top;
       text-align: left;
       font-size: 12px;
    }
    
    .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 #menu_primary_container
    {
            width: auto;
            background: transparent;
            text-align: left;
    }

    #footer #menu_primary li
    {
            padding: 0 5px;
            font-size: 14px;
            text-align: left;
            text-transform: capitalize;
    }

    #footer #menu_primary .li-active
    {
            border-bottom: 0px;
    }

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

    /* ----- */

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

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

    }

    #footer #menu_works_container
    {
            width: auto;
            background: transparent;
            text-align: left;
    }

    #footer #menu_works li
    {
            padding: 0 5px;
            font-size: 14px;
    }

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

    /* ------ */

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

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

    }

    #footer #menu_last_works_container
    {
            width: auto;
            background: transparent;
            text-align: left;
    }

    #footer #menu_last_works li
    {
            padding: 5px;
            font-size: 14px;
            border-bottom: 3px solid #f7f7f7;
    }

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

    /* paginazione */

    .pagination
    {
        text-align: center;
        margin-top: 10px;
    }

    .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
    {
            width: 80%;
            text-align: center;
            float: left;
    }

    /* help */

    .ui-tooltip 
    {
            padding: 10px;
            -webkit-box-shadow: none;
            box-shadow: none;
            font-size: 1em;
        color: #333333;
        font-family: Helvetica, Arial, Verdana, 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: 27pt;
        line-height: 20px;
        line-height: 1.1;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .block h3
    {
        background: transparent;
        font-size: 17pt;
        line-height: 20px;
        margin-bottom:20px;
        margin-left:20px;
        line-height: 1.1;
        display: flex;
        align-items: center;
        justify-content: start;
    }
	
	#content_comments_add
	{
		margin: 20px 0;
	}
    
    .comments-title
    {
		background: #2394C4;
		padding: 8px 0 4px 8px;
		color: #fff;
		margin: 20px 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: #2394C4;
		font-weight: 600;
		font-size: 16px;
		line-height: 16px;
		padding: 0 0 10px 0;
    }
    
    .comment-user-name
    {
		font-weight: 600;
		color: #2394C4;
		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
    {
		width: 23.5%;
		display: inline-block;
		float: left;
		margin: 0 2% 2% 0;        
        border: 1px solid #d0d0d0;
        padding: 1px;
        background-color: #ffffff;
    }
    
     .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 */
	
    .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;
    }
	
	/* */
    
    #submenu-box ul 
    {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }
    
    #submenu-box ul li 
    {
        padding: 0 0 5px 0;
        margin: 0 10px 5px 10px;
        border-bottom: 1px solid #d1d1d1;
    }
    
    #submenu-box ul li a 
    {
        padding: 0;
        text-align: left;
        text-decoration: none;
        display: inline-block;
        font-size: 12pt;
    }
    
    #submenu-box .span-li-active 
    {
        padding: 0;
        color: #FDC900;
        font-weight: normal;
    }
    
    #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: #FDC900;
        font-weight: 600;
        font-size: 12px;
        line-height: 12px;
        display: inline-block;
    }
    
    #submenu-box ul li ul li a 
    {
        font-size: 10pt;
        line-height: 14px;
        color: #000;
        font-weight: normal;
    }
    
    #menu_primary li ul 
    {
        background-color: #F7F7F7;
        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: #F7F7F7;
    }
    
    #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;
        text-align: left;
    }
    
    .logo-2open-credentials
    {
        display: inline-block;
        width: 50px;
        height: 18px;
        float: right;
        margin: 0 0 0 5px;
        background: url(https://www.2open.it/loghi/2open-footer.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 {
        float: left;
    }
    
    #menu_cookie_container li a
    {
        padding: 0;
        font-size: 11pt;
        line-height: 1.5;
    }
    
    .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;
    }
	
	.social-insta
	{
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-insta.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }
	
	.social-wa
	{
        width: 25px;
        height: 25px;
        display: inline-block;
        background: url(../images/layout/ico-wa.png) no-repeat center center;
        background-size: contain;
        margin: 0 5px 0 0;
    }
	
	.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;
    }
    
    .node-product
	{
		display: flex;
		margin: 0 0 30px 0;
	}
	
	.node-product .node-product-img-box
	{
		width: 40%;
		max-width: 40%;
		min-width: 40%;
		box-sizing: border-box;
		background: #fff;
		border: 15px solid #f9f9f9;
	}
	
	.node-product .node-product-img-box img
	{
		width: 100%;
		height: auto;
	}
	
	.node-product .node-product-text-box
	{
		width: 60%;
		max-width: 60%;
		min-width: 60%;
		padding: 0 0 0 30px;
		box-sizing: border-box;
	}
	
	#region-blocks_child .block
	{
		background: transparent !important;
	}
	
	#region-blocks_child a
	{
		text-decoration: none;
	}
	
	#region-blocks_child .block h2
	{
		padding-left: 0px;
		
	}
	
	#region-blocks_child ul
	{
		list-style-type: none;
		margin: 10px 0px;
	}
	
	#region-blocks_child .container-li
	{
		display: flex;
	}
	
	#region-blocks_child .block-img
	{
		margin-right: 15px;
	}
	
	#region-blocks_child .container-li .btn
	{
		float: right;
		margin-top: 15px;
	}
	
	.ml-auto
	{
		margin-left: auto;
	}

	.accordion
	{
		border: 1px solid rgba(0,0,0,.125);
		border-radius: .25rem;
		margin: 20px auto;
	}
	
	.accordion-header
	{
		padding: .75rem 1.25rem;
		margin-bottom: 0;
		background-color: rgba(0,0,0,.03);
		border-bottom: 1px solid rgba(0,0,0,.125);
		cursor: pointer;
		display: flex;
		align-items: center;
	}
	
	.accordion-body
	{
		padding: 1.25rem 1.25rem 0.8rem 1.25rem;
	}
	.accordion .collapsed
	{
		display: none;
	}

	.arrow-down
	{
		width: 0; 
		height: 0; 
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #000;
	}
	.arrow-up
	{
		width: 0; 
		height: 0; 
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-bottom: 10px solid black;
	}
	
	/* nivo slider */
	
	.nivoSlider
	{
		height: 600px !important;
	}
	
	.nivoSlider img
	{
		height: 600px !important;
		width: 2500px !important;
		left: 50% !important;
		margin-left: -1250px;
	}
	
	.nivo-controlNav
	{
		display: none !important;
	}
	
	.nivo-prevNav
	{
		left: 2%!important;
		top: 0 !important;
		text-indent: -999999px;
		width: 32px;
		height: 100%;
		display: inline-block;
		background: url(../images/layout/arrow-left.png) no-repeat center center;
		background-size: 30px;
		opacity: 0.5;
	}
	
	.nivo-nextNav
	{
		right: 2%!important;
		top: 0 !important;
		text-indent: -999999px;
		width: 32px;
		height: 100%;
		display: inline-block;
		background: url(../images/layout/arrow-right.png) no-repeat center center;
		background-size: 30px;
		opacity: 0.5;
	}
	
	.nivo-caption
	{
		position: relative;
		bottom: 100px;
		background: transparent;
		width: 980px;
		z-index: 99;
		padding: 0;
		opacity: 1;
		overflow: hidden;
		-moz-opacity: 1;
		filter: alpha(opacity=1);
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		margin: auto;
		height: 100%;
		font-size: 30px;
		text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.40);
	}
	
	.nivo-caption h2
	{
		font-size: 40px;
		font-style: italic;
		position: relative;
		margin: 0px;
	}

    .min-height{
        height: 160px;
    }

    .image-resize img{
        width: 200px;
    }

    .max-image-size{
        width:100%;
    }  

    .overlay-main-slideshow{
        position: absolute;
        top: 0;
        left: 0;
        padding: 50px;
        color: white;
        z-index: 10;
        display: flex;
        align-items: center;
        background-color: rgba(0,0,0,0.6);
        width: 100%;
        height: 600px;
    }

    .overlay-main-slideshow a{
        position: relative;
        display: inline-block;
        top: -50px;
        left: 430px;
    }

    .button-main-slideshow{
        width:200px; 
        height:50px;
        border-radius: 4px; 
        display:flex; 
        align-items:center; 
        justify-content:center; 
        gap: 1.2rem; 
        border: 2px solid white; 
        background:transparent;
        color: white;
        cursor: pointer;
    }

    .button-contact{
        width:150px; 
        height:50px;
        border-radius: 4px; 
        display:flex; 
        align-items:center; 
        justify-content:center; 
        gap: 1.2rem; 
        border: 2px solid white; 
        background:white;
        box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
        cursor:pointer;
    }

    #container{
        width: 1000px;
    }
    
    #floated{
        float: left;
        display: inline-block;
        padding-right:20px;
    }

    .overlay-title-slide {
        position: relative;
        font-family: 'Nuventa';
        font-size: 4rem !important; 
        font-weight: 700; 
        line-height:1;
        width: 960px;
        top: -80px;
        left: 430px;
    }

    .overlay-sub-slide {
        position: relative;
        font-size: 1.5rem !important;
        top: -40px;
        left: 430px;
        width: 960px;
        margin-bottom: 50px !important;
        line-height: 1.5;
    }

    .slick-prev.slick-arrow {
        position: absolute;
        left: 355px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/ico_arrow_left.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    .slick-next.slick-arrow {
        position: absolute;
        right: 355px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/ico_arrow_right.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    #block_block_4 {
        display:flex;
        justify-content: center;
        border-bottom: 3px solid #F7F7F7;
    }

    #block_block_4 > div h2{
        border-right: 2px solid #FDC900;
        padding-right: 50px;
        margin-right: 50px;
        font-weight: 400;
        width: 400px;
    }

    #block_block_4 > div {
        display:flex;
        align-items: center;
        width: 960px;
        margin: 40px 0;
    }

    #block_block_5 {
        display: flex;
        justify-content: center;
        border-bottom: 2px solid #F7F7F7;
    }

    #block_block_5 > .box-960 {
        text-align: center;
        margin: 40px auto;
        width: 1120px;
    }

    #block_block_5 .slick-slide{
        padding: 20px;
    }
    
    #block_block_5 .slick-slide > div{
        padding: 20px;
        display: flex;
        justify-content: center;
        border: 1px solid #F7F7F7;
    }
    
    #block_block_5 img{
        object-fit: contain;
        max-width: 90%;
    }

    #block_block_5 .slick-prev.slick-arrow {
        position: absolute;
        left: -100px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/arrow-left.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    #block_block_5 .slick-next.slick-arrow {
        position: absolute;
        right: -100px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/arrow-right.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    #block_block_6 {
        display: flex;
        justify-content: center;
    }

    #block_block_6 > div {
        display: flex; 
        align-items: center; 
        justify-content:space-around; 
        height:200px;
        width: 1000px;
        gap: 1.2rem;
    }

    #block_block_6 p {
        font-size: 25px !important;
    }

    #block_block_7{
        display:flex;
        justify-content: center;
        border-bottom: 3px solid #F7F7F7;
    }

    #block_block_7 .card {
        width: 325px;
    }

    #block_block_7 .card-header {
        border-bottom: 2px solid #FDC900;
        margin-bottom: 40px;
        font-weight: 400;
    }

    #block_block_7 .card-body {
        border: 1px solid #F7F7F7; 
        background: white;
        height: 250px;
    }

    #block_block_8 {
        width: 1000px;
        margin: 40px auto 100px auto;
    }

    #block_block_8 > div {
        display: flex;
        align-items: center;
        margin-bottom: 40px;
    }

    #block_block_8 > div h2 {
        border-right: 2px solid #FDC900;
        padding-right: 62px;
        margin-right: 62px;
        font-weight: 400;
    }

    #block_block_8 .card {
        position: relative; /* necessario per posizionare l’h3 all’interno */
        width: calc((100% / 3) - ((15px / 2) * 3));
        height: 160px;
    }

    #block_block_8 .card img {
        position: relative; /* necessario per posizionare l’h3 all’interno */
        width: 100%;
    }
    
    #block_block_8 .card h3 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;              /* copre tutta la card */
        display: flex;             /* centra il testo */
        justify-content: start;
        align-items: end;
        background: rgba(0, 0, 0, 0.2); /* overlay semi-trasparente */
        color: #fff;
        font-size: 1.2rem;
        margin: 0;
    }

    #block_block_8 .card h3 span{
        padding: 15px;
    }

    #block_block_8 #more-works-card .card-body{
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }

    #block_block_8 #more-works-card img{
        width: 80px;
    }

    #block_block_9 {
        background-color: #222628;
        color: #fff;
        height: 500px;
    }

    #block_block_9 a{
        color: #fff;
    }

    #block_block_9 .box-960{
        padding: 80px 0 60px;
    }

    #block_block_9 .header-gallery{
        display: flex;
        justify-content: space-around;
    }

    #block_block_9 h2{
        border-bottom: 2px solid #fff;
        color: #fff;
    }

    #block_block_9 .slick-slide > div{
        padding: 20px;
        display: flex;
        justify-content: center;
    }

    #block_block_9 .slick-prev.slick-arrow {
        position: absolute;
        left: -70px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/ico_arrow_left.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    #block_block_9 .slick-next.slick-arrow {
        position: absolute;
        right: -70px;
        top: calc(50% - 35px);
        width: 60px;
        height: 70px;
        display: inline-block;
        background: transparent url(../images/layout/ico_arrow_right.png) no-repeat center center;
        text-indent: -99999px;
        border: 0;
        padding: 0;
        cursor: pointer;
        z-index: 9;
        background-size: 60px;
    }

    #block_block_9 img{
        object-fit: contain;
        max-width: 100%;
        height: 166px;
    }

    #main-content > h2 {
        color: #d2a800;
    }

    #block_contact_recap {
        margin-top: 0px; 
        margin-bottom: 50px; 
        background-color: #292D30; 
        color: #fff;
        padding: 30px 0;
    }

    #block_contact_recap a{
        color: #fff;
    }

    #header-btn-contact {
        width:150px;
        height:45px;
        background:#FDC900;
        border-color:#FDC900;
        border-radius:4px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        font-size: 14px;
        cursor: pointer;
    }

    .iso9001-header {
        display:flex;
        gap:1.2rem;
        align-items:center;
        width: 180px;
    }

    .iso9001-header p{
        font-size: 13px;
        margin: 0 auto !important;
    }

    .exc4-header {
        border-right: 1px solid #F7F7F7;
        border-left: 1px solid #F7F7F7;
        display:flex; 
        gap:1.2rem; 
        align-items:center;
        width:200px;
        padding: 0 30px;
        margin: 0 30px;
        
    }

    .exc4-header p{
        font-size: 13px;
        margin: 0 auto !important;
    }


    .all-cert-header {
        width: 125px;
    }

    .content-wrapper p{
        line-height: 1.5;
    }

    #public-menu-container {
        position: static !important;
        top: auto !important;
        width: auto !important; /* opzionale */
    }

    /* Contenitore titoli sovrapposto */
.slick-dots {
    position: absolute;       /* li posiziona sopra lo slider */
    bottom: 20px;             /* distanza dal bordo inferiore */
    left: 48%;                /* centra orizzontalmente */
    transform: translateX(-50%);
    display: flex !important;
    gap: 12px;
    justify-content: center;
    align-items: center;
    padding: 0;
    list-style: none;
    z-index: 10;              /* sopra alle immagini */
  }
  
  /* Singoli titoli/dot */
  .slick-dots li button.custom-dot {
    background: transparent;
    color: #fff;
    font-size: 12px;
    border: none;
    padding: 6px 10px;
    border-radius: 4px;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.3s, color 0.3s;
  }
  
  /* Stato attivo */
  .slick-dots li.slick-active button.custom-dot {
    color: #FDC900;
    font-weight: 700;
  }

    .slick-dots li:not(:first-child)::before {
        content: "/";
        margin: 0 6px;
        color: #fff; /* cambia colore */
        font-weight: bold;
    }

    .slick-dots li{
        display: flex;
    }

    .gallery-tab.active {
        color: #FDC900 !important;
    }

    #region-blocks_lastworks img
    {
        width: 60px!important;
            min-width: 60px;
        height: auto!important;
    }

    #region-blocks_lastworks a {
		display: flex;
		width: 80%;
		justify-content: space-between;
		align-items: center;
		text-decoration: none;
		box-sizing: border-box;
        gap: 10px;
        margin: 0 auto;
	}

    .content-form form {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    #sidebar-form {
        display: block !important;
    }

    #contact-privacy {
        display: flex !important;
    }
    
    /* ogni campo è una mini-grid */
    .content-form .form-field {
        display: grid;
        grid-template-columns: 1fr;
        row-gap: .25rem;
    }
    
    /* errore sotto l'input */
    .content-form .form-error {
        font-size: .85rem;
        color: #dc3545;
        margin: 0;
    }
    
    /* elementi full width */
    .content-form .full,
    .content-form .form-submit,
    .content-form .little-text {
        grid-column: span 2;
    }
    
}

@media (min-width: 1247px)
{
    
    body
    {
        font-size: 14px;
    }
    
    #page, .box-960 
    {
        width: 1227px;
        /* padding: 0 10px; */
    }
	
	.nivo-caption
	{
		width: 1227px;
	}
    
    #content
    {
        width: 947px;
    }
    
    #footer #menu_primary a, #menu_primary .menu-item-active span
    {
        font-size: 14px;
    }
    
    #footer
    {
        font-size: 14px;
    }

    ul.breadcrumb-ul {
        list-style-type: none;
        display: inline-block;
    }


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

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

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

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

    .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 ul li a, #block_homepage_contents ul li a:hover 
    {
            color: #333333;
            text-decoration: none;
    }

    #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;
    }

    #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 img 
    {
        width: 100%;
        height: auto;
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
    }

}

ul#works_cards{
    display: flex;
    align-items: start;
    gap: 15px;
    list-style: none;
    padding: 0;
    margin: 40px 0;
    overflow-x:auto;
}

#block_block_5{
    background-color: white;
    text-align: center;
}

#block_block_5 h2{
    text-align: center !important;
}

#block_block_6{
    background-color: #FDC900;
}

#block_block_8{
    background-color: white;
}

#content h3{
    color: #d2a800;
}

#content h2{
    color: #d2a800;
    margin-bottom: 1.5rem;
}

.gallery-tab:not(:last-child)::after {
    content: "/";
    margin-left: .5rem;
    padding-left: .5rem;
}

.phone-number-container a{
    color: #fff;
}

.btn.mobile-contact-form{
    background-color:#FDC900;
    border-color: #FDC900;
    color:black;
    width:100%;
    height:50px;
    font-size:20px
}

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

.footer-informations-table a
{
    color: #fff;
}

.content-wrapper {
    margin-bottom: 80px;
    margin-top: 40px;
}

.content-wrapper ul > li {
    font-size: 14pt;
    line-height: 1.8;
}

.content-wrapper p {
    margin: 20px auto !important;
}

.btn-ext-pag {
    background-color: #fdc900 !important;
    color: #000 !important;
}

.box-highlight {
    background-color: #f7f7f7 !important;
}

th {
    background-color: #f7f7f7 !important;
}

.span-li-active {
    color: #FDC900;
}

summary h2, summary h3 {
    display: inline;
    margin: 0 auto;
}
