:root{
    --font-family: "Geist", sans-serif;
    --font-regular: 400;
    --font-medium: 500;
    --font-semibold: 600;
	--font-bold: 700;
    --padding-horizontal: calc((100vw - 1288px) / 2);
    --padding-vertical-1: clamp(72px, 9vw, 144px);
    --padding-vertical-2: clamp(48px, 6vw, 96px);
    --padding-vertical-5: clamp(32px, 4vw, 64px);
    --padding-vertical-3: clamp(24px, 3vw, 48px);
    --padding-vertical-4: clamp(16px, 2vw, 32px);
    --padding-vertical-6: clamp(12px, 1.5vw, 24px);
    --color-light-blue: #AED6F1;
    --color-light-blue-75: rgba(174, 214, 241, 0.75);
    --color-light-blue-50: rgba(174, 214, 241, 0.5);
    --color-medium-blue: #029DF5;
    --color-medium-blue-60: rgba(2, 156, 245, 0.6);
    --color-blue: #0065AA;
    --color-blue-2: #0080D2;
    --color-dark-blue: #074673;
    --color-white: #FFFFFF;
    --color-white-75: rgba(255, 255, 255, 0.75);
    --color-white-60: rgba(255, 255, 255, 0.6);
    --color-white-50: rgba(255, 255, 255, 0.5);
    --color-white-25: rgba(255, 255, 255, 0.25);
    --color-white-20: rgba(255, 255, 255, 0.2);
    --color-white-0: rgba(255, 255, 255, 0);
    --color-black: #111111;
    --color-black-75: rgba(17, 17, 17, 0.75);
    --color-black-50: rgba(17, 17, 17, 0.5);
    --color-black-25: rgba(17, 17, 17, 0.25);
    --color-black-20: rgba(17, 17, 17, 0.20);
    --color-black-10: rgba(17, 17, 17, 0.1);
    --color-light-green: #C6FF00;
    --color-green: #185649;
    --color-black-nuo: #202020;
}
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: var(--font-family);
    font-weight: var(--font-regular);
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    margin: 0px;
    padding: 0px;
    text-decoration: none;
    outline: none !important;
    color: var(--color-dark-brown);
    box-sizing: border-box;
    letter-spacing: -0.02em;
}
*:focus{
    outline: none;
}
html{
    scroll-behavior: smooth;
}
html.block-scroll,
html.block-scroll body{
    overflow: hidden;
}
body{
    background-color: var(--color-light-blue);
}
body.home{
    overflow-x: hidden;
}
body:has(header.site-header.vector-nuo-header){
    background: linear-gradient(180deg, rgba(104, 200, 151, 0.80) 0%, rgba(104, 200, 151, 0.00) 100%);
    background-size: 100% 1365px;
    background-repeat: no-repeat;
}
body:has(header.site-header.vector-nuo-header) div.site-branding svg{
    display: block;
    width: 137px;
}
body.single-project{
    background-color: var(--color-white);
}
p,
.widget{
    margin: unset;
}
.input--hidden,
.iub__us-widget,
.otgs-development-site-front-end{
	display: none !important;
}
.grecaptcha-badge{
    visibility: hidden;
}
.entry-content, .wpb_content_element{
    margin: 0px !important;
}
.single-post .single-post .entry-content a,
.contact-page-text a,
.row-storia p strong a{
    text-decoration: underline;
}
.vc_column_container>.vc_column-inner{
	padding-right: 0px !important;
	padding-left: 0px !important;
	margin-left: 0px !important;
	margin-right: 0px !important;
}
.vc_row,
section.vc_section,
section.vc_section .vc_row{
    margin-left: 0px !important;
    margin-right: 0px !important;
    padding-left: 0px;
    padding-right: 0px;
}
.vc_section.section-content,
.single-post .entry-content,
.single-project .entry-content,
.single-esperienza .entry-content,
body.single-project .entry-footer{
    background: var(--color-white);
    padding: var(--padding-vertical-1) var(--padding-horizontal);
}
.single-project .entry-content:has(+ footer.entry-footer){
    padding-bottom: 0px !important;
}
.vc_section.section-content:has(> .vc_row[data-vc-full-width]:nth-last-child(2) + .vc_row-full-width:last-child){
    padding-bottom: 0px !important;
}
.vc_section.section-content .vc_row + .vc_row,
.vc_section.section-content .vc_row-full-width.vc_clearfix + .vc_row{
    margin-top: var(--padding-vertical-1);
}
.vc_section.section-content .vc_row-full-width.vc_clearfix + .vc_row:has(.block-loghi){
    margin-top: 0px;
}
.vc_section.section-content .vc_row-full-width.vc_clearfix + .vc_row:has(.block-loghi) + .vc_row-full-width.vc_clearfix + .vc_row{
    margin-top: 0px;
}
.vc_section.section-content .vc_row:has(.block-video-youtube) div.wpb_column:first-child{
    padding-right: var(--padding-vertical-2);
}
.vc_section.section-content .vc_row.no-padding-right{
    margin-right: calc(-1 * var(--padding-horizontal)) !important;
}
.vc_section.section-content .vc_row.no-padding-left-right{
    margin-left: calc(-1 * var(--padding-horizontal)) !important;
    margin-right: calc(-1 * var(--padding-horizontal)) !important;
    padding-right: var(--padding-horizontal) !important;
    padding-left: var(--padding-horizontal) !important;
}
section.vc_section .vc_row.full-width,
.single-esperienza .entry-content > .row.full-width,
body.single-post .entry-content .full-width{
    margin-left: calc(-1 * var(--padding-horizontal)) !important;
    margin-right: calc(-1 * var(--padding-horizontal)) !important;
}
.post, .page{
	margin: 0px 0px 0px 0px;
}
.vc_row.full{
    max-width: 100vw;
}
.text-center{
    text-align: center;
}
.text-right{
    text-align: right;
}
.overlay-20:before{
    content: '' !important;
    display: block !important;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #000;
    opacity: 0.2;
}
.bg-blue{
    background-color: var(--color-blue);
}
.bg-blue-2{
    background-color: var(--color-blue-2);
}
.bg-white{
    background-color: var(--color-white);
}
.bg-green{
    background-color: var(--color-green);
}
.mt-padding-vertical-3{
    margin-top: var(--padding-vertical-3) !important;
}
.mt-padding-vertical-4{
    margin-top: var(--padding-vertical-4) !important;
}
button.bottone-link.vector-primary,
.wpcf7 .wpcf7-submit{
    background-color: var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-primary:hover,
.wpcf7 .wpcf7-submit:hover,
header.site-header.vector-default-header .side-navigation ul li:not(:last-child):hover a{
    background-color: var(--color-blue);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-primary:hover a span,
.wpcf7 .wpcf7-submit,
header.site-header.vector-default-header .side-navigation ul li:not(:last-child):hover a{
    color: var(--color-white);
}
button.bottone-link.vector-secondary{
    background-color: var(--color-light-blue);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-secondary a span{
    color: var(--color-black);
}
button.bottone-link.vector-secondary:hover,
header.site-header.vector-default-header .side-navigation ul li:hover a{
    background-color: var(--color-light-blue);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-thirdary{
    background-color: var(--color-light-green);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-thirdary a span,
button.bottone-link.vector-trasparent a span{
    color: var(--color-black);
}
button.bottone-link.vector-thirdary:hover{
    background-color: var(--color-green);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-thirdary:hover a span,
button.bottone-link.vector-fourthdary:hover a span{
    color: var(--color-white);
}
button.bottone-link.vector-thirdary:hover img{
    filter: invert(1);
}
button.bottone-link.vector-fourthdary{
    background-color: var(--color-white);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-fourthdary a span{
    color: var(--color-medium-blue);
}
button.bottone-link.vector-fourthdary:hover{
    background-color: var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-trasparent{
    background-color:transparent;
    box-shadow:inset 0px 0px 0px 1px var(--color-black);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-trasparent:hover{
    background-color:var(--color-black);
    transition: all 300ms ease-in-out;
}
button.bottone-link.vector-trasparent:hover a span{
    color: var(--color-white);
    transition: all 300ms ease-in-out;
}
button.bottone-link + button.bottone-link{
    margin-left: 8px;
}
.bg-nuo{
    background: linear-gradient(178deg, rgba(24, 86, 73, 0.00) 1.29%, rgba(24, 86, 73, 0.30) 98.68%);
}
.bg-nuo::before,
.bg-nuo::after{
    content: none;
}
.bg-nuo.vc_row-has-fill::before{
    content: '' !important;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: var(--color-black-50);
}
.bg-nuo .custom-title + .block-text{
    margin-top:var(--padding-vertical-3);
    max-width: 400px;
}
.bg-nuo .block-text + button.bottone-link{
    margin-top: var(--padding-vertical-5);
}
.bg-nuo .wpb_column:first-child .vc_column-inner,
.bg-nuo .wpb_column:first-child .vc_column-inner .wpb_wrapper{
    height: 100%;
}
.bg-nuo .wpb_column:first-child .vc_column-inner .wpb_wrapper{
    position: relative;
}
.bg-nuo button.bottone-link + .block-text{
    position: absolute;
    bottom: 0px;
}
.bg-nuo button.bottone-link + .block-text.hidden{
    display: none;
}
.bg-nuo.vc_row-has-fill .vc_single_image-wrapper{
    max-width: 150px;
}
.bg-nuo.vc_row-has-fill .titoletto.vector-thirdary span{
    color:var(--color-white);
}
.bg-nuo.vc_row-has-fill button.bottone-link + .block-text{
    right: 0px;
}
.bg-nuo.vc_row-has-fill button.bottone-link + .block-text a,
.bg-nuo.vc_row-has-fill button.bottone-link + .block-text a *{
    color: var(--color-light-green);
    text-decoration: underline;
}
.bg-nuo.vc_row-has-fill button.bottone-link.vector-trasparent{
    box-shadow:inset 0px 0px 0px 1px var(--color-white);
    transition: all 300ms ease-in-out;
}
.bg-nuo.vc_row-has-fill button.bottone-link.vector-trasparent:hover{
    background-color:var(--color-white);
    transition: all 300ms ease-in-out;
}
.bg-nuo.vc_row-has-fill button.bottone-link.vector-trasparent a span{
    color:var(--color-white);
}
.bg-nuo.vc_row-has-fill button.bottone-link.vector-trasparent:hover a span{
    color: var(--color-black);
    transition: all 300ms ease-in-out;
}
/* Header */
header.site-header{
    position: fixed;
    display: flex;
    justify-content: space-between;
    align-items: center;
    top: 32px;
    left: var(--padding-horizontal);
    right: var(--padding-horizontal);
    /* width: calc(100vw - 24px); */
    border-radius: 16px;
    z-index: 9999;
    transition: transform 300ms ease-in-out;
}
body.home header.site-header{
    animation: header-home 0.5s ease-out 1;
    animation-delay: 1.6s;
    animation-fill-mode: both;
}
@keyframes header-home {
    0% {
        transform: translateY(-33%);
        opacity: 0;
    }
    75% {
        opacity: 1;
    }
    100% {
        transform: translateY(0%);
    }
}
header.site-header.header-hidden{
    transform: translateY(calc(-100% - 32px - 20px));
}
header.site-header.header-hidden ul.menu > li > div.sub-menu-wrap > ul.sub-menu{
    display: none !important;
}
header.site-header.dark:before{
    content: '';
    display: block;
    position: absolute;
    top: -20px;
    left: -20px;
    width: calc(100% + 40px);
    height: calc(100% + 40px);
    background-color: var(--color-black-20);
    backdrop-filter: blur(25px);
    z-index: -1;
    border-radius: 18px;
}
header.site-header .site-branding a{
    display: block;
}
header.site-header img.custom-logo{
    display: block;
    width: 62px;
}
header.site-header ul{
    display: flex;
    margin: 0px;
    list-style: none;
    gap: 0px;
}
header.site-header .side-navigation ul{
    gap: 8px;
}
header.site-header .main-navigation{
    width: auto;
}
header.site-header .main-navigation li{
    position: static;
    display: block;
}
header.site-header .main-navigation li a{
    display: block;
    width: auto;
}
header.site-header ul li.current_page_item{
    font-weight: var(--font-bold);
}
/* header.site-header.vector-default-header{
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(5px);
} */
header.site-header.vector-default-header ul li a,
header.site-header.vector-nuo-header ul li a{
    display: block;
    font-size: clamp(14px,2vw,16px);
    color: var(--color-white);
    padding: clamp(12px,0.75vw,16px) clamp(18px,1.125vw,24px);
    border-radius: 8px;
    background-color: rgba(255,255,255,0);
    transition: background-color 150ms ease-in-out;
}
header.site-header.vector-nuo-header ul li a{
    color: var(--color-black);
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu{
    position: static;
    display: none;
    grid-template-columns: repeat(4,minmax(0,1fr));
    /* top: calc(100% + 32px); */
    left: 0px;
    padding: clamp(20px, 3.3333vw, 40px);
    border-radius: 8px;
    background: var(--color-white-50);
    backdrop-filter: blur(25px);
    width: 100%;
    box-shadow: none;
}
/* set da eliminare quando attivi quick links */
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu{
    grid-template-columns: repeat(3,minmax(0,1fr));
}
li.menu-item-492{
    display: none !important;
}
/* Fine set */
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap{
    position: absolute;
    left: 0px;
    width: 100%;
    padding-top: 32px;
}
header.site-header.vector-default-header ul.menu > li:hover > div.sub-menu-wrap > ul.sub-menu,
header.site-header.vector-nuo-header ul.menu > li:hover > div.sub-menu-wrap > ul.sub-menu{
    display: grid;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li{
    padding: 0px 25px;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li + li,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li + li{
    border-left: 1px solid var(--color-black-20);
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:last-child,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:last-child{
    border-left: none;
    background-color: var(--color-white-75);
    backdrop-filter: blur(25px);
    border-radius: 8px;
    padding: 40px;
    margin-top: -40px;
    margin-bottom: -40px;
    margin-right: -40px;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:last-child > a,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:last-child > a{
    pointer-events: none;
    color: var(--color-blue-2);
    text-decoration: none;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:first-child,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li:first-child{
    padding-left: 0px;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li a,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li a{
    padding: 0px;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > a
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > a{
    font-size: 20px;
    color: var(--color-black);
    line-height: 1.6;
    text-decoration: underline;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > a::after,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > a::after{
    content: none;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu{
    display: flex;
    position: static;
    flex-direction: column;
    gap: 8px;
    box-shadow: none;
    width: 100%;
    margin-top: 24px;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li > a,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li > a{
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 8px 28px 8px 8px;
    border-radius: 4px;
    background: none;
    font-size: clamp(14px,2vw,16px);
    font-weight: var(--font-regular);
    color: var(--color-black-75);
    transition:background-color 150ms ease-in-out;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li:hover > a,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li:hover > a{
    background: #f2f2f280;
    transition:background-color 150ms ease-in-out;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li > a:after,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li > a:after{
    content: '';
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 8px;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'12'%20height%3D'12'%20viewBox%3D'0%200%2012%2012'%20fill%3D'none'%3E%3Cpath%20d%3D'M9.13125%206.75H0V5.25H9.13125L4.93125%201.05L6%200L12%206L6%2012L4.93125%2010.95L9.13125%206.75Z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    vertical-align: middle;
    opacity: 0;
    transition:opacity 225ms ease-in-out;
}
header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li:hover > a:after,
header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu > li:hover > a:after{
    opacity: 1;
    transition:opacity 225ms ease-in-out;
}
header.site-header.vector-default-header ul.menu > li:hover > a,
header.site-header.vector-nuo-header ul.menu > li:hover > a{
    background-color: var(--color-white-25);
    transition: background-color 150ms ease-in-out;
}
header.site-header.vector-default-header ul li.menu-item-has-children > a,
header.site-header.vector-nuo-header ul li.menu-item-has-children > a{
    position: relative;
    padding-right: calc(24px + 6px + 9px);
}
header.site-header.vector-default-header div.sub-menu-wrap ul.sub-menu li.menu-item-has-children > a{
    font-size: clamp(17px,1.25vw,20px);
    color: var(--color-black);
    text-decoration: underline;
    line-height: 1.6;
}
header.site-header.vector-default-header ul.menu > li.menu-item-has-children > a::before,
header.site-header.vector-default-header ul.menu > li.menu-item-has-children > a::after,
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children > a::before,
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children > a::after{
    content: '';
    position: absolute;
    display: block;
    top: 50%;
    right: calc(24px - 6px + 5px);
    width: 9px;
    height: 1px;
    background-color: var(--color-white);
}
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children > a::before,
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children > a::after{
    background-color: var(--color-black);
}
header.site-header.vector-default-header ul.menu > li.menu-item-has-children > a::before,
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children > a::before{
    width: 1px;
    height: 9px;
    transform: translate(-4px, -50%);
    top: calc(50% + 0.5px);
}
header.site-header.vector-default-header ul.menu > li.menu-item-has-children:hover > a::before,
header.site-header.vector-nuo-header ul.menu > li.menu-item-has-children:hover > a::before{
    content: none;
}
header.site-header.vector-default-header .side-navigation ul li a,
header.site-header.vector-nuo-header .side-navigation ul li a{
    display: block;
    background-color: var(--color-white);
    padding: clamp(9px,0.5625vw,12px) clamp(18px,1.125vw,24px);
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    font-weight: var(--font-medium);
    line-height: 1.5;
    border-radius: 12px;
}
header.site-header.vector-nuo-header .side-navigation ul li a{
    background-color: var(--color-green);
    color: var(--color-white);
}
header.site-header.vector-nuo-header .side-navigation ul li:hover a{
    background-color: var(--color-blue-2) !important;
}
header.site-header.vector-default-header ul li.with-icon a:after,
header.site-header.vector-nuo-header ul li.with-icon a:after,
button.bottone-link.with-arrow a:after,
.nuo-contact .wpcf7 .wpcf7-submit::after{
    content: "";
    display: inline-block;
    width: 9.6px;
    height: 9.6px;
    margin-left: 8px;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11.41 11.1' fill='none'%3E%3Cpath d='M5.55%2C10.35l4.8-4.8L5.55.75M10.35%2C5.55H.75' stroke='%23111' stroke-linecap='round' stroke-width='1.5'/%3E%3C/svg%3E");
}
button.bottone-link.with-arrow:hover a:after{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11.41 11.1' fill='none'%3E%3Cpath d='M5.55%2C10.35l4.8-4.8L5.55.75M10.35%2C5.55H.75' stroke='%23FFF' stroke-linecap='round' stroke-width='1.5'/%3E%3C/svg%3E");
}
header.site-header.vector-default-header .side-navigation ul li.with-icon:hover a:after,
header.site-header.vector-nuo-header .side-navigation ul li.with-icon:hover a:after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11.41 11.1' fill='none'%3E%3Cpath d='M5.55%2C10.35l4.8-4.8L5.55.75M10.35%2C5.55H.75' stroke='%23FFF' stroke-linecap='round' stroke-width='1.5'/%3E%3C/svg%3E");
}
header.site-header.vector-default-header .side-navigation ul li:not(:last-child) a,
header.site-header.vector-nuo-header .side-navigation ul li:not(:last-child) a{
    background-color: var(--color-light-green);
}
header.site-header.vector-default-header .side-navigation ul li:last-child:hover a,
header.site-header.vector-nuo-header .side-navigation ul li:last-child:hover a{
    background-color: #EDEDED;
}
header.site-header.vector-default-header .side-navigation ul li:not(:last-child):hover a,
header.site-header.vector-nuo-header .side-navigation ul li:not(:last-child):hover a{
    background-color: var(--color-green);
}
/* Responsive header */
header.site-header button.mobile{
    display: none;
    appearance: none;
    background-color: var(--color-white);
    border-radius: 12px;
    border: none;
    padding: 16px 12px;
    transition: all 300ms ease-in-out;
    cursor: pointer;
}
header.site-header button.mobile span.line{
    display: block;
    background-color: var(--color-black);
    width: 24px;
    height: 2px;
    border-radius: 2px;
    transition: all 300ms ease-in-out;
}
header.site-header button.mobile span.line + span.line{
    margin-top: 6px;
}
header.site-header button.mobile:hover{
    background-color: var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
header.site-header button.mobile:hover span.line{
    background-color: var(--color-white);
    transition: all 300ms ease-in-out;
}
header.site-header button.mobile.close span.line{
    rotate: 45deg;
}
header.site-header button.mobile.close span.line + span.line{
    position: relative;
    margin-top: 0px;
    rotate: -45deg;
    top: -2px;
}
header.site-header .responsive-navigation{
    display: none;
    width: 100%;
    margin-top: 24px;
    border-radius: 8px;
    background: var(--color-white-50);
    backdrop-filter: blur(25px);
}
header.site-header .responsive-navigation .main-mobile-navigation ul{
    flex-direction: column;
}
header.site-header .responsive-navigation ul li a{
    color: var(--color-black-75);
}
header.site-header.vector-default-header .responsive-navigation ul.menu > li.menu-item-has-children > a::before, 
header.site-header.vector-default-header .responsive-navigation ul.menu > li.menu-item-has-children > a::after{
    background-color: var(--color-black);
}
header.site-header.vector-default-header .responsive-navigation ul.menu > li > div.sub-menu-wrap{
    position: static;
    padding: 0px;
}
header.site-header .responsive-navigation .side-mobile-navigation{
    display: none;
}
header.site-header .responsive-navigation .side-mobile-navigation ul{
    display: grid;
    grid-template-columns: 1fr;
}
header.site-header .responsive-navigation .side-mobile-navigation ul li a{
    font-weight: var(--font-medium);
    color: var(--color-black);
}
header.site-header .responsive-navigation .side-mobile-navigation ul li:first-child a{
    background-color: var(--color-light-green);
}
header.site-header .responsive-navigation .side-mobile-navigation ul li:last-child a{
    background-color:var(--color-white);
}
    
/* Bottone */
button.bottone-link,
.wpcf7 .wpcf7-submit{
    appearance: none;
    margin: 0px;
    padding: 0px;
    border: none;
    border-radius: clamp(13.5px, 2.25vw, 18px);
}
button.bottone-link.hidden{
    display: none !important;
}
button.bottone-link.margin-padding-vertical-5{
    margin-top: var(--padding-vertical-5);
}
button.bottone-link.margin-padding-vertical-5{
    margin-top: var(--padding-vertical-5);
}
button.bottone-link.center{
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
button.bottone-link a,
.wpcf7 .wpcf7-submit{
    display: block;
    padding: clamp(12px, 2vw, 16px) clamp(18px, 3vw, 24px);
}
button.bottone-link a:has(img){
    position: relative;
}
button.bottone-link a:has(img) img{
    display: block;
    position: absolute;
    top: 50%;
    left: 24px;
    width: 24px;
    height: 24px;
    object-fit: cover;
    transform: translate(0px, -50%);
}
button.bottone-link a:has(img) span{
    padding-left: 32px;
}
button.bottone-link a span,
.wpcf7 .wpcf7-submit{
    font-size: clamp(14px,2vw,16px);
    color: var(--color-white);
    font-weight: var(--font-medium);
    line-height: 1.5;
}
.wpcf7 .wpcf7-submit:disabled{
    pointer-events: none;
    opacity: 0.7;
}

/* Hero */
.hero{
    position: relative;
}
.hero picture{
    position: relative;
    display: block;
    max-height: 100vh;
    overflow: hidden;
}
body.page-template-page-contact .hero picture,
.hero.height-50-enable picture{
    height: 50vh;
}
.hero video{
    position: relative;
    display: block;
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
body.home .hero{
    /* Il video diventa position:absolute durante lo scroll (GSAP/ScrollTrigger):
       fisso l'altezza qui per evitare che la sezione collassi */
    min-height: 100vh;
}
body.home .hero video{
    margin: auto;
    width: 100%;
    clip-path: inset(0vw 0vw round 0px);
    animation: hero-home 1.3s ease-out 0s 1 both;
    position: absolute;
    transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    z-index: 1;
    perspective: 1000px;
}
body.home .hero video.animation{
    animation: none;
    
    z-index: 1;
}
@keyframes hero-home {
    0% {
        width: 70%;
        clip-path: inset(6vw 6vw round 50px);
        transform: translate(-50%,-20%);
    }
    41.66%{
        width: 70%;
        clip-path: inset(6vw 6vw round 50px);
        transform: translate(-50%,-50%);
    }
    75% {
        clip-path: inset(0vw 0vw round 0px);
    }
    100% {
        width: 100%;
    }
}
body.home .row-thumbs .vc_column-inner > .wpb_wrapper{
    position: relative;
    height: 100vh;
}
body.home .row-thumbs div.wpb_single_image.vector-thumb{
    display: inline-block;
    border-radius: 28px;
    overflow: hidden;
    position: absolute;
    top: 50%;
    left: 50%;
    perspective: 1000px;
}
body.home .row-thumbs div.wpb_single_image.vector-thumb *{
    display: block;
} 
body.home .row-thumbs div.wpb_single_image.vector-thumb img{
    object-fit: cover;
}
body.home .row-thumbs div.wpb_single_image.vector-thumb.thumb-01{
    width: 321px;
    height: 375px;
    aspect-ratio: 101/118;
    transform: translate(calc(-100% - 27px),-100%);
}
body.home .row-thumbs div.wpb_single_image.vector-thumb.thumb-02{
    width: 140px;
    height: 190px;
    aspect-ratio: 14/19;
    transform: translate(calc(178px - 27px),calc(-100% - 142px));
}
body.home .row-thumbs div.wpb_single_image.vector-thumb.thumb-03{
    width: 203px;
    height: 237px;
    aspect-ratio: 197/230;
    transform: translate(calc(-100% - 118px),38px);
}
body.home .row-thumbs div.wpb_single_image.vector-thumb.thumb-04{
    width: 273px;
    height: 319px;
    aspect-ratio: 89/104;
    transform: translate(calc(162px - 27px),calc(-122px));
}
.hero picture:before,
.hero picture:after,
.hero .gradient{
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.1);
}
body.single-project .hero picture:before{
    background: rgba(0,0,0,0.3);
}
body.single-project .hero div.wrapper{
    width: calc(60% - 0.5 * clamp(32px, 4vw, 64px));
}
body.single-project .hero div.cards-hero{
    width: calc(40% - 0.5 * clamp(32px, 4vw, 64px));
}
.hero .gradient{
    background: rgba(0,0,0,0.2);
    z-index: 2;
}
body.home .hero .gradient{
    animation: gradient-home 1.2s ease-out 1;
    animation-delay: 1s;
    animation-fill-mode: both;
}
@keyframes gradient-home {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.hero picture:after{
    content: '';
    background: linear-gradient(180deg, var(--color-grey-740, rgba(17, 17, 17, 0.40)) 0%, var(--color-grey-70, rgba(17, 17, 17, 0.00)) 100%);
    height: 60%;
}
.hero picture img{
    display: block;
    aspect-ratio: calc(1920 / 1200);
    width: 100%;
    height: 100%;
    max-height: 100vh;
    max-width: unset;
    object-fit: cover;
}
body.page-template-page-contact .hero picture img{
    aspect-ratio: calc(1920 / 600);
    max-height: 50vh;
}
.hero .content{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    position: absolute;
    left: var(--padding-horizontal);
    right: var(--padding-horizontal);
    bottom: var(--padding-vertical-1);
    gap: clamp(32px, 4vw, 64px);
}
.hero:has(video) .content{
    top: 50%;
    bottom: unset;
    transform: translate(0,-50%);
}
body.home .hero:has(video) .content{
    z-index: 10;
}
.hero .content h1{
    font-size: clamp(28px,3.5vw,56px);
    font-weight: var(--font-regular);
    color: var(--color-white);
    line-height: calc(61.6 / 56);
    margin: 0px;
    text-wrap: balance;
}
.hero:has(video) .content h1{
    width: 100%;
    text-align: center;
    font-size: clamp(32px,4vw,64px);
    font-weight: var(--font-regular);
}
.hero:has(video) .content h1 strong{
    font-size: clamp(32px,4vw,64px);
    font-weight: var(--font-regular);
    /* background-color: var(--color-light-blue-75); */
    background: url(./images/mark-light-blue.svg) no-repeat;
    background-size: contain;
    margin: -2px -10px;
    padding:  2px  10px;
}
.hero .content .back-btn a{
    display: flex;
    align-items: center;
    gap: clamp(12px, 1.5vw, 24px);
    color: var(--color-white);
    width: fit-content;
}
.hero .content .back-btn span,
div.globe #data .wrapper table thead th span.icon,
body.single-project .entry-footer .swiper-navigation .swiper-button,
body.home .news-navigation .swiper-button{
    display: flex;
    justify-content: center;
    align-items: center;
    width: clamp(36px, 3vw, 48px);
    height: clamp(36px, 3vw, 48px);
    background: var(--color-blue);
    border-radius: 8px;
    transition: all 300ms ease-in-out;
    cursor: pointer;
}
.hero .content .back-btn span svg,
div.globe #data .wrapper table thead th span.icon svg,
body.single-project .entry-footer .swiper-navigation .swiper-button svg,
body.home .news-navigation .swiper-button svg{
    width: clamp( 12px, 1vw, 16px);
}
body.home .vc_section.section-content{
    padding-top:0px !important;
}
body.single-project .entry-footer .swiper-navigation .swiper-button,
body.home .news-navigation .swiper-button{
    background: #B6E2FF;
}
div.globe #data .wrapper table thead th span.icon{
    display: inline-flex;
    margin-right: 24px;
}
body.single-project .entry-footer .swiper-navigation .swiper-button:hover,
body.home .news-navigation .swiper-button:hover{
    background: var(--color-blue-2);
    transition: all 300ms ease-in-out;
}
.hero .content .back-btn a:hover span,
div.globe #data .wrapper table thead th span.icon:hover{
    background: var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
.hero .content .back-btn + h1{
    margin-top: var(--padding-vertical-5);
}
.hero .content h1 + nav{
    margin-top: var(--padding-vertical-3);
}
.hero .content nav ol.breadcrumb{
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0px;
    gap: 0px;
}
.hero .content nav ol.breadcrumb li.breadcrumb-item,
.hero .content nav ol.breadcrumb li.breadcrumb-item a{
    display: inline-block;
    font-size: clamp(14px,2vw,16px);
    color: var(--color-white-50);
    transition: color 150ms ease-in-out;
}
.hero .content nav ol.breadcrumb li.breadcrumb-item a:hover,
.hero .content nav ol.breadcrumb li.breadcrumb-item.active,
.hero .content nav ol.breadcrumb li.breadcrumb-item.active a{
    color: var(--color-white);
    transition: color 150ms ease-in-out;
}
.hero .content nav ol.breadcrumb li.breadcrumb-item:not(:last-child):after{
    content: '|';
    display: inline-block;
    font-size: clamp(14px,2vw,16px);
    color: var(--color-white-50);
    margin:0px 4px;
}
.hero .content .cards-hero{
    display: grid;
    /* grid-template-columns: repeat(3,minmax(0,140px)); */
    grid-template-columns: repeat(3,minmax(0,200px));
    grid-gap: 8px;
}
body.page-template-page-success-stories .hero .content .cards-hero{
    grid-template-columns: repeat(4,minmax(0,200px));
}
.hero .content .cards-hero .card{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    aspect-ratio: 1;
    background-color: var(--color-medium-blue-60);
    padding: clamp(16px, 2.6vw, 20px);
    border-radius: 16px;
    backdrop-filter: blur(15px);
}
.hero .content .cards-hero .card div.up span{
    color: var(--color-white);
    line-height: 1.222;
}
.hero .content .cards-hero .card div.up span.units{
    font-size: 18px;
    margin-left: 4px;
}
.hero .content .cards-hero .card div.up span.prepend + span.number{
    margin-left: 8px;
}
.hero .content .cards-hero .card div.down p{
    font-size: 14px;
    color: var(--color-white);
    line-height: 1.2;
}
/* Titoletto */
.titoletto{
    display: flex;
    align-items: center;
    gap: 8px;
}
.titoletto.sticky{
    position: sticky;
    top: var(--padding-vertical-1);
}
.titoletto.margin-top{
    margin-top: clamp(10px, 0.875vw, 14px);
}
.titoletto + .block-text,
.titoletto + .custom-title{
    margin-top: var(--padding-vertical-3);
}
.titoletto:before{
    content: '';
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--color-light-blue);
}
.titoletto span{
    font-size: clamp(14px,2vw,16px);
    font-weight: var(--font-regular);
    line-height: 1.5;
}
.titoletto.vector-primary:before,
.titoletto.vector-secondary:before{
    border: 1.5px solid var(--color-light-blue);
}
.titoletto.vector-thirdary:before{
    border: 1.5px solid var(--color-light-green);
}
.titoletto.vector-fourdary:before{
    border: 1.5px solid var(--color-blue-2);
}
.titoletto.vector-primary span,
.titoletto.vector-thirdary span{
    color: var(--color-black);
}
.titoletto.vector-secondary span{
    color: var(--color-white);
}

/* Blocco testo */
.block-text{
    display: flex;
    flex-direction: column;
    gap: 36px;
}
.block-text.quote{
    gap: var(--padding-vertical-6);
}
.block-text p,
.custom-title > *{
    font-weight: var(--font-regular);
    line-height: 1.22;
}
.block-text p strong{
    font-weight: var(--font-bold);
}
.block-text.quote p,
.block-text.quote p strong{
    font-style: italic;
}
.block-text.quote p:before{
    content: '“';
}
.block-text.quote p::after{
    content: '”';
}
.block-text.quote .quote-signature,
.block-text.quote .quote-signature *{
    font-size: clamp(14px,2vw,16px);
}
.block-text.quote .quote-signature strong *{
    font-weight: var(--font-semibold);
    font-size: clamp(14px,2vw,16px);
}
.block-text.text-color-primary *,
.custom-title.text-color-primary *{
    color: var(--color-black);
}
.bg-nuo .block-text.text-color-primary a,
.bg-nuo .block-text.text-color-primary a *{
    text-decoration: underline;
    color: var(--color-green);
}
.block-text.text-color-secondary *,
.custom-title.text-color-secondary *{
    color: var(--color-white);
}
.block-text.size-fifth *,
.custom-title.size-fifth *,
.accordion .size-fifth,
.cards-hero .size-fifth,
.block-values .contents h3.size-fifth{
    font-size: clamp(32px, 4vw, 64px);
}
.block-text.size-fourth *,
.custom-title.size-fourth *,
.accordion .size-fourth,
.cards-hero .size-fourth,
.block-values .contents h3.size-fourth,
.accordion-scroll header span.size-fourth,
.cards-nuo-block h3.size-fourth{
    font-size: clamp(28px, 3vw, 48px);
}
.block-text.size-primary *,
.custom-title.size-primary *,
.accordion .size-primary,
.cards-hero .size-primary,
.swiper.related h3,
div.projects-block div.card h3{
    font-size: clamp(22px, 2.25vw, 36px);
}
.block-text.size-secondary *,
.custom-title.size-secondary *,
.accordion .size-secondary,
.team-block .size-secondary,
.news-block .size-secondary *,
.cards-block .size-secondary,
.cards-hero .size-secondary,
.accordion-scroll .accordion .item_accordion h3.size-secondary,
.cards-nuo-block h3.size-secondary{
    font-size: clamp(18px,1.5vw,24px);
}
.block-text.size-thirdary *,
.custom-title.size-thirdary *,
.accordion .size-thirdary,
.team-block .size-thirdary,
.news-block .size-thirdary,
.cards-hero .size-thirdary,
.block-values .contents p{
    font-size: clamp(14px,2vw,16px);
}
.block-text.size-thirdary a,
.block-text.size-thirdary a *{
    text-decoration: underline;
}
.custom-title.size-fourth strong,
.custom-title.size-fourth em,
.block-text.marked strong{
    font-weight: var(--font-regular);
    background: url(./images/mark-light-blue.svg) no-repeat;
    background-size: contain;
    margin: -2px -10px;
    padding:  2px  10px;
}
.block-text.marked strong{
    /* background: url(./images/mark-light-blue-2.svg) no-repeat; */
    background: url(./images/mark-light-blue.svg) no-repeat;
    background-size: contain;
    background-size: cover;
}
.custom-title.size-fourth em{
    font-style: normal;
    background: url(./images/mark-green.svg) no-repeat;
    background-size: cover;
}

.block-text + button.bottone-link,
.custom-title + button.bottone-link,
.block-text + .accordion,
.custom-title + .block-text{
    margin-top: var(--padding-vertical-2);
}
.vc_row.row-with-button .custom-title + .block-text,
.block-text.size-thirdary + button.bottone-link{
    margin-top: var(--padding-vertical-3);
}
.block-text.size-primary + .block-text.size-thirdary{
    margin-top: var(--padding-vertical-5);
}

/* Riga full */
.vc_row[data-vc-full-width]{
    padding:var(--padding-vertical-1) 0px;
}
.row[data-vc-full-width]{
    margin: 0px calc(-1 * var(--padding-horizontal));
    padding: var(--padding-vertical-1) var(--padding-horizontal);
}
.vc_row[data-vc-full-width] + .vc_row-full-width.vc_clearfix + .vc_row[data-vc-full-width].mt-0{
    margin-top: 0px;
}
.vc_row[data-vc-full-width] .vc_column-inner{
    padding-top: 0px !important;
}
.vc_row[data-vc-full-width] .custom-title,
.vc_row[data-vc-full-width] .block-text{
    max-width: 78%;
}
.vc_row[data-vc-full-width] .custom-title.full{
    max-width: none;
}

/* Row with gradient */
.vc_row.row-with-gradient::before{
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: linear-gradient(270deg, rgba(0, 81, 135, 0.00) 25.46%, #005187 77.91%);
}
.vc_row.row-with-gradient > .wpb_column{
    width: 50%;
}
.vc_row.row-with-gradient .custom-title + .block-text{
    margin-top: var(--padding-vertical-3);
}

/* Footer */
footer.site-footer > section{
    background-color: var(--color-blue);
    padding: var(--padding-vertical-1) var(--padding-horizontal);
    /* border-radius: 64px 64px 0 0; */
}
footer.site-footer > section.image-bg{
    background: linear-gradient(0deg, rgba(17, 17, 17, 0.20) 0%, rgba(17, 17, 17, 0.20) 100%), url(images/vector-renewablews-footer-default.webp) lightgray 50% / cover no-repeat;
    background-size: cover;
    background-position: center center;
    border-radius: 0px;
}
footer.site-footer.custom-image > section.image-bg{
    position: relative;
}
footer.site-footer.custom-image > section.image-bg picture,
footer.site-footer.custom-image > section.image-bg picture img{
    display: block;
}
footer.site-footer.custom-image > section.image-bg picture,
footer.site-footer.custom-image > section.image-bg picture:after{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}
footer.site-footer.custom-image > section.image-bg picture:after{
    content: '';
    background:rgba(17, 17, 17, 0.20);
}
footer.site-footer.custom-image > section.image-bg picture img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
footer.site-footer.custom-image > section.image-bg div.row{
    position: relative;
    z-index: 1;
}
footer.site-footer .titoletto.vector-secondary:before{
    border: 1.5px solid var(--color-medium-blue)
}
footer.site-footer div.custom-title h2{
    font-size: clamp(32px,4vw,64px);
    line-height: 1.125;
}
footer.site-footer > section.image-bg div.custom-title,
footer.site-footer > section.image-bg div.block-text{
    max-width: 55%;
}
footer.site-footer div.block-text{
    max-width: 365px;
}
footer.site-footer div.block-text p{
    line-height: 1.333;
}
footer.site-footer .block-text + button.bottone-link{
    margin-top: var(--padding-vertical-3);
}
footer.site-footer div.row.widgets{
    display: grid;
    grid-template-columns: 1fr 2fr;
}
footer.site-footer div.row.widgets .widget > .custom-title{
    margin-bottom: 8px;
}
footer.site-footer div.row.widgets > div.col:last-child{
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    grid-template-columns: repeat(3,minmax(0,1fr));
}
footer.site-footer div.row.widgets > div.col:last-child > .widget{
    padding-right: 16px;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets > div.col:last-child > .widget:first-child > *{
    display: none;
}
footer.site-footer div.row.widgets .custom-title > *{
    font-size: 14px;
    line-height: 1.42;
}
footer.site-footer div.row.widgets .custom-title > h3{
    font-size: clamp(14px,2vw,16px);
}
footer.site-footer div.row.widgets div.col:first-child .custom-title > *{
    font-size: 24px;
    color: var(--color-white-60);
    line-height: 1.333;
}
footer.site-footer div.row.widgets div.col:first-child .custom-title > * span{
    display: block;
    font-size: 24px;
    color: var(--color-white);
}
footer.site-footer div.row.widgets ul.menu{
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0px;
    padding: 0px;
    list-style: none;
}
footer.site-footer div.row.widgets ul.menu li a{
    display: block;
    font-size: 14px;
    color: var(--color-white-50);
    line-height: 1.42;
    transition: color 300ms ease-in-out;
    padding: 2px 0px;
}
footer.site-footer div.row.widgets ul.menu li:hover a{
    color: var(--color-white);
    transition: color 300ms ease-in-out;
}
footer.site-footer > section:last-child{
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-2);
    padding-bottom: 0px;
}
footer.site-footer div.row.widgets + div.copyright{
    padding: 20px 0px;
}
footer.site-footer div.copyright{
    display: flex;
    justify-content: space-between;
    border-top: 1px solid var(--color-white-20);
}
footer.site-footer div.copyright span,
footer.site-footer div.copyright span a{
    font-size: 14px;
    color: var(--color-white-50);
    line-height: 1.42;
    transition: color 150ms ease-in-out;
}
footer.site-footer div.copyright span a:hover{
    color: var(--color-white);
    transition: color 150ms ease-in-out;
}
footer.site-footer div.claim{
    overflow: hidden;
}
footer.site-footer div.claim span{
    display: block;
    font-size: clamp(32px,8.75vw,140px);
    font-weight: var(--font-regular);
    background: linear-gradient(180deg, var(--color-white-50) 41.96%, var(--color-white-0) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: normal;
    text-align: center;
    text-box: trim-end ex alphabetic;
    text-wrap: nowrap;
}
footer.site-footer #sib-container,
footer.site-footer .sib-form .entry__field,
footer.site-footer .sib-form{
    background-color: unset !important;
    max-width: unset !important;
    margin: 0px !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 0px !important;
}
footer.site-footer #sib-form{
    position: relative;
    margin-top: var(--padding-vertical-3);
    max-width: 78%;
    margin: 0px !important;
}
footer.site-footer .sib-form-block{
    padding: 0px;
}
footer.site-footer input#EMAIL{
    appearance: none;
    border-radius: unset;
    background: transparent;
    font-size: 16px;
    color: var(--color-white);
    line-height: 1.5;
    border: none;
    border-bottom: 1px solid var(--color-white-25);
    padding: 7px 0px;
    width: 100%;
}
footer.site-footer input#EMAIL:focus{
    outline: none !important;
    border: none !important;
}
footer.site-footer input#EMAIL::placeholder{
    font-size: 16px;
    color: var(--color-white-50);
    line-height: 1.5;
}
footer.site-footer .sib-form-block__button{
    position: absolute;
    background-color: transparent !important;
    appearance: none;
    border: none;
    border-radius: unset;
    right: 0px;
    top: 50%;
    transform: translateY(calc(-50% - 7px));
    padding: 0px;
}
/* Loghi */
.vc_row[data-vc-full-width]:has(.block-loghi){
    padding: 0px;
}
body.page-template-page-success-stories .vc_row[data-vc-full-width]:has(.block-loghi){
    margin-top: 0px;
}
.block-loghi.vector-primary{
    background-color: var(--color-light-blue);
}
.block-loghi.vector-secondary{
    background-color: var(--color-white);
}
.block-loghi.vector-thirdary{
    background-color: var(--color-blue);
}
.block-loghi{
    padding: 0px 64px;
    overflow: hidden;
}
.block-loghi ul{
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 80px;
    justify-content: flex-start;
    margin: 0px;
    width: max-content;
}
.vc_row[data-vc-full-width]:has(.block-loghi) .block-loghi{
    padding: var(--padding-vertical-2) 0px;
}
.block-loghi picture{
    display: block;
    width: auto;
    max-width: 120px;
    /* max-height: 31px; */
}
.block-loghi picture img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: grayscale(1);
}

/*Accordion*/
.accordion.background-white,
.accordion-scroll.background-white{
    background-color: var(--color-white);
}
.accordion.background-light-blue,
.accordion-scroll.background-light-blue{
    background-color: var(--color-light-blue);
}
.accordion.background-blue,
.accordion-scroll.background-blue{
    background-color: var(--color-blue);
}
.accordion.accordion-image{
    position: relative;
    padding: clamp(30px,3.75vw,60px);
    border-radius: clamp(15px,2vw,32px);
    background: #F8F9FA;
}
.accordion.accordion-image .item_accordion{
    display: flex;
    flex-direction: row;
    gap: 20px;
    padding: 0px;
    align-items: flex-start;
}
.accordion.accordion-wo-image .item_accordion{
    padding: var(--padding-vertical-6) 0px var(--padding-vertical-3);
    border-bottom: 1px solid #00000040;
}
.accordion.accordion-wo-image .item_accordion:first-child{
    padding-top: 0px;
}
.accordion.accordion-image .item_accordion.active .wrapper{
    display: flex;
    flex-direction: column;
    gap: 10px;
    background-color: var(--color-white);
    padding: 20px;
    border: none;
}
.accordion.accordion-image .item_accordion.active figure{
    display: block;
    margin: 0px;
    padding: 0px;
    width: 100%;
}
.accordion.accordion-image .item_accordion figure img{
    display: block;
    margin: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.accordion.accordion-image .wrapper{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: stretch;
}
.accordion.accordion-image h3,
.accordion.accordion-wo-image h3{
    line-height: 1.2222;
    text-box: trim-both cap alphabetic;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
}
.accordion.accordion-wo-image h3{
    justify-content: space-between;
    align-items: center;
}
.accordion.accordion-image .item_accordion + .item_accordion{
    margin-top: 12px;
}
.accordion.accordion-image .item_accordion .wrapper{
    padding: 10px 16px;
    width: fit-content;
    border: #bbbbbb 1px solid;
    border-radius: 21px;
}
.accordion.accordion-image .item_accordion .wrapper h3{
    color: var(--color-black);
    font-size: clamp(14px,2vw,16px);
    line-height: 1.375;
}
.accordion.accordion-image .item_accordion:hover .wrapper h3,
.accordion.accordion-image .item_accordion.active .wrapper h3{
    font-weight: var(--font-semibold);
}
.accordion.accordion-image .item_accordion.active h3 .icon{
    margin-left: 60px;
}
.accordion.accordion-wo-image .number{
    font-weight: 400;
}
.accordion.accordion-image .number{
    width: 90px;
    line-height: 1.3333;
    margin-top: 11.11px;
}
.accordion.accordion-image .item_accordion.active .image,
.accordion.accordion-image .item_accordion.active .wrapper{
    width: calc((100% - 90px) / 2);
}
.accordion.accordion-image .item_accordion.active .image{
    position: absolute;
    aspect-ratio: 462 / 408;
    max-width: 462px;
    border-radius: 16px;
    background-color: var(--color-green);
    top: clamp(30px,3.75vw,60px);
    right: clamp(30px,3.75vw,60px);
    overflow: hidden;
}
.accordion.accordion-image .item_accordion.active .image figure{
    /* position: relative;
    top: 50%;
    left: var(--padding-vertical-3);
    transform: translateY(-50%);
    border-radius: 4px 4px 0 0;
    overflow: hidden; */
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.accordion.accordion-wo-image .figure,
.accordion.accordion-image .bottone-link,
.accordion.accordion-wo-image .bottone-link{
    display: none;
}
.accordion.accordion-wo-image .item_accordion.active .bottone-link{
    display: block;
}
.accordion.accordion-wo-image .icon::after{
    content: '+';
    display: block;
    font-size: 40px;
    line-height: 1.3;
    font-weight: lighter;
    color: var(--color-blue);
    text-box: trim-both cap alphabetic;
}
.accordion.accordion-wo-image .item_accordion.active .icon::after{
    content: '-';
}
.accordion.accordion-wo-image .item_accordion.active .content{
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-6);
    margin-top: var(--padding-vertical-6);
}
.accordion.accordion-image .item_accordion .content p,
.accordion.accordion-wo-image .item_accordion .content p,
.accordion.accordion-image .item_accordion figure{ 
    display: none;
}
.accordion.accordion-image .item_accordion.active .content p,
.accordion.accordion-wo-image .item_accordion.active .content p{
    display: block;
}
.accordion.accordion-wo-image p,
.accordion.accordion-image p{
    color: var( --color-black-50);
    line-height: 1.5;
}
.accordion.accordion-wo-image p a{
    color: var( --color-black-50);
    text-decoration: un;
}
.accordion.accordion-image p{
    color: var(--color-black);
    margin-right: clamp(32px, 6.75vw, 108px);
}
.accordion.accordion-wo-image .bottone-link a{
    text-decoration: underline;
    color: var(--color-blue);
}

/*Team*/
.vc_row[data-vc-full-width]:has(.team-block){
    padding: 0px;
}
.vc_row[data-vc-full-width]:has(.team-block) .vc_row:has(+ .team-block){
    padding: 0px var(--padding-horizontal);
}
.vc_row[data-vc-full-width]:has(.team-block) .team-block{
    padding: var(--padding-vertical-2) 0px 0px !important;
}
.team-block.background-white{
    background-color: var(--color-white);
}
.team-block.background-light-blue{
    background-color: var(--color-light-blue);
}
.team-block.background-blue{
    background-color: var(--color-blue);
}
.team-block .swiper figure.swiper-slide{
    display: flex;
    flex-direction: column;
    gap: 36px;
    margin: 0px;
    padding: 0px;
}
.team-block .swiper figure.swiper-slide picture{
    position: relative;
    display: block;
    aspect-ratio: calc(416 / 540);
    border-radius: 16px;
    overflow: hidden;
    margin: 0px;
}
.team-block .swiper figure.swiper-slide picture img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(1);
    transition: all 300ms linear;
}
.team-block .swiper figure.swiper-slide:hover picture img{
    scale: 1.6;
    transition: all 300ms linear;
    transform: translateY(15%);
}
.team-block .swiper figure.swiper-slide button{
    position: absolute;
    left: 20px;
    bottom: 20px;
    background-color: var(--color-blue);
    padding: 14px;
    border: none;
    appearance: none;
    border-radius: 5px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease-in-out;
}
.team-block .swiper figure.swiper-slide:hover button{
    opacity: 1;
    visibility: visible;
    transition: opacity 300ms ease-in-out;
}
.team-block .swiper figure.swiper-slide figcaption{
    display: flex;
    flex-direction: column;
    gap:16px;
}
.team-block .swiper figure.swiper-slide span{
    color: var(--color-black);
    line-height: 1.3333;
}
.team-block .swiper figure.swiper-slide span.role{
    color: var( --color-black-50);
}

/* News */
.vc_row[data-vc-full-width]:has(.news-block){
    padding: 0px;
    margin-top: 0px !important;
}
.vc_row[data-vc-full-width]:has(.news-block) .news-block{
    padding: var(--padding-vertical-3) 0px var(--padding-vertical-1) !important;
}
.news-block.background-white{
    background-color: var(--color-white);
}
.news-block.background-light-blue{
    background-color: var(--color-light-blue);
}
.news-block.background-blue{
    background-color: var(--color-blue);
}
.news-block .swiper .swiper-slide{
    display: flex;
    flex-direction: column;
    margin: 0px;
    padding: 0px;
    gap: 32px;
    position: relative;
}
.news-block .swiper .swiper-slide .categorie{
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    right: 20px;
}
.news-block .swiper .swiper-slide .categorie a{
    display: block;
    padding: 7px 12px;
    font-size: 12px;
    color: var(--color-white);
    background-color: var(--color-medium-blue);
    border-radius: 8px;
}
.news-block .swiper .swiper-slide .image{
    display: block;
    width: 100%;
    aspect-ratio: calc(472 / 360);
    border-radius: 16px;
    overflow: hidden;
    margin: 0px;
    transition: transform 0.3s ease;
}
.news-block .swiper .swiper-slide .image picture{
    display: block;
    width: 100%;
    height: 100%;
}
.news-block .swiper .swiper-slide .image img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.news-block .swiper .swiper-slide time{
    line-height: 1.5;
    font-size: 12px;
    color: var(--color-black);
}
.news-block .swiper .swiper-slide .content{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.news-block .swiper .swiper-slide .content h3 a{
    color: var(--color-black);
    line-height: 1.3333;
}
.news-block .swiper .swiper-slide .content p{
    color: var(--color-black-50);
    display: -webkit-box;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.news-block .swiper .swiper-slide .content .actions a{
    color: var(--color-blue);
    text-decoration: underline;
}
.news-block .swiper .swiper-slide .categorie,
.news-block .swiper .swiper-slide .actions{
    opacity: 0;
    transition: opacity 0.3s ease;
}
.news-block .swiper .swiper-slide:hover .categorie,
.news-block .swiper .swiper-slide:hover .actions{
    opacity: 1;
    transition: opacity 0.3s ease;
}
.news-block .swiper .swiper-slide:hover .categorie{
    flex-wrap: wrap;
}

/* Cards */
.vc_row[data-vc-full-width]:has(.cards-block){
    padding: 0px;
}
.vc_row[data-vc-full-width]:has(.cards-block) .cards-block{
    padding: var(--padding-vertical-1) var(--padding-horizontal) !important;
}
.custom-title + .cards-block,
.vc_row.vc_inner + .cards-block{
    margin-top: var(--padding-vertical-2);
}
.cards-block.background-white{
    background-color: var(--color-white);
}
.cards-block.background-light-blue{
    background-color: var(--color-light-blue);
}
.cards-block.background-blue{
    background-color: var(--color-blue);
}
.cards-block picture{
    position: relative;
    margin: 0px;
    pointer-events: none;
}
.cards-block picture::after{
    content: '';
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 25%;
    background: linear-gradient(0deg, rgba(17, 17, 17, 0.50) 0%, rgba(17, 17, 17, 0.00) 100%);
    border-radius: 0px 0px 16px 16px;
    pointer-events: none;
}
.cards-block picture a{
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 16px;
    overflow: hidden;
}
.cards-block picture a img{
    display: block;
    aspect-ratio: calc(307 / 380);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cards-block svg.icon,
.cards-block h3{
    position: absolute;
    pointer-events: none;
}
.cards-block svg.icon{
    display: none;
    bottom: 20px;
    right: 20px;
    pointer-events: none;
}
.cards-block svg.icon rect{
    fill: var(--color-medium-blue);
    transition: all 150ms ease-in-out;
}
.cards-block .card:hover svg.icon rect{
    fill: var(--color-blue);
    transition: all 150ms ease-in-out;
} 
.cards-block svg.icon g path{
    fill: var(--color-white) !important;
}
.cards-block h3{
    bottom: 20px;
    left: 20px;
    right: calc(20px + 48px); /* 48 è w dell'icona */
    color: var(--color-white);
    z-index: 9;
    pointer-events: none;
}
.cards-block h3 a{
    font-size: 24px;
    color: var(--color-white);
}

/* Accordion services */
.titoletto + .accordion-services{
    position: relative;
    margin-top: var(--padding-vertical-2);
}
.accordion-services .navigation{
    position: absolute;
    top: 75px;
    z-index: 2;
}
.accordion-services .navigation ul{
    list-style: none;
    display: flex;
    gap: 8px;
    margin: 0px;
}
.accordion-services .navigation ul li{
    position: relative;
    width: 25px;
    height: 25px;
    background-color: var(--color-white);
    border-radius: 7px;
    line-height: 25px;
    text-align: center;
    opacity: 0.5;
    font-size: 12px;
    color: var(--color-black);
}
.accordion-services .navigation ul li.active,
.accordion-services .navigation ul li:hover{
    opacity: 1;
    top: -2px;
    left: -2px;
    width: 29px;
    height: 29px;
    line-height: 29px;
    cursor: pointer;
}
.accordion-services .item_accordion{
    display: none;
}
.accordion-services .item_accordion.active,
.accordion-services .swiper .item_accordion{
    display: grid;
    grid-template-columns: calc(45% - var(--padding-vertical-2)) 55%;
    column-gap: var(--padding-vertical-2);
    background-color: var(--color-blue);
}
.accordion-services .item_accordion ul.tag-cloud{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0px;
    list-style: none;
    max-width: 450px;
    margin-top: 250px; /* Momentaneo, poi andrà tolto */
}
.accordion-services .item_accordion ul.tag-cloud li a{
    display: block;
    font-size: 14px;
    color: var(--color-white);
    text-box: trim-both cap alphabetic;
    padding: 10px;
    border-radius: 40px;
    background: rgba(0, 128, 210, 0.50);
    backdrop-filter: blur(32px);
}
.accordion-services .item_accordion .block-text strong *{
    font-weight: var(--font-semibold);
}
/* Video YT */
.block-video-youtube picture{
    display: block;
    position: relative;
    border-radius: 16px;
    width: 100%;
    cursor: pointer;
    overflow: hidden;
}
.block-video-youtube picture img{
    display: block;
    width: 100%;
    max-width: unset;
}
.block-video-youtube picture button{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    border: none;
    border-radius: 50%;
    appearance: none;
    background-color: var(--color-black-25);
    backdrop-filter: blur(10px);
    width: clamp(48px, 6.6666vw, 96px); /* 1440 */
    height: clamp(48px, 6.6666vw, 96px);
    transition: background-color 300ms ease-in-out;
}
.block-video-youtube picture:hover button{
    background-color: var(--color-light-blue-50);
    transition: background-color 300ms ease-in-out;
}
.block-video-youtube picture button i{
    font-size: clamp(18px, 2.5vw, 36px);
    color: var(--color-white);
    transition: color 300ms ease-in-out;
}
.block-video-youtube .modal-youtube{
    display: none;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    height: 100vh;
    background-color: var(--color-black-25);
    backdrop-filter: blur(5px);
}
.block-video-youtube.show .modal-youtube{
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
}
.block-video-youtube .modal-youtube .wrapper-frame{
    width: 1024px;
    height: 680px;
}
.block-video-youtube .modal-youtube .wrapper-frame iframe{
    width: 100%;
    height: 100%;
    border: none;
}
.block-video-youtube .modal-youtube .close{
    position: absolute;
    top: calc(((100vh - 680px) / 2) - 30px);
    right: calc((100vw - 1024px) / 2);
    font-family: var(--font-family);
    font-weight: var(--font-regular);
    color: var(--color-white);
    font-size: clamp(14px,2vw,16px);
    cursor: pointer;
    transition: all 300ms ease-in-out;
}
.block-video-youtube .modal-youtube .close:hover{
    color: var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
/* Flat map interattiva */
.vc_row.row-with-button:has(+ .block-flat-map-interactive){
    position: relative;
    z-index: 1;
}
.vc_row.row-with-button{
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-columns: 2fr 1fr;
}
.vc_row.row-with-button::before,
.vc_row.row-with-button::after{
    content: none !important;
}
.vc_row.row-with-button .wpb_column{
    width: 100%;
}
.vc_row.row-with-button .wpb_column:last-child{
    justify-self: end;
    align-self: end;
}
.vc_row.row-with-button .wpb_column:last-child .wpb_wrapper{
    width: 100%;
}
.vc_row.row-with-button .wpb_column:last-child .wpb_wrapper button{
    display: block;
    margin-left: auto;
}
body.home .vc_row.row-with-button .wpb_column:last-child .wpb_wrapper button{
    margin-left: 0px;
}
.block-flat-map-interactive{
    position: relative;
    top: calc(-1 * var(--padding-vertical-5));
}
.block-flat-map-interactive picture,
.block-flat-map-interactive picture img{
    display: block;
}
.block-flat-map-interactive picture{
    user-select: none;
}
.block-flat-map-interactive div.dots{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
.block-flat-map-interactive div.dots div.dot{
    display: block;
    position: absolute;
    background-color: var(--color-medium-blue);
    width: 27.8px;
    height: 27.8px;
    transform: translate(-13.9px,-13.9px);
    border-radius: 50%;
    transition: all 300ms ease-in-out;
    cursor: pointer;
}
.block-flat-map-interactive div.dots div.dot:hover:before,
.block-flat-map-interactive div.dots div.dot.active:before{
    content: '';
    display: block;
    width: 34.5px;
    height: 34.5px;
    border: solid 1px var(--color-medium-blue);
    border-radius: 50%;
    transform: translate(-3.35px,-3.35px);
    animation: dot-pulse 1.6s ease-out infinite;
    transition: all 300ms ease-in-out;
}
.block-flat-map-interactive div.dots div.dot-content{
    position: absolute;
    display: none;
    padding: clamp(16px, 2.6vw, 20px);
    background-color: var(--color-medium-blue);
    border-radius: 8px;
    flex-direction: column;
    gap:0px;
    width: 209px;
    translate: -50% calc(-100% - 48px);
}
.block-flat-map-interactive div.dots div.dot-content.active{
    display: flex;
    z-index: 9;
}
.block-flat-map-interactive div.dots div.dot-content span,
.block-flat-map-interactive div.dots div.dot-content span a{
    display: block;
    font-family: var(--font-family);
    font-weight: var(--font-regular);
    font-size: 14px;
    color: var(--color-white);
    line-height: 1.2;
}
.block-flat-map-interactive div.dots div.dot-content span a{
    text-decoration: underline;
}
.block-flat-map-interactive div.dots div.dot-content span.title strong{
    font-weight: var(--font-bold);
    font-size: 14px;
}
.block-flat-map-interactive div.dots div.dot-content span.title + span{
    margin-top: 24px;
}
.block-flat-map-interactive div.dots div.dot-content span + span{
    margin-top: 8px;
}

@keyframes dot-pulse {
    0% {
        transform: translate(-3.35px,-3.35px) scale(0.9);
        opacity: 1;
    }
    70% {
        transform: translate(-3.35px,-3.35px) scale(1.25);
        opacity: 0;
    }
    100% {
        transform: translate(-3.35px,-3.35px) scale(1.25);
        opacity: 0;
    }
}

/* Block values */
.pin-spacer:has(.block-values){
    margin-bottom: var(--padding-vertical-1) !important;
}
.block-values{
    height: calc(200vh + 480px);
}
.block-values .wrapper{
    position: relative;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
}
.block-values .col.images{
    position: relative;
}
.block-values .col.images div.item{
    position: relative;
    top:calc(clamp(30px,3.75vw,60px) * var(--item));
    z-index: calc(var(--total-items) - var(--item));
    max-width: 497px;
    margin-left: auto;
}
.block-values .col.images div.item picture{
    position: absolute;
    aspect-ratio: 497 / 223;
}
.block-values .col.images div.item picture img{
    display: block;
}
.block-values .col.contents{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(70px);
}
.block-values .col.contents::before{
    content: '';
    position: absolute;
    display: block;
    top: -0.5px;
    width: 100%;
    height: 1px;
    background-color: var(--color-black-25);
    left: -6px;
}
.block-values .col.contents div.item{
    display: none;
    position: relative;
    top: 0px;
    left: 0px;
    max-width: 497px;
    padding-left: clamp(16px, 4vw, 64px);
}
.block-values .col.contents div.item.active{
    display: block;
}
.block-values .col.contents div.item h3{
    position: absolute;
    top: 0px;
    transform: translateY(-100%);
    color: black;
    padding-bottom: clamp(12px, 2.25vw, 36px);
    text-box: trim-both cap alphabetic;
    line-height: 1.2;
}
.block-values .contents p{
    padding-top: clamp(12px, 2.25vw, 36px);
    color: var(--color-black-50);
}
/* Single project */
body.single-project .entry-content .row{
    display: grid;
    grid-template-columns: 33% calc(66% - clamp(12px, 2.6vw, 20px));
    grid-gap: clamp(12px, 2.6vw, 20px);
}
body.single-project .entry-content .row + .row{
    margin-top: var(--padding-vertical-1);
}
body.single-project .entry-content .col.quick-info{
    position: sticky;
    top: calc(56px + 64px); /* Altezza header + top *2 */
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-3);
    align-self: flex-start;
}
body.single-project .entry-content .col.quick-info .item span{
    display: block;
    line-height: 1.5;
    color: var(--color-black);
}
body.single-project .entry-content .col.quick-info .item span + span{
    margin-top: 4px;
}
body.single-project .entry-content .col.quick-info .item span.label{
    color: var(--color-black-50);
    text-decoration: underline;
}
body.single-project .entry-content .col.quick-info .item span.value a{
    color: var(--color-blue-2);
}
body.single-project .entry-content .col.quick-info .item span.value a:hover{
    color: var(--color-blue);
}
body.single-project .entry-content .col.quick-info div.attachments{
    padding-top: var(--padding-vertical-3);
    display: flex;
    flex-direction: column;
    gap:8px;
}
body.single-project .entry-content .col.quick-info div.attachments button.bottone-link{
    width: fit-content;
}
body.single-project .entry-content .col.quick-info div.attachments button.bottone-link + button.bottone-link{
    margin-left: 0px;
}
body.single-project .entry-content .swiper.project-gallery,
body.single-project .entry-content .wpb-content-wrapper{
    margin-top: var(--padding-vertical-2);
}
body.single-project .entry-content .swiper.project-gallery picture,
body.single-project .entry-content .swiper.project-gallery picture img{
    display: block;
}
body.single-project .entry-content .swiper.project-gallery picture img{
    aspect-ratio: 852 / 540;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
}
body.single-project .entry-content .swiper.project-gallery .swiper-pagination-bullet{
    width: 12px;
    height: 12px;
    background-color: var(--color-white);
    opacity: 1;
}
body.single-project .entry-content .swiper.project-gallery .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: var(--color-blue-2);
}
body.single-project .entry-content .wpb_column > .vc_column-inner > .wpb_wrapper{
    display: flex;
    flex-direction: column;
    gap: 36px;
}
body.single-project .entry-content .wpb_column > .vc_column-inner > .wpb_wrapper .block-text + button.bottone-link, 
body.single-project .entry-content .wpb_column > .vc_column-inner > .wpb_wrapper .custom-title + button.bottone-link, 
body.single-project .entry-content .wpb_column > .vc_column-inner > .wpb_wrapper .block-text + .accordion, 
body.single-project .entry-content .wpb_column > .vc_column-inner > .wpb_wrapper .custom-title + .block-text{
    margin-top: 0px;
}
body.single-project .entry-footer > .row > .col:first-child{
    position: relative;
}
body.single-project .entry-footer > .row > .col + .col{
    margin-top: var(--padding-vertical-2);
}
.row-with-button > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper,
body.home .news-navigation{
    display: flex;
    gap: 8px;
}
.row-with-button > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper{
    justify-content: flex-end;
}
body.single-project .entry-footer .swiper-navigation{
    position: absolute;
    right: 0px;
    bottom: 0px;
    display: flex;
    gap: 8px;
}
body.single-project .entry-footer .swiper-navigation .swiper-button,
body.home .news-navigation .swiper-button{
    position: static;
    margin-top: 0px;
}
body.home .news-navigation .swiper-button{
    width: 56px;
    height: 56px;
}
body.single-project .entry-footer .swiper-navigation .swiper-button.swiper-button-next,
body.home .news-navigation .swiper-button.swiper-button-next{
    rotate: 180deg;
}
body.single-project .entry-footer .swiper-navigation .swiper-button svg,
body.home .news-navigation .swiper-button svg{
    display: block;
    width: 16px;
}
body.single-project .entry-footer .swiper-navigation .swiper-button:after,
body.home .news-navigation .swiper-button:after{
    content: none !important;
}
body.single-project .entry-footer .swiper.related .swiper-slide{
    position: relative;
    border-radius: 16px;
    background-color: var(--color-light-blue);
    overflow: hidden;
}
body.single-project .entry-footer .swiper.related .swiper-slide picture,
div.projects-block div.projects-grid div.card picture{
    display: block;
}
body.single-project .entry-footer .swiper.related .swiper-slide picture img,
div.projects-block div.projects-grid div.card picture img{
    display: block;
    aspect-ratio: 344 / 328;
    width: 100%;
    object-fit: cover;
    transition: all 300ms ease-in-out;
}
body.single-project .entry-footer .swiper.related .swiper-slide .content,
div.projects-block div.projects-grid div.card .content{
    position: absolute;
    pointer-events: none;
    padding: clamp(20px, 2.25vw, 36px);
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: linear-gradient(180deg, rgba(17, 17, 17, 0.20) 0%, rgba(17, 17, 17, 0.00) 39%);
}
body.single-project .entry-footer .swiper.related h3,
div.projects-block div.projects-grid div.card h3{
    line-height: 1.2;
    color: var(--color-white);
}
body.single-project .entry-footer .swiper.related span,
div.projects-block div.projects-grid div.card span{
    display: block;
    font-size: clamp(14px,2vw,16px);
    color: var(--color-white);
    line-height: 1.5;
}
body.single-project .entry-footer .swiper.related button.bottone-link,
div.projects-block div.projects-grid div.card button.bottone-link{
    position: absolute;
    bottom: clamp(20px, 2.25vw, 36px);
}
body.single-project .entry-footer .swiper.related .swiper-slide:hover picture img,
div.projects-block div.projects-grid div.card:hover picture img{
    scale: 1.1;
    transition: all 900ms ease-in-out;
}
body.single-project .entry-footer .swiper.related .swiper-slide:hover button.bottone-link,
div.projects-block div.projects-grid div.card:hover button.bottone-link{
    transition: all 300ms ease-in-out;
    background-color: var(--color-blue);
}

/* Griglia dei progetti */
div.projects-block header{
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--padding-vertical-6);
}
div.projects-block header:has(.col + .col){
    grid-template-columns: repeat(2,minmax(0,1fr));
}
div.projects-block header:has(.col + .col) div.col:last-child{
    justify-self: end;
    align-self: end;
}
div.projects-block header:has(.col + .col) div.col:last-child,
div.projects-block header:has(.col + .col) div.col:last-child .filter-wrapper{
    display: flex;
    gap: 12px;
    align-items: center;
}
div.projects-block header .clear-filter{
    font-size: 14px;
    color: var(--color-black);
    line-height: 1.5;
    cursor: pointer;
    transition: color 300ms ease-in-out;
}
div.projects-block header .clear-filter:hover{
    color: var(--color-medium-blue);
    transition: color 300ms ease-in-out;
}
div.projects-block header div.filter{
    position: relative;
    padding: 8px 12px;
    margin: 0px;
    border: 1px solid var(--color-black-10);
    border-radius: 4px;
    background-color:var(--color-white);
    transition: all 300ms ease-in-out;
    cursor: pointer;
}
div.projects-block header div.filter:hover,
div.projects-block header div.filter:has(ul.submenu li.active){
    border: 1px solid var(--color-medium-blue);
    background-color:var(--color-medium-blue);
    transition: all 300ms ease-in-out;
}
div.projects-block header div.filter > ul{
    display: block;
    list-style: none;
    padding: 0px;
    margin: 0px;
}
div.projects-block header div.filter > ul li{
    display: flex;
    gap: 14px;
    align-items: center;
    font-size: 14px;
    color: var(--color-black);
    line-height: 1.5;
    transition: all 300ms ease-in-out;
}
div.projects-block header div.filter:hover > ul > li,
div.projects-block header div.filter:has(ul.submenu li.active) > ul > li{
    color: var(--color-white);
    transition: all 300ms ease-in-out;
}
div.projects-block header div.filter > ul li svg{
    display: block;
    width: 9px;
}
div.projects-block header div.filter > ul li svg path{
    stroke: #9D9D9D;
    transition: all 300ms ease-in-out;
}
div.projects-block header div.filter:hover > ul li svg{
    rotate: -180deg;
}
div.projects-block header div.filter:hover > ul li svg path,
div.projects-block header div.filter:has(ul.submenu li.active) > ul > li svg path{
    stroke: var(--color-white);
    transition: all 300ms ease-in-out;
}
div.projects-block header div.filter > ul li > div.submenu-wrapper{
    display: none;
}
div.projects-block header div.filter:hover div.submenu-wrapper{
    display: block;
    position: absolute;
    padding-top: 12px;
    left: 0px;
    top: 100%;
    min-width: 220px;
    width: fit-content;
    z-index: 99;
}
div.projects-block header div.filter:last-child:hover div.submenu-wrapper{
    left: unset;
    right: 0px;
}
div.projects-block header div.filter:hover div.submenu-wrapper ul.submenu{
    display: flex;
    flex-direction: column;
    margin: 0px;
    padding: 16px;
    width: 100%;
    border-radius: 8px;
    border-radius: 12px;
    border: 1px solid #DFDFDF;
    background-color: var(--color-white);
}
div.projects-block header div.filter:hover ul.submenu li{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 8px 0px;
    font-size: 14px;
    color: #333;
    line-height: 1.5;
    cursor: pointer;
    transition: gap 300ms ease-in-out;
}
div.projects-block header div.filter:hover ul.submenu li:hover{
    gap: 15px;
    transition: gap 300ms ease-in-out;
}
div.projects-block header div.filter:hover ul.submenu li span{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 6px;
    border: 1px solid #A1A1AA;
    background: var(--color-white);
}
div.projects-block header div.filter:hover ul.submenu li.active span:before{
    content: '';
    display: block;
    background-color: #A1A1AA;
    width: 10px;
    height: 10px;
    border-radius: 2px;
}
div.projects-block header div.filter:hover ul.submenu li.subtitle{
    font-size: 12px;
    color: #71717A;
    pointer-events: none;
}
div.projects-block div.projects-grid:first-child{
    margin-top: var(--padding-vertical-2);
}
div.projects-block header + div.projects-grid{
    margin-top: var(--padding-vertical-2);
    filter: none;
    transition: filter 300ms ease-in-out;
}
div.projects-block header + div.projects-grid.loading{
    filter: blur(5px);
    transition: filter 300ms ease-in-out;
}
div.projects-block div.projects-grid{
    display: grid;
    grid-template-columns: repeat(6, 1fr); /* 6 colonne = puoi fare 1/6, 2/6, 3/6... */
    gap: 20px;
    margin: 0 auto;
}
div.projects-block.tax-selected div.projects-grid{
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 1fr 1fr;
}
div.projects-block div.projects-grid div.card{
    position: relative;
    grid-column: span 2; /* card standard = 2 unità su 6 = 1/3 larghezza */
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 344 / 328; /* controlla l'altezza in base all'immagine */
}
div.projects-block.tax-selected div.projects-grid div.card{
    grid-column: span 2;
    aspect-ratio: 416 / 332;
}
div.projects-block div.projects-grid div.card.card-wide {
    grid-column: span 4; /* card grande riga 1 = 2/3 larghezza */
    aspect-ratio: 705 / 328; /* 708 = 344*2 + 20 (gap) */
}
div.projects-block div.projects-grid div.card.card-tall {
    grid-column: span 3; /* card ultima riga = metà larghezza (3/6) */
    aspect-ratio: 16 / 10; /* più larga/panoramica */
}
div.projects-block div.projects-grid div.card picture,
div.projects-block div.projects-grid div.card picture a{
    display: block;
    width: 100%;
    height: 100%;
}
div.projects-block div.projects-grid div.card picture img{
    aspect-ratio: unset;
    width: 100%;
    height: 100%;
    max-width: unset;
}
div.projects-block.tax-selected div.projects-grid div.card:nth-child(1){
    grid-column: 1;
    grid-row: 1;
}div.projects-block.tax-selected div.projects-grid div.card:nth-child(2){
    grid-column: 1;
    grid-row: 2;
}
div.projects-block.tax-selected div.projects-grid div.card.card-wide{
    grid-column: 2;
    grid-row: 1 / 3;
    aspect-ratio: 827 / 680;
}
div.projects-block button.load-more{
    display: flex;
    appearance: none;
    padding: 16px 24px;
    border-radius: 12px;
    background-color: var(--color-white);
    border: 0.5px solid var(--color-black);
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    margin: calc(var(--padding-vertical-1) / 2) auto;
    transition: all 300ms ease-in-out;
    cursor: pointer;
}
div.projects-block button.load-more[disabled]{
    opacity: 0.35;
    pointer-events: none;
}
div.projects-block button.load-more:hover{
    color: var(--color-white);
    background-color: var(--color-medium-blue);
    border: 0.5px solid var(--color-medium-blue);
}

/* Globe with data */
div.globe{
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-2);
}
div.titoletto + div.globe{
    margin-top: var(--padding-vertical-5);
}
div.globe header.tabs ul{
    display: flex;
    gap: clamp(12px, 2.6vw, 20px);
    list-style: none;
    margin: 0px;
    padding: 0px;
}
div.globe header.tabs ul li{
    border-radius: 9px;
    border: 1px solid var(--color-blue);
    overflow: hidden;
}
div.globe header.tabs ul li a{
    display:block;
    padding: 11px clamp(11px, 0.5vw, 16px);
    font-size: clamp(14px,2vw,16px);
    color: var(--color-blue);
    transition: all 300ms ease-in-out;
}
div.globe header.tabs ul li a:hover,
div.globe header.tabs ul li.active a{
    background-color: var(--color-blue);
    color: var(--color-white) !important;
    transition: all 300ms ease-in-out;
}
div.globe header.tabs ul li:nth-child(1){
    border-color: var(--color-dark-blue);
}
div.globe header.tabs ul li:nth-child(1) a{
    color: var(--color-dark-blue);
}
div.globe header.tabs ul li:nth-child(1) a:hover,
div.globe header.tabs ul li:nth-child(1).active a{
    background-color: var(--color-dark-blue);
}
div.globe header.tabs ul li:nth-child(3){
    border-color: var(--color-blue-2);
}
div.globe header.tabs ul li:nth-child(3) a{
    color: var(--color-blue-2);
}
div.globe header.tabs ul li:nth-child(3) a:hover,
div.globe header.tabs ul li:nth-child(3).active a{
    background-color: var(--color-blue-2);
}
div.globe header.tabs ul li[data-slug="nuo"]{
    border-color: #185649;
}
div.globe header.tabs ul li[data-slug="nuo"] a{
    color: #185649;
}
div.globe header.tabs ul li[data-slug="nuo"] a:hover,
div.globe header.tabs ul li[data-slug="nuo"].active a{
    background-color: #185649;
}
div.globe > div.row{
    display: grid;
    grid-template-columns: calc(42% - var(--padding-vertical-3)) calc(58% - var(--padding-vertical-3));
    grid-gap: var(--padding-vertical-2);
}
div.globe #data{
    filter: none;
    transition: filter 300ms ease-in-out;
}
div.globe #data.loading{
    filter: blur(5px);
    transition: filter 300ms ease-in-out;
}
div.globe #data .wrapper{
    border-radius: 18px;
    background: #EFF8FF;
    padding: clamp(24px, 2.25vw, 36px);
}
div.globe #data .wrapper table{
    margin-bottom: 0px;
    border-collapse: collapse;
    border-spacing: 0;
}
div.globe #data .wrapper table + table{
    margin-top: var(--padding-vertical-6);
}
div.globe #data .wrapper table thead th, 
div.globe #data .wrapper table tbody td{
    font-size: 14px;
    color: var(--color-black-50);
    line-height: 1.4;
    padding: 4px 0px;
}
div.globe #data .wrapper table tbody td strong,
div.globe #data .wrapper table tbody tr td:has(strong) + td{
    font-size: 14px;
    color: var(--color-black);
    font-weight: var(--font-medium);
}
div.globe #data .wrapper table thead th{
    font-size: clamp(17px,1.5vw,24px);
    color: var(--color-black);
    line-height: 1.333;
}
div.globe #data .wrapper table thead th:last-child,
div.globe #data .wrapper table tbody td:last-child{
    text-align: right;
}
div.globe #data .wrapper table thead th:first-child{
    text-align: left;
}
div.globe #data .wrapper table tbody tr:first-child td,
div.globe #data .wrapper table tbody tr:not(:first-child) td:has(strong),
div.globe #data .wrapper table tbody tr:not(:first-child) td:has(strong) + td{
    padding-top: clamp(16px, 2.6vw, 20px);
}
div.globe #data .wrapper table tbody tr:not(:first-child) td:has(strong),
div.globe #data .wrapper table tbody tr:not(:first-child) td:has(strong) + td{
    border-top: none;
}
div.globe #data .wrapper table tbody tr + tr td{
    border-top: 0.25px solid var(--color-black-50);
}
div.globe #data .attachments{
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 40px;
}
div.globe #data .attachments button{
    margin: 0px;
    width: fit-content;
}
div.globe #globe{
    aspect-ratio: 1;
}
div.globe #globe div.mapboxgl-ctrl-bottom-left,
div.globe #globe div.mapboxgl-ctrl-bottom-right,
#globehome div.mapboxgl-ctrl-bottom-left,
#globehome div.mapboxgl-ctrl-bottom-right{
    display: none;
}
.map-drag-cursor{
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 20px;
    border-radius: 999px;
    background-color: var(--color-black);
    color: var(--color-white);
    font-size: 12px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 200ms ease-in-out;
}
.map-drag-cursor.visible{
    opacity: 1;
}
/* Colonne interattive */
.vc_row[data-vc-full-width]:has(.block-interactive-column){
    padding: 0px;
}
.block-interactive-column .column .wrapper{
    padding: var(--padding-vertical-3) 122px var(--padding-vertical-1);
    margin: 0px;
}
.block-interactive-column .swiper-slide{
    background-color: var(--color-white);
    transition: background-color 300ms ease-in-out;
    height: auto;
}
.block-interactive-column .swiper-slide:hover{
    background-color: #B6E2FF;
    transition: background-color 600ms ease-in-out;
}
.block-interactive-column .column span.number,
.block-interactive-column .column h3,
.block-interactive-column .column p{
    font-size: clamp(27px, 2.25vw, 36px);
    color: var(--color-medium-blue);
    line-height: 1.22;
}
.block-interactive-column .column span.number + h3{
    margin-top: var(--padding-vertical-2);
}
.block-interactive-column .column h3,
.block-interactive-column .column p{
    color: var(--color-black);
}
.block-interactive-column .column p{
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
}
.block-interactive-column .column h3 + p{
    margin-top: var(--padding-vertical-3);
}
.block-interactive-column .column button.bottone-link{
    margin-top: var(--padding-vertical-1);
}

/* Form */
form.wpcf7-form .cf-row + .cf-row{
    margin-top: 16px;
}
form.wpcf7-form .cf-row + .cf-row.submit{
    margin-top: var(--padding-vertical-4);
}
form.wpcf7-form .cf-row input[type="text"], 
form.wpcf7-form .cf-row input[type="email"],
form.wpcf7-form .cf-row textarea,
form.wpcf7-form .cf-row select{
    appearance: none;
    border: none;
    border-radius: unset;
    border-bottom: 0.5px solid var(--color-black);
    padding: 0px 0px clamp(8px,1vw,16px) 0px;
    margin: 0px;
    font-size: clamp(18px,1.5vw,24px);
    font-weight: var(--font-regular);
    line-height: 2.333;
    color:var(--color-black);
    width: 100%;
}
form.wpcf7-form .cf-row select{
    background: url('data:image/svg+xml,<svg id="Livello_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16 16"><defs><style> .st0 { fill: %23111; } </style></defs><path class="st0" d="M6.8,12.2V0s2,0,2,0v12.2s5.4-5.4,5.4-5.4l1.4,1.4-7.8,7.8L0,8.2l1.4-1.4,5.4,5.4Z"/></svg>') no-repeat;
    background-position: calc(100% - 0.5 * clamp(8px,1vw,16px)) calc((100% - clamp(8px,1vw,16px)) / 2);
    background-size: clamp(8px,1vw,16px) clamp(8px,1vw,16px);
}
form.wpcf7-form .cf-row input[type="text"]::placeholder, 
form.wpcf7-form .cf-row input[type="email"]::placeholder,
form.wpcf7-form .cf-row textarea::placeholder{
    font-size: clamp(18px,1.5vw,24px);
    color:var(--color-black-50);
}
form.wpcf7-form .cf-row textarea{
    height: 4lh; /* 5 volte la line-height calcolata */
    box-sizing: content-box; /* importante: vedi nota sotto */
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item{
    margin-left: 0px;
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item > label{
    display: flex;
    gap: 16px;
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item > label input{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 17px;
    height: 17px;
    appearance: none;
    background-color: var(--color-white);
    border-radius: 4px;
    border: 0.75px solid var(--color-black);
    margin: 0px;
    padding: 0px;
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item > label input:checked:before{
    content: '';
    display: block;
    background-color: var(--color-black);
    width: 9px;
    height: 9px;
    border-radius: 2px;
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item > label span{
    display: block;
    width: calc(100% - 33px);
    font-size: 12px;
    line-height: 1.5;
    color: var(--color-black);
}
form.wpcf7-form .cf-row.checkbox span.wpcf7-list-item > label span a{
    font-size: inherit;
    color: inherit;
    text-decoration: underline;
}
/* Globe test */
.vc_row[data-vc-full-width]:has(#globehome){
    padding: 0px !important;
    overflow:initial;
}
.globe-home{
    position: relative;
}
.globe-home header.tabs{
    position: sticky;
    top: 0px;
    padding-top: 0px; /* Altezza blocco card + 64px */
    top: calc(100vh - clamp(32px, 5vw, 80px) - 45px);
    margin-bottom: clamp(32px, 5vw, 80px);
    align-self: flex-start;
    display: flex;
    justify-content: center;
    width: 100%;
    bottom: clamp(32px, 5vw, 80px);
    z-index: 1;
    opacity: 0;
}
.globe-home header.tabs ul{
    display: flex;
    justify-content: center;
    list-style: none;
    gap: 8px;
    margin: 0px;
}
.globe-home header.tabs ul li a{
    display: block;
    padding: 11px clamp(11px, 0.5vw, 16px);
    font-size: clamp(14px,2vw,16px);
    background-color: var(--color-white);
    border-radius: 9px;
    color: var(--color-blue);
    transition: all 300ms ease-in-out;
}
.globe-home header.tabs ul li[data-slug="technical-advisory"] a{
    color: var(--color-dark-blue);
}
.globe-home header.tabs ul li[data-slug="legal-advisory"] a{
    color: var(--color-blue-2);
}
.globe-home header.tabs ul li[data-slug="nuo"] a{
    color: var(--color-green);
}
.globe-home header.tabs ul li:hover a,
.globe-home header.tabs ul li.active a{
    background-color: var(--color-dark-blue);
    color: var(--color-white);
    transition: all 300ms ease-in-out;
}
.globe-home header.tabs ul li[data-slug="asset-management"]:hover a,
.globe-home header.tabs ul li[data-slug="asset-management"].active a{
    background-color: var(--color-blue);
}
.globe-home header.tabs ul li[data-slug="legal-advisory"]:hover a,
.globe-home header.tabs ul li[data-slug="legal-advisory"].active a{
    background-color: var(--color-blue-2);
}
.globe-home header.tabs ul li[data-slug="nuo"]:hover a,
.globe-home header.tabs ul li[data-slug="nuo"].active a{
    background-color: var(--color-green);
}
.globe-home .cards{
    position: absolute;
    display: flex;
    justify-content: flex-end;
    gap: clamp(12px, 2.6vw, 20px);
    top: 0px;
    right:var(--padding-horizontal);
    z-index: 1;
}
.globe-home .cards .card{
    background-color: var(--color-medium-blue);
    border-radius: 16px;
    padding: 20px;
    width: 200px;
}
.globe-home .cards .card picture,
.globe-home .cards .card picture img{
    display: block;
}
.globe-home .cards .card picture img{
    width: auto;
    height: clamp(30px,3.75vw,60px);
}
.globe-home .cards .card div.up{
    margin-top: clamp( 21px, 2.625vw, 42px);
}
.globe-home .cards .card div.up *{
    font-size: clamp(26px, 3.25vw, 52px);
    color: var(--color-white);
    text-box: trim-both cap alphabetic;
    line-height: 1;
}
.globe-home .cards .card div.up span.number{
    margin-right: 8px;
}
.globe-home .cards .card div.up span.postpone{
    font-size: 26px;
}
.globe-home .cards .card div.down{
    margin-top: 16px;
}
.globe-home .cards .card div.down p{
    font-size: 14px;
    color: var(--color-white);
    line-height: 1.2;
}
body.home .globe-home #globehome{
    /* aspect-ratio: 1512 / 975;
    aspect-ratio: 1.3; */
    aspect-ratio: 1.6;
}
/* Accordion scroll */
.vc_row[data-vc-full-width]:has(.accordion-scroll){
    padding: 0px;
    overflow: initial;
}
.accordion-scroll{
    position: sticky;
    top: 0;
    align-self: flex-start;
    background-color:var(--color-white);
    padding: 0px var(--padding-horizontal);
    border-top: var(--color-black-20) 1px solid;
    transition:padding 300ms linear;
}
.accordion-scroll:first-child{
    border-top: none;
}
.accordion-scroll.active{
    background-color:#DEF0FF;
    border-bottom: none;
    padding: calc(var(--padding-vertical-1) * 0.5) var(--padding-horizontal) calc(var(--padding-vertical-1) * 1.5);
    transition:padding 300ms linear;
}
.accordion-scroll:not(.active) .accordion{
    display: none;
}
.accordion-scroll header{
    display: grid;
    grid-template-columns: 1fr 2fr;
    padding:var(--padding-vertical-3) 0px;
    cursor: pointer;
}
.accordion-scroll.active header{
    border-bottom: var(--color-black-50) 0.5px solid;
}
.accordion-scroll header span{
    line-height: 1.1666;
    color: var(--color-black);
}
.accordion-scroll .accordion,
.accordion-scroll .content-html{
    margin-left: 33.33333%;
}
.accordion-scroll .accordion .item_accordion,
.accordion-scroll .content-html{
    padding:var(--padding-vertical-3) 0px;
}
.accordion-scroll .accordion .item_accordion + .item_accordion{
    border-top: var(--color-black-20) 0.5px solid;
}
.accordion-scroll .accordion .item_accordion h3{
    font-weight: var(--font-regular);
    color: var(--color-black);
    line-height: 1.33333;
}
.accordion-scroll .accordion .item_accordion .wrapper > h3{
    position: relative;
    cursor: pointer;
    padding-right: 89px;
}
.accordion-scroll .accordion .item_accordion .wrapper > h3:before,
.accordion-scroll .accordion .item_accordion .wrapper > h3:after{
    content: '';
    display: block;
    position: absolute;
    width: 2px;
    height: 24px;
    background-color: var( --color-medium-blue );
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
}
.accordion-scroll .accordion .item_accordion .wrapper > h3:after{
    width: 24px;
    height: 2px;
    right: 29px; /* Valore del right - metaà della larghezza (24px) - 1px per lo spessore della riga verticale) */
}
.accordion-scroll .accordion .item_accordion.active .wrapper > h3:before{
    content: none;
}
.accordion-scroll .accordion .item_accordion .wrapper .content,
.accordion-scroll .content-html{
    display: none;
}
.accordion-scroll .accordion .item_accordion.active .wrapper .content,
.accordion-scroll.active .content-html{
    display: flex;
    flex-direction: column;
    gap: 0px;
    margin-top: var(--padding-vertical-3);
}
.accordion-scroll.active .content-html{
    margin-top: 0px;
}
.accordion-scroll .accordion .item_accordion .wrapper .content button{
    width: fit-content;
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion{
    position: relative;
    padding-left: 20px;
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion:before{
    content: '';
    display: block;
    position: absolute;
    top:8px;
    bottom: 0px;
    left: 0px;
    width: 1px;
    background-color:var(--color-medium-blue);
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion h3{
    position: relative;
    line-height: 1.5;
    color:var(--color-medium-blue);
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion h3:before{
    content: '';
    display: block;
    position: absolute;
    top: 6px;
    left: -20px;
    transform: translate(-50%,0%);
    width: 12px;
    height: 12px;
    background-color: #DEF0FF;
    border: var(--color-medium-blue) 1px solid;
    border-radius: 50%;
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion p.size-thirdary{
    margin: 24px 0px 0px 10px;
    color: var(--color-black-50);
}
.accordion-scroll.active .content-html{
    gap: 8px;
}
.accordion-scroll .content-html ul{
    margin:8px 0px 8px 1em;
}
.accordion-scroll .content-html a{
    text-decoration: underline;
}
.accordion-scroll .content-html *,
.accordion-scroll .accordion .item_accordion p.size-thirdary{
    color: var(--color-black-50);
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion + .sub_item_accordion{
    padding-top: 24px;
}
.accordion-scroll .accordion .item_accordion .sub_item_accordion + .sub_item_accordion:before{
    top:0px;
}
.accordion-scroll .accordion .item_accordion .wrapper .content .sub_item_accordion:nth-last-of-type(1):before{
    bottom: unset;
    height: 31px;
}

/* NUO */
body:has(header.site-header.vector-nuo-header) .vc_section.section-content{
    background: none;
}
body:has(header.site-header.vector-nuo-header) h1{
    margin: 0px;
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h1){
    margin-top: clamp(100px, 12.5vw, 200px);
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h1) + .custom-title:has(h2){
    margin-top: 36px;
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h1) + .custom-title:has(h2) + .block-text.size-thirdary,
body:has(header.site-header.vector-nuo-header) .custom-title:has(h2) + .block-text.size-thirdary{
    margin: var(--padding-vertical-6) auto 0px;
    max-width: 900px;
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h2) + .block-text.size-thirdary{
    margin: var(--padding-vertical-3) auto 0px;
    max-width: 900px;
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h1) + .custom-title:has(h2) + .block-text.size-thirdary *,
body:has(header.site-header.vector-nuo-header) .custom-title:has(h2) + .block-text.size-thirdary *{
    color: var(--color-black-75);
    line-height: 1.5;
}
body:has(header.site-header.vector-nuo-header) .custom-title:has(h1) + .custom-title:has(h2) + .block-text.size-thirdary strong *{
    font-weight: var(--font-bold);
}
body:has(header.site-header.vector-nuo-header) button.bottone-link.vector-fourthdary a span{
    color: var(--color-black);
}
body:has(header.site-header.vector-nuo-header) button.bottone-link.vector-fourthdary:hover a span{
    color: var(--color-white);
}
body:has(header.site-header.vector-nuo-header) .banner{
    position: fixed;
    bottom: var(--padding-vertical-3);
    right: var(--padding-horizontal);
    background-color: var(--color-light-green);
    padding: clamp(8px, 1vw, 16px) clamp(12px, 1.5vw, 24px);
    border-radius: clamp(20px, 2.5vw, 40px);
    display: flex;
    align-items: center;
    gap: clamp(12px, 2.6vw, 20px);
    z-index: 9999;
    transition: opacity 300ms ease-in-out, transform 300ms ease-in-out, visibility 300ms ease-in-out;
}
body:has(header.site-header.vector-nuo-header) .banner.hidden{
    opacity: 0;
    transform: translateY(20px);
    visibility: hidden;
    pointer-events: none;
}
body:has(header.site-header.vector-nuo-header) .banner > span{
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    font-weight: var(--font-medium);
    line-height: 1;
}
body:has(header.site-header.vector-nuo-header) .banner > a{
    display: inline-flex;
    gap: 12px;
    align-items: center;
    background-color: var(--color-white);
    padding: 16px 20px;
    border-radius: clamp(14px, 1.75vw, 28px);
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    font-weight: var(--font-medium);
    line-height: 1;
    transition: background-color 300ms ease-in-out;
}
body:has(header.site-header.vector-nuo-header) .banner > a:hover{
    background-color: var(--color-green);
    color: var(--color-white);
    transition: background-color 300ms ease-in-out;
}
body:has(header.site-header.vector-nuo-header) .banner > a span.icon{
    display: inline-block;
    width: 12px;
    height: 12px;
}
body:has(header.site-header.vector-nuo-header) .banner > a:hover span.icon svg path{
    stroke: var(--color-white);
}
.nuo-macbook .vc_column-inner > .wpb_wrapper{
    position: relative;
    aspect-ratio: calc(843 / 518);
    width: 843px;
    margin: auto;
}
.nuo-macbook .wpb_single_image{
    position: absolute;
    display: block;
    z-index: 1;
}
.nuo-macbook .video-embed-wrapper{
    position: relative;
    width: 700px;
    height: 460px;
    margin: auto;
    top: 10px;
    /* z-index: 0; */
    z-index: 2;
}
.nuo-macbook .plyr__video-wrapper{
    height: 460px;
}
/* .plyr--full-ui.plyr--video .plyr__control--overlaid{
    z-index: 9999;
} */

/* Cards NUO */
.cards-nuo-block{
    display: grid;
    grid-template-columns: repeat(3,minmax(0px, 1fr));
    grid-gap: clamp(12px, 2.6vw, 20px);
}
.cards-nuo-block:not(.numbers-nuo){
    margin-top: calc(0.5 * var(--padding-vertical-1));
}
.cards-nuo-block .card{
    padding: 16px;
    border-radius: 8px;
    background: #F8F9FA;
}
.cards-nuo-block.numbers-nuo{
    display: grid;
    grid-template-columns: repeat(var(--number),minmax(200px,1fr));
    grid-gap:0px;
    max-width: 800px;
    margin: 0px auto;
}
.cards-nuo-block.numbers-nuo .card{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding:0px;
    border-radius: 0px;
    background: none;
}
.cards-nuo-block:not(.numbers-nuo) .card picture{
    position: relative;
    background-color: var(--color-green);
    border-radius: 6px;
    display: block;
    padding: 23px 34px 0px 34px;
}
.cards-nuo-block:not(.numbers-nuo) .card picture div.icon{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 10px;
    left: 10px;
    width: 32px;
    height: 32px;
    background: var(--color-light-green);
    padding: 6px;
    border-radius: 50%;
}
.cards-nuo-block:not(.numbers-nuo) .card picture div.icon img{
    display: block;
    height: 22px;
    width: auto;
}
.cards-nuo-block:not(.numbers-nuo) .card picture > img,
.cards-nuo-block:not(.numbers-nuo) .card picture > a > img{
    display: block;
}
.cards-nuo-block.numbers-nuo .card + .card{
    border-left: var(--color-black-20) 1px solid;
} 
.cards-nuo-block.numbers-nuo .card h3{
    color: #000;
    line-height: 1.1666;
}
.cards-nuo-block:not(.numbers-nuo) .card h3,
.cards-nuo-block:not(.numbers-nuo) .card h3 a{
    color: var(--color-black);
    font-size: 18px;
    line-height: 1.3333;
    font-weight: var(--font-bold);
    margin-top: 20px;
}
.cards-nuo-block.numbers-nuo .card p{
    color: var(--color-green);
    line-height: 1.3333;
}
.cards-nuo-block:not(.numbers-nuo) .card p{
    font-size: 14px;
    line-height: 1.428;
}
.cards-nuo-block:not(.numbers-nuo) .card h3 + p{
    margin-top: 18px;
}
.cards-nuo-block:not(.numbers-nuo) .card p + a{
    color: var(--color-black);
    font-size: 14px;
    text-decoration: underline;
    line-height: 1.428;
    margin-top: 12px;
}
.cards-nuo-block:not(.numbers-nuo) .card h3 a:hover,
.cards-nuo-block:not(.numbers-nuo) .card p + a:hover{
    color: var(--color-green);
}
.cards-nuo-block.seamless{
    grid-gap:16px;
}
.cards-nuo-block.seamless .card{
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: unset;
    padding: 0px;
}
.cards-nuo-block.seamless .card:before{
    content: '';
    display: block;
    width: clamp(18px, 1.5vw, 24px);
    height: clamp(36px, 3vw, 48px);
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="48" viewBox="0 0 24 48" fill="none"><path d="M24 24L8.44159 48H0L15.0702 24.7506C15.3672 24.2929 15.3672 23.707 15.0702 23.2494L0 0H8.44159L24 24Z" fill="%2368C897"/></svg>');
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
}
.cards-nuo-block.seamless .card:first-child:before{
    content: none;
}
.cards-nuo-block.seamless .card picture{
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: clamp(39px, 3.25vw, 52px);
    transform: translateY(-50%);
    width: clamp(36px, 3vw, 48px);
    height: clamp(36px, 3vw, 48px);
    border-radius: 8px;
    background-color: var(--color-white);
    padding: 0px;
}
.cards-nuo-block.seamless .card picture div.icon{
    position: static;
    display: flex;
    justify-content: center;
    align-items: center;
    background: none;
    border-radius: unset;
    padding: 0px;
}
.cards-nuo-block.seamless .card picture div.icon img{
    display: block;
    width: auto;
    height: clamp(24px, 2vw, 32px);
}
.cards-nuo-block.seamless .card h3,
.cards-nuo-block.seamless .card p{
    padding-left: clamp(90px, 7.5vw, 120px);
    margin: 0px !important;
}
.cards-nuo-block.seamless .card h3{
    font-size: 14px;
    line-height: 1.42;
    font-weight: var(--font-medium);
}
.cards-nuo-block.seamless .card p{
    font-size: 12px;
    line-height: 1.5;
    color: var(--color-black-75);
}
/* Vantaggi NUO */
.vc_row[data-vc-full-width].nuo-advantages{
    position: relative;
    padding: calc(0.5 * var(--padding-vertical-1)) 0px;
}
.vc_row[data-vc-full-width].nuo-advantages:before,
.vc_row[data-vc-full-width].nuo-advantages:after{
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: radial-gradient(58000.02% 50% at 50% 50%, #E8E8E8 40%, rgba(232, 232, 232, 0.00) 100%);
    top: calc(0.5 * var(--padding-vertical-1)) 0px;
    left: 0px;
}
.vc_row[data-vc-full-width].nuo-advantages:after{
    top:unset;
    bottom: calc(0.5 * var(--padding-vertical-1));
}
.vc_row[data-vc-full-width].nuo-advantages > .wpb_column{
    padding:var(--padding-vertical-3) var(--padding-vertical-3) var(--padding-vertical-3) calc(2.27 * var(--padding-vertical-3));
}
.nuo-advantages > .wpb_column:last-child{
    border-left: #E8E8E8 1px solid;
}
.nuo-advantages .titoletto:before{
    content: none;
}
.nuo-advantages .titoletto span{
    font-size: 14px;
    color: var(--color-green);
    text-transform: uppercase;
    letter-spacing: 0.2em;
    line-height: 1.5;
}
.nuo-advantages .custom-title{
    margin-top: 20px;
}
.nuo-advantages .custom-title h2{
    font-size: 40px;
    color: var(--color-black);
    line-height: 1.3;
    letter-spacing: -0.02em;
}
.nuo-advantages .block-text{
    margin-top: 48px;
    gap: 0px;
}
.nuo-advantages .block-text ul{
    margin: 0px;
    padding: 0px;
    list-style: none;
}
.nuo-advantages .block-text ul li *{
    color: #646464 !important;
    line-height: 1.6;
}
.nuo-advantages > .wpb_column:first-child .block-text ul li:before{
    content: '❌';
    display: inline-block;
    margin-right: 5px;
    color: #646464 !important;
}
.nuo-advantages > .wpb_column:last-child .block-text ul li:before{
    content: '✅';
    display: inline-block;
    margin-right: 5px;
    color: #646464 !important;
}
.vc_section.section-content .vc_row.discover-features{
    background-color: #EAEFEF;
    padding: 80px 109px 0px;
    margin-left: -109px !important;
    margin-right: -109px !important;
    border-radius: 20px;
}
.vc_section.section-content .vc_row.discover-features div.video-embed-wrapper{
    position: relative;
    aspect-ratio: 1920 / 740;
    border-radius: 18px 18px 0 0;
    overflow-y: hidden;
}
.vc_section.section-content .vc_row.discover-features video#features_video{
    width: 100%;
}
.vc_section.section-content .vc_row.discover-features div.video-embed-wrapper:after{
    content: '';
    display: block;
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 50px;
    background: linear-gradient(0deg,rgba(234, 239, 239, 0.9) 0%, rgba(234, 239, 239, 0) 100%);
}
.vc_section.section-content .vc_row.discover-features .vc_row:has(.video-embed-wrapper){
    margin-top: 83px;
}
.row-all-in-one{
    margin-top:var(--padding-vertical-2) !important;
    display: flex;
    flex-wrap: wrap;
}
.row-all-in-one + .row-all-in-one{
    margin-top: clamp(10px, 1.25vw, 20px) !important;
}
.row-all-in-one .block-text{
    flex: 1;
    justify-content: center;
    padding: clamp(10px, 1.25vw, 20px) var(--padding-vertical-6);
    border-radius: clamp(4px, 0.5vw, 8px);
    border: 1px solid #DADADA;
    margin: 0px clamp(10px, 1.25vw, 20px);
}
.row-all-in-one > .wpb_column{
    display: flex;
    flex-direction: column;
    align-self: stretch;
    height: auto;
}
.row-all-in-one > .wpb_column > .vc_column-inner{
    display: flex;
    flex-direction: column;
    flex: 1;
}
.row-all-in-one > .wpb_column > .vc_column-inner > .wpb_wrapper{
    display: flex;
    flex-direction: column;
    flex: 1;
}
.row-all-in-one > .wpb_column:nth-child(1) .block-text{
    margin-left: 0px;
}
.row-all-in-one > .wpb_column:nth-last-child(1) .block-text{
    margin-right: 0px;
}
.row-all-in-one .block-text p{
    line-height: 1.42;
}
.row-all-in-one .block-text p *{
    font-size: 14px;
    color: var(--color-black-75);
}
.row-all-in-one .block-text p strong *{
    font-weight: var(--font-bold);
}
.row-all-in-one .block-text.green-1{
    background-color: #D2DFDC;
    border: none;
}
.row-all-in-one .block-text.green-2{
    background-color: #E2F4E9;
    border: none;
}
.row-all-in-one .block-text.green-3{
    background-color: #68C897;
    border: none;
}
.row-all-in-one .block-text.green-4{
    background-color: var(--color-green);
    border: none;
}
.row-all-in-one .block-text.green-3 p *,
.row-all-in-one .block-text.green-4 p *{
    color: var(--color-white);
}
table.comparison-table{
    border-radius: 10px;
    margin-bottom: 0px;
}
table.comparison-table thead tr th,
table.comparison-table tbody tr td{
    border-top: 1px solid #DADADA;
    width: 25%;
    padding: clamp(10px, 2.2vw, 17px) clamp(12px, 2.6vw, 20px); /* vw divise per 768 */
    color: var(--color-black);
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
}
table.comparison-table thead tr th:nth-child(2),
table.comparison-table tbody tr td:nth-child(2){
    background-color: #E8EEED;
}
table.comparison-table tbody tr td.check,
table.comparison-table tbody tr td.cross{
    position: relative;
    color: var(--color-white);
    z-index: 1;
}
table.comparison-table tbody tr td.check:before,
table.comparison-table tbody tr td.cross:before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    display: block;
    background-color: #68C897;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    z-index: -1;
}
table.comparison-table tbody tr td.cross:before{
    background-color: var(--color-green);
}
table.comparison-table tbody tr td:nth-child(n+2){
    text-align: center;
}
table.comparison-table thead tr th:first-child,
table.comparison-table tbody tr td:first-child{
    border-left: 1px solid #DADADA;
}
table.comparison-table thead tr th:last-child,
table.comparison-table tbody tr td:last-child{
    border-right: 1px solid #DADADA;
}
table.comparison-table tbody tr:last-child td{
    border-bottom: 1px solid #DADADA;
}
table.comparison-table thead tr th:first-child{
    border-radius: 10px 0 0 0;
}
table.comparison-table thead tr th:last-child{
    border-radius: 0 10px 0 0;
} 
table.comparison-table tbody tr:last-child td:first-child{
    border-radius: 0 0 0 10px;
}
table.comparison-table tbody tr:last-child td:last-child{
    border-radius: 0 0 10px 0;
}
.vc_row.faq .accordion.accordion-wo-image .item_accordion{
    padding: var(--padding-vertical-6) 0px;
    border-color: var(--color-black-20);
}
.vc_row.faq .accordion.accordion-wo-image .item_accordion:first-child{
    border-top: 1px solid var(--color-black-20);
}
.vc_row.faq .accordion.accordion-wo-image .item_accordion h3{
    color: var(--color-black-75);
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
    transition: color 300ms ease-in-out;
}
.vc_row.faq .accordion.accordion-wo-image .item_accordion.active h3{
    font-weight: var(--font-bold);
    color: var(--color-black);
    transition: color 300ms ease-in-out;
}
.vc_row.faq .accordion.accordion-wo-image .icon::after{
    content: '';
    display: block;
    width: 11px;
    height: 8px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="11" height="8" viewBox="0 0 11 8" fill="none"><g clip-path="url(%23clip0_1779_3454)"><path opacity="0.9" d="M0.654155 0.695265C0.859695 0.434916 1.19294 0.434917 1.39848 0.695267L5.49998 5.89052L9.60152 0.695261C9.80706 0.434913 10.1403 0.434913 10.3458 0.695264C10.5514 0.955613 10.5514 1.37772 10.3458 1.63807L5.87214 7.30474C5.77343 7.42976 5.63956 7.5 5.49997 7.5C5.36039 7.5 5.22652 7.42976 5.12781 7.30474L0.654153 1.63807C0.448615 1.37772 0.448616 0.955613 0.654155 0.695265Z" fill="%23111111"/></g><defs><clipPath id="clip0_1779_3454"><rect width="11" height="8" fill="white"/></clipPath></defs></svg>');
    background-repeat: no-repeat;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer > section.image-bg{
    display: none !important;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer > section{
    background-color: var(--color-green);
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.claim{
    display: none;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child{
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-3);
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child picture,
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child picture svg{
    display: block;
    width: 140px;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child picture svg{
    width: 100%;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child .custom-title > *{
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child button{
    margin-top: 0px;
    width: fit-content;
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child button:hover{
    background-color: var(--color-light-green);
}
body:has(header.site-header.vector-nuo-header) footer.site-footer div.row.widgets div.col:first-child button:hover a span{
    color: var(--color-black);
}
.row-banner-inline{
    overflow: hidden;
    border-radius: 32px;
}
.row-banner-inline > .wpb_column > .vc_column-inner{
    padding-top: 0px !important;
}
.row-banner-inline > .wpb_column > .vc_column-inner > .wpb_wrapper{
    padding: clamp(24px, 3vw, 48px);
}
.row-banner-inline .vc_row.row-with-button{
    align-items: flex-end;
}
.vc_row[data-vc-full-width].nuo-contact{
    position: relative;
    padding: var(--padding-vertical-1) 0px;
}
.nuo-contact .cf-row{
    display: grid;
    grid-template-columns: 1fr;
}
.nuo-contact .cf-row + .cf-row{
    margin-top: 22px;
}
.nuo-contact .cf-row:has(.cf-column){
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-gap: 20px;
}
.nuo-contact form.wpcf7-form .cf-row input[type="text"],
.nuo-contact form.wpcf7-form .cf-row input[type="email"],
.nuo-contact form.wpcf7-form .cf-row textarea,
.nuo-contact form.wpcf7-form .cf-row select{
    padding: 11px 16px;
    border-radius: 8px;
    background-color: var(--color-white);
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
    color: var(--color-black);
    border: none;
}
.nuo-contact form.wpcf7-form .cf-row select{
    width: 100%;
    background-size: 8px 8px;
    background-position: calc(100% - 8px) center;
}
.nuo-contact form.wpcf7-form .cf-row textarea{
    box-sizing: border-box;
}
.nuo-contact form.wpcf7-form .cf-row input[type="text"]::placeholder,
.nuo-contact form.wpcf7-form .cf-row input[type="email"]::placeholder,
.nuo-contact form.wpcf7-form .cf-row textarea::placeholder{
    font-size: clamp(14px,2vw,16px);
    line-height: 1.5;
    color: var(--color-black-50);
}
.nuo-contact form.wpcf7-form .cf-row .wpcf7-form-control-wrap[data-name="field-note"]{
    display: block;
}
.nuo-contact form.wpcf7-form .cf-row.checkbox + .cf-row.checkbox{
    margin-top: 8px;
}
.nuo-contact .wpcf7 .wpcf7-submit{
    background-color: var(--color-light-green);
    color: var(--color-black);
}
.nuo-contact form.wpcf7-form .cf-row.submit{
    margin-top: 22px;
}
.row-inner-seamless{
    margin-top: var(--padding-vertical-1);
    display: flex;
    align-items: center;
}
.row-inner-seamless > .wpb_column:first-child,
.row-inner-seamless > .wpb_column:last-child{
    display: flex;
    align-items: center;
    gap: clamp(30px,5.45vw,60px);
}
.row-inner-seamless > .wpb_column:last-child{
    justify-content: flex-end;
}
.row-inner-seamless > .wpb_column:first-child > .vc_column-inner,
.row-inner-seamless > .wpb_column:last-child > .vc_column-inner{
    width: fit-content;
}
.row-inner-seamless > .wpb_column:first-child::after,
.row-inner-seamless > .wpb_column:last-child::before{
    content: '';
    display: block;
    width: clamp(34.5px,6.27vw,69px);
    height: clamp(70px, 12.72vw, 140px);
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="69" height="140" viewBox="0 0 69 140" fill="none"><g clip-path="url(%23clip0_1779_3375)"><path d="M69 69.9902L24.2696 139.99H0L43.3269 72.1794C44.1808 70.8447 44.1808 69.1358 43.3269 67.8011L0 -0.00976562H24.2696L69 69.9902Z" fill="url(%23paint0_linear_1779_3375)"/></g><defs><linearGradient id="paint0_linear_1779_3375" x1="69" y1="69.9805" x2="-6.5" y2="69.9805" gradientUnits="userSpaceOnUse"><stop stop-color="%2368C897"/><stop offset="1" stop-color="%2368C897" stop-opacity="0"/></linearGradient><clipPath id="clip0_1779_3375"><rect width="69" height="140" fill="white"/></clipPath></defs></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.row-inner-seamless .block-text{
    width: 185px !important;
    padding: 20px 10px;
    background-color: #F8F9FA;
    border-radius: 8px;
}
.row-inner-seamless .block-text p *{
    color: #646464;
    line-height: 1.666;
    font-size: 12px;
    font-weight: var(--font-bold);
}
.row-inner-seamless .block-text + .block-text{
    margin-top: 17.5px;
}
.row-inner-seamless > .wpb_column:last-child .wpb_wrapper .block-text{
    margin-left: auto;
    background-color: #E2F4E9;
}

/* Careers */
.careers-block .item + .item{
    border-top: var(--color-black-20) 1px solid;
}
.careers-block .item.active + .item{
    margin-top: var(--padding-vertical-2);
}
.careers-block .item,
.careers-block .item header{
    display: flex;
    flex-direction: column;
    gap: var(--padding-vertical-4);
}
.careers-block .item{
    row-gap: 0px;
}
.careers-block .item header{
    position: relative;
    padding:var(--padding-vertical-4) 0px;
    padding-right: clamp(42px, 3.5vw, 56px);
    row-gap: 12px;
    cursor: pointer;
}
.careers-block .item:first-child header{
    padding-top: 0px;
    padding-right: 68px;
}
.careers-block .item header div.button{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0px;
    top:50%;
    transform: translateY(calc(-50% - 16px));
    width: clamp(36px, 3vw, 48px);
    height: clamp(36px, 3vw, 48px);
    border-radius: 8px;
    background: #B6E2FF;
    transition: background-color 300ms ease-in-out;
}
.careers-block .item.active header div.button,
.careers-block .item header:hover div.button{
    background: var(--color-blue-2);
    transition: background-color 300ms ease-in-out;
}
.careers-block .item header div.button svg{
    display: block;
    rotate: -90deg;
    width: clamp( 12px, 1vw, 16px);
}
.careers-block .item.active header div.button svg{
    rotate: 90deg;
}
.careers-block .item header .custom-title > *{
    line-height: 1;
}
.careers-block .item .careers-item-content{
    display: none;
}
.careers-block .item.active .careers-item-content{
    display: flex;
    flex-direction: column;
    padding-top: var(--padding-vertical-5);
    row-gap: var(--padding-vertical-5);
}
.careers-block .item.active .careers-item-content{
    border-top: var(--color-black-20) 1px solid;
}
.careers-block .item .careers-item-content .row{
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 20px;
}
.careers-block .item .careers-item-content .row:has(.field + .field){
    grid-template-columns: repeat(2,minmax(0,1fr));
}
.careers-block .item .careers-item-content .row .field{
    display: flex;
    flex-direction: column;
}
.careers-block .item .careers-item-content .row .field span.field-label{
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black-50);
    line-height: 1.5;
}
.careers-block .item .careers-item-content .row .field div.field-content ul{
    margin-left: 16px;
    margin-bottom: 0px;
}
.careers-block .item .careers-item-content .row .field div.field-content *{
    font-size: clamp(14px,2vw,16px);
    color: var(--color-black);
    line-height: 1.5;
}
.careers-block .item .careers-item-content button{
    width: fit-content;
}
.vectorrenewables-modal.careers{
    display: none;
    background-color: var(--color-black-50);
}
.vectorrenewables-modal.careers.show{
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}
.vectorrenewables-modal.careers .modal-content{
    position: relative;
    width: 100%;
    max-width: none;
    overflow-x: hidden;
    background-color: var(--color-white);
    padding: var(--padding-vertical-2) var(--padding-horizontal);
}
.vectorrenewables-modal.careers .close-modal{
    position: absolute;
    background-color: #E9EBEE;
    width: fit-content;
    height: fit-content;
    right: var(--padding-horizontal);
    top: var( --padding-vertical-4 );
    padding: clamp(7px, 0.8333vw, 10px) clamp(15px, 2vw, 30px);
    border-radius: clamp(9px, 1.2vw, 18px);
    cursor: pointer;
    z-index: 1;
}
.vectorrenewables-modal.careers .close-modal:hover{
    background-color: var(--color-blue-2);
    color: var(--color-white);
}
.vectorrenewables-modal.careers .modal-content .wrapper{
    display: grid;
    grid-template-columns: calc(45% - 40px) 55%;
    grid-gap: clamp(20px, 3.3333vw, 40px);
}
.vectorrenewables-modal.careers .modal-content form.wpcf7-form .cf-row + .cf-row{
    margin-top: 0px;
}
.vectorrenewables-modal.careers .modal-content .wrapper input[type="text"],
.vectorrenewables-modal.careers .modal-content .wrapper input[type="email"],
.vectorrenewables-modal.careers .modal-content .wrapper textarea{
    appearance: none;
    border: none;
    border-radius: unset;
    border-bottom: 0.5px solid var(--color-black);
    padding: 0px 0px 8px 0px;
    margin: 0px;
    font-size: clamp(17px,1.25vw,20px);
    font-weight: var(--font-regular);
    line-height: 1.5;
    color:var(--color-black);
    width: 100%;
}
.vectorrenewables-modal.careers .modal-content .wrapper textarea{
    height: 3lh;
    resize: none;
    box-sizing: content-box; /* importante: vedi nota sotto */
}
.vectorrenewables-modal.careers .modal-content .wrapper input[type="text"]::placeholder,
.vectorrenewables-modal.careers .modal-content .wrapper input[type="email"]::placeholder,
.vectorrenewables-modal.careers .modal-content .wrapper textarea::placeholder{
    font-size: clamp(17px,1.25vw,20px);
    color:var(--color-black-50);
}
.vectorrenewables-modal.careers .modal-content .wrapper .cf-row.file .cf-column > p > span{
    font-size: clamp(17px,1.25vw,20px);
    color:var(--color-black);
}
.vectorrenewables-modal.careers .modal-content .custom-contact-form{
    display: flex;
    flex-direction: column;
    gap: clamp(8px, 1vw, 16px);
}
.vectorrenewables-modal.careers .modal-content .wrapper .col.title h3{
    font-size: clamp(36px, 3vw, 48px);
    color:var(--color-black);
}
@media (max-width:1440px){
    .vc_section.section-content, 
    .single-post .entry-content, 
    .single-project .entry-content, 
    .single-esperienza .entry-content, 
    body.single-project .entry-footer,
    .accordion-scroll.active,
    .vectorrenewables-modal.careers .modal-content{
        padding-left: clamp(24px, 8.3333vw, 64px);
        padding-right: clamp(24px, 8.3333vw, 64px);
    }
    body.home .row-thumbs .vc_column-inner > .wpb_wrapper{
        width: 100vw;
        margin-left: calc(-1 * clamp(24px, 8.3333vw, 64px));
        margin-right: calc(-1 * clamp(24px, 8.3333vw, 64px));
        overflow-x: hidden;
    }
    .vectorrenewables-modal.careers .close-modal,
    body:has(header.site-header.vector-nuo-header) .banner,
    .globe-home .cards{
        right: clamp(24px, 8.3333vw, 64px);
    }
    .hero .content,
    header.site-header{
        left: clamp(24px, 8.3333vw, 64px);
        right: clamp(24px, 8.3333vw, 64px);
    }
    footer.site-footer > section{
        padding-left: clamp(24px, 8.3333vw, 64px);
        padding-right: clamp(24px, 8.3333vw, 64px);
    }
    .hero .content nav ol.breadcrumb li.breadcrumb-item, 
    .hero .content nav ol.breadcrumb li.breadcrumb-item a,
    .hero .content nav ol.breadcrumb li.breadcrumb-item:not(:last-child):after{
        font-size: 12px;
    }
    header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu,
    header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li > ul.sub-menu{
        margin-top: clamp(12px, 1.666vw, 24px);
    }
    header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li, 
    header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li{
        padding: 0px clamp(12px, 1.666vw, 24px);
    }
    .accordion-services .item_accordion.active, 
    .accordion-services .swiper .item_accordion{
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .accordion-services .swiper .item_accordion .block-text{
        max-width: 85%;
        margin-top: 96px;
    }
}
@media (max-width:1350px){
    div.globe > div.row{
        grid-template-columns: calc(42% - var(--padding-vertical-4)) calc(58% - var(--padding-vertical-4));
        grid-gap: var(--padding-vertical-5);
    }
}
@media (max-width:1280px){
    .hero .content{
        flex-direction: column;
        align-items: flex-start;
    }
    .hero .content .wrapper{
        display: flex;
        flex-direction: column-reverse;
        gap: 16px;
    }
    .hero .content h1 + nav{
        margin-top: 0px;
    }
    div.globe > div.row{
        display: flex;
        flex-direction: column-reverse;
        gap: 0px;
    }
    div.globe #data{
        position: relative;
        top:calc(-1 * var(--padding-vertical-1));
        z-index:2;
    }
    div.globe #globe{
        aspect-ratio: 1.6;
        margin-left: calc(-1 * clamp(24px, 8.3333vw, 64px));
        margin-right: calc(-1 * clamp(24px, 8.3333vw, 64px));
    }
    .row-inner-seamless > .wpb_column:first-child,
    .row-inner-seamless > .wpb_column:last-child{
        width: calc(33.333% - 16px);
        gap: 16px;
    }
    .row-inner-seamless > .wpb_column:first-child{
        margin-right: 16px;
    }
    .row-inner-seamless > .wpb_column:last-child{
        margin-left: 16px;
    }
    .globe-home .cards .card{
        width: 150px;
    }
    body.home .globe-home #globehome{
        aspect-ratio: 1.4;
    }
    body.single-project .hero div.wrapper,
    body.single-project .hero div.cards-hero{
        width: 100%
    }
    body.single-project .hero div.wrapper .back-btn{
        order: 3;
    }
    body.single-project .hero .content h1 + nav{
        order: 2;
    }
    body.single-project .hero .content .back-btn + h1{
        order: 1;
        margin-top: 0px;
    }
}
@media (max-width:1200px){
    header.site-header{
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    header.site-header .main-navigation{
        display: none;
    }
    header.site-header .side-navigation{
        margin-left: auto;
    }
    header.site-header button.mobile{
        display: block;
        margin-left: 16px;
    }
    body:has(header.site-header.vector-nuo-header) button.mobile{
        display: none;
    }
    header.site-header .responsive-navigation.show{
        display: block;
    }
    .hero picture img{
        height: 75vh;
    }
    .block-video-youtube .modal-youtube .close{
        top: calc(((100vh - (85.333vw / (1024 / 680) )) / 2) - 30px);
        right: calc((100vw - 85.333vw) / 2);
    }
    .block-video-youtube .modal-youtube .wrapper-frame{
        width: 85.333vw;
        aspect-ratio: 1024 / 680;
        height: auto;
    }
    .block-interactive-column .column .wrapper{
        padding-left: var(--padding-vertical-2);
        padding-right: var(--padding-vertical-2);
    }
    .block-interactive-column .column span.number + h3{
        margin-top: var(--padding-vertical-3);
    }
    .block-interactive-column .column button.bottone-link{
        margin-top: var(--padding-vertical-2);
    }
    .cards-nuo-block{
        grid-template-columns: repeat(2, minmax(0px, 1fr));
    }
    .cards-nuo-block.seamless{
        grid-template-columns: repeat(3, minmax(0px, 1fr));
    }
    div.projects-block div.projects-grid div.card{
        aspect-ratio: 344 / 360;
    }
    div.projects-block div.projects-grid div.card.card-wide{
        aspect-ratio: 705 / 360;
    }
    footer.site-footer > section.image-bg div.custom-title, 
    footer.site-footer > section.image-bg div.block-text{
        max-width: 85%;
    }
}
@media (max-width:1100px){
    div.globe #globe{
        aspect-ratio: 1.3;
    }
    .cards-nuo-block.seamless{
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }
    .cards-nuo-block.seamless .card{
        width: 400px;
        gap: 5px;
    }
    .cards-nuo-block.seamless .card + .card{
        padding-top: 48px;
    }
    .cards-nuo-block.seamless .card:before{
        rotate: 90deg;
        left: 50%;
        transform: translate(-50%, -50%);
        top: 0px;
    }
    .cards-nuo-block.seamless .card picture{
        left: 0px;
        top: 0px;
        transform: translate(0px, 0px);
    }
    .cards-nuo-block.seamless .card + .card picture{
        top: 48px;
    }
    .cards-nuo-block.seamless .card h3, 
    .cards-nuo-block.seamless .card p{
        padding-left: 48px;
    }
    body.home .globe-home #globehome{
        aspect-ratio: 1.2;
    }
}
@media (max-width:1024px){
    .block-flat-map-interactive div.dots div.dot{
        width: 20px;
        height: 20px;
        transform: translate(-10px,-10px);
    }
    .block-flat-map-interactive div.dots div.dot:hover:before,
    .block-flat-map-interactive div.dots div.dot.active:before{
        width: 24.8px;
        height: 24.8px;
        transform: translate(-2.4px,-2.4px) !important;
    }
    .block-flat-map-interactive div.dots div.dot-content{
        translate: -50% calc(-100% - 24px);
    }
    .vc_row.row-with-button{
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .vc_row[data-vc-full-width].bg-nuo .custom-title, 
    .vc_row[data-vc-full-width].bg-nuo .block-text{
        max-width: unset;
    }
    div.projects-block header:has(.col + .col){
        grid-template-columns: 1fr;
    }
    div.projects-block header:has(.col + .col) div.col:last-child{
        justify-self: unset;
    }
    .vc_row[data-vc-full-width].nuo-advantages .custom-title{
        max-width: unset;
    }
    .vc_row[data-vc-full-width].nuo-advantages > .wpb_column{
        padding-left: var(--padding-vertical-3);
    }
    .accordion.accordion-image p{
        margin-right: 32px;
    }
    div.projects-block div.projects-grid{
        grid-template-columns: repeat(4, 1fr);
    }
    footer.site-footer div.row.widgets{
        grid-template-columns: 1fr;
        row-gap: 24px;
    }
    footer.site-footer div.row.widgets > div.col:last-child > .widget{
        padding-right: 8px;
    }
}
@media (max-width:875px){
    .titoletto.margin-top{
        margin-top: 0px;
    }
    .vc_col-sm-4:has(div.titoletto),
    .vc_col-sm-8:has(div.block-text),
    .vc_col-sm-8:has(div.careers-block),
    .vc_col-sm-6{
        width: 100% !important;
    }
    .vc_col-sm-4:has(div.titoletto) + .vc_col-sm-8:has(div.block-text),
    .vc_col-sm-4:has(div.titoletto) + .vc_col-sm-8:has(div.careers-block),
    .vc_col-sm-4:has(div.titoletto) + .vc_col-sm-8:has(.wpcf7),
    .vc_col-sm-6 + .vc_col-sm-6{
        margin-top: 32px;
    }
    .vc_row[data-vc-full-width] .custom-title, 
    .vc_row[data-vc-full-width] .block-text{
        max-width: 89%;
    }
    .vc_row.row-with-button{
        grid-template-columns: 1fr;
        row-gap: 16px;
    }
    .vc_row.row-with-button .wpb_column:last-child .wpb_wrapper button{
        margin-left: 0px;
    }
    .row-with-button > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper{
        justify-content: flex-start;
    }
    .block-values .col.contents div.item h3{
        font-size: clamp(24px, 3vw, 36px);
    }
    .vc_row.row-with-button:has( + .block-flat-map-interactive) .wpb_column:last-child{
        margin-top: 16px;
    }
    .vc_row[data-vc-full-width].bg-nuo{
        display: flex;
        flex-direction: column;
        row-gap: var(--padding-vertical-1);
    }
    .vc_row[data-vc-full-width].bg-nuo:after{
        content: none !important;
    }
    .block-flat-map-interactive{
        top: 0px;
        margin-left: calc(-1 * clamp(32px, 4vw, 64px));
        margin-right: calc(-1 * clamp(32px, 4vw, 64px));
    }
    .accordion-scroll .accordion .item_accordion .wrapper > h3{
        padding-right: clamp(32px, 4vw, 64px);
    }
    .accordion-scroll .accordion .item_accordion .wrapper > h3:before, 
    .accordion-scroll .accordion .item_accordion .wrapper > h3:after{
        height: clamp(12px, 2.74vw , 24px);
        right: calc((clamp(12px, 2.74vw , 24px) / 2 ) - 1px);
    }
    .accordion-scroll .accordion .item_accordion .wrapper > h3:after{
        height: 2px;
        width: clamp(12px, 2.74vw , 24px);
        right: 0px;
    }
    div.globe #globe{
        aspect-ratio: 1.1;
    }
    .cards-nuo-block.numbers-nuo{
        max-width: 100%;
        grid-template-columns: repeat(var(--number), minmax(0px, 1fr));
    }
    .nuo-macbook .vc_column-inner > .wpb_wrapper{
        width: 100%;
    }
    .nuo-macbook .video-embed-wrapper{
        width: 83%;
        top: 5px;
        height: fit-content;
        aspect-ratio: 700 / 460;
    }
    .nuo-macbook .video-embed-wrapper .plyr--video{
        height: 100%;
    }
    .nuo-macbook .plyr__video-wrapper{
        height: 100%;
        margin: 0px;
    }
    .nuo-advantages > .wpb_column:last-child{
        border-left: none;
        border-top:#E8E8E8 1px solid;
    }
    .row-inner-seamless{
        flex-direction: column;
        gap: 16px;
    }
    .row-inner-seamless .wpb_column{
        width: 100% !important;
    }
    .row-inner-seamless > .wpb_column:first-child,
    .row-inner-seamless > .wpb_column:last-child{
        flex-direction: column;
    }
    .row-inner-seamless > .wpb_column:first-child{
        margin-right: 0px;
    }
    .row-inner-seamless > .wpb_column:last-child{
        margin-left: 0px;
    }
    .row-inner-seamless > .wpb_column:first-child::after, 
    .row-inner-seamless > .wpb_column:last-child::before{
        rotate: 90deg;
    }
    .row-inner-seamless .wpb_column:first-child .wpb_wrapper,
    .row-inner-seamless .wpb_column:last-child .wpb_wrapper{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 10px;
    }
    .row-inner-seamless > .wpb_column:last-child .wpb_wrapper .block-text{
        margin-left: unset;
    }
    .row-inner-seamless .block-text + .block-text{
        margin-top: 0px;
    }
    .row-inner-seamless .wpb_single_image{
        display: block;
        text-align: center !important;
    }
    .accordion-services .item_accordion.active, 
    .accordion-services .swiper .item_accordion{
        display: flex;
        flex-direction: column-reverse;
        gap: 32px;
    }
    .accordion-services .swiper .item_accordion{
        padding-bottom: 64px;
    }
    .accordion-services .swiper .item_accordion .block-text{
        max-width: unset;
        margin-top: var(--padding-vertical-2);
    }
    .accordion-services .swiper .item_accordion .image{
        max-width: 500px;
    }
    .accordion-services .navigation{
        top: unset;
        bottom: 0px;
    }
    .hero .content .cards-hero{
        grid-template-columns: repeat(3, 1fr);
        width: calc(100vw - (2 * clamp(24px, 8.3333vw, 64px)) + 32px);
    }
    body.page-template-page-success-stories .hero .content .cards-hero{
        grid-template-columns: repeat(4, 1fr);
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: none;
        scrollbar-width: none;
        width: calc(100vw - (clamp(24px, 8.3333vw, 64px)) + 16px);
    }
    body:has(header.site-header.vector-nuo-header) div.site-branding svg{
        width: 100px;
    }
    body.home .globe-home #globehome{
        aspect-ratio: 1;
    }
    .globe-home .cards{
        position: static;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin-left: clamp(24px, 8.3333vw, 64px);
        margin-right: clamp(24px, 8.3333vw, 64px);
    }
    .globe-home .cards .card{
        width: calc(50% - clamp(12px, 2.6vw, 20px));
    }
    .globe-home header.tabs{
        padding-left: clamp(24px, 8.3333vw, 64px);
        margin-left: 0px;
        margin-right: 0px;
        width: calc(100vw - clamp(24px, 8.3333vw, 64px));
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: none;
        scrollbar-width: none;
        justify-content: flex-start;
    }
    .globe-home header.tabs ul{
        width: max-content;
        margin-right: clamp(24px, 8.3333vw, 64px);
    }
    .globe-home header.tabs ul li{
        flex-shrink: 0;
    }
    .globe-home header.tabs ul li a{
        white-space: nowrap;
    }
    body.single-project .entry-content .row{
        display: flex;
        flex-direction: column;
        gap: var(--padding-vertical-3);
    }
    body.single-project .entry-content .col.quick-info{
        position: static;
        gap: var(--padding-vertical-4);
    }
    footer.site-footer > section.image-bg div.custom-title, 
    footer.site-footer > section.image-bg div.block-text{
        max-width: 90%;
    }
}
@media (max-width:800px){
    .row-all-in-one > .wpb_column{
        width: 100%;
    }
    .row-all-in-one .block-text{
        margin:0px 0px;
    }
    .row-all-in-one > .wpb_column + .wpb_column{
        margin-top: clamp(10px, 1.25vw, 20px) !important;
    }
    .row-all-in-one > .wpb_column.vc_col-sm-3:has(+ .vc_col-sm-9){
        display: none;
    }
}
@media (max-width:768px){
    .block-interactive-column .column .wrapper{
        padding: var(--padding-vertical-2) clamp(24px, 8.3333vw, 64px);
    }
    div.globe #globe{
        aspect-ratio: 1;
    }
    div.globe #data{
        top: calc(-2 * var(--padding-vertical-1));
    }
    div.globe #data .wrapper table + table{
        margin-top: var(--padding-vertical-3);
    }
    div.globe header.tabs{
        margin-right: calc(-1 * clamp(24px, 8.3333vw, 64px));
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: none;
        scrollbar-width: none;
        flex: 1;
        min-width: 0;
    }
    div.globe header.tabs ul{
        width: max-content;
        margin-right: clamp(24px, 8.3333vw, 64px);
    }
    .careers-block .item header .custom-title.size-fourth *,
    .vectorrenewables-modal.careers .modal-content .wrapper .col.title h3{
        font-size: clamp(28px, 2.25vw, 36px);
    }
    .cards-nuo-block{
        grid-template-columns: 1fr;
    }
    .accordion.accordion-image .item_accordion.active .wrapper{
        width: 50%;
    }
    .vectorrenewables-modal.careers.show{
        overflow-y: auto;
        display: block;
    }
    .vectorrenewables-modal.careers .modal-content{
        position:absolute;
        top: 30%;
        left: 0px;
        width: 100%;
    }
    div.projects-block div.projects-grid{
        grid-template-columns: 1fr;
    }
    div.projects-block div.projects-grid div.card,
    div.projects-block div.projects-grid div.card.card-wide,
    div.projects-block div.projects-grid div.card.card-tall{
        grid-column: span 1;
        aspect-ratio: 1;
    }

}
@media (max-width:750px){
    header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu{
        grid-template-columns: 1fr;
        row-gap: 12px;
    }
    header.site-header.vector-default-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li, 
    header.site-header.vector-nuo-header ul.menu > li > div.sub-menu-wrap > ul.sub-menu > li{
        padding: 0px;
        border: none !important;
    }
    .accordion-scroll.active header{
        grid-template-columns: 1fr 4fr;
    }
    .accordion-scroll .accordion, 
    .accordion-scroll .content-html{
        margin-left: 20%;
    }
    .vectorrenewables-modal.careers .modal-content .wrapper{
        grid-template-columns: 1fr;
    }
}
@media (max-width:678px){
    div.globe #globe{
        aspect-ratio: 0.8;
    }
    .accordion.accordion-image .item_accordion{
        flex-direction: column-reverse;
    }
    .accordion.accordion-image .item_accordion.active .image{
        position: static;
    }
    .accordion.accordion-image .item_accordion.active .image,
    .accordion.accordion-image .item_accordion.active .wrapper{
        width: 100%;
    }
    .accordion.accordion-image .item_accordion{
        gap: 8px;
    }
    .block-loghi picture{
        max-width: 100px;
    }
    footer.site-footer div.row.widgets > div.col:last-child{
        grid-template-columns: 1fr;
    }
    footer.site-footer div.row.widgets > div.col:last-child > .widget{
        padding-right: 0px;
    }
    footer.site-footer div.row.widgets .widget > .custom-title{
        position: relative;
        cursor: pointer;
    }
    footer.site-footer div.row.widgets .widget > .custom-title h3{
        transition: color 150ms ease-in-out;
    }
    footer.site-footer div.row.widgets .widget > .custom-title:hover h3{
        color: var(--color-white-75);
        transition: color 150ms ease-in-out;
    }
    footer.site-footer div.row.widgets .widget > .custom-title + div{
        display: none;
    }
    footer.site-footer div.row.widgets .widget > .custom-title.show + div{
        display: block;
        margin-bottom: 16px;
    }
    footer.site-footer div.row.widgets .widget > .custom-title:before,
    footer.site-footer div.row.widgets .widget > .custom-title:after{
        content: "";
        position: absolute;
        display: block;
        width: 11px;
        height: 1px;
        background-color: var(--color-white);
        right: 0px;
        top: 50%;
        transform: translateY(-50%);
    }
    footer.site-footer div.row.widgets .widget > .custom-title:after{
        height: 11px;
        width: 1px;
        transform: translate(-5px,-50%);
    }
    footer.site-footer div.row.widgets .widget > .custom-title.show:after{
        content: none;
    }
    footer.site-footer #sib-form{
        max-width: unset;
    }
}
@media (max-width:600px){
    header.site-header button.mobile span.line + span.line{
        margin-top: 4px;
    }
    header.site-header button.mobile{
        margin-left: auto;
    }
    header.site-header > .side-navigation{
        display: none;
    }
    body:has(header.site-header.vector-nuo-header) header.site-header > .side-navigation{
        display: block;
    }
    header.site-header .responsive-navigation .side-mobile-navigation{
        display: block;
    }
    .hero .content{
        bottom:36px;
    }
    .hero .content .cards-hero{
        margin-left: -16px;
        margin-right: -16px;
    }
    .hero .content .cards-hero .card div.down p{
        font-size: 12px;
    }
    div.globe #globe{
        aspect-ratio: 0.5;
    }
     div.globe #data{
        top: calc(-3 * var(--padding-vertical-1));
    }
    .vc_row[data-vc-full-width] .custom-title, 
    .vc_row[data-vc-full-width] .block-text{
        max-width: 100%;
    }
    .block-values .contents p{
        font-size: 13px;
    }
    body:has(header.site-header.vector-nuo-header) .banner{
        flex-direction: column;
        gap: 8px;
        left: clamp(24px, 8.3333vw, 64px);
    }
    body:has(header.site-header.vector-nuo-header) .banner > a{
        width: 100%;
        justify-content: center;
    }
    body:has(header.site-header.vector-nuo-header) .banner{
        text-align: center;
    }
    button.bottone-link.margin-padding-vertical-5{
        margin-top: 16px;
    }
    body:has(header.site-header.vector-nuo-header) button.bottone-link.margin-padding-vertical-5 + button.bottone-link.margin-padding-vertical-5{
        margin-top: 8px;
        margin-left: 0px;
    }
    .cards-nuo-block.seamless .card{
        width: 100%;
    }
    header.site-header.vector-nuo-header .side-navigation ul li a{
        font-size: 13px;
        padding: 10px;
    }
    table.comparison-table{
        margin-left: -16px;
        margin-right: -16px;
        width: calc(100% + 32px);
    }
    table.comparison-table tbody tr td.check:before, 
    table.comparison-table tbody tr td.cross:before{
        width: 20px;
        height: 20px;
    }
    footer.site-footer div.copyright{
        flex-direction: column;
        gap: 0px;
    }
}
@media (min-aspect-ratio: 2048/850){
    .vectorrenewables-modal.careers.show{
        overflow-y: auto;
        display: block;
    }
    .vectorrenewables-modal.careers .modal-content{
        position:absolute;
        top: 30%;
        left: 0px;
        width: 100%;
    }
}