@font-face {
    font-family: 'Druk Wide';
    src: url('./fonts/DrukWide-Medium-Web.woff2') format('woff2'),
        url('./fonts/DrukWide-Medium-Web.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root{
    --font-text-medium: normal 500 16px "neue-haas-unica", sans-serif;
    --font-text-bold: normal 700 16px "neue-haas-unica", sans-serif;
    --font-title-bold: normal 400 16px 'Druk Wide', sans-serif;
    --padding-content:calc((100vw - 1900px) / 2);
    --margin-row: clamp(80px, 8.75vw, 120px);
    --color-white:#FFFFFF;
    --color-blue:#0857C3;
    --color-black: #262728;
    --color-gray:  rgba(180, 181, 180, 1);
    --color-light-gray: rgba(247, 245, 245, 1);
}
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font: var(--font-text-medium);
    margin: 0px;
    text-decoration: none;
    outline: none !important;
    color: var(--color-blue);
    box-sizing: border-box;
}
*:focus{
    outline: none;
}
html{
	scroll-behavior: smooth;
}
.otgs-development-site-front-end{
    display: none !important;
}
#iubenda-cs-banner [class*=" iub"] strong,
#iubenda-cs-banner [class^=iub] strong{
    font-family: -apple-system, sans-serif !important;
    font-size: 100% !important;
    color: white;
}
html.hidden, 
html.hidden body{
	overflow: hidden;
}
.split-chars,
.configura-parapetto,
.split-chars div,
.site-footer h3 div{
   overflow: hidden;
   height: fit-content;
}
.split-chars h1,
.split-chars h2,
.split-chars h3,
.split-chars h4,
.split-chars h5,
.split-chars h6,
.split-chars h1 > div,
.split-chars h2 > div,
.split-chars h3 > div,
.split-chars h4 > div,
.split-chars h5 > div,
.split-chars h6 > div,
.configura-parapetto h3,
.configura-parapetto h3 > div{
    line-height: 0;
}
.split-chars .split-space {
  width: 0.5em;
}
.entry-content, .wpb_content_element{
    margin: 0px !important;
}
body{
	position: relative;
	overflow-x: hidden;
	margin: 0px !important;
    background-color: var(--color-blue);
}
body div.site{
    background-color: var(--color-white);
}
body.page-id-39,
body.page-id-487{
    background-color: rgba(237, 249, 255, 1);
}
body.page-id-39 div.site,
body.page-id-487 div.site{
    background-color: var(--color-blue);
}
.vc_column_container > .vc_column-inner {
    padding: 0px !important;
}
.vc_row:after, 
.vc_row:before,
.vc_column-inner::after,
.vc_column-inner::before{
    display: none !important;
}
.vc_row .wpb_column{
    float:none;
}
.pin-spacer .vc_row.full-width{
    width: 100vw;
    margin-left: 0px !important;
    margin-right: 0px !important;
}
.vc_row.full-width{
	margin-left: calc(-1 * var(--padding-content)) !important;
    margin-right: calc(-1 * var(--padding-content)) !important;
}
.vc_row.full-width.with-padding{
	padding-left: var(--padding-content) !important;
    padding-right: var(--padding-content) !important;
}
.vc_row.no-padding-right{
    margin-left: calc(-1 * var(--padding-content)) !important;
    margin-right: calc(-1 * var(--padding-content)) !important;
    padding-left: var(--padding-content) !important;
}
.row-mid-background-grey{
    margin-top: 0px !important;
    background: linear-gradient(180deg, rgba(180, 181, 180, 1) 50%, rgba(255, 255, 255, 1) 50%);
}
.page-id-39,
.page-id-487{
    background-color: var(--color-blue);
}
.light-grey{
    background-color: var(--color-light-gray);
    margin-top: 0px !important;
    padding-top: var(--margin-row);
    padding-bottom: var(--margin-row);
}
.light-grey + div{
    margin-top: 0px !important;
}
.light-grey + div.row-sostenibilita{
    margin-top: var(--margin-row) !important;
}
.row-mid-background-light-grey{
    margin-bottom: 0px !important;
    background: linear-gradient(180deg, var(--color-light-gray) 50%, rgba(255, 255, 255, 1) 50%);
}
.vc_row.row-qualita .row-inner{
    margin-top: 0px !important;
    display: flex;
    flex-direction: row;
    position: relative;
    background: var(--color-blue);
}
.row-qualita .row-inner .bottone-link:hover a span{
    color: var(--color-black);
}
.row-qualita .row-inner .bottone-link:hover a span::after{
    background: url(./images/arrow-black.svg) no-repeat center center;
    background-size: contain;
}
footer.site-footer{
    padding-bottom: 40px;
}
footer.site-footer .site-info > div{
    padding-left: var(--padding-content);
    padding-right: var(--padding-content);
}
section.vc_section,
.vc_row.wpb_row,
.widget,
p{
    margin: 0px;
}
section.vc_section{
	padding:0px;
}
section.vc_section.content-section{
	padding-top: 0px;
	padding-left: var(--padding-content);
    padding-right: var(--padding-content);
	padding-bottom: 0px;
}
section.vc_section.content-section > .vc_row:first-child, 
section.vc_section.content-section .vc_row + .vc_row{
    margin-top: var(--margin-row);
}
body.page-id-39 section.vc_section.content-section > .vc_row:first-child,
body.page-id-487 section.vc_section.content-section > .vc_row:first-child{
    margin-top:0px !important;
    padding-top: var(--margin-row);
}
section.vc_section.content-section .vc_row.no-margin-top{
    margin-top:0px !important;
}
section.vc_section.content-section > .vc_row:last-child{
    margin-bottom: var(--margin-row);
}
body.home section.vc_section.content-section > .vc_row:last-child{
    margin-bottom: 0px;
}
.post, .page{
    margin: 0px;
    padding: 0px;
}

/* Top bar */
header.topbar{
    background-color: var(--color-blue);
    opacity: 1;
    transition: opacity 300ms ease-in-out;
}
header.topbar.hide{
    opacity: 0;
    transition: opacity 300ms ease-in-out;
}
header.topbar p{
    font: var(--font-text-medium);
    font-size: clamp(15px, 0.9375vw, 18px);
    color: var(--color-white);
    line-height: 1;
    padding: 16px 0px;
    text-align: center;
}

