:root {
  /* --site-content-width: 100vw !important; */
  --columns-gap: 0px!important;
  --alt-menu: 60px;
  --full-screen: calc(100vh - (var(--header-height) + var(--alt-menu) + var(--link-parent)));
  --super-full-screen: calc(100vh - (var(--header-height) + var(--link-parent)));
  --link-parent: 40px;
  --page-padding: 4rem;
  --page-padding-sma: 1.5rem;
	--bs-body-font-family: 'Poppins';
}

body{
    overflow-x: hidden;
}

p{
    margin:0!important;
    padding-bottom: 1rem;
}

a{
    text-decoration: underline;
}

button:focus-visible,
a:focus-visible{
    outline: 2px solid red!important;
    outline-offset: 4px;
}

.l-section{
    padding:0;
    margin:0;
}

.g-cols.via_flex.type_default{
    margin:0!important;
}

.g-cols.via_flex.type_default>div>.vc_column-inner{
    padding:0!important
}

.us-btn-style_2,
.us-btn-style_1{
    padding: 0.7em 1em!important;
}

.full--height{
    height: calc(100vh - var(--header-height));
}

.page-padding{
    padding-left: var(--page-padding)!important;
    padding-right: var(--page-padding)!important;
}

.page-padding .width_full {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100%;
}

.l-section-h{
    margin:0 auto;
    padding:var(--page-padding);
} 

.width_full .l-section-h{
    padding:0;
} 

@media (max-width: 768px) {
    .l-section-h{
        padding:var(--page-padding-sma);
    } 
}
.full .l-section-h{
    padding:0;
}

.width_full,
.l-subheader.width_full{
    width: 100%;
    padding-left: var(--page-padding)!important;
    padding-right: var(--page-padding)!important; 
}

.width_full.full{
    position:relative;
    left: calc(var(--page-padding) * (-1));
    width: calc(100% + (var(--page-padding) * 2))!important;
    padding-left: var(--page-padding)!important;
    padding-right: var(--page-padding)!important;
}

@media (max-width: 768px) {
  .width_full.full{
    left:calc(var(--page-padding-sma)*(-1));
    padding-left: var(--page-padding-sma)!important;
    padding-right: var(--page-padding-sma)!important;
    width: calc(100% + (var(--page-padding-sma) * 2))!important;
  }
}

.l-sidebar{
    padding-left: 2.5rem!important;
}

@media (max-width: 768px) {
    .page-padding{
        padding-left: var(--page-padding-sma)!important;
        padding-right: var(--page-padding-sma)!important; 
    }

    .l-sidebar{
        padding-left: var(--page-padding-sma)!important;
        padding-right: var(--page-padding-sma)!important; 
    }
    .width_full,
    .l-subheader.width_full{
        padding-left: var(--page-padding-sma)!important;
        padding-right: var(--page-padding-sma)!important; 
    }
}

.full-screen{
    min-height: var(--full-screen);
}


.full-screen.articolo{
    min-height: var(--super-full-screen);
}

.half-screen{
    height: calc(var(--full-screen)/2);
}

.half-screen.title-container{
    min-height: calc(var(--full-screen)/2);
    height:auto;
    padding-top: 1rem;
    padding-bottom:1rem;
}

.big-text{
    font-size:5rem!important;
	line-height: 1.1!important;
}

@media (max-width: 1024px) {
    .big-text{
        font-size:2.5rem!important;
    }
}

.title-container{
    background: var(--color-nero);
    display:flex;
    flex-direction: column;
    justify-content: center;
}

.title-container h1,
.title-container p{
    color: white;
}

@media (max-width: 768px) {
    .title-container h1,
    .title-container p{
        width: 100%;
    }
	.title-container h2{
		font-size: 1rem;
	}
	.title-container p{
		font-family: "poppins";
		font-weight: normal;
	}
}

.testata img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block; 
}

.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: #000;
  color: #fff;
  padding: 8px 16px;
  z-index: 1000;
  text-decoration: none;
  transition: top 0.3s;
}

.skip-link:focus {
  top: 10px;
}

/* Breadcrumb-link */

.link-parent{
    height: var(--link-parent);
    display: flex;
    flex-direction: row;
    align-items: center;
    background: var(--color-grigio);
}

@media (max-width: 768px) {
  .link-parent{
    display:none;
  }
}

.link-parent p,
.link-parent a{
    color: var(--color-nero);
    font-size: 0.8rem;
    padding:0;
    margin:0;
}

.img-res {
    height:100%;
    
}
.img-res .w-image-h img{
    object-fit: cover;
    width: 100%;
    height: 60vh!important;
    object-position: center top;
}

@media (max-width: 768px) {
  .img-res .w-image-h img{
    aspect-ratio: 1/1!important;
  }
}

.wpb_wrapper{
    height: 100%
}
.img-res .w-image-h{
    height: 100%
}

.w-image-title{
    display:none;
}

.highlights{
    height: auto;
}

.highlights .col-33{
    display: flex;
    flex-direction: column;
}
.highlights p{
	padding-bottom:0px!important;
    margin:0;
}

.articolo{
    gap: 0;
}

.articolo-titolo{
    justify-content: space-between;
    padding-top: 3rem!important;
    padding-bottom: 2rem!important;

}

.articolo-titolo h1{
    width:100%
}

.articolo-testata img{
    object-fit: cover;
    height: 100%;
    width: 100%;
}

@media (max-width: 1024px) {
    .articolo-testata{
        height:50vh;
    }
}

@media (max-width: 768px) {
  .articolo-testata{
    height:50vh;
  }
}

.tag-style p{
    display: inline-block;
    color:var(--color-black)!important;
    width: auto;
    padding:0.5rem 1rem;
    background: var(--color-grigio);
}

footer .sub-menu li a{
    color: white!important
}

footer .sub-menu li a:active,
footer .sub-menu li a:hover{
    color: var(--color-rosso)!important;
}


.vc_video-bg {
    height: 100%;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
}

.book-a-meeting-link { 
	position: fixed;
	bottom: 70px;
	right: 0;
	height: 50px;
	width: 50px;
	border-radius: 50%;
	z-index: 9999;
	margin: 15px;
	background-color: rgba(218,25,68,0.9);
	display: flex;
	justify-content: center;
	align-items: center;
}

.book-a-meeting-link img {
    max-width: 50%; 
    max-height: 50%;
	top:-2px;
	position:relative;
}

@media (max-width: 768px) {
  .book-a-meeting-link { 
    margin: 10px;
  }
}

.link-underline a{
	text-decoration: underline!important;
}

.w-nav-icon>div {
    border-bottom: 2px solid!important;
}

/* template verticale */


    .header-spacer { height: var(--header-height); background: #f0f0f0; }

	.content-wrapper{
		width:100%;
	}

   
    .hero-grid {
        display: flex;
        width: 100%;
        min-height: calc(90vh - var(--header-height));
    }
    .title-col { width: 50%; display: flex; align-items: center; }
    .image-col { width: 50%; }
    .image-col img { width: 100%; height: 100%; object-fit: cover; display: block; }


    @media (max-width: 1024px) {
        .hero-grid {
            flex-direction: column-reverse; 
            min-height: auto;
        }
        .title-col, .image-col { width: 100%; }
    }