@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400&display=swap');
 
::-moz-selection  {
    background: #89BE31;
    color: #000;
}
::selection   {
    background: #89BE31;
    color: #000;
}


body {
    background-color: #151918;
    color: #000;
    overflow-x: hidden;
}


a, a:hover, a:active,
.color-1,
.btn-color-1, .btn-color-1:hover,
.site-content ul li,
.toolbar-btn:hover,
.toolbar-btn.active {
    color: #89BE31;
}
.sidenav a.active,
.paginazione .page-numbers.current,
#menuDesktop a.active,
.btn, .btn:hover, .btn:active, .btn:focus {
    color: #89BE31 !important;
}

#menuDesktop a {
    border-bottom: 1px solid transparent;
}
#menuDesktop a.active {
    border-bottom: 1px solid #89BE31;
}

.bg-scuro h3.tit span {
    color: #fff;
}

#menuDesktop a
{
    color: #fff;
}

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


.bg-color-1,
/*#sidenavBtnOpen .circle div,*/
#sidenavBtnClose .circle div,
.wp-block-button__link:hover {
    background-color: #89BE31;
} 
#sidenavBtnOpen .circle div {
    background-color: #fff;
}




#footerInfo {
    background-color: #009EA6;
}
.servizi-home-card .gradient,
.servizi-grid-card .gradient {
    transition: background 0.45s ease-in-out;
}

.servizi-home-card:hover .gradient,
.servizi-grid-card:hover .gradient {
    background: linear-gradient(to bottom,  rgba(44,154,65,0.9) 0%,rgba(13,89,77,0.9) 100%) !important;
}



.wpcf7 .wpcf7-submit,
.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-submit:active,
.wpcf7 .wpcf7-submit:focus,
.wpcf7 .wpcf7-submit:visited {
    background-color: #2C9A41 !important;
}



#timeline .data {
    background: linear-gradient(90deg, #0D594D 0%, #4D974B 100%);
    border-radius: 0 8px 8px 8px;
}
#timeline .tit {
    color: #fff;
}
#timeline span.right .freccia {
    border-color: transparent #0D594D transparent transparent;
}
#timeline span.left .freccia {
    border-color: #4D974B transparent transparent transparent;
}

#timeline #tl_2 .data,
#timeline #tl_4 .data,
#timeline #tl_6 .data,
#timeline #tl_8 .data,
#timeline #tl_10 .data,
#timeline #tl_12 .data,
#timeline #tl_14 .data,
#timeline #tl_16 .data {
    border-radius: 8px 0 8px 8px;
}
#timeline #tl_2 .tit,
#timeline #tl_3 .tit,
#timeline #tl_6 .tit,
#timeline #tl_7 .tit,
#timeline #tl_10 .tit,
#timeline #tl_11 .tit,
#timeline #tl_14 .tit,
#timeline #tl_15 .tit {
    color: #fff;
}
#timeline #tl_2.right .freccia,
#timeline #tl_3.right .freccia,
#timeline #tl_6.right .freccia,
#timeline #tl_7.right .freccia,
#timeline #tl_10.right .freccia,
#timeline #tl_11.right .freccia,
#timeline #tl_14.right .freccia,
#timeline #tl_15.right .freccia{
    border-color: transparent #0D594D transparent transparent;
}
#timeline #tl_2.left .freccia,
#timeline #tl_3.left .freccia,
#timeline #tl_6.left .freccia,
#timeline #tl_7.left .freccia,
#timeline #tl_10.left .freccia,
#timeline #tl_11.left .freccia,
#timeline #tl_14.left .freccia,
#timeline #tl_15.left .freccia{
    border-color: #4D974B transparent transparent transparent;
}



.color-bianco,
.color-bianco p,
.color-bianco p strong,
.color-bianco li,
.color-bianco h1,
.nav-link,
.sidenav a,
.col-footer-menu a,
.btn-color-bianco,
.login-form button {
    color: #fff !important;
}




.color-grigio {
    color: #6f6f6f;
}


 
.bg-bianco {
    background-color: #fff;
}


.bg-alternate { 
    background-color: #F3F3F3;
}
.bg-alternate-gradient {

/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e1e1e1+0,ffffff+100 */
background: rgb(225,225,225); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(225,225,225,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(225,225,225,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(225,225,225,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e1e1e1', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
    
}




.bg-logo {
    background-image: url(/img/logo-freccia-bg.png);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 950px; 
    background-position: -10% 220px;  
}

 
.bg-scuro,
#sliderHome .carousel-item,
footer {
    background-color: #151918 !important; 
}



.bg-freccia {
    background-repeat: no-repeat;
}

.bg-freccia-r {
    background-image: url(/img/arrow/arrow-right.png);
}
.bg-freccia-r-30 {
    background-image: url(/img/arrow/arrow-right-30.png);
}
.bg-freccia-r-15 {
    background-image: url(/img/arrow/arrow-right-15.png);
}
.bg-freccia-r-8 {
    background-image: url(/img/arrow/arrow-right-8.png);
}

.bg-freccia-l {
    background-image: url(/img/arrow/arrow-left.png);
}
.bg-freccia-l-30 {
    background-image: url(/img/arrow/arrow-left-30.png);
}

.bg-freccia-r-n {
    background-image: url(/img/arrow/arrow-right-black.png);
}
.bg-freccia-r-n-30 {
    background-image: url(/img/arrow/arrow-right-black-30.png);
}
.bg-freccia-r-n-15 {
    background-image: url(/img/arrow/arrow-right-black-15.png);
}

/*
.font-2,
h1, h2, h3, h4, h5, h6,
.nav-link {
    font-family: 'Literata', serif;
}
*/

b, strong {
    font-weight: 500;
}

.small, small {
    font-size: 80%;
    font-weight: 300;
}


.vertical-align-center {
    flex-basis: 50%;
    flex-flow: column nowrap;
    display: flex;
    justify-content: center;
}


.spacer {
    display: block;
    width: 100%;
    height: 70px;
}


.font-family,
body,
.navbar, 
.wpcf7 .btn {
    font-family: 'Ubuntu', sans-serif;
}


 

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 35px;
}


h1 {
    font-size: 60px;
    line-height: 70px;
}

h2 {
    font-size: 42px;
    line-height: 51px;
}

h3 {
    font-size: 36px;
    line-height: 44px;
}

h4 {
    font-size: 26px;
    line-height: 32px;
}

h5 {
    font-size: 22px;
    line-height: 26px;
}

h6 {
    font-size: 18px; 
    line-height: 24px;
}


.col-tit h6 {
    letter-spacing: 8px;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 24px;
    text-transform: uppercase;
}
.col-tit h6 span {
    width: 90px;
    height: 1px;
    display: inline-block;
    /*background-color: #000;*/
    position: relative;
    left: 20px;
    top: -4px;
}
.col-tit h6 span,
.col-tit h6.color-bianco span {
    background-color: #89BE31;
}

.sub-tit {
    letter-spacing: 5px;
    text-transform: uppercase;
    font-weight: 500;
    margin-top: -20px;
    opacity: 0.5;
}


.font-light {
    font-weight: 300;
}

p, .site-content ul li {
    font-size: 18px;
    line-height: 34px;
    font-weight: 300;
    color: #000;
}

p,
.site-content ul,
.img-p,
.wp-block-image img,
.single section p:last-of-type,
.col-tit p:last-of-type{
    margin-bottom: 30px;
}

ul {
  /*  list-style: none; Remove default bullets */
}
/*
ul li::before {
    content: "\2022";
    font-weight: bold;
    display: inline-block;
    width: 17px;
    margin-left: -17px;
    font-size: 22px; 
    position: relative;
    top: 3px;
}
*/


.letter-spacing {
    letter-spacing: 8px;
}


.btn {
    letter-spacing: 13%;
    font-weight: 600 !important;
    text-transform: uppercase;
    border: 0 none;
    font-size: 18px;
    padding: 0;
}
.btn:hover {
    letter-spacing: 14%;
}
.btn span {
    margin-left: 5px;
    width: 24px;
    height: 24px;
    vertical-align: inherit;
    display: inline-block;
}
.btn-color-bianco span {
    border: 1px solid #fff;
}
.btn img {
    width: 24px;
    height: auto;
    position: relative;
    top: -2px;
}


.btn.btn-border-color,
.btn-border-color,
.btn-border-color:hover,
.btn-border-color:active,
.btn-border-color:focus {
    color: #fff !important;
    position: relative;
    z-index: 0;
    border: 0 none !important;
    border-radius: 8px;
    background: transparent !important;
    isolation: isolate;
}

.btn.btn-border-color::before,
.btn-border-color::before,
.btn-border-color:hover::before,
.btn-border-color:active::before,
.btn-border-color:focus::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 3px;
    background: linear-gradient(to right, #4D974B, #89BE31);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
}


.btn-bianco, .btn-bianco:hover, .btn-bianco:active, .btn-bianco:focus {
    background-color: #fff;
    color: #2C9A41 !important;
}

.btn-big {
    padding: 19px 30px;
    font-size: 18px;
}


/* btn di wordpress */
.wp-block-button__link {
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    font-size: inherit;
}
.wp-block-button__link:hover {
    color: #000;
}


.in-costruzione {
    padding: 70px;
}
.in-costruzione p {
    opacity: 0.4;
    letter-spacing: 3px;
    font-size: 24px;
}

#content.site-content {
    /*padding-top: 215px; */
    padding-top: 0;
    padding-bottom: 0;
} 
.site-content ul { 
    padding-left: 20px; 
} 
.site-content ul li {
    margin-bottom: 15px;
}

.a-no-style,
footer a,
.wp-block-button__link,
.paginazione .page-numbers {
    text-decoration: none !important;
}

.uppercase {
    text-transform: uppercase;
}

.transition-all,
.nav-link,
.menu-lang li a,
.lang-item a,
#gallerySlick .slick-prev,
#gallerySlick .slick-next,
.sidenav, .sidenav a,
footer a,
.wp-block-button__link,
.paginazione .page-numbers,
.btn,
.login-form button
{
    -webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	transition: all 0.2s;    
}

.radius0,
.wpcf7 .campo input,
.btn-cookie {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0; 
}
.radius100,
.blocco .icona,
.carousel-indicators li,
.menu-lang li a,
.navbar-toggler-icon,
.btn span,
.slick-dots li button:before { 
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
}



.border-radius, 
.btn,
#btnAreaClienti,
.section-box-servizi--grid .servizi-grid-card,
.section-box-servizi-home .servizi-grid-card,
#sectionMappa iframe,
.wpcf7-form input.wpcf7-submit,
.row-media a,
.single-news__cover-img,
.login-form, .login-form button,
#btnDashboard,
#btnLogout,
.news-card,
.wp-block-gallery img,
#pincettiNelMondo iframe {
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;    
}

