:root {
    --page-padding: 4rem;
    --page-padding-sma: 1.5rem;
    --bs-body-font-family: "open sans", sans-serif;
    --bs-body-font-weight: 300!important;
}

html {
    scroll-padding-top: 160px!important;
}

@media (max-width: 1024px) {
    .wpb_column.vc_column_container:not(:has(> .vc_column-inner > *)) {
        display: none !important;
    }

}

body:has(.banner-generico) footer .l-section{
    margin-top:0!important;
}

#main {
	overflow-x: hidden!important;
}

h1, h2, h3, h4, h5, h6{
    padding:0!important
}

main a:not(.alternative-menu a, .rufa-slider-wrapper a){
	text-decoration: underline;
}

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


.h2-title h2{
    line-height: 3.5rem!important;
    font-weight: 100!important;
    font-size: 3rem!important;
}

@media (max-width: 768px) {
	.h2-title h2{
    line-height: 2.8rem!important;
    font-weight: 100!important;
    font-size: 2.5rem!important;
}
}
.v-center{display: flex; justify-content: center; flex-flow: column;}

/* FOOTER */

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

footer a{
    text-decoration:underline;
    color: white!important;
} 

footer .wpb_wrapper ul{
    list-style: none!important;
    margin: 0!important;
} 

footer .wpb_wrapper li{
    margin:0;
}

.flickr{
    width:auto!important;
}

@media (max-width: 1024px) {

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

.l-footer .l-section{
    padding-left: var(--page-padding-sma)!important;
    padding-right: var(--page-padding-sma)!important;
}
}

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

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


ul{
    margin-left:1rem!important;
}

.list-grid-2cols {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0rem 1.5rem;
}

@media (max-width: 768px) {
    .list-grid-2cols { grid-template-columns: 1fr; }
}

/* RUFA CARD */


.rufa-card__sopratitolo,
.rufa-card__sottotitolo {
    line-height: 1.3;
    margin: 0;
}

.rufa-card__sopratitolo {
    font-weight: bold;
	    font-size: 1rem;
	margin-bottom:8px
}

.rufa-card__sottotitolo {
	font-style: italic !important;
	    font-size: 1rem;
	margin-top:8px;
}