/* Site header */
header.site-header{
    display: flex;
    justify-content: space-between;
    padding-left: calc(var(--padding-content) / 2);
    padding-right: calc(var(--padding-content) / 2);
    position: absolute;
    z-index: 9;
    margin-top: 40px;
    width: -webkit-fill-available;
    align-items: center;
}
header.site-header svg{
    display: block;
    height: clamp(44px, 4.86vw, 84px);
}
header.site-header .main-navigation{
    width: fit-content;
}
header .main-navigation ul.menu li a,
header .menu-lingua-container li a span,
.menu-mobile .main-navigation ul.menu li a{
    font: var(--font-text-medium);
    font-size: 18px;
    color: var(--color-white);
    line-height: 1.67;
    padding: 8px 16px;
    letter-spacing: 0.025em;
}
header .main-navigation ul.menu li a,
header .menu-lingua-container li a span{
    font-size: clamp(16px, 1.111vw, 20px);
    padding: clamp(4px, 0.4166vw, 8px) clamp(8px, 0.8333vw, 16px);
}
.menu-mobile .main-navigation ul.menu{
    align-items: center;
}
.menu-mobile.show{
    overflow: scroll;
}
.menu-mobile::-webkit-scrollbar{
    display: none;
}
.menu-mobile .main-navigation ul.menu li a{
    font-size: 32px;
    padding-top: 0px;
    padding-bottom: 0px;
    line-height: 1.1;
}
header .menu-lingua-container ul li ul{
    display: none;
}
header .menu-lingua-container ul li.menu-item-has-children{
    position: relative;
    display: flex;
    align-items: center;
}
header .menu-lingua-container ul li.menu-item-has-children::after{
    content: "\f0d7";
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    color: var(--color-white);
    height: 16px;
    width: auto;
    rotate: 0deg;
    transition: all ease-in-out 0.003ms;
}
header .menu-lingua-container ul li.menu-item-has-children:hover::after, .menu-mobile .menu-lingua-container ul li.menu-item-has-children:hover::after{
    rotate: 180deg;
    transition: all ease-in-out 0.003ms;
}
header .menu-lingua-container ul li.menu-item-has-children:hover ul{
    display: block;
    position: absolute;
    bottom: -100%;
}
.hero-slider.home{
    position: relative;
}
.hero-section .title-row{
    position: absolute;
    z-index: 9;
    bottom: 80px;
    left: clamp(30px, 5.8vw, 100px);
    right: clamp(30px, 5.8vw, 100px);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.hero-section .title-row .col:first-child{
    width: calc(100% - 600px);
}
.hero-section .title-row .col:last-child{
    width: 600px;
}
.hero-section .gallery-row picture{
    display: block;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}
.hero-section .gallery-row img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-section .title-row h1, 
.hero-section .title-row h1 *{
    font: var(--font-title-bold);
    font-size: clamp(38px, 5.557vw, 96px);
    color: var(--color-white);
    line-height: 1;
    margin: 0;
    letter-spacing: 0em;
}
.hero-section .title-row h2{
    margin: 0;
    margin-top: 24px;
}
.hero-section .title-row h2,
.hero-section .title-row h2 *{
    font: var(--font-text-medium);
    font-size: clamp(32px, 2.778vw, 48px);
    color: var(--color-white);
    line-height: 1.2;
    letter-spacing: 0.005em;
}
.hero-section .title-row h2 > div,
.hero-section .title-row h1 > div{
    line-height: 0;
    overflow: hidden;
}
.hero-section .title-row h1 *,
.hero-section .title-row h2 *{
    line-height: 1.2;
}
.hero-section .title-row a,
.box .bottone-link a span,
.page-id-39 .send button,
.page-id-487 .send button{
    font: var(--font-title-bold);
    font-size: clamp(16px, 0.925vw, 16px);
    color: var(--color-white);
    line-height: 1.67;
    padding: clamp(20px, 1.62vw, 28px);
    letter-spacing: 0.025em;
    display: block;
    margin-top: clamp(24px, 1.7777vw, 32px);
    background: var(--color-blue);
    border-radius: 21px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 96px;
}
.page-id-39 .send button:hover,
.page-id-487 .send button:hover{
    color: var(--color-black);
}
.page-id-39 .send button:hover::after,
.page-id-487 .send button:hover::after{
    background: url('./images/arrow-black.svg') no-repeat center center;
    background-size: contain;
}
.hero-section .title-row a{
    margin-top: 0px;
    width: fit-content;
    margin-left: auto;
}
.hero-section .title-row a span{
    display: block;
    width: calc(100% - 42px - 96px);
    font: var(--font-title-bold);
    font-size: 16px;
    color: var(--color-white);
    line-height: 1.67;
    letter-spacing: 0.025em;
}
.page-id-39 .send button,
.page-id-487 .send button{
    padding: 0px;
    border: 0px;
    gap: 48px;
}
.box .bottone-link a span{
    width: auto;
    justify-content: space-between;
    gap:0px;
}
.row-qualita .bottone-link a span,
.applicazioni .bottone-link a span,
.row-double-img  .bottone-link a span{
    font: var(--font-title-bold);
    font-size: 16px;
    color: var(--color-white);
    line-height: 1.67;
    letter-spacing: 0.025em;
    margin-top: 24px;
    display: flex;
    flex-direction: row;
    gap: 48px;
    align-items: center;
}
.row-double-img  .bottone-link a span{
    color: var(--color-blue);
}
.row-qualita .bottone-link a span::after,
.applicazioni .bottone-link a span::after,
.row-double-img  .bottone-link a span::after,
.page-id-39 .send button::after,
.page-id-487 .send button::after{
    content: '';
    display: block;
    background: url('./images/arrow.svg') no-repeat center center;
    width: 42px;
    height: 11px;
}
.applicazioni .bottone-link a span{
    color: var(--color-blue);
    margin-top: 0px;
    padding: clamp(30px, 2.6vw, 45px) 0px;
}
.row-double-img  .bottone-link a span::after,
.applicazioni .bottone-link a span::after{
    background: url('./images/arrow-blue.svg') no-repeat center center;
}
.hero-section .title-row a::after,
.box .bottone-link a span::after,
.box:hover .bottone-link:hover a span::after{
    content: '';
    display: inline-block;
    background: url('./images/arrow.svg') no-repeat center center;
    width: 42px;
    height: 11px;
    background-size: contain;
}
.box:hover .bottone-link a span::after{
    background: url('./images/arrow-blue.svg') no-repeat center center;
}
.content-section .block-text.style-featured p,
.content-section .block-text.style-featured p *{
    font: var(--font-text-medium);
    color: var(--color-black);
    line-height: 1.2 !important;
    font-size: clamp(32px, 3.24vw, 56px);
    letter-spacing: -0.004em;
}
.content-section .block-text.style-featured p strong,
.content-section .block-text.style-featured p strong *{
    font: inherit;
    font-size: inherit;
    color: var(--color-blue);
}
.content-section .block-text.style-featured.animation-opacity-scroll p,
.content-section .block-text.style-featured.animation-opacity-scroll p strong{
    line-height: 0;
}
.etichetta span{
    font: var(--font-title-bold);
    line-height: 1;
    font-size: clamp(14px, 1.04vw, 18px);
    letter-spacing: 0em;
    text-transform: lowercase;
}
.etichetta.blue-style{
    border-bottom: 3px solid var(--color-blue);
    padding-bottom: 8px;
}
.content-section .etichetta + .block-text.style-featured{
    margin-top: clamp(32px, 2.778vw, 48px);
}
.content-section .etichetta.white-style span{
    color: var(--color-white);
}
.content-section .etichetta.white-style{
    border-bottom: 3px solid var(--color-white);
}
.content-section h2,
.content-section h2 *, 
footer h2 a span, 
footer h2 a span *{
    font: var(--font-title-bold);
    font-size: clamp(32px, 3.24vw, 56px);
    color: var(--color-black) !important;
    line-height: 1;
    margin: 0;
    letter-spacing: 0em;
}
.content-section h2 *{
    line-height: 1.2;
    font-size: clamp(26px, 3.24vw, 56px);
}
footer h2 a span, footer h2 a span *{
    font-size: clamp(44px, 3.24vw, 56px) !important;
}
footer h2 a span > div{
    line-height: 0;
}
footer h2 a span *{
    line-height: 1.2;
}
.page-id-39 h2,
.page-id-39 h2 *,
.page-id-487 h2,
.page-id-487 h2 *{
    color: var(--color-white) !important;
    font-size: clamp(26px, 1.7777vw, 32px);
    line-height: 1.2;
}
.page-id-487 #scrivici h2,
.page-id-487 #scrivici h2{
    line-height: 0;
}
.page-id-39 #scrivici h2,
.page-id-39 #scrivici h2 *,
.page-id-487 #scrivici h2,
.page-id-487 #scrivici h2 *{
    font-size: 32px !important;
    line-height: 1.2;
}
.page-id-39 h2 > div,
.page-id-487 h2 > divs{
    line-height: 0;
}
.content-section .etichetta + .custom-title{
    margin-top: clamp(24px, 3.35vw, 58px);
}
footer.site-footer{
    background-color: var(--color-blue);
}
footer.site-footer .upper-footer{
    background-color: var(--color-white);
    padding-top: clamp(40px, 8.75vw, 120px);
    padding-bottom: clamp(40px, 8.75vw, 120px);
}
footer.site-footer .upper-footer .linked a{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
footer.site-footer .upper-footer .linked a:hover{
    text-decoration: none;
}
footer.site-footer .upper-footer .linked a::after{
    content: '';
    display: inline-block;
    background: url('./images/arrow-black.svg') no-repeat center center;
    width: clamp(42px, 10.76vw, 186px);
    background-size: contain;
    height: clamp(11px, 2.6vw, 45px);
}
footer.site-footer .upper-footer .linked h2 a:hover span{
    color: var(--color-blue) !important;
}
footer.site-footer .upper-footer .linked a:hover::after{
    background: url('./images/arrow-black-hover.svg') no-repeat center center;
}
footer.site-footer .footer-top,
footer.site-footer .footer-top .col-center{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}
footer.site-footer .footer-top{
    padding-top: calc(var(--margin-row) / 2);
}
footer.site-footer .footer-top .col-center{
    gap: 72px;
}
footer .col-logo svg,
.menu-mobile .site-branding svg{
    height: clamp(54px, 4.86vw, 84px);
}
footer .col-logo path, .menu-mobile .site-branding svg path{
    fill: var(--color-white) !important;
}
footer.site-footer h3, footer.site-footer p, footer.site-footer span, footer.site-footer a{
    color: var(--color-white);
}
footer.site-footer a{
    font-size: 18px;
}
footer.site-footer .footer-bottom a, footer.site-footer .footer-bottom p{
    font-size: clamp(14px,0.926vw, 16px);
}
/* footer a:hover,
footer li.current-menu-item a,
header .main-navigation ul.menu li:hover a,
header .main-navigation ul.menu li.current-menu-item a{
    text-decoration: underline;
    text-underline-offset: 6px;
} */
footer ul.menu:hover li a, footer ul.menu:has(li.current_page_item) li a, header .main-navigation ul.menu:hover li a, header .main-navigation ul.menu:has(li.current_page_item) li a, .menu-mobile .main-navigation ul.menu:has(li.current_page_item) li a{
    opacity: 0.8;
}
footer ul.menu:hover li:hover a, footer ul.menu li.current_page_item a, header .main-navigation ul.menu:hover li:hover a,  .menu-mobile .main-navigation ul.menu:hover li:hover a, header .main-navigation ul.menu li.current_page_item a, .menu-mobile .main-navigation ul.menu li.current_page_item a{
    opacity: 1 !important;
}
header .navigation-group{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: clamp(16px, 1.6666vw, 32px);
}
header .lang-navigation ul{
    margin: 0px;
    padding: 0px;
    list-style: none;
    display: flex;
    flex-direction: row;
}
header .main-navigation ul.menu li.current-menu-item a
footer .col-cta a:hover{
    text-decoration: none;
    background: var(--color-black);
    color: var(--color-white);
}
footer .col-cta a:hover span{
    color: var(--color-white);
}
.site-footer ul{
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    /* margin-top: 24px; */
}
.site-footer h3,
.site-footer h3 *{
    font: var(--font-title-bold);
    font-size: clamp(24px, 1.7777vw, 32px);
    line-height: 1;
    margin: 0;
    letter-spacing: 0.005em;
    color: var(--color-white);
}
.site-footer h3{
    margin-bottom: clamp(16px, 1.38vw, 24px);
}
.site-footer h3 > div{
    line-height: 0;
}
.site-footer .chiamaci a{
    background-color: var(--color-white);
    padding: clamp(16px, 1.55555vw, 28px);
    border-radius: 16px;
}
.site-footer .chiamaci a:hover{
    background-color: var(--color-black);
    color: var(--color-white);
    text-decoration: none;
}
.site-footer .chiamaci a:hover span{
    color: var(--color-white);
}
.site-footer .chiamaci span, 
.site-footer .chiamaci a{
    font: var(--font-title-bold);
    font-size: clamp(14px, 1.04vw, 18px);
    color: var(--color-blue);
    line-height: 1.67;
    margin: 0;
    display: inline-block;
}
.site-footer .footer-bottom{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: clamp(40px, 9.26vw, 160px);
}
.site-footer .copyright{
    display: flex;
    align-items: center;
}
.site-footer .copyright .menu-footer-policy-container ul,
.site-footer .copyright .menu-footer-policy-en-container ul{
    display: flex;
    margin: 0px;
    list-style: none;
    flex-direction: row;
    margin-left: 1em;
}
footer.site-footer .footer-bottom .menu-footer-policy-container a::before,
footer.site-footer .footer-bottom .menu-footer-policy-en-container a::before{
    content: '|';
    display: inline-block;
    margin-right: 1em;
    color: var(--color-white);
}
footer.site-footer .footer-bottom .menu-footer-policy-container li:last-child a::after,
footer.site-footer .footer-bottom .menu-footer-policy-en-container li:last-child a::after{
    content: '';
}
footer .col-contatti p:first-child{
    margin-bottom: 16px;
}
footer .col-contatti p{
    line-height: 1.2;
    font-size: 18px;
    letter-spacing: 0.005em;
}
.boxes-profiles{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.boxes-profiles .box{
    width: calc(50% - 10px);
    height: auto;
    aspect-ratio: calc(85/83);
    background-size: cover;
    background-position: center;
    position: relative;
    text-align: center;
}
.boxes-profiles .box::after{
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    transition: background-color 300ms ease-in-out;
}
.boxes-profiles .box .content{
    padding: 32px 0px 0px;
    position: relative;
    z-index: 9;
    max-width: 420px;
    width: 100%;
    margin:auto;
}
.box .box-top h3 > div, 
.blue-bg.row-inner h3{
    margin-bottom:  clamp(24px, 1.7777vw, 32px);
    margin: 0;
}
.box .box-top h3, 
.box .box-top h3 *, 
.blue-bg.row-inner h3, 
.blue-bg.row-inner h3 *{
    font: var(--font-text-medium);
    font-size: clamp(32px, 2.778vw, 48px);
    line-height: 1.2;
    letter-spacing: 0.005em;
    color: var(--color-blue);
}
.box .box-top h3,
.box .box-top h3 > div{
    line-height: 0;
}
.blue-bg.row-inner h3{
    margin-bottom: clamp(56px, 6.94vw, 120px);
    text-align: center;
    line-height: 0;
}
.blue-bg.row-inner h3 *{
    font-size: clamp(32px, 3.24vw, 56px);
    text-align: center;
}
.box:hover .box-top h3 *, 
.blue-bg.row-inner h3 *{
    color: var(--color-white);
}
.box:hover .bottone-link a span{
    background: var(--color-white);
    color: var(--color-blue);
}
.hero-section .title-row a:hover,
.box:hover .bottone-link:hover a span{
    background: var(--color-black);
    color: var(--color-white);
}
.box .box-bottom{
    display: none;
}
.box:hover .box-bottom{
    display: block;
    margin-top: clamp(20px, 7.4vw, 128px);
}
.box:hover .box-bottom ul,
.row-qualita .col-text ul,
.blue-bg.row-inner ul{
    list-style: none;
    padding: 0px;
    margin: 0px;
    display: flex;
    flex-direction: column;
    text-align: left;
}
.blue-bg.row-inner ul{
    gap: 20px;
}
.box .box-bottom p,
.box .box-bottom ul li,
.blue-bg.row-inner p,
.blue-bg.row-inner ul li,
.row-materiali .row-list .block-text p{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: 16px;
    line-height: 1;
    text-box: trim-both cap alphabetic;
    letter-spacing: 0.005em;
    display: block;
}
.blue-bg.row-inner ul li{
    line-height: 1.1;
}
.row-materiali .row-list .block-text p{
    font: var(--font-text-medium);
    font-size: clamp(16px, 1.05vw, 18px);
    color: var(--color-black);
}
.row-materiali .row-list .block-text p strong{
    font: var(--font-text-bold);
    /* font-size: 18px; */
    font-size: clamp(16px, 1.05vw, 18px);
    color: inherit;
}
.box .box-bottom p,
.blue-bg.row-inner ul li, 
.row-qualita .col-text ul li, 
.box:hover .box-bottom ul li{
    position: relative;
    font-size: clamp(16px, 1.38vw, 24px);
    padding-left: 26px;
}
.box .box-bottom p{
    padding-left: 0px;
    text-align: left;
}
.blue-bg.row-inner ul li + li, 
.row-qualita .col-text ul li + li, 
.box:hover .box-bottom ul li + li{
    margin-top: clamp(10px, 1.04vw, 20px);
}
.box:hover .box-bottom ul li::before,
.row-qualita .col-text ul li::before,
.blue-bg.row-inner ul li::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 0px;
    display: block;
    width: clamp(10px, 0.7vw, 12px);
    height: clamp(10px, 0.7vw, 12px);
    border: 2px solid var(--color-white);
    transform: translate(0px, -50%);
}
.boxes-profiles .box:hover::after{
    background-color: var(--color-blue);
    transition: background-color 300ms ease-in-out;
}
.row-qualita .col-img{
    width: calc((100% - var(--padding-content) )/ 2);
}
.row-qualita .col-img::after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    position: absolute;
    mix-blend-mode: multiply;
    top: 0px;
    left: 0px;
}
.row-qualita .col-img > div{
    aspect-ratio: 725/744;
    background-repeat: no-repeat;
    background-size: cover;
}
.row-qualita .etichetta{
    position: absolute;
    top: 40px;
    width: -webkit-fill-available;
    z-index: 9;
    right: 185px;
    padding-bottom: 8px;
    left: 60px;
}
.row-qualita h2,
.row-qualita h2 *{
    color: var(--color-white) !important;
}
.row-qualita h2 *{
    line-height: 1.2;
}
.row-qualita .center-abs{
    position: absolute;
    bottom: clamp(30px, 2.7vw, 48px);
    left: calc((100% - var(--padding-content) )/ 2);
    transform: translate(-50%, -50%);
    text-align: center;
}
.row-qualita .center-abs.left-centered{
    text-align: left;
}
.row-qualita .col-text{
    padding: 140px 0px 0px 146px;
}
.row-qualita .col-text ul{
    gap: 16px;
}
.row-qualita .wpb_single_image,
.row-qualita .wpb_single_image img{
    display: block;
    width: 100%;
}
.row-qualita .wpb_single_image img{
    height: 100%;
    object-fit: cover;
}
.row-qualita p,
.row-qualita .col-text ul li,
.row-double-img .col-text p{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: clamp(18px, 1.225vw, 21px);
    line-height: 1.2;
    letter-spacing: 0.005em;
}
.row-double-img .col-text p{
    color: var(--color-black);
    margin-top: clamp(18px, 1.73vw, 30px);
}
.row-qualita .col-text ul li{
    font-size: clamp(16px, 1.38vw, 24px);
}
.row-applicazioni{
    background-color: var(--color-gray);
    padding-bottom: var(--margin-row);
}
.applicazioni h2{
    color: var(--color-white) !important;
}
.applicazioni-block{
    position: relative;
}
.applicazioni-block .swiper.applicazioni div.swiper-wrapper,
.applicazioni-block .swiper.applicazioni div.swiper-slide{
    background-color: var(--color-gray);
}
.applicazioni-block .swiper.applicazioni div.swiper-slide{
    opacity: 0 !important;
}
.applicazioni-block .swiper.applicazioni div.swiper-slide.swiper-slide-active{
    opacity: 1 !important;
}
.applicazioni-block .swiper-navigation > div{
    position: static !important;
    margin-top: 0px;
    width: clamp( 32px, 3.3333vw, 64px);
    height: clamp( 32px, 3.3333vw, 64px);
    border: var(--color-blue) 1px solid;
    border-radius: 50%;
    opacity: 0.4;
    transition: opacity 300ms ease-in-out;
}
.applicazioni-block .swiper-navigation > div:hover{
    opacity: 1;
    transition: opacity 300ms ease-in-out;
}
.applicazioni-block .swiper-navigation .swiper-button-prev:before,
.applicazioni-block .swiper-navigation .swiper-button-next:before{
    content: '\f053';
    font: var(--fa-font-solid);
    font-size: clamp( 9px, 0.9375vw, 18px);
    color: var(--color-blue);
}
.applicazioni-block .swiper-navigation .swiper-button-next:before{
    content: '\f054';
}
.applicazioni-block .etichetta{
    position: absolute;
    width: calc( (100vw - (var(--padding-content) * 2 )) / 2);
    top: 144px;
    z-index: 10;
}
.applicazioni-block .swiper-navigation{
    position: absolute;
    top: calc(144px + 31px + 30px);
    display: flex;
    flex-direction: row;
    gap: clamp( 6.5px, 0.677vw, 13px);
    height: clamp( 32px, 3.3333vw, 64px);
    margin-top: clamp( 15px, 1.5625vw, 30px );
}
.applicazioni-block .swiper-navigation div::after{
    display: none;
}
.applicazioni-block .swiper-navigation div svg{
    display: none;
}
.applicazioni .swiper-slide{
    display: flex;
    flex-direction: row;
    width: 100% !important;
}
.applicazioni .swiper-slide .col-sx{
    padding-top: 375px;
    width: calc((100% - var(--padding-content) )/ 2);
}
.applicazioni .swiper-slide .col-sx picture,
.applicazioni .swiper-slide .col-sx picture img{
    display: block;
}
.applicazioni .swiper-slide .col-sx picture img{
    width: 100%;
    max-width: 490px;
    height: 100%;
    object-fit: cover;
    aspect-ratio: calc(431 / 266);
}
.applicazioni .swiper-slide .col-dx{
    width: calc(100% - ((100% - var(--padding-content) )/ 2));
}
.applicazioni .swiper-slide .col-dx picture{
    overflow: hidden;
}
.applicazioni .swiper-slide .col-dx picture,
.applicazioni .swiper-slide .col-dx picture img{
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
.vc_row.black{
    background-color: var(--color-black);
    display: flex;
    flex-direction: row;
    padding: clamp(40px, 1.7777vw, 32px) clamp(24px, 1.7777vw, 32px);
    width: max-content;
    margin: auto;
    align-items: center;
}
.vc_row.black .col.img{
    width: auto;
}
.vc_row.black .col.img img{
    height: auto;
    width: clamp(134px, 13.6vw, 236px);
    object-fit: cover;
    aspect-ratio: 1;
}
.vc_row.black .col.text{
    padding-left: clamp(18px, 10.41vw, 180px);
}
.vc_row.black .col.text p{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: clamp(18px, 2.37vw, 41px);
    font-weight: 400;
}
.vc_row.black .col.text p strong{
    color: inherit;
    font: inherit;
    font-size: inherit;
    font-weight: 700;
}
.hero-section .row-hero{
    position: relative;
    width: 100%;
    height: auto;
}
.hero-section .row-hero .img-hero{
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}
.hero-section .row-hero .img-hero img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-section .row-hero .title-row{
    position: absolute;
    z-index: 9;
    top: 50%;
    left: 0%;
    transform: translate(0%, -50%);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    bottom: unset;
    right: unset;
    gap: 32px;
    width: 100vw;
    padding-left: calc(var(--padding-content) / 2);
    padding-right: calc(var(--padding-content) / 2);
}
.hero-section .row-hero .etichetta.blue-style{
    width: 100%;
}
.hero-section .row-hero .img-hero::after{
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 1);
    mix-blend-mode: multiply;
    opacity: 0.25;
}
.content-section .row-double-img{
    display: flex;
    flex-direction: row;
    align-items: center;
}
.content-section .row-double-img .col-img{
    aspect-ratio: calc(950/1080);
}
.content-section .row-double-img .col-img > div{
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
}
.content-section .row-double-img .col-text{
    padding-left: clamp(30px, 5.8vw, 165px);
    padding-right: clamp(30px, 5.8vw, 100px);
}
.vc_row.full-width .blue-bg.row-inner{
    display: flex;
    flex-direction: row;
    gap: 20px;
}
.vc_row.full-width .blue-bg.row-inner .col-text{
    background: var(--color-blue);
    padding: 34px clamp(16px, 8.45vw, 146px) clamp(16px, 14vw, 242px) clamp(16px, 8.45vw, 146px);
}
.row-materiali .row-list{
    margin-top: clamp(32px, 2.778vw, 48px);
    display: flex;
    flex-direction: row;
}
.row-materiali .row-list > div:first-child{
    padding-right: 22px;
}
.row-materiali .row-list .block-text p + p{
    margin-top: 24px;
}
.row-download .etichetta{
    margin-bottom: clamp(32px, 2.778vw, 48px);
}
.row-download .download + .etichetta{
    margin-top: clamp(32px, 2.778vw, 48px);
}
.row-download .download h4{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.row-download .download h4 span{
    display: block;
    font: var(--font-title-bold);
    font-size: clamp(28px, 2.778vw, 48px);
    color: var(--color-black);
    line-height: 1.1;
    letter-spacing: 0em;
    max-width: calc(100% - 42px);
}
.download .item_download:hover h4 span{
    color: var(--color-blue);
}
.row-download .download h4::after{
    content: '';
    display: block;
    width: 42px;
    height: 11px;
    background: url('./images/arrow-blue.svg') no-repeat center center;
}
.row-download .download a{
    display: block;
}
.row-download .download .item_download + .item_download{
    padding-top: clamp(24px, 1.7777vw, 32px);
    margin-top: clamp(24px, 1.7777vw, 32px);
    border-top: 1px solid var(--color-black);
}
.row-sostenibilita .col-text p{
    color: var(--color-blue);
    font: var(--font-text-medium);
    font-size: clamp(18px, 1.225vw, 21px);
    line-height: 1.2;
    letter-spacing: 0.005em;
}
.row-sostenibilita h3 *, .row-sostenibilita h4{
    font: var(--font-title-bold);
    line-height: 1;
    font-size: clamp(18px, 1.225vw, 21px);
    color: var(--color-blue);
    letter-spacing: 0em;
}
.row-sostenibilita h3 *{
    font-size: clamp(20px, 1.38vw, 24px);
}
.row-sostenibilita h4{
   margin-top:  clamp(24px, 1.7777vw, 32px);
}
.row-sostenibilita .wpb_single_image.wpb_content_element{
    margin-top: 48px !important;
    margin-bottom: 48px !important;
}
.row-sostenibilita .wpb_single_image.wpb_content_element img,
.row-sostenibilita .wpb_single_image.wpb_content_element figure,
.row-sostenibilita .wpb_single_image.wpb_content_element figure div{
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
.materiali{
    overflow: hidden;
    width: 100%;
    position: relative;
}
.materiali .materiali-wrapper{
    align-self: auto;
    align-items: flex-end;
    width: fit-content;
    height: 100vh;
    display: flex;
    position: relative;
    overflow: hidden;
    flex-wrap: nowrap;
    gap: 100px;
    left: 50%;
    overflow: hidden;
}
.materiali-wrapper .materiale-single{
    position: relative;
    width: 33vw;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.materiali-wrapper .materiale-single.active{
    height: auto;
    transition: height 0.35s, transform 0.35s;
}
.materiali-wrapper .materiale-single h2{
    display: flex;
    margin-bottom: 46px;
    font-size: clamp(28px, 2.778vw, 48px);
    height: 3lh;
    align-items: flex-end;
    text-align: center;
}
.materiali-wrapper .materiale-single picture{
    display: block;
    width: fit-content;
    max-height: 70vh;
    overflow: hidden;
}
.materiali-wrapper .materiale-single picture img{
    display: block;
    width: 300px;
    /* width: 150px; */
}
.materiali-wrapper .materiale-single h2 *{
    font-size: clamp(32px, 2.778vw, 48px);
}
.row-sostenibilita .sostenibilita-title h3{
    margin-top: clamp(30px, 2.778vw, 48px);
    text-align: center;
}
.row-sostenibilita .sostenibilita-title h3 *, 
.row-sostenibilita .sostenibilita-title h3 p *{
    text-align: center;
    font-size: clamp(32px, 4.43vw, 75px);
    line-height: 1;
}
.page-id-39 h1, 
.page-id-39 h1 *,
.page-id-487 h1, 
.page-id-487 h1 *{
    color: var(--color-white);
    font: var(--font-title-bold);
    font-size: clamp(32px, 4.63vw, 80px);
}
.page-id-39 h1,
.page-id-487 h1{
     padding-top: clamp(16px, 6.94vw, 120px);
     margin: 0px;
}
body.page-id-39 header.site-header svg path,
body.page-id-487 header.site-header svg path{
    fill: var(--color-white) !important;
}
body.page-id-39 header.topbar,
body.page-id-487 header.topbar{
    background-color: rgba(237, 249, 255, 1);
}
body.page-id-39 header.topbar p,
body.page-id-487 header.topbar p{
    color: var(--color-blue);
}
.block-contatti{
    display: flex;
    flex-direction: row;
    margin-top: clamp(32px, 2.778vw, 48px);
}
.block-contatti p,
.block-contatti a{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: clamp(24px, 2.778vw, 48px);
    line-height: 1.2;
    letter-spacing: 0.005em;
}
.block-contatti > div{
    width: 50%
}
.block-contatti .col.indirizzo{
    padding-right: 20px;
}
.page-id-39 .row-form,
.page-id-487 .row-form{
    margin-top: clamp(32px, 2.778vw, 48px);
    display: flex;
    flex-direction: row;
}
.page-id-39 form .row.full-100 span,
.page-id-39 form .row.full-100 input,
.page-id-487 form .row.full-100 span,
.page-id-487 form .row.full-100 input{
    width: 100%;
}
.page-id-39 form .row.full-100 span.wpcf7-spinner,
.page-id-487 form .row.full-100 span.wpcf7-spinner{
    width: auto !important;
}
.page-id-39 form .row.full-100 input,
.page-id-487 form .row.full-100 input,
.page-id-39 form .row.full-100 textarea,
.page-id-487 form .row.full-100 textarea{
    background-color: transparent;
    border: 1px solid var(--color-white);
    border-radius: 21px;
    padding: clamp(14px, 0.98vw, 17px) clamp(18px, 1.26vw, 26px);
    font: var(--font-text-medium);
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.005em;
    color: var(--color-white);
}
.page-id-39 form .row.full-100 + .row.full-100,
.page-id-487 form .row.full-100 + .row.full-100{
    margin-top: 21px;
}
.page-id-39 form .row.full-100 input::placeholder,
.page-id-39 form .row.full-100 textarea::placeholder,
.page-id-487 form .row.full-100 input::placeholder,
.page-id-487 form .row.full-100 textarea::placeholder{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.005em;
}
.page-id-39 form .row.full-100 textarea,
.page-id-487 form .row.full-100 textarea{
    height: 140px;
    resize: none;
}
.page-id-39 form .row.full-100.gdpr input,
.page-id-487 form .row.full-100.gdpr input{
    width: auto;
}
.page-id-39 form .row.full-100.gdpr input + span,
.page-id-39 form .row.full-100.gdpr input + span a,
.page-id-39 form .row.full-100.recaptcha p,
.page-id-39 form .row.full-100.recaptcha p a,
.page-id-487 form .row.full-100.gdpr input + span,
.page-id-487 form .row.full-100.gdpr input + span a,
.page-id-487 form .row.full-100.recaptcha p,
.page-id-487 form .row.full-100.recaptcha p a{
    color: var(--color-white);
    font: var(--font-text-medium);
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: 0.005em;
}
.page-id-39 form .row.full-100.gdpr input + span a,
.page-id-39 form .row.full-100.recaptcha p a,
.page-id-487 form .row.full-100.gdpr input + span a,
.page-id-487 form .row.full-100.recaptcha p a{
    text-decoration: underline;
}
.page-id-39 form .row.full-100.send,
.page-id-39 form .row.full-100.recaptcha,
.page-id-39 form .row.full-100.gdpr,
.page-id-487 form .row.full-100.send,
.page-id-487 form .row.full-100.recaptcha,
.page-id-487 form .row.full-100.gdpr{
    margin-top: 30px;
}
.page-id-39 form .row.full-100.gdpr span,
.page-id-487 form .row.full-100.gdpr span{
    margin: 0px;
}
.page-id-39 form .row.full-100.gdpr span label,
.page-id-487 form .row.full-100.gdpr span label{
    display: grid;
    grid-template-columns: 32px calc(100% - 32px);
}
.page-id-39 form .row.full-100.gdpr input[type="checkbox"],
.page-id-487 form .row.full-100.gdpr input[type="checkbox"]{
    display: flex;
    justify-content: center;
    align-items: center;
    appearance: none;
    width: 23px;
    height: 23px;
    border: var(--color-white) 1px solid;
    border-radius: 5px;
    background: none;
    padding: 0px;
}
.page-id-39 form .row.full-100.gdpr input[type="checkbox"]:checked:before,
.page-id-487 form .row.full-100.gdpr input[type="checkbox"]:checked:before{
    content: '';
    display: block;
    width: 11px;
    height: 11px;
    border-radius: 2px;
    background-color: var(--color-white);
}
.applicazioni-grid-block ul{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: clamp(24px, 3.47vw, 60px) 14px;
    margin: 0px;
    padding: 0px;
    list-style: none;
}
.applicazioni-grid-block ul li a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.applicazioni-grid-block ul li a::after{
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.15);
    mix-blend-mode: multiply;
}
.applicazioni-grid-block ul li a picture img,
.applicazioni-grid-block ul li a picture{
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
.applicazioni-grid-block ul li a picture{
    overflow: hidden;
}
.applicazioni-grid-block ul li a picture img{
    scale: 1;
    transition: scale ease-in-out 500ms;
}
.applicazioni-grid-block ul li:hover a picture img{
    scale: 1.2;
    transition: scale ease-in-out 500ms;
}
.applicazioni-grid-block ul li h3{
    font: var(--font-text-medium);
    line-height: 1.2;
    letter-spacing: 0.005em;
    position: absolute;
    bottom: 32px;
    left: 32px;
    right: 32px;
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 0.86vw, 15px);
    z-index: 1;
}
.applicazioni-grid-block ul li h3 svg{
    width: 42px;
    height: 11px;
}
.applicazioni-grid-block ul li h3 span{
    font: var(--font-text-medium);
    color: var(--color-white);
    font-size: clamp(32px, 2.778vw, 48px);
    line-height: 1.125;
    letter-spacing: 0.005em;
}
.applicazioni-grid-block .modal.application{
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0px;
    left: 0px;
    background-color: rgba(0,0,0,0.2);
    align-items: center;
    justify-content: center;
    z-index: 999;
}
.applicazioni-grid-block .modal.application.show{
    display: flex;
}
.applicazioni-grid-block .modal.application .wrapper{
    position: relative;
    background-color: var(--color-white);
    width: 900px;
    padding: 80px;
}
.applicazioni-grid-block .modal.application.loading .wrapper{
    aspect-ratio: 1;
}
.applicazioni-grid-block .modal.application.loading .wrapper .content{
    opacity: 0;
}
.applicazioni-grid-block .modal.application.loading .wrapper::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 24px;
    height: 24px;
    border: 2px solid var(--color-black);
    border-bottom-color: transparent;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}
@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.applicazioni-grid-block .modal.application .wrapper picture{
    max-width: 450px;
    display: block;
}
.applicazioni-grid-block .modal.application .wrapper picture img{
    display: block;
}
.applicazioni-grid-block .modal.application .wrapper div.description{
    margin-top: 64px;
} 
.applicazioni-grid-block .modal.application .wrapper div.description h3{
    font: var(--font-text-medium);
    font-size: clamp(32px, 2.778vw, 48px);
    line-height: 1.2;
    color: var(--color-blue);
    margin: 0px;
    margin-bottom: 30px;
}
.applicazioni-grid-block .modal.application .wrapper div.description p{
    font: var(--font-text-medium) !important;
    font-weight: 500 !important;
    font-size: 24px;
    color: var(--color-black);
    line-height: 1.14;
}
.applicazioni-grid-block .modal.application .wrapper .close{
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: 56px;
    top: 80px;
    left: unset;
    right: 80px;
    rotate: 45deg;
    cursor: pointer;
}
.applicazioni-grid-block .modal.application .wrapper .close:before,
.applicazioni-grid-block .modal.application .wrapper .close::after{
    content: '';
    display: block;
    background-color: var(--color-black);
    width: 56px;
    height: 2px;
    transition: background-color 300ms ease-in-out;
}
.applicazioni-grid-block .modal.application .wrapper .close::after{
    position: absolute;
    width: 2px;
    height: 56px;
    top: 0px;
    left: 50%;
    margin-left: -1px;
}
.applicazioni-grid-block .modal.application .wrapper .close:hover:before,
.applicazioni-grid-block .modal.application .wrapper .close:hover:after{
    background-color: var(--color-blue);
    transition: background-color 300ms ease-in-out;
}
.profili-list{
    display: grid;
    grid-template-columns: 25% 65%;
    justify-content: space-between;
    margin-top: var(--margin-row);
}
.profili-list .profili-terms{
    position: sticky;
    top: 64px;
    height: fit-content;
}
.profili-list-content div.categoria{
    display: none;
}
.profili-list-content div.categoria.active{
    display: flex;
    flex-direction: column;
    gap: clamp(32px, 2.778vw, 48px);
}
.profili-list-content div.categoria h2 *{
    font-size: clamp(24px, 3.24vw, 56px);
    line-height: 1.2;
}
.profili-list-content div.categoria h2 > div{
    line-height: 0;
}
.profili-list-content .profili-categoria-list{
    display: flex;
    list-style: none;
    margin: 0px;
    padding: 0px;
    flex-direction: column;
}
.profili-list-content .profili-categoria-list li a{
    padding: clamp(16px, 1.21vw, 21px);
    display: flex;
    flex-direction: row;
    align-items: center;
    border-bottom: 1px solid var(--color-black);
    gap: 16px;
    position: relative;
    justify-content: flex-start;
}
.profili-list-content .profili-categoria-list li a picture,
.profili-list-content .profili-categoria-list li a img{
    display: block;
    height: auto;
}
.profili-list-content .profili-categoria-list li a picture{
    max-height: 50px;
    width: 50px;
}
.profili-list-content .profili-categoria-list li a img{
    width: 30px;
    height: auto;
    object-fit: contain;
    aspect-ratio: 1;
}
.profili-categoria-list li span{
    font: var(--font-title-bold);
    font-size: clamp(18px, 1.38vw, 24px);
    line-height: 1;
    letter-spacing: 0.0065em;
    color: var(--color-black);
}
.profili-categoria-list li:hover span{
    color: var(--color-blue);
}
.profili-categoria-list li.no-file:hover span{
    color: var(--color-black);
}
.profili-list-content .profili-categoria-list li a::after{
    content: "";
    display: block;
    width: 42px;
    height: 11px;
    background: url(./images/arrow-blue.svg);
    right: 0px;
    position: absolute;
}
.profili-list-content .profili-categoria-list li.no-file a::after{
    display: none;
}
.profili-terms ul{
    display: flex;
    flex-direction: column;
    list-style: none;
    margin: 0px;
    padding: 0px;
    gap: 16px
}
.profili-terms ul li a{
    font: var(--font-text-medium);
    font-size: clamp(16px, 1.38vw, 24px);
    line-height: 1.15;
    letter-spacing: 0.005em;
    color: var(--color-blue);
    padding-bottom: 16px;
    border-bottom: 1px solid var(--color-blue);
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: clamp(16px, 1.38vw, 24px);
}
.profili-terms ul li a::before{
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background: var(--color-blue);
    margin-bottom: clamp(3px, 0.46vw, 8px);
}
.profili-terms ul li.active a::before{
    background-color: var(--color-black);
}
.profili-terms ul li.active a,
.profili-terms ul li:hover a{
    color: var(--color-black);
}
body.page-id-39 .upper-footer,
body.page-id-487 .upper-footer{
    display: none;
}
body.page-id-39 .wpb_raw_html #map,
body.page-id-487 .wpb_raw_html #map{
    aspect-ratio: 3;
}
#map div.content-map{
    padding: 10px;
}
#map div.content-map strong a{
    display: block;
    font: var(--font-text-bold);
    font-size: 18px;
    color: var(--color-blue);
}
#map div.content-map a{
    font: var(--font-text-medium);
    font-size: 16px;
    color: var(--color-black);
}
#map  .gm-ui-hover-effect>span{
    margin-bottom: 0px;
}
#scrivici{
    scroll-margin-top: 80px;
}
header .hamburger,
.menu-mobile{
    display: none;
}
.menu-mobile.show{
    display: block;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    background-color: var(--color-blue);
    padding: 32px 0px;
    z-index: 9999;
    padding: clamp(24px , 2.9vw, 50px);
    height: 100vh;
}
.menu-mobile .close{
    padding: 10px;
}
.menu-mobile .close span{
    display: block;
    width: 34px;
    height: 2px;
    background-color: var(--color-white);
    margin: 5px 0px;
    transition: all 0.3s ease-in-out;
}
.menu-mobile .close span:first-child{
    transform: rotate(45deg);
}
.menu-mobile .close span:last-child{
    transform: rotate(-45deg);
    margin-top: -7px;
}
.menu-mobile .menu-mobile-top{
    display: flex;
    flex-direction: row;
    gap: 32px;
    margin-bottom: 105px;
    justify-content: flex-end;
    align-items: center;
}
.menu-mobile .main-navigation ul{
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.menu-mobile .menu-lingua-container ul{
    margin: 0px;
    padding: 0px;
    list-style: none;
}
/* .menu-mobile .menu-lingua-container ul ul{
    display: none;
} */
.menu-mobile .menu-lingua-container ul li{
    position: relative;
}
.menu-mobile .menu-lingua-container ul li.menu-item-has-children{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 40px;
}
.menu-mobile nav.lang-navigation ul .wpml-ls-menu-item a span{
    color: var(--color-white);
    opacity: 0.8;
}
.menu-mobile nav.lang-navigation ul .wpml-ls-menu-item:hover > a > span,
.menu-mobile nav.lang-navigation ul .wpml-ls-menu-item.wpml-ls-current-language > a > span{
    opacity: 1;
}
.page-id-39 .mobile-item-show,
.page-id-487 .mobile-item-show{
    display: none;
}
.wpcf7-not-valid-tip{
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 5px;
    margin-top: 8px;
    padding: 2px 5px;
}
.wpcf7 form .wpcf7-response-output{
    color: var(--color-white);
}

@media (max-width: 2100px){
    .vc_row.full-width{
        margin-left: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
        margin-right: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
    }
    .vc_row.full-width.with-padding{
        padding-left: clamp(30px, 5.8vw, 100px) !important;
        padding-right: clamp(30px, 5.8vw, 100px) !important;
    }
    .vc_row.no-padding-right{
        margin-left: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
        margin-right: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
        padding-left: clamp(30px, 5.8vw, 100px) !important;
    }
    footer.site-footer .site-info > div{
        padding-left: clamp(30px,  5.8vw, 100px);
        padding-right: clamp(30px, 5.8vw, 100px);
    }
    section.vc_section.content-section{
        padding-left: clamp(30px, 5.8vw, 100px);
        padding-right: clamp(30px, 5.8vw, 100px);
    }
    header.site-header{
        padding-left: clamp(30px , 2.9vw, 50px);
        padding-right: clamp(30px , 2.9vw, 50px);
    }
    .row-qualita .col-img{
        width: calc((100% - clamp(30px,5.8vw, 100px) )/ 2);
    }
    .row-qualita .center-abs{
        left: calc((100% - clamp(30px, 5.8vw, 100px) )/ 2);
    }
    .applicazioni-block .etichetta{
        width: calc( (100vw - 2 * clamp(30px, 5.8vw, 100px)) / 2);
    }
    .applicazioni .swiper-slide .col-sx{
        width: calc((100% - clamp(30px, 5.8vw, 100px) )/ 2);
    }
    .applicazioni .swiper-slide .col-dx{
        width: calc((100% - clamp(30px, 5.8vw, 100px) )/ 2);
    }
    .hero-section .row-hero .title-row{
        padding-left: clamp(30px , 2.9vw, 50px);
        padding-right: clamp(30px, 2.9vw, 50px);
    }
}
@media (max-width: 1800px){
    footer.site-footer .site-info .footer-bottom{
        flex-direction: column;
        row-gap: 16px;
        /* align-items: center; */
    }
    footer.site-footer .site-info .footer-top{
        flex-direction: column;
        row-gap: 48px;
    }
    .site-footer .copyright{
        flex-direction: column;
        row-gap: 16px;
        align-items: flex-start;
    }
    footer.site-footer .footer-bottom .menu-footer-policy-container li:first-child a::before,
    footer.site-footer .footer-bottom .menu-footer-policy-en-container li:first-child a::before{
        content: '';
        display: none;
    }
    .site-footer .copyright .menu-footer-policy-container ul,
    .site-footer .copyright .menu-footer-policy-en-container ul{
        margin-left: 0px;
    }
    footer.site-footer .footer-top .col-center{
        width: 100%;
    }
}
@media (max-width: 1600px){
    .block-contatti{
        flex-direction: column;
        gap: clamp(20px, 3vw, 48px);
    }
    .page-id-39 .row-form,
    .page-id-487 .row-form{
        flex-direction: column;
        gap: clamp(40px, 3vw, 48px);
    }
    .block-contatti > div,
    .page-id-39 .row-form > div,
    .page-id-487 .row-form > div{
        width: 100%;
    }
}
@media (max-width: 1500px){
    .vc_row.full-width .blue-bg.row-inner{
        flex-direction: column;
    }
    .vc_row.full-width .blue-bg.row-inner .col-text{
        width: 100%;
    }
    .hero-section .title-row{
        flex-direction: column;
        align-items: flex-start;
        gap: 32px;
    }
    .hero-section .title-row > div{
        width: 100% !important;
    }
    .hero-section .title-row > div:last-child{
        width: fit-content !important;
    }
    .row-qualita .center-abs{
        transform: translate(-50%, 0px);
    }
}
@media (max-width: 1400px){
    .boxes-profiles{
        display: flex;
        flex-direction: column;
        gap: 48px;
    }
    .boxes-profiles .box{
        width: 100%;
        aspect-ratio: 1.5;
    }
    .boxes-profiles .box .content{
        max-width: 70%;
    }
    .profili-list{
        grid-template-columns: 25% 70%;
    }
    .row-qualita .col-text ul{
        gap: 0px;
    }
    .applicazioni-block .etichetta{
        top: clamp( 72px, 7.5vw, 144px);
    }
    .applicazioni-block .swiper-navigation{
        top: calc( clamp( 72px, 7.5vw, 144px) + 31px + clamp( 15px, 1.5625vw, 30px ));
    }
    .applicazioni .swiper-slide .col-sx{
        padding-top: clamp( 187px, 19.5vw, 375px);
    }
    body.page-id-39 .wpb_raw_html #map,
    body.page-id-487 .wpb_raw_html #map{
        aspect-ratio: 2;
    }
}
@media (max-width: 1280px){
    .vc_row.row-qualita .row-inner{
        flex-direction: column-reverse;
        gap: 40px;
    }
    .row-qualita .col-img,
    .row-qualita .col-text{
        width: 100%;
    }
    .row-qualita .col-text{
        padding-left: clamp(30px , 5.8vw, 100px) !important;
        padding-right: clamp(30px , 5.8vw, 100px) !important;
    }
    .row-qualita .etichetta{
        left: clamp(30px , 5.8vw, 100px) !important;
        right: clamp(30px , 5.8vw, 100px) !important;
    }
    .row-qualita .col-text{
        padding-top: 102px;
    }
    .vc_row.no-padding-right.row-mid-background-grey,
    .vc_row.no-padding-right.row-mid-background-light-grey{
        padding-left: 0px !important;
    }
    .row-qualita .col-img > div{
        aspect-ratio: 2;
        background-position: center;
    }
}
@media (max-width: 1200px){
    .vc_row.black{
        margin-left: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
        margin-right: calc(-1 * clamp(30px, 5.8vw, 100px)) !important;
        width: 100vw;
        margin-top: 0px !important;
        margin-bottom: 0px !important;
    }
    .vc_row.row-applicazioni.no-padding-right{
        padding-right: clamp(30px, 5.8vw, 100px) !important;
    }
    .applicazioni-block .etichetta{
        width: 100%;
    }
    .applicazioni-block .swiper.applicazioni div.swiper-slide{
        align-items: flex-start;
    }
    .applicazioni .swiper-slide .col-sx{
        display: flex;
        flex-direction: column-reverse;
    }
    .applicazioni .swiper-slide .col-sx,
    .applicazioni .swiper-slide .col-dx{
        width: 50%;
    }
    .applicazioni .swiper-slide .col-sx picture img{
        max-width: none;
    }
    .applicazioni .swiper-slide .col-dx {
        padding-top: clamp(187px, 19.5vw, 375px);
    }
    .applicazioni .swiper-slide .col-dx picture,
    .applicazioni .swiper-slide .col-dx picture img{
        display: block;
    }
    .applicazioni .swiper-slide .col-dx picture img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        aspect-ratio: calc(431 / 266);
    }
    body.page-id-39 .wpb_raw_html #map,
    body.page-id-487 .wpb_raw_html #map{
        aspect-ratio: 1.5;
    }
}
@media (max-width: 1100px){
    .profili-list{
        grid-template-columns: 1fr;
        gap: 48px;
    }
    .profili-list .profili-terms{
        position: static;
    }
    .profili-terms{
        overflow: scroll;
    }
    .profili-terms::-webkit-scrollbar{
        display: none;
    }
    .profili-terms ul{
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 24px;
    }
    .profili-terms ul li a{
        padding: 0px;
        border-bottom: 0px;
        width: max-content;
        gap: 8px;
    }
    .profili-terms ul li a::before{
        margin-bottom: 0px;
    }
    .profili-list-content .etichetta.blue-style{
        display: none;
    }
    .applicazioni-grid-block ul{
        grid-template-columns: 1fr 1fr;
    }
    footer.site-footer .footer-top .col-center{
        gap: 50px;
    }
    .content-section .row-double-img{
        flex-direction: column-reverse;
        gap: 48px;
    }
    .content-section .row-double-img > div{
        width: 100%;
    }
    .content-section .row-double-img .col-img{
        max-height: 500px;
    }
    .content-section .row-double-img .col-img > div{
        background-position: center;
    }
}
@media (max-width: 1024px){
    header .navigation-group{
        display: none;
    }
    header .hamburger{
        display: block;
    }
    header .hamburger span{
        display: block;
        color: var(--color-white);
        font: var(--font-text-medium);
        font-size: 16px;
        padding: 13px 24px;
        background: var(--color-blue);
        border-radius: 16px;
        cursor: pointer;
    }
    header .hamburger span:hover{
        background: var(--color-black);
    }
    .menu-mobile.show{
        display: block;
    }
    .materiali-wrapper .materiale-single{
        width: 50vw;
    }
    footer.site-footer .site-info .footer-bottom,
    .site-footer .copyright{
        row-gap: 8px;
    }
    .applicazioni-grid-block .modal.application .wrapper{
        width: 85%;
    }
}
@media (max-width: 900px){
    .hero-section .row-hero .img-hero img,
    .hero-section .row-hero .img-hero::after,
    .hero-section .row-hero .img-hero{
        max-height: 600px;
    }
    footer.site-footer .footer-top .col-center{
        flex-direction: column;
        /* text-align: center; */
    }
    .site-footer .copyright .menu-footer-policy-container ul,
    .site-footer .copyright .menu-footer-policy-en-container ul{
        flex-wrap: wrap;
        row-gap: 0px;
    }
    .row-materiali .row-list{
        flex-direction: column;
        gap: 20px;
    }
    .row-materiali .row-list > div:first-child{
        padding-right: 0px;
    }
    .hero-section .title-row{
        top: 220px;
    }
    .hero-section .title-row a::after, .box .bottone-link a span::after, .box:hover .bottone-link:hover a span::after{
        display: none;
    }
    .hero-section .title-row a span{
        width: 100%;
    }
    .box .bottone-link a span{
        width: max-content;
        margin: 24px auto 0px;
    }
    .boxes-profiles .box{
        aspect-ratio: 1;
    }
    .row-qualita .bottone-link a span,
    .row-double-img .bottone-link a span,
    .page-id-39 .send button,
    .page-id-487 .send button{
        padding: 20px;
        background-color: var(--color-white);
        color: var(--color-blue);
        width: max-content;
        border-radius: 16px;
    }
    .row-qualita .bottone-link a span:hover,  
    .row-double-img .bottone-link a span:hover,
    .page-id-39 .send button:hover,
    .page-id-487 .send button:hover{
        background-color: var(--color-black);
        color: var(--color-white) !important;
    }
    .row-qualita .bottone-link a span::after,
    .row-double-img .bottone-link a span::after, 
    .page-id-39 .send button::after,
    .page-id-487 .send button::after{
        display: none;
    }
}
@media (max-width: 768px){
    html{
        scroll-behavior: auto;
    }
    .page-id-39 .mobile-item-hero,
    .page-id-487 .mobile-item-hero{
        height: 100vh;
        margin-top: 0px !important;
        padding-top: 120px;
    }
    .page-id-39 .mobile-item-hero + .vc_row,
    .page-id-487 .mobile-item-hero + .vc_row{
        margin-top: 0px !important;
    }
    .page-id-39 .vc_section.content-section > .vc_row:first-child,
    .page-id-487 .vc_section.content-section > .vc_row:first-child{
        margin-top: 0px !important;
    }
    .page-id-39 .mobile-item-hide,
    .page-id-487 .mobile-item-hide{
        display: none;
    }
    .page-id-39 .mobile-item-show,
    .page-id-487 .mobile-item-show{
        display: block;
    }
    .hero-section .title-row h1,
    .hero-section .title-row h2{
        line-height: 0;
    }
    .applicazioni-grid-block ul{
        grid-template-columns: 1fr;
    }
    footer.site-footer .upper-footer .linked a{
        flex-direction: column;
        gap: 40px;
        align-items: baseline;
    }
    .profili-list-content .profili-categoria-list li a{
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 24px;
        padding-bottom: 12px;
    }
    .profili-list-content .profili-categoria-list li a::after{
        position: static;
    }
    header.topbar{
        position: fixed;
        bottom: 0px;
        z-index: 999;
        width: 100vw;
    }
    header.topbar p{
        text-align: left;
        padding-left: 30px;
        padding-right: 30px;
    }
    .applicazioni-grid-block ul li h3{
        left: 24px;
        bottom: 24px;
    }
    .applicazioni-grid-block .modal.application .wrapper{
        height: max-content;
        padding: clamp(40px, 4.62vw, 80px) clamp(24px, 4.62vw, 80px);
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 24px;
    }
    .hero-section .row-hero .img-hero img, .hero-section .row-hero .img-hero::after, .hero-section .row-hero .img-hero{
        max-height: 100vh;
    }
    .hero-section .row-hero .title-row{
        top: 150px;
        transform: none;
    }
    .applicazioni-grid-block .modal.application .wrapper picture{
        max-width: 100%;
    }
    .applicazioni-grid-block .modal.application .wrapper .content{
        overflow-y: scroll;
    }
    .applicazioni-grid-block .modal.application .wrapper .content::-webkit-scrollbar{
        display: none;
    }
    .applicazioni-grid-block .modal.application .wrapper{
        width: 100%;
        border-radius: 16px 16px 0px 0px;
    }
    .applicazioni-grid-block .modal.application.show{
        align-items: flex-end;
    }
    .row-qualita .center-abs{
        width: calc(100% - 60px);
        left: 50%;
    }
    .row-qualita .col-img > div{
        aspect-ratio: 1;
    }
    .applicazioni .bottone-link a span{
        text-indent: -999px;
        gap: 0px;
    }
    .applicazioni .swiper-slide .col-sx picture.small-image{
        order: 3;
    }
    .applicazioni .swiper-slide .col-sx .bottone-link{
        order: 1;
    }
    .applicazioni .swiper-slide .col-sx h2{
        order: 2;
        margin:clamp(30px, 2.6vw, 45px) 0px;
        position: relative;
        width: 200%;
    }
    .applicazioni .bottone-link a span{
        padding: 0px
    }
    .box .bottone-link a span{
        font-size: 12px;
    }
}
@media (max-width: 678px){
    .applicazioni .swiper-slide .col-sx picture img,
    .applicazioni .swiper-slide .col-dx picture img{
        aspect-ratio: 1;
    }
    body.page-id-39 .wpb_raw_html #map,
    body.page-id-487 .wpb_raw_html #map{
        aspect-ratio: 1;
    }
    .applicazioni-grid-block .modal.application .wrapper .close{
        top: 30px !important;
        right: 30px !important;
    }
    .applicazioni-grid-block .modal.application .wrapper picture img{
        max-width: 200px !important;
    }
    .applicazioni-grid-block .modal.application .wrapper div.description p{
        font-size: 15px !important;
    }
}
@media (max-width: 600px){
    .hero-section .title-row{
        top: 160px;
    }
    .box:hover .box-bottom{
        overflow: scroll;
        padding-bottom: 30px;
    }
    .menu-mobile .main-navigation ul.menu li a{
        font-size: 28px;
    }
    .menu-mobile .menu-mobile-top{
        margin-bottom: 64px;
    }
    .menu-mobile .main-navigation ul{
        gap: 25px;
    }
    .site-footer .copyright .menu-footer-policy-en-container ul{
        column-gap: 8px;
        row-gap: 4px;
    }
    footer.site-footer .footer-bottom .menu-footer-policy-container a::before, 
    footer.site-footer .footer-bottom .menu-footer-policy-en-container a::before{
        margin-right: 8px;
    }
    .applicazioni-grid-block .modal.application .wrapper{
        padding: 30px !important;
    }
    .applicazioni-grid-block .modal.application .wrapper picture img{
        max-width: 180px !important;
        max-height: 180px !important;
    }
    .applicazioni-grid-block .modal.application .wrapper div.description{
        margin-top: 16px !important;
    }
    .applicazioni-grid-block .modal.application .wrapper div.description h3{
        margin-bottom: 12px !important;
        line-height: 1;
    }
    .vc_row.black .col.text{
        padding-left: 12px;
    }
    .vc_row.black .col.text p{
        line-height: 1.2;
    }
    .page-id-39 form .row.full-100 input, 
    .page-id-487 form .row.full-100 input, 
    .page-id-39 form .row.full-100 textarea, 
    .page-id-487 form .row.full-100 textarea{
        border-radius: 15px;
    }
}


/* Max height */
@media (max-height: 1000px){
    .materiali-wrapper .materiale-single picture{
        max-height: 60vh;
    }
    .materiali-wrapper .materiale-single picture img{
        width: 257px;
    }
}
@media (max-height: 900px){
    .applicazioni-grid-block .modal.application .wrapper{
        padding: 40px;
    }
    .applicazioni-grid-block .modal.application .wrapper .close{
        width: 40px;
        height: 40px;
        top: 40px;
        right: 40px;
    }
    .applicazioni-grid-block .modal.application .wrapper .close:before{
        width: 40px;
    }
    .applicazioni-grid-block .modal.application .wrapper .close::after{
        height: 40px;
    }
    .applicazioni-grid-block .modal.application .wrapper picture img{
        max-width: 300px;
    }
    .applicazioni-grid-block .modal.application .wrapper div.description{
        margin-top: 32px;
    }
    .applicazioni-grid-block .modal.application .wrapper div.description h3{
        margin-bottom: 15px;
    }
}