.border-radius-4,
.news-card__badge,
.single-news__badge,
#sliderHome .slider-home-date {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;    
}


.toolbar-btn {
    background-color: rgba(0,0,0,0.10);
    color: #fff;
}
.toolbar-btn:hover,
.toolbar-btn.active {
    background-color: #fff;
}


.ver-center {
  display: flex;
  align-items: center;
}
.hor-center {
  justify-content: center;
}


.justify {
    text-align: justify;
}

.hide {
    display: none;
}

.clear {
    display: block;
    float: none;
}

.background-image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.img-100 {
    width: 100%;
    height: auto;
}

.wow {
  visibility: hidden;
}

.mouse-hover:hover,
.wpcf7 .wpcf7-submit:hover,
.nav-link:hover,
.menu-lang li a:hover,
.btn:hover,
.btn-cookie:hover,
.sidenav a:hover,
footer a:hover,
.paginazione .page-numbers:hover,
.login-form button:hover {
    opacity: 0.7;
    cursor: pointer;
}

:focus {
    outline: none !important;
}

button:focus, .btn:focus {
    outline: 0 none;
    box-shadow: none;
}



header .container,
.container {
    max-width: 100%;
}
.container-small {
    max-width: 1050px;
}
.container-small-small {
    max-width: 730px;
}
.container {
    padding-left: 80px;
    padding-right: 80px;
}


@keyframes header-fixed-enter {
    0% {
        opacity: 0.75;
        transform: translate3d(0, -100%, 0);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

header {
    width: 100%;
    z-index: 100;
    margin: 0 auto;
    position: relative;
    top: 0;
    max-width: 100%;
    padding: 20px 0;
    background-color: #151918;
}

header.header-fixed-scroll {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    margin: 0;
    top: 0;
    /* transition-all sul header annulla / sporca l’animation su transform */
    -webkit-transition: none !important;
    -moz-transition: none !important;
    transition: none !important;
    -webkit-animation: header-fixed-enter 0.45s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    animation: header-fixed-enter 0.45s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.logged-in.admin-bar header.header-fixed-scroll {
    top: 32px;
}

.logged-in.admin-bar header {
    top: 29px;
}
header.nav-up {
    top: -300px;
}
header.nav-shadow {
    -webkit-box-shadow: 0px 2px 9px 0px rgba(0,0,0,0.15); 
    box-shadow: 0px 2px 9px 0px rgba(0,0,0,0.15);
}


.header-inner {
    display: flex;
    flex-direction: column;
}

.header-row-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px 28px;
    width: 100%;
}

.header-top-right {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px 70px;
}

.header-social {
    display: none;
    align-items: center;
    gap: 28px;
}

.header-social a {
    color: #fff;
    font-size: 16px;
    line-height: 1;
}

.header-partner-logos,
.footer-partner-logos {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
}

.navbar-brand {
    padding-bottom: 0;
    padding-top: 0;
}
.navbar-brand img {
    width: 410px;
    height: auto;
    margin: 0;
}

.navbar .ico-social img {
    width: 30px;
    /*width: 36px; */
    height: auto;
    margin-right: 30px;
}



#menuDesktop {
    float: none;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 20px;
    margin-top: 20px;
    box-sizing: border-box;
}

#menuDesktop .header-main-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex: 1 1 auto;
    gap: 8px 60px;
}

#menuDesktop .header-main-nav a {
    display: inline-block;
    margin: 18px 0 16px 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 13%;
    padding: 10px 0;
}

#menuDesktop #btnAreaClienti {
    flex-shrink: 0;
}

#menuDesktop .header-main-nav a.active {
    font-weight: 700;
}

.voce-menu-evidenza {
    color: #fff !important;
}

#main-nav {
    margin: 80px 50px;
}

.sidenav {
    width: 0;
    height: 0;
    position: fixed;
    z-index: 100001;
    top: 0;
    right: 0;
    left: auto;
    overflow: hidden;
    padding-top: 60px;
    padding-bottom: 20px;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    transition: none !important;
}
.sidenav:not(.menuOpen) .sidenav-menu-inner {
    display: none !important;
}
.sidenav .sidenav-menu-inner a {
    display: none;
}
.sidenav.menuOpen {
    visibility: visible;
    pointer-events: auto;
    width: 100%;
    height: 100%;
    height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    left: 0;
    right: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
.sidenav.menuOpen .sidenav-menu-inner .header-main-nav a,
.sidenav.menuOpen .sidenav-menu-inner #btnAreaClienti {
    display: block;
}
.sidenav.menuOpen .sidenav-menu-inner .header-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    font-size: 22px;
    padding: 10px 14px;
    text-transform: none;
    font-weight: 400;
    letter-spacing: 0;
}

.sidenav .sep {
    width: 70%;
    height: 2px;
    display: block;
    background-color: #fff;
    margin-bottom: 20px;
    margin-left: 60px;
    margin-top: 80px;
}

.sidenav-menu-inner {
    max-width: 520px;
    margin: 0 auto;
    padding: 0 28px 48px;
    box-sizing: border-box;
}

.sidenav.menuOpen .sidenav-menu-inner .header-social {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 22px;
    margin: 28px 0 8px;
    flex-wrap: wrap;
}

.sidenav.menuOpen .sidenav-menu-inner .header-partner-logos--sidenav {
    justify-content: center;
    margin-top: 16px;
    margin-bottom: 8px;
}

.sidenav.menuOpen .sidenav-menu-inner .header-partner-logos--sidenav .header-partner-logo {
    max-width: min(200px, 70vw);
    width: auto;
    height: auto;
}

.sidenav.menuOpen .sidenav-menu-inner .header-main-nav a.active {
    border-bottom: 1px solid #89BE31;
}


#sidenavBtnOpen,
#sidenavBtnClose {
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 18px;
    z-index: 10000;
}
#sidenavBtnOpen .circle,
#sidenavBtnClose .circle,
.slider-freccia .circle {
    width: 50px;
    height: 50px;
    padding-top: 16px;
    text-align: center;
    display: block;
}
#sidenavBtnOpen .circle div,
#sidenavBtnClose .circle div,
.slider-freccia .circle div {
    width: 20px;
    height: 3px;
    margin: 0 auto 4px;
    display: block;
}


#sidenavBtnClose .circle div.sx {
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: 7px auto 0;
}
#sidenavBtnClose .circle div.dx {
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin: -3px auto 0;
}



#menuOpenBackground {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    height: 100dvh;
    z-index: 100000;
    /*background-color: rgba(0,0,0,0.7);*/
}

body.site-menu-open {
    overflow: hidden;
}

body.site-menu-open #sidenavBtnOpen {
    display: none !important;
}


.navbar-nav {
    flex: none !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
}
.navbar-nav .nav-item {
    display: block;
    padding: 5px 0;
    text-align: center;
}
.navbar-nav .nav-link {
    color: #fff !important;
    padding: 0;
}



#ico_scroll_down {
    margin-top: 45px;
    display: block;
}
#ico_scroll_down i {
    font-size: 32px;
}





.nav-link {
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 6px;
    font-size: 13px;
    margin: 0 40px;
    text-align: center;
    padding: 0 0px 10px 7px !important;
}
.nav-item.active .nav-link { 
    border-bottom: 1px solid #fff;
}


section {
    padding-top: 80px;
    padding-bottom: 80px;
}
section p:last-of-type {
    margin-bottom: 0;
}

.section-small {
    padding-top: 60px;
    padding-bottom: 60px;
}

.section-blank {
    padding-top: 30px;
    padding-bottom: 30px;
}


video {
    width: 100%;
    height: auto;
}



.site-header-int #col_logo {
    padding: 40px 15px 50px;
}




.carousel-indicators li {
    width: 7px;
    height: 7px;
    background-color: #fff;
    opacity: 1;
}
.carousel-indicators li.active {
    width: 9px;
    height: 9px;
    background-color: transparent;
    border: 1px solid #fff;
    margin-top: 8px;
}

.slick-dots li {
    margin: 0 25px 0 0 !important;
}
.slick-dots li button:before {
    font-size: 7px !important;
    line-height: 12px !important;
    width: 12px !important;
    height: 12px !important;
    opacity: 1 !important;
    color: #fff !important;
    border: 1px solid transparent !important;
}
.slick-dots li.slick-active button:before {
    color: transparent !important;
    border: 1px solid #fff !important;
}

#sliderHome .carousel-indicators li {
    margin-right: 0;
    margin-left: 40px;
    color: #fff;
}
#sliderHome .carousel-control-next, #sliderHome .carousel-control-prev {
    top: 50%;
    margin-top: -25px;
    width: 50px;
    height: 50px;
    opacity: 1;
}
#sliderHome .carousel-control-next:hover, #sliderHome .carousel-control-prev:hover {
    opacity: 0.7;
}
#sliderHome .carousel-control-next i, #sliderHome .carousel-control-prev i {
    font-size: 21px;
}





#sliderHome .row,
#sliderHome .col {
    height: 100%;
}
#sliderHome .col {
    align-items: baseline;
    justify-content: flex-start;
    padding: 100px 95px 0;
}

#sliderHome h3 {
    font-size: 56px;
    line-height: 70px;
}

#sliderHome .col.slider-home-col--custom {
    align-items: flex-start;
}
#sliderHome .slider-home-content--custom {
    max-width: 100%;
}
#sliderHome .slider-home-date {
    display: inline-block;
    background-color: #0D594D;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,0.15);
    margin-bottom: 20px;
}
#sliderHome .slider-home-title {
    font-size: 56px;
    line-height: 70px;
    font-weight: 300;
    margin: 0 0 20px;
    color: #fff;
}
#sliderHome .slider-home-title strong {
    font-weight: 700 !important;
}
#sliderHome .slider-home-subtitle,
#sliderHome .slider-home-subtitle p,
#sliderHome .slider-home-subtitle ul li {
    font-size: 20px;
    line-height: 32px;
    font-weight: 300;
    margin: 0;
    color: #fff;
}
#sliderHome .slider-home-btn {
    margin-top: 30px;
}


#sliderHome .sep {
    width: 90px;
    height: 1px;
    display: block;
    background-color: #fff;
    margin: 45px 0 38px;
}
#sliderHome .logo-slides {
    max-width: 400px;
}



#sliderHome .gradient {

background: linear-gradient(270deg, rgba(19, 25, 27, 0.27) 0%, rgba(19, 25, 27, 0.77) 100%);

    position: relative;
    z-index: 1;
}

#sliderHome .carousel-item {
    overflow: hidden;
}
#sliderHome .slider-home-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
    pointer-events: none;
}
#sliderHome .carousel-item:not(.active) .slider-home-video {
    visibility: hidden;
}

#sliderScroll {
    display: none;
    position: absolute;
    bottom: 60px;
    z-index: 10;
    left: 50%;
    margin-left: -7px;
    text-align: center;
    opacity: 0.7;
}
#sliderScroll .line {
    height: 40px;
    width: 2px;
    display: block;
    background-color: #fff;
    margin: 0 auto;
}
#sliderScroll .triangle {
width: 0;
height: 0;
border-style: solid;
border-width: 12.1px 7px 0 7px;
border-color: #ffffff transparent transparent transparent;

}





.txt-bg {
    opacity: 0.03;
    font-size: 400px;
    font-weight: bold;
    position: absolute;
    letter-spacing: -10px;
}
.bg-scuro .txt-bg {
    opacity: 0.05;
}


#sectionIntroHome .bg-freccia {
    padding-top: 440px;
    background-position: 115% -15%;
    background-size: 800px;
}
#sectionIntroHome .row {
    align-items: center;
}
#sectionIntroHome .col-img img {
    max-width: 85%;
}

/*
#sectionIntroHome .freccia-bg {
    position: absolute;
    left: -120px;
    margin-top: -180px;
} 
#sectionIntroHome .freccia-bg img {
    width: 500px;
    height: auto; 
}
*/



.freccia-bg {
    position: absolute;
} 
.freccia-bg img {
    width: 550px;
    height: auto; 
}
 

#sectionIntroHome .freccia-bg {
    left: -110px;
    margin-top: 8px;
} 




#sectionIntroHome .col-txt {
    /*padding: 140px 70px;*/
}
#sectionIntroHome .col-txt .btn {
    margin-top: 50px;
}
#sectionIntroHome .container-fluid {
    margin-top: 100px;
}

 
 

#sectionNumeriHome .container-numeri {
    /*margin-top: 100px;*/
}
#sectionNumeriHome .container-numeri .col {
    padding: 50px 100px;
    border-right: 1px solid #BEBEBE;
}
#sectionNumeriHome .container-numeri .col:last-of-type {
    border-right: 0 none;
}
#sectionNumeriHome .container-numeri h6 {
    text-transform: uppercase;
    font-size: 17px;
    font-weight: 500;
    margin-bottom: 50px;
    letter-spacing: 2px;
}
#sectionNumeriHome .container-numeri h3 {
    font-size: 100px;
    font-weight: 700;
}
 

#sliderHome {
    padding: 0;
}
#sliderHome .container {
    height: 70vh !important;
    width: 100%;
    max-width: 100%;
    padding: 0;
}

#sliderHome .carousel-indicators {
    bottom: 60px;
    -ms-flex-pack: right;
    justify-content: right;
    margin-right: 80px;
    margin-left: auto;
    position: relative;
}

#sliderHome #sliderScroll {
    display: block;
}



#sectionMediaHome {
    padding-top: 140px;
    padding-bottom: 0;
}
#sectionMediaHome .carousel-indicators {
    bottom: -70px;
    right: auto;
    left: 0;
    margin-right: auto;
    margin-left: 0;
}
#sectionMediaHome .carousel-indicators li {
    margin-left: 5px;
    margin-right: 45px;
}
#sliderMediaHome a {
    display: block;
    width: 100%;
}
#sliderMediaHome a .gradient {
    min-height: 460px;
    width: 100%;
}
#sliderMediaHome a .gradient:hover {
    background-color: rgba(0,0,0,0.2);
}

#sliderMediaHome.slick-dotted.slick-slider {
    margin-bottom: 0 !important;
}

#sliderMediaHome .gradient .radius100, #sectionMedia .gradient .radius100 {
    width: 100px;
    height: 100px;
    padding: 35px 42px;
    background: linear-gradient(180deg, #89be31 0%, #0d594d 100%);
    text-align: center;
    position: absolute;
    left: 50%;
    margin-left: -50px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}
#sectionMedia .gradient .radius100 {
    width: 80px;
    height: 80px;
    padding: 28px 34px;
    margin-left: -40px;
}


#sliderMediaHome .gradient .triangle,
#sectionMedia .gradient .triangle{
width: 0;
height: 0;
border-style: solid;
border-width: 15px 0 15px 26.0px;
border-color: transparent transparent transparent #ffffff;
}
#sectionMedia .gradient .triangle{
    border-width: 10px 0 10px 18px;
}

#sectionMediaHome {
    margin-bottom: -230px;
}



#sectionMedia {
    padding-bottom: 0; 
}

.row-media a {
    display: block;
}
.row-media a .gradient {
    min-height: 330px;
    width: 100%;
}
.row-media a .gradient:hover {
    background-color: rgba(0,0,0,0.2);
}


.row-media {
    margin-left: -30px;
    margin-right: -30px;
}
.row-media .col {
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 100px;
}

.row-media .col-tit h6 {
    letter-spacing: 5px;
    font-size: 15px;
    margin-bottom: 15px;
}
.row-media h4 {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 15px;
}
.row-media .col-tit h6 span {
    width: 60px;
    height: 1px;
    display: block;
    position: relative;
    left: 0;
    top: 0;
    margin: 15px 0 0;
}


.logo-timeline {
    width: auto;
    height: 70px;
    display: block;
    margin: 0;
}


#sectionTecnologie,
#sectionSiemens {
    padding-top: 0;
    padding-bottom: 0;
}
#sectionTecnologie .gradient {
    background-color: rgba(0,0,0,0.6);
    padding: 100px 0;
}


#sectionTecnologie .tecnologie-brain-cloud {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    gap: 4px 8px;
    max-width: 920px;
    margin: 40px auto 0;
    padding: 20px 10px;
    min-height: 280px;
    text-align: center;
}

#sectionTecnologie .brain-tag {
    display: inline-block;
    font-size: var(--brain-size);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: 0.02em;
    white-space: nowrap;
    transition: opacity 0.2s ease;
}

#sectionTecnologie .brain-tag.brain-color-1 {
    color: #89BE31;
}

#sectionTecnologie .brain-tag.brain-color-2 {
    color: #6ca66a;
}

#sectionTecnologie .brain-tag.brain-color-3 {
    color: #ddeac9;
}


#sectionTecnologie h3 {
    text-align: center;
}

#sectionTecnologie .col-tit h3 span {
    width: 90px;
    height: 1px;
    display: block;
    background-color: #89BE31;
    margin: 20px auto 0;
    position: static;
    left: auto;
    top: auto;
}




#timeline {
    background-image: url(/img/row_g.png);
    background-repeat: repeat-y;
    background-position: center;
    background-size: 2px;
    margin-top: 30px;  
}
#timeline #punta_freccia {
    position: absolute;
    left: 50%;
    margin-left: -10px;
    top: -10px;
    height: 0;
    border-style: solid;
    border-width: 0 10px 15px 10px;
    border-color: transparent transparent #4D974B transparent;
}

#timeline span {
    width: 40%;
    display: inline-block;
    margin-bottom: 120px;
}
#timeline span:last-child {
    margin-bottom: 0;
}
#timeline span.right {
    float: right;
}
#timeline span.left {
    float: left;
}
#timeline .data {
    padding: 12px 0;
    width: 100%;
    height: 68px;
}
#timeline .data h6 {
    color: #fff;
    margin: 0 !important;
    text-align: center;
    line-height: 43px;
    font-size: 24px;
    text-transform: none;
}
#timeline .tit {
    line-height: 28px;
    font-size: 21px;
    margin: 0 0 10px;
}
#timeline p {
    font-size: 15px;
    line-height: 22px;
    font-weight: 100;
}
#timeline span .freccia {
    width: 0;
    height: 0;
    border-style: solid;
    position: relative;
    margin: -68px -20px 55px;
}

#timeline span.right .freccia {
    border-width: 0 20px 20px 0;
}
#timeline span.left .freccia {
    border-width: 20px 20px 0 0;
    float: right;
}








#sectionSquadra .txt-bg {
    left: -60px;
    margin-top: -380px;
    font-size: 440px;
}




.item-list-border {
    position: relative;
    padding-left: 25px;
    margin: 50px 0;
}

.item-list-border::before {
    content: '';
    position: absolute;
    left: 0;
    top: -12px;
    width: 3px;
    height: 52px;
    max-height: 52px;
    border-radius: 1px;
    background: linear-gradient(180deg, #89be31 0%, #0d594d 100%);
}

.item-list-border .btn {
    margin-top: 50px;
}


.simple-list {
    border-top: 1px solid #BEBEBE;
}
.simple-list .item {
    border-bottom: 1px solid #BEBEBE;
}
.simple-list .item a {
    display: block;
    padding: 12px 0 15px;
    background-image: url(/img/icon/right.png);
    background-repeat: no-repeat;
    background-size: 22px;
    background-position: 98% center;
}
.simple-list .item a:hover {
    padding: 12px 15px 15px;
}
.simple-list .item p {
    margin: 0;
    width: 88%;
}

.container-figura {
    margin-top: -15px;
    margin-bottom: 50px;
}
.container-figura .btn img {
  -ms-transform: rotate(90deg); /* IE 9 */
  transform: rotate(90deg);
}

.container-figura:last-child {
    margin-bottom: 0;
}


#listFigureHome {
    margin-top: 50px;
    margin-bottom: 50px;
}


/* --- Home: Jobs (sectionJobsHome) --- */
#sectionJobsHome.jobs-home-section,
#sectionFigureRicercate {
    background-color: #F9FFEF;
}
#sectionJobsHome .btn.btn-border-color,
#sectionFigureRicercate .btn.btn-border-color {
    color: #1D1D1B !important;
}



#sectionJobsHome .jobs-home-row {
    align-items: flex-start;
}

#sectionJobsHome .jobs-home-kicker {
    letter-spacing: 8px;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 22px;
    text-transform: uppercase;
    color: #000;
}


#sectionJobsHome .jobs-home-lead {
    margin: 0 0 50px;
    font-size: 20px;
    line-height: 30px;
    max-width: 340px;
}


#sectionJobsHome #listFigureHome {
    margin-top: 28px;
    margin-bottom: 0;
}

#sectionJobsHome #listFigureHome.simple-list {
    border-top-color: #bebebe;
}

#sectionJobsHome #listFigureHome.simple-list .item {
    border-bottom-color: #bebebe;
}

#sectionJobsHome #listFigureHome .item a.jobs-home-list-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 0;
    background-image: none;
}

#sectionJobsHome #listFigureHome .item a.jobs-home-list-link::after {
    content: '';
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background-image: url(/img/icon/right.png);
    background-repeat: no-repeat;
    background-size: 24px;
    background-position: center;
}

#sectionJobsHome #listFigureHome .item a.jobs-home-list-link:hover {
    padding: 20px 0;
    opacity: 0.72;
}
#sectionJobsHome #listFigureHome .item p {
    margin: 0;
    width: auto;
    flex: 1;
    min-width: 0;
    font-size: 20px;
}

@media only screen and (min-width: 992px) {
    #sectionJobsHome .jobs-home-col-list {
        padding-left: 36px;
    }
}

@media only screen and (max-width: 991px) {
    #sectionJobsHome.jobs-home-section {
        padding: 56px 0 64px;
    }

    #sectionJobsHome .jobs-home-col-list {
        margin-top: 40px;
        padding-left: 15px;
    }

    #sectionJobsHome #listFigureHome .item p {
        font-size: 15px;
    }



}



.page-cover {
    padding: 0;
}
.page-cover .cover-img {
    min-height: 500px;
    height: 65vh;
}
.page-cover .row,
.page-cover .col {
    height: 100%;
}
.page-cover .container {
    width: 100%;
    max-width: 100%;
    padding: 0;
}

.page-cover .cover-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.page-cover .cover-wrap .cover-img {
    position: relative;
    z-index: 0;
}

.page-cover .cover-wrap .gradient {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
    
    background: linear-gradient(270deg, rgba(19, 25, 27, 0.27) 0%, rgba(19, 25, 27, 0.77) 100%);
}







.page-cover .cover-txt-wrap {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 40px 32px 40px 70px;
    width: 90%;
    max-width: 850px;
    box-sizing: border-box;
}

.page-cover .cover-txt-inner {
    text-align: left;
}

.page-cover .cover-txt--primary {
    margin-bottom: 0.5em;
}

.page-cover .cover-txt--primary:last-child {
    margin-bottom: 0;
}

.page-cover .cover-txt--secondary {
    font-size: 17px;
    line-height: 1.45;
    opacity: 0.95;
}

.page-cover .cover-txt--secondary p:last-child {
    margin-bottom: 0;
}

.page-cover  h1 {
    font-size: 56px;
    line-height: 70px;
    margin-bottom: 0;
}
.page-cover p {
    font-size: 20px;
    line-height: 32px;
    margin-top: 24px;
}


.section-list-grid {
    padding: 0;
}
.section-list-grid .txt {
    max-width: 600px;
}
.section-list-grid .txt.text-left {
    margin-left: 70px;
    margin-right: auto;
}
.section-list-grid .txt.text-right {
    margin-right: 70px;
    margin-left: auto;
}
.section-list-grid .background-image {
    min-height: 550px;
}
.section-list-grid .btn {
    width: fit-content;
    margin-top: 70px;
}





.arrow-down {
    display: inline-block;
    width: 70px;
    height: 70px;
    padding: 24px;
    margin: 40px auto;
    border: 1px solid rgba(255,255,255,0.3);
}






.paginazione {
    text-align: center;
    /* margin: 0 auto 100px; */
}
.paginazione .next,
.paginazione .prev {
    display: none;
}

.paginazione .page-numbers {
    margin: 0 15px;
    border-bottom: 2px solid transparent;
    border-top: 2px solid transparent;
    padding: 8px 20px;
}





.section-box-servizi .col {
    padding: 6px 3px; 
}
.section-box-servizi a {
    display: block;
}
.section-box-servizi .gradient {
    min-height: 450px;

background: linear-gradient(360deg, rgba(0, 0, 0, 0.77) 0%, rgba(0, 0, 0, 0.08) 100%);

}


.section-box-servizi .txt {
    position: relative;
    margin-top: 24%;
}
.section-box-servizi .icona {
    width: 90px;
    height: auto;
    margin-bottom: 35px;
    margin-top: 65px;
    opacity: 0;
}
.section-box-servizi h3 {
    font-size: 32px;
    line-height: normal;
    max-width: 245px;
    margin: 0 auto;
}

.section-box-servizi .gradient:hover {
    background-image: none;
}
.section-box-servizi .gradient:hover h3 {
    letter-spacing: 2px; 
}
.section-box-servizi .gradient:hover .icona {
    opacity: 1;
} 
.section-box-servizi .gradient:hover .txt {
    margin-top: 0;
}


.box-servizi-4 h3 {
    padding-top: 25px; 
}


/* --- Servizi: home (Slick) --- */
.section-box-servizi-home {
    background-color: #0D594D;
}

.slider-servizi-home .slick-list {
    margin: 0 calc(-55px / 2);
    overflow: visible;
}

.slider-servizi-home .slick-slide > div {
    padding: 0 calc(55px / 2);
}

/* Prima dell’init Slick le slide sono figli diretti e si impilano: stessa larghezza che userà Slick */
.slider-servizi-home:not(.slick-initialized) {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
}

.slider-servizi-home:not(.slick-initialized) > .servizi-home-slide {
    flex: 0 0 33.333%;
    width: 33.333%;
    max-width: 33.333%;
    min-width: 0;
    box-sizing: border-box;
    padding: 0 calc(55px / 2);
}

@media only screen and (max-width: 1199px) {
    .slider-servizi-home:not(.slick-initialized) > .servizi-home-slide {
        flex: 0 0 50%;
        width: 50%;
        max-width: 50%;
    }
}

@media only screen and (max-width: 767px) {
    .slider-servizi-home:not(.slick-initialized) > .servizi-home-slide {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }
}

#sliderServiziHome.slick-dotted.slick-slider {
    margin-bottom: 0 !important;
}

.servizi-home-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px 32px;
    margin-top: 48px;
}
.page-template-servizi-single .servizi-home-footer .btn {
    display: none;
}

.servizi-home-dots .slick-dots {
    position: static;
    bottom: auto;
    left: auto;
    text-align: left;
    margin: 0;
    padding: 0;
    width: auto;
    display: inline-block;
}



/* --- Servizi: pagina (griglia) --- */
.section-box-servizi--grid {
    padding: 0 0 80px;
}

.section-box-servizi--grid .servizi-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 0 auto;
    box-sizing: border-box;
}

@media only screen and (min-width: 576px) {
    .section-box-servizi--grid .servizi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (min-width: 992px) {
    .section-box-servizi--grid .servizi-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 55px;
    }
}

.section-box-servizi--grid .servizi-grid-card,
.section-box-servizi-home .servizi-grid-card {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    filter: drop-shadow(0px 5px 20px rgba(0, 0, 0, 0.33));
}







.section-box-servizi--grid .servizi-grid-card .gradient,
.section-box-servizi-home .servizi-grid-card .gradient {
    position: absolute;
    inset: 0;
    min-height: 0 !important;
    height: 100%;
    width: 100%;
    flex-basis: auto;
    align-items: center;
    justify-content: center;
}

.section-box-servizi--grid .servizi-grid-card .txt,
.section-box-servizi-home .servizi-grid-card .txt {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

.section-box-servizi .servizi-grid-card .icona {
    display: block;
}

.section-box-servizi--grid .servizi-grid-card h3,
.section-box-servizi-home .servizi-grid-card h3 {
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
}


 
 

#gallerie {
    margin-top: 150px;
} 
#gallerie h6 {
    margin-top: 20px;
    margin-bottom: 20px;
 
    font-weight: 500;
    letter-spacing: 3px;
}

#gallerie .item-list-border {
    margin: 125px 0 30px 0;
}

#gallerie .col-gallery-item { 
    /*padding: 0 5px;*/
}
#gallerie a { 
    display: block;
    margin-bottom: 30px; 
}


/* ------------------------------------------------------------------
   Servizi single — sezioni repeater (testo + gallery + sfondo)
   ------------------------------------------------------------------ */

.servizio-sezione {
    position: relative;
    color: #fff;
    overflow: hidden;
}

.servizio-sezione + .servizio-sezione {
    padding-top: 72px;
}

#sectionServizio .servizio-sezione:first-of-type {
    margin-top: 48px;
}

.servizio-sezione__bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    background-size: cover;
    background-position: center center;
}

.servizio-sezione--has-bg .servizio-sezione__container {
    padding-top: 200px;
    padding-bottom: 200px;
}

.servizio-sezione__bg-gradient {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;

    background: linear-gradient(87.66deg, rgba(0, 0, 0, 0.8) 13.53%, rgba(0, 0, 0, 0.46) 91.87%);

}

.servizio-sezione__container {
    position: relative;
    z-index: 2;
}

.servizio-sezione__row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 48px 56px;
}

.servizio-sezione__col--text,
.servizio-sezione__col--gallery {
    box-sizing: border-box;
}

.servizio-sezione__col--text {
    flex: 0 0 calc(66.666667% - 37.333px);
    max-width: calc(66.666667% - 37.333px);
}

.servizio-sezione__col--gallery {
    flex: 0 0 calc(33.333333% - 18.667px);
    max-width: calc(33.333333% - 18.667px);
}

.servizio-sezione--has-bg .servizio-sezione__col--text,
.servizio-sezione--has-bg .servizio-sezione__col--gallery {
    flex: 0 0 calc(50% - 28px);
    max-width: calc(50% - 28px);
}

.servizio-sezione__text-inner {
    display: grid;
    grid-template-columns: 4px 1fr;
    column-gap: 22px;
    text-align: left;
}

.servizio-sezione__accent {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    width: 3px;
    height: 65px;
    max-height: 65px;
    border-radius: 1px;
    background: linear-gradient(180deg, #89be31 0%, #0d594d 100%);
    position: relative;
    top: -12px;
}

.servizio-sezione__title,
.servizio-sezione__desc {
    grid-column: 2;
}

.servizio-sezione__title {
    margin: 0 0 16px;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 600;
    color: #fff;
}

.servizio-sezione__desc {
    margin: -12px 0;
}

.servizio-sezione__desc p,
.servizio-sezione__desc ul li {
    color: #fff;
    font-size: 20px;
    line-height: 32px;
}

.servizio-sezione__desc ul {
    margin-top: 20px;
}

.servizio-sezione__desc p:last-child {
    margin-bottom: 0;
}

.servizio-sezione__slider-wrap {
    width: 100%;
}

.servizio-sezione__slider-wrap:not(.is-ready) {
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.servizio-sezione__slider-wrap:not(.is-ready) .servizio-sezione__slider,
.servizio-sezione__slider-wrap:not(.is-ready) .servizio-sezione__dots {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.servizio-sezione__slider-wrap.is-ready {
    transition: opacity 0.25s ease;
}

.servizio-sezione__slider-wrap.is-ready .servizio-sezione__slider,
.servizio-sezione__slider-wrap.is-ready .servizio-sezione__dots {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.servizio-sezione__slider:not(.slick-initialized) {
    overflow: hidden;
    max-height: 0;
}

.servizio-sezione__slider.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.servizio-sezione__slide {
    outline: none;
}

.servizio-sezione__thumb {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    background-size: cover;
    background-position: center center;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    min-height: 200px;
}

.servizio-sezione__thumb--video {
    background-color: #2a2a2a;
}

.servizio-sezione__play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.servizio-sezione__play-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    border-radius: 50%;

    background: linear-gradient(180deg, #89be31 0%, #0d594d 100%);

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.servizio-sezione__play-tri {
    display: block;
    width: 0;
    height: 0;
    margin-left: 6px;
    border-style: solid;
    border-width: 14px 0 14px 22px;
    border-color: transparent transparent transparent #ffffff;
}

.servizio-sezione__dots {
    margin-top: 22px;
    text-align: left;
}

.servizio-sezione .slick-dots {
    position: static;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    justify-content: flex-start;
}

.servizio-sezione .slick-dots li {
    margin: 0;
    width: auto;
    height: auto;
}

.servizio-sezione .slick-dots li button {
    width: 7px;
    height: 7px;
    padding: 0;
    border-radius: 50%;
    background: #fff;
    border: 0 none;
    font-size: 0;
    line-height: 0;
    text-indent: -9999px;
    cursor: pointer;
    transition: background 0.2s ease, box-shadow 0.2s ease;
}

.servizio-sezione .slick-dots li button:before {
    display: none;
}

.servizio-sezione .slick-dots li.slick-active button {
    background: transparent;
    box-shadow: inset 0 0 0 1px #fff;
    width: 12px;
    height: 12px;
    position: relative;
    top: -3px;
}

@media only screen and (max-width: 991px) {
    .servizio-sezione__col--text,
    .servizio-sezione__col--gallery,
    .servizio-sezione--has-bg .servizio-sezione__col--text {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .servizio-sezione__col--text {
        order: 1;
    }
    .servizio-sezione__col--gallery {
        order: 2;
    }

    .servizio-sezione--has-bg .servizio-sezione__container {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    
    .servizio-sezione {
        padding: 40px 0;
    }

    .servizio-sezione__title {
        font-size: 22px;
    }

    .servizio-sezione__play-circle {
        width: 72px;
        height: 72px;
    }
    
}



.vbox-title {
    font-size: 15px !important;
    background-color: transparent !important;
}
.vbox-close {
    right: 15px !important;
    padding: 10px !important;
}

/* VenoBox — gallery sezioni servizio (immagini verticali + no scroll pagina) */
html.vbox-servizio-sezione-open,
body.vbox-servizio-sezione-open {
    overflow: hidden !important;
    height: 100%;
}

.vbox-overlay.vbox-servizio-sezione .vbox-container {
    overflow: hidden !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 72px 16px 32px;
    -webkit-overflow-scrolling: auto;
}

.vbox-overlay.vbox-servizio-sezione .vbox-content {
    min-height: 0;
    max-height: 100%;
    overflow: visible;
    padding: 0 4%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.vbox-overlay.vbox-servizio-sezione .vbox-child {
    max-width: 100%;
    max-height: calc(100vh - 104px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.vbox-overlay.vbox-servizio-sezione .vbox-child img {
    display: block;
    max-width: min(calc(100vw - 48px), 1200px);
    max-height: calc(100vh - 104px);
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    margin: 0 auto;
}

.vbox-overlay.vbox-servizio-sezione .vbox-child.venoratio {
    max-height: calc(100vh - 104px);
    width: min(calc(100vw - 48px), 1200px);
}


/* ------------------------------------------------------------------
   News — archivio griglia + single + slider correlati
   ------------------------------------------------------------------ */

.section-news-hero {
    padding: 72px 0 40px;
    background-color: #1a1a1a;
}

.section-news-hero--archive {
    padding-top: 100px;
}

.section-news-hero__desc {
    margin-top: 16px;
    max-width: 720px;
    font-size: 17px;
    line-height: 1.55;
    font-weight: 300;
    opacity: 0.9;
}

.section-news-grid {
    padding: 0 65px;
}

.news-grid-paginazione {
    margin-top: 48px;
}

.news-grid-paginazione .page-numbers {
    color: rgba(255, 255, 255, 0.85);
}

.news-card {
    display: block;
    overflow: hidden;
    background-color: #252525;
    text-align: left;
}

.news-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 385 / 200;
    background-size: cover;
    background-position: center center;
    border-radius: 14px 14px 0 0;
}

.news-card__media--empty {
    background-color: #333;
}

.news-card__badge,
.single-news__badge {
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 2;
    display: inline-block;
    padding: 6px 12px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1.2;
    color: #fff;
    background-color: #0D594D;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.15);
}
.single-news__badge {
    left: -10px;
    top: 20px;
    font-size: 18px;
}


.news-card__body {
    position: relative;
    padding: 20px 25px;
    min-height: 125px;
    background-color: #262828;
    transition: background 0.35s ease, box-shadow 0.35s ease;
}

.news-card__title {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;
    color: #fff;
    transition: color 0.25s ease;
}

.news-card__excerpt {
    margin: 0;
    font-size: 14px;
    line-height: 21px;
    color: #fff;
    margin-right: 33px;
    transition: color 0.25s ease;
}

.news-card__arrow {
    position: absolute;
    right: 24px;
    bottom: 24px;
    width: 24px;
    height: 24px;
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    background: url("/img/icon/arrow-right-green.svg") center center no-repeat;
    background-size: 24px auto;
}

.news-card:hover .news-card__body {
    background: linear-gradient(90deg, #2C9A41 0%, #0D594D 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.news-card:hover .news-card__title,
.news-card:hover .news-card__excerpt {
    color: #fff;
}

.news-card.mouse-hover:hover {
    opacity: 1;
    cursor: pointer;
}

.news-card:hover .news-card__arrow {
    opacity: 1;
    transform: translateX(0);
}

.news-card-slide--grid {
    margin-bottom: 28px;
}

.news-card-slide--slick {
    padding: 0 10px;
}

.slider-news-related .slick-list {
    margin: 0 -10px;
}

.section-news-related {
    padding: 80px 0 100px;
    background-color: #151918;
}

.single-news__related-head {
    margin-bottom: 36px;
}

.news-related-footer {
    margin-top: 8px;
}


/* --- Single news articolo --- */

.single-news {
    background-color: #262828;
    color: #fff;
}

.single-news__hero {
    padding: 56px 0 0;
    text-align: center;
}

.single-news__title {
    margin: 0 auto 25px;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 600;
    color: #fff;
    text-align: left;
}

.single-news__figure {
    max-width: 920px;
    margin: 0 auto;
}

.single-news__figure-inner {
    position: relative;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
}


.single-news__cover-img {
    display: block;
    width: 100%;
    height: auto;
    vertical-align: middle;
}

.single-news__content {
    padding: 56px 0 72px;
}


.single-news__entry p,
.single-news__entry li {
    color: #fff;
}

.single-news__entry a {
    color: #89BE31;
    text-decoration: underline;
}

.single-news__cta-row {
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 16px 20px;
    justify-content: flex-start;
}

.single-news__cta img {
    height: 14px;
    width: auto;
}

@media only screen and (max-width: 768px) {
    .single-news__title {
        font-size: 28px;
    }

    .single-news__hero {
        padding-top: 40px;
    }

    .section-news-hero {
        padding-top: 56px;
    }
}


/*
.login-form {
    border-left: 4px solid #009EA6;
    padding-left: 22px;
}
*/
.login-form {
    border-left: 4px solid #89BE31;
    padding: 25px 22px 2px;
    background-color: rgba(255,255,255,0.5);
    box-shadow: 1px 1px 2px 1px rgba(0,0,0,.1);
}

.login-form .tml {
    font-size: 18px;
}
.login-form input {
    border: 0 none;
    background-color: transparent;
    border-bottom: 1px solid rgba(0,0,0,0.4) !important;
    margin-bottom: 25px;
    padding: 0 0 6px;
    /*max-width: 450px;*/
}
.login-form a {
    font-weight: 500;
}
.login-form label {
    margin-bottom: 0;
    margin: 15px 0 5px;
    font-weight: 100;
    font-size: 16px;
    opacity: 0.7;
}
.login-form button,
#btnDashboard {
    border: 0 none !important;
    padding: 18px 30px;
    margin: 0 0 25px;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    background-color: #4D974B;
}
.login-form  ul {
    padding-left: 0;
    list-style: none;
}

#btnAreaClienti {
    padding: 10px 20px !important;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 13%;
    background: linear-gradient(90deg, #0D594D 0%, #4D974B 100%);
    color: #fff !important;
}



#btnLogout {
    border: 2px solid #4D974B !important;
    padding: 10px 15px;
    position: absolute;
    right: 0;
    top: -2px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    z-index: 1000;
}

.tml .tml-action-confirmaction .success, 
.tml .tml-error, 
.tml .tml-message, 
.tml .tml-success {
    border-left: 0 none;
    box-shadow: 0 0 0 0 transparent;
    padding-left: 0;
}




#pincettiNelMondo {
}
#pincettiNelMondo iframe {
    border: 0 none;
}


footer {
    padding-bottom: 70px;
    padding-top: 50px;
    background-image: url(/img/map-footer.png);
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 1100px;
}

footer p {
    line-height: 28px; 
    font-size: 14px;
    text-align: left;
    line-height: 35px;
}
footer p span {
    opacity: 0.75;
}
footer h6 {
    font-size: 20px;
    margin-bottom: 25px;
}

footer .row {
    margin-bottom: 30px;
}

footer .row-contatti p {
    font-size: 16px;
    line-height: 45px;
}

footer .row-menu {
    /*margin-bottom: 0;*/
    max-width: 400px;
}
footer .row-menu a {
    color: #fff !important;
    display: block;
    letter-spacing: 2px;
    margin-bottom: 20px;
    font-size: 12px;
}


footer .row-footer-legal {
    margin-top: 50px;
    margin-bottom: 0;
}
footer .row-footer-legal p {
    font-size: 12px; 
    line-height: 24px;
    opacity: 0.7; 
    margin-bottom: 15px;
}


footer .row-social a {
    font-size: 20px;
    display: inline-block;
    margin: 15px 25px 15px 0;
}


#footerInfo {
    padding-top: 30px;
    padding-bottom: 33px;

background: linear-gradient(90deg, #0F594D 0%, #4D974B 100%);

}

#footerInfo .row {
    align-items: center;
}

#footerInfo h3 {
    margin-bottom: 0;
    font-size: 32px;
    line-height: normal;
    font-weight: 300;
}
#footerInfo h3 strong {
    font-weight: 700;
}
.page-template-contatti #footerInfo {
    display: none;
}

#h24 {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 12px;
    max-width: 100%;
    color: #fff !important;
    box-sizing: border-box;
}

#h24 .h24-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    background-color: rgba(0,0,0,0.2);
    width: 130px;
    height: 130px;
}

#h24 .h24-icon img {
    width: auto;
    height: 80px;
    display: block;
}

#h24 .h24-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    text-align: left;
    min-width: 0;
}

#h24 .h24-line {
    margin: 0;
    line-height: 1.12;
}

#h24 .h24-line-primary {
    font-weight: 700;
    font-size: 40px;
    line-height: normal;
    color: #fff;
}
#h24 .h24-line-primary span {
    font-weight: 300;
}

#h24 .h24-line-secondary {
    font-size: 32px;
    color: #fff;
}
#h24 .h24-line-secondary strong {
    font-weight: 700;
}

#h24 .h24-line-secondary span {
    font-size: 16px;
    font-weight: 300;
}


.grecaptcha-badge {
    visibility: hidden !important;
}




.col-contatti-dati {
    margin-top: 5px; 
}

.col-contatti-dati div {
    margin-bottom: 150px; 
}


.col-contatti-dati .contatto i {
    font-size: 26px;
    margin-right: 5px;
}



.header-partner-logo,
.footer-partner-logo {
    display: inline-block;
    width: auto;
    height: 100px;
    margin: 0;
    vertical-align: middle;
}



#sectionMappa {
    padding: 0;
}


#sectionContatti .a-no-style {
    color: #fff !important;
}
#sectionContatti .a-no-style:hover {
    text-decoration: underline !important;
}




.wpcf7-form .row {
    margin-bottom: 30px;
}
.wpcf7-form input, .wpcf7-form input:focus,
.wpcf7-form textarea, .wpcf7-form textarea:focus,
.wpcf7-form .select .form-control, .wpcf7-form .select .form-control:focus {
    background-color: transparent;
    border: 0 none;
    border-bottom: 1px solid #fff;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;    
}


.page-template-contatti .wpcf7-form input, .page-template-contatti .wpcf7-form input:focus,
.page-template-contatti .wpcf7-form textarea, .page-template-contatti .wpcf7-form textarea:focus,
.page-template-contatti .wpcf7-form .select .form-control, .page-template-contatti .wpcf7-form .select .form-control:focus {
    border-bottom: 1px solid rgba(255,255,255,0.4) !important;
}

.wpcf7-form .form-control {
    color: #fff;
}

.page-template-contatti .wpcf7-form .form-control {
    color: #fff !important;
}


.wpcf7 .wpcf7-submit {
    padding: 15px 30px 14px 33px !important;
    font-weight: 500;
    text-transform: uppercase;
    text-align: center;
    margin-top: 30px;
}

.page-template-contatti .wpcf7-form input.wpcf7-submit {
    border: 0 none !important;
}

.wpcf7 .wpcf7-submit,
.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-submit:active,
.wpcf7 .wpcf7-submit:focus,
.wpcf7 .wpcf7-submit:visited {
    color: #fff !important;
    border: 0 none !important;
}

.wpcf7 .btn.disabled, .wpcf7 .btn:disabled {
    opacity: 1;
}



.wpcf7-form textarea {
    /*padding: 15px 25px !important;*/
    padding: 15px 0 !important;
}

.wpcf7-form input,
.wpcf7-form textarea {
    outline: 0 none !important;
    box-shadow: none !important;
    padding-left: 0 !important;
    padding: 0 0 6px;
    font-size: 14px;
    
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
    font-weight: 300;
    opacity: 0.75;
}

.wpcf7-form .select .form-control {
    height: 50px;
}

.wpcf7-form .select .form-control { 

}

.wpcf7-form .row.no-pad .col {
    padding: 0;
}

.wpcf7-form label {
    margin-bottom: 0;
    margin: 15px 0 5px;
    font-weight: 100;
    font-size: 13px;
    opacity: 0.7;
}

.wpcf7-form .flag span {
    float: left;
    width: 95%;
    margin-left: 10px;
}
.wpcf7-form .flag input {
    float: left;
    /*width: 15px;*/ 
    position: relative;
    top: 3px; 
    padding: 10px!important;
}

.wpcf7-form .div-btn input {
    /*padding: 15px 30px !important;*/
    font-size: 21px;
}
.wpcf7-form .div-btn .wpcf7-submit:disabled {
    /*opacity: 0.5 !important;*/
}
 
.wpcf7-not-valid-tip {
    font-size: 14px;
    margin-top: 7px;
}


.wpcf7-list-item #privacy {
    margin: 0 5px 0 -15px;
    position: relative;
    top: 1px;
}




.wpcf7 form .wpcf7-response-output {
    margin: 15px 0 0;
    font-size: 14px;
}

#quizForm {
    width: 40px;
}

.cn-text-container, .cn-buttons-container {
    display: block !important;
}
.btn-cookie {
    background-color: #fff !important;
    color: #191a1a !important; 
}




/* The side navigation menu */
#sideMenu.sidenav {
  background-color: rgba(0,0,0,0.9);
  text-align: center;
  box-shadow: 5px 0px 30px 0px rgba(0,0,0,0.3);
  -webkit-box-shadow: 5px 0px 30px 0px rgba(0,0,0,0.3);
  -moz-box-shadow: 5px 0px 30px 0px rgba(0,0,0,0.3);
}
  
/* The navigation menu links */

.sidenav ul {
    margin: 0;
    padding: 0;
}
.sidenav a {
    padding: 20px 0;
    text-decoration: none;
    display: block;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* When you mouse over the navigation links, change their color */
.sidenav a:hover {

}

/* Position and style the close button (top right corner) */
.sidenav .closebtn {
    margin:  60px auto;
    font-size: 35px;
}

/* Style page content - use this if you want to push the page content to the right when you open the side navigation */
#siteBody {
    /*
  transition: margin-left .5s;
  padding: 20px;
    */
}

/* On smaller screens, where height is less than 450px, change the style of the sidenav (less padding and a smaller font size) */
@media screen and (max-height: 450px) {
    /*
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
    */
}



/* Hide scrollbar for Chrome, Safari and Opera */
#mySidenav::-webkit-scrollbar {
  display: none;
}
 
/* Hide scrollbar for IE, Edge and Firefox */
#mySidenav {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}






.desktop-view { display: block; }
.desktop-inline-view { display: inline-block; }
.mobile-view { display: none; }

/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/



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

    #menuDesktop .header-main-nav {
        gap: 8px 26px;
    }

    .navbar-brand img {
        width: 300px;
    }
    .header-partner-logo, .footer-partner-logo {
        height: 80px;
    }

}


/*--------------------------------------------------------------
## tablet
--------------------------------------------------------------*/
@media only screen and (max-width: 960px) {

}

@media only screen and (min-width: 769px) {
    
}




@media only screen and (max-width: 991px) { 
    
    .desktop-view { display: none; }
    .desktop-inline-view { display: none; }
    .mobile-view { display: block; }

    #menuDesktop {
        display: none;
    }

    .header-row-top {
        flex-wrap: nowrap;
        align-items: center;
    }

    .header-top-right {
        display: none;
    }

    .navbar-brand {
        margin: 25px 30px 30px;
        max-width: calc(100% - 70px);
    }
    
    .navbar-brand img {
        width: 200px;
    }

    .txt-bg {
        display: none;
    }
     
    p,
    .site-content ul li,
    footer p,
    .servizio-sezione__desc p, .servizio-sezione__desc ul li { 
        font-size: 15px; 
        line-height: 24px;
    }
    
    h2 {
        font-size: 26px;
        line-height: 36px;
        margin-bottom: 25px;
    }    
    h3 {
        font-size: 21px;
        line-height: 32px;
    } 
    h4 {
        font-size: 18px; 
        line-height: 26px;
    }
    
    .btn {
        letter-spacing: 2px;
        font-size: 13px;
    }    
    .btn span {
        height: 46px;
    }   
    .btn img {
        width: 16px; 
        top: -1px;
    }
    .btn-big {
        padding: 12px 18px;
    }
    
    
    header { 
        padding: 0;
    }

    header .container { 
        padding: 0;
    }
    
    .container {
        max-width: 100%;
        padding-left: 30px;
        padding-right: 30px;
    }

    section {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    
    #ulLang {
        position: absolute;
        margin-top: 7px;
        right: 40px;
    }
    .lang-item {
        margin-right: 6px;
        top: 15px;
    }    
    .lang-item a {
        width: 20px;
        height: 20px;
    }
    .current-lang a {
        width: 26px;
        height: 26px;
        top: 3px;
    }    
    

    
    #sliderScroll {
        display: none !important;
    }
    
    
    #sidenavBtnOpen, #sidenavBtnClose {

    }    

    
    .section-pad .tit {
        margin-left: -30px;
    }
    .section-pad .col-pad {
        padding-left: 85px;
    }
    
    

    .section-in-costruzione {
        background-size: 100%;
    }
    
    .in-costruzione p {
        font-size: 18px;
    }
    

    .sidenav a {
        padding: 15px 0;
        font-size: 14px;
    }
    .sidenav.menuOpen .sidenav-menu-inner .header-main-nav a.active {
        border-bottom: 0 none;
    }
    .sidenav.menuOpen .sidenav-menu-inner .header-partner-logos--sidenav .header-partner-logo {
        max-height: 66px;
    }
    .sidenav.menuOpen .sidenav-menu-inner .header-social a {
        font-size: 18px;
        padding: 10px;
    }


    .bg-logo {
        background-size: 500px;
        background-position: 50% 200px;
    }



    
    .page-intro h1 {
        font-size: 24px;
        margin-bottom: 10px;
        line-height: 40px;
    }
    .page-intro p.sottotitolo {
        font-size: 15px;
    }
    .page-intro {
        background-position: center 20px;
        background-size: 100%;
    }
    
    
    .wpcf7 .wpcf7-submit {
        padding: 12px 16px 12px 23px !important;
        font-size: 12px;
    }
    .wpcf7-form {
        margin-right: 0;
    }
    
    
    #sliderHome .col {
        padding: 40px;
    }
    #sliderHome .carousel-control-next i, #sliderHome .carousel-control-prev i {
        font-size: 15px;
    }
    #sliderHome .carousel-control-next, #sliderHome .carousel-control-prev {
        width: 30px;
    }
    
    
    #sliderHome .sep {
        width: 45px;
        margin: 18px 0 15px;
    }
    #sliderHome .logo-slides {
        width: 190px;
    }
    
    
    #sliderHome .carousel-indicators li {
        margin-right: 0;
        margin-left: 20px;
    }
    .carousel-indicators li {
        width: 5px;
        height: 5px;
    }
    .carousel-indicators li.active {
        width: 7px;
        height: 7px;
    }
    
    #sliderHome .carousel-indicators {
        bottom: -15px;
    }
    
    
    #sliderHome.carousel-fade .carousel-item {
        background-position: 37%;
    }

    #sliderHome .container {
        height: 350px !important;
        min-height: auto;
    }

     
    #sectionIntroHome .col-txt .btn {
        margin-top: 40px;
    }

    #sectionIntroHome .col-img img {
        max-width: 130px;
        display: block;
        margin: 40px 0;
    }
    
    .col-tit h6 {
        letter-spacing: 6px;
        font-size: 12px;
    }
    .col-tit h6 span {
        width: 70px; 
    }

    .row-media .col-tit h6 {
        letter-spacing: 5px; 
        font-size: 12px; 
        margin-bottom: 15px;
    }
    .row-media h4 {
        font-size: 18px;
        line-height: 24px;
        margin-bottom: 15px;
    }
    .row-media .col-tit h6 span {
        width: 50px;
        margin: 10px 0 0;
    }
    .row-media .col {
        margin-bottom: 60px;
    }

    
    .page-cover .cover-img {
        min-height: 330px;
        height: auto;
    }

    .page-cover .cover-txt-wrap {
        max-width: 100%;
        padding: 30px;
        align-items: flex-end;
    }
    .page-cover p {
        font-size: 15px;
        line-height: 24px;
        margin-top: 0;
    }

    .page-cover  h1 {
        font-size: 32px;
        line-height: normal;
        margin-bottom: 0;
    }
     
    .servizio-sezione .slick-dots {
        gap: 10px;
    }
    .servizio-sezione .slick-dots li button {
        width: 5px;
        height: 5px;
    }
    .servizio-sezione .slick-dots li.slick-active button {
        width: 10px;
        height: 10px;
    }

    .servizio-sezione__text-inner {
        column-gap: 16px;
    }


    #sectionServizio {
        padding-top: 150px;
    }
 
    
    #gallerie { 
        margin-top: 80px;
    }
    #gallerie h6 {
        margin-top: 15px;
        margin-bottom: 15px;
        font-size: 15px;
    }
    #gallerie .item-list-border {
        margin: 80px 0 30px 0;
    }

    #sliderHome h3 {
        font-size: 24px;
        line-height: 30px;
    }
    #sliderHome .slider-home-title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 12px;
    }
    #sliderHome .slider-home-subtitle,
    #sliderHome p,
    #sliderHome .slider-home-subtitle ul li {
        font-size: 15px;
        line-height: 24px;
    }
    #sliderHome .slider-home-subtitle br {
        display: none;
    }
    #sliderHome .slider-home-date {
        font-size: 12px;
        padding: 7px 12px;
        margin-bottom: 14px;
    }
    #sliderHome .slider-home-content--custom {
        max-width: 100%;
    }


    
    #sectionJobsHome .jobs-home-lead {
        margin: 0 0 30px;
        font-size: 15px;
        line-height: normal;
        max-width: max-content;
    }
    #sectionJobsHome #listFigureHome .item a.jobs-home-list-link::after {
        width: 16px;
        height: 16px;
        background-size: 16px;
    }


    
    #sectionNumeriHome .container-numeri .col {
        padding: 30px;
        text-align: center;
        border-right: 0 none;
        border-bottom: 1px solid #BEBEBE; 
    }
    #sectionNumeriHome .container-numeri .col:last-of-type {
        border-bottom: 0 none;
    }
    #sectionNumeriHome .container-numeri h6 {
        font-size: 13px;
        margin-bottom: 10px; 
    }
    #sectionNumeriHome .container-numeri h3 {
        font-size: 44px;
        margin: 0 auto 5px;
    }

    .section-box-servizi.section-box-servizi-home {
        padding: 48px 0 44px;
    }

    .servizi-home-footer {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 24px;
    }

    .slider-servizi-home .slick-list {
        overflow: hidden;
    }
     
    .section-box-servizi .icona {
        width: 60px;
        margin-bottom: 10px;
    }
    .section-box-servizi h3 {
        font-size: 22px;
        line-height: 30px;
        margin: 0 15px; 
    }    
    .section-box-servizi {
        padding: 0 0 35px; 
    }
    .section-box-servizi .col {
        padding: 2px;
    }
     
    
    .section-box-servizi .gradient {
        min-height: 100px;
    }
    
    
    #sectionMediaHome {
        padding-top: 80px;
        margin-bottom: -125px;
    }
    #sliderMediaHome a .gradient {
        min-height: 260px;
    }

    #sliderMediaHome .gradient .radius100, #sectionMedia .gradient .radius100 {
        width: 80px;
        height: 80px;
        padding: 25px 32px;
        left: 50%;
        margin-left: -40px;
    }
    #sliderMediaHome .gradient .triangle, 
    #sectionMedia .gradient .triangle {
        border-width: 14px 0 14px 22px;
    }
    #sectionMediaHome .carousel-indicators li {
        margin-left: 0;
        margin-right: 20px;
    }
    #sectionMediaHome .carousel-indicators {
        bottom: -60px;
    }
    
    
    
    .container-tecnologie .item h6 {
        font-size: 17px;
        margin-bottom: 7px;
    }
    
    
    .item-list-border {
        margin: 40px 0;
    }
    
    .freccia-mob {
        max-width: 260px;
        position: relative;
        top: 20px;
        left: -60px;
    }
    

    .row-media a .gradient {
        min-height: 250px;
    } 
    
    
    .col-contatti-dati div {
        margin-bottom: 100px;
        margin-top: 70px;
    } 
    
    
    .bg-alternate-freccia {
        background-size: 400px;
        background-position: -70px 100%;
    }    
    
    
    #sectionFigureRicercate .bg-freccia {
        padding-top: 55px;
    }
      
    .page-cover  h1 {
        font-size: 28px;
    }
    .page-cover h3 {
        font-size: 26px;
        margin-top: 33%;
    }
    .page-cover h3 i {
        font-size: 18px;
        top: -2px;
        left: -6px;
    }
    
    #sliderScroll {
        height: 80px;
    }
    .page-cover #sliderScroll {
        height: 60px;
    }

    
    .section-full-img-txt .col-txt {
        padding: 70px 20px;
    }
    .section-full-img-txt {
        padding-bottom: 70px;
    }
    
    
    .section-list-grid .background-image {
        min-height: 250px;
    }
    .section-list-grid .vertical-align-center {
        flex-basis: 100%;
        display: block;
    }
    .section-list-grid h4 {
        font-size: 22px;
        line-height: 36px;
        margin-bottom: 20px;
    }
    .section-list-grid .txt {
        padding: 20px 5px 70px;
    }
    

    #timeline .data h6 { 
        line-height: 44px;
        font-size: 15px;
    }
    #timeline .tit {
        line-height: 20px;
        font-size: 15px;
        margin: 0 0 12px;
    }
    #timeline {
        min-height: auto;
        margin-top: 0;
    }
    #timeline p {
        font-size: 13px;
        line-height: 20px;
    }
    
    #timeline span .freccia {
        margin-left: -10px;
        margin-right: -10px;
    }
    #timeline #punta_freccia {
        margin-left: -6px;
        top: -6px;
        border-width: 0 6px 10px 6px;
    }    
    
    
    
    .login-form {
        padding-left: 18px;
    }    
    .login-form label {
        font-size: 14px;
    }
    .login-form button, #btnDashboard {
        padding: 14px 28px;
        margin: 0 0 20px;
        font-size: 14px;
    }
    .login-form .tml {
        font-size: 16px;
    }    
    .login-form input {
        margin-bottom: 18px;
    }
    #btnLogout {
        padding: 8px 14px;
        position: relative;
        top: -20px;
        font-size: 11px;
        float: right;
        margin-bottom: 15px;
    }
    
    
    #btnAreaClienti {
        padding: 10px 20px !important;
        display: inline-block;
        margin-top: 20px;
    }
    
    .paginazione .page-numbers {
        margin: 0;
    }
    

    #h24 .h24-icon img {
        height: 44px;
    }
    #h24 .h24-icon {
        width: 80px;
        height: 80px;
    }
    #h24 .h24-line-primary {
        font-size: 25px;
    }
    #h24 .h24-line-secondary {
        font-size: 20px;
    }
    #h24 .h24-line-secondary span {
        font-size: 12px;
    }
    

    .section-news-grid {
        padding: 0 15px;
    }
    .news-card__body {
        padding: 15px 20px 17px;
        min-height: auto;
    }
    .single-news__badge {
        top: 15px;
        font-size: 16px;
    }


    .item-list-border .btn {
        margin-top: 30px;
    }

    #sectionTecnologie .col-tit h3 span {
        width: 70px;
        margin-top: 16px;
    }

    #sectionTecnologie .tecnologie-brain-cloud {
        margin-top: 24px;
        min-height: 200px;
        padding: 10px 0;
    }

    #sectionTecnologie .brain-tag {
        font-size: calc(var(--brain-size) * 0.9);
        white-space: normal;
        max-width: 100%;
    }


    .logo-timeline {
        height: 50px;
    }


    #footerInfo h3 {
        margin: 30px 0 40px;
        font-size: 21px;
        text-align: left;
    }

    #footerInfo .text-right {
        text-align: left !important;
    }
    
    footer,
    footer p,
    footer .col-social {

    } 
    footer {
        padding-top: 300px;
        padding-bottom: 40px;
        background-size: 100%;
    }
    footer .row {
        margin-bottom: 20px;
    }

    footer .row-contatti p {
        font-size: 16px;
        margin-bottom: 40px;
        line-height: 32px;
    }  
 
    footer .row-footer-legal {
        margin-top: 50px;
        margin-bottom: 0 !important;
    }

    
    .header-partner-logo, .footer-partner-logo {
        height: 66px;
    }
    .header-partner-logos, .footer-partner-logos {
        gap: 16px;
    }


    
}


@media only screen and (min-width: 992px) { 
    
    #contatti .tit-rotate {
        margin-left: 170px;
        margin-top: 300px;
    }
    #contatti .tit {
        margin-top: 40px;
    }
    
}





@media only screen and (min-width: 769px) and (max-width: 1150px) {

}

/*--------------------------------------------------------------
## smartphone 
--------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
  
}

 

 


