/*
Theme Name: GBS Child
Theme URI: https://www.gbs-group.it/
Author: Global Business Solution S.r.l.
Author URI: https://www.gbs-group.it/
Description: GBS Custom WordPress Theme. This theme is not available for you to download or buy.
Template: gbs
Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */




/*classi per correggere impostazioni tema */
::-moz-selection {
    /* Code for Firefox */
    color: var(--text-color);
    background: var(--accent-color);
}
::selection {
    background: var(--custom-color-1);
    color: var(--text-color-alt);
}

::-webkit-scrollbar {
    width: var(--width-scrollbar);
}
::-webkit-scrollbar-thumb {
    background:var(--background-scrollbar-thumb);
    border-radius: var(--radius-scrollbar);
}
::-webkit-scrollbar-track {
    background:var(--background-scrollbar-track);
}

/*reset*/
*:focus {
    outline: none;
}
* img {
    image-rendering: -webkit-optimize-contrast !important;
}
* {
    text-rendering: optimizeLegibility !important;
}
html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}
body, html {
    width: 100vw !important;
    overflow-x: hidden !important;
    background: var(--background-color-body);
}
main{
    overflow:hidden;
}
figure {
    margin: 0;
}
p {
    margin-block-start: initial;
    margin-block-end: 1em;
}
a:hover {
    text-decoration: none;
}


/*----------------extra----------------*/
div#Content {
    padding: 0;
}
.post,.page {
    margin:0em;
}
.page-content,
.entry-content,
.entry-summary {
    margin: 0em 0 0;
}
html.stop {
    overflow: hidden !important;
}

/*----------------clear----------------*/
.clearfix:before,.clearfix:after{
    content:'\0020';
    display:block;
    overflow:hidden;
    visibility:hidden;
    width:0;
    height:0;
}
.clearfix:after{
    clear:both;
}
.clear{
    clear:both;
    display:block;
    overflow:hidden;
    visibility:hidden;
    width:0;
    height:0;
}

/*----------------Rules for icon sizes----------------*/
i.material-icons,
span.material-icons {
    line-height: inherit;
    vertical-align: text-bottom;
    font-size: 16px;
	line-height: 1.3;
}

i.material-icons.md-18 { font-size: 18px; }
i.material-icons.md-24 { font-size: 24px; } /* Default */
i.material-icons.md-36 { font-size: 36px; }
i.material-icons.md-48 { font-size: 48px; }

/*----------------righe e colonne----------------*/
section {
    margin: 0 auto;
}
section.margin {
    margin-top: var(--space-margin);
    margin-bottom: var(--space-margin);
}
section.margin.first {
    margin-top: calc(var(--space-margin) * 2);
    margin-bottom: var(--space-margin);
}
section.margin.last {
    margin-bottom: calc(var(--space-margin) * 2);
    margin-top: var(--space-margin);
}
section.margin.last.margin0bottom {
    margin-bottom: 0;
    margin-top: var(--space-margin);
}
.margin-top {
    margin-top: var(--space-margin);
}
.margin-bottom {
    margin-bottom: var(--space-margin);
}
.full-height {
    height: 100vh;
}
.height-100 {
    height: 100%;
}
.h-300 {
  height: 300px;
}
.full-width {
    max-width: none !important;
}
.width-100 {
    width: 100%;
}
.width-auto{
    width: auto;
}
section,
.w-container,
.w-container-small,
.col-100,
.col-85,
.col-80,
.col-75,
.col-70,
.col-60,
.col-50,
.col-40,
.col-33,
.col-30,
.col-25,
.col-15 {
    box-sizing: border-box;
}
.contenuto {
    padding: var(--padding-container)
}

/*----------------colonne----------------*/
.w-container {max-width: var(--w-container);width: 100%;}
.w-container-small {max-width: var(--w-container-stretto);width: 100%;}
.w-container-header {max-width: var(--w-container-header);width: 100%;}
.col-100,
.full-width {width: 100%; max-width:none;}


/*grid*/
section .grid-container {
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto;
  grid-auto-flow: dense;
  /* align-items: start; */
  display: grid;
  margin-left: auto;
  margin-right: auto;
  /* border:#ff00004a 0.5px dotted; */
  box-sizing: border-box;
}
section .grid-container .cell {
  box-sizing: border-box;
  position: relative;
}

section .grid-container .cell.g12 {grid-column-end: span 12;}
section .grid-container .cell.g11 {grid-column-end: span 11;}
section .grid-container .cell.g10 {grid-column-end: span 10;}
section .grid-container .cell.g9 {grid-column-end: span 9;}
section .grid-container .cell.g8 {grid-column-end: span 8;}
section .grid-container .cell.g7 {grid-column-end: span 7;}
section .grid-container .cell.g6 {grid-column-end: span 6;}
section .grid-container .cell.g5 {grid-column-end: span 5;}
section .grid-container .cell.g4 {grid-column-end: span 4;}
section .grid-container .cell.g3 {grid-column-end: span 3;}
section .grid-container .cell.g2 {grid-column-end: span 2;}
section .grid-container .cell.g1 {grid-column-end: span 1;}


section .grid-container .cell.start1 {
  grid-column-start: 1;
}
section .grid-container .cell.start2 {
  grid-column-start: 2;
}
section .grid-container .cell.start3 {
  grid-column-start: 3;
}
section .grid-container .cell.start4 {
  grid-column-start: 4;
}
section .grid-container .cell.start5 {
  grid-column-start: 5;
}
section .grid-container .cell.start6 {
  grid-column-start: 6;
}
section .grid-container .cell.start7 {
  grid-column-start: 7;
}
section .grid-container .cell.start8 {
  grid-column-start: 8;
}
section .grid-container .cell.start9 {
  grid-column-start: 9;
}
section .grid-container .cell.start10 {
  grid-column-start: 10;
}
section .grid-container .cell.start11 {
  grid-column-start: 11;
}
section .grid-container .cell.start12 {
  grid-column-start: 12;
}

.grid-gap10{
    grid-gap:10px;
}
.grid-gap20{
    grid-gap:20px;
}
.grid-gap30{
    grid-gap:30px;
}
.grid-gap40{
    grid-gap:40px;
}
.grid-gap50{
    grid-gap:50px;
}
.grid-gap60{
    grid-gap:60px;
}

.cell.gutter {
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}

/*colonne standard*/
.col-85 {width: 85%;}
.col-80 {width: 80%;}
.col-75 {width: 75%;}
.col-70 {width: 70%;}
.col-66 {width: 66%;}
.col-65 {width: 65%;}
.col-60 {width: 60%;}
.col-55 {width: 55%;}
.col-50 {width: 50%;}
.col-45 {width: 45%;}
.col-40 {width: 40%;}
.col-35 {width: 35%;}
.col-33 {width: 33%;}
.col-30 {width: 30%;}
.col-25 {width: 25%;}
.col-20 {width: 20%;}
.col-15 {width: 15%;}
.col-12 {width: 12.5%;}
.col-10 {width: 10%;}


/*colonne-flex + gap*/
.col-20-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 14%;
  }
.col-25-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 20%;
  }
.col-30-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 24%;
  }
.col-40-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 34%;
  }
.col-50-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 44%;
  }
.col-60-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 54%;
  }
.col-80-flex {
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis:74%;
  }

.gap-10px {gap: 10px;}
.gap-15px {gap: 15px;}
.gap-20px {gap: 20px;}
.gap-30px {gap: 30px;}

.column-gap-1 {column-gap: 3%;}
.column-gap-3 {column-gap: 6%;}
.column-gap-6 {column-gap: 12%;}

.row-gap-12 {row-gap: 12px;}
.row-gap-24 {row-gap: 24px;}
.row-gap-48 {row-gap: 48px;}

.grid-gap50 .col-25{
  width: calc(25% - 37.5px);
}
/*----------------flex----------------*/

.block {display: block;}

.flex {display: flex;}

.flex-row {flex-direction: row;}
.flex-column {flex-direction: column;}

.flex-row-rev {flex-direction: row-reverse;}
.flex-column-rev {flex-direction: column-reverse;}

.flex-wrap {flex-wrap: wrap;}
.flex-nowrap {flex-wrap: nowrap;}

.flex-shrink-0 {flex-shrink: 0;}
.flex-shrink-1 {flex-shrink: 1;}

.flex-grow-0 {flex-grow: 0;}
.flex-grow-1 {flex-grow: 1;}

.align-items-center {align-items: center;}
.align-items-end {align-items: flex-end;}
.align-items-start {align-items: flex-start;}
.align-items-stretch {align-items: stretch;}

.align-content-center {align-content: center;}
.align-content-end {align-content: flex-end;}
.align-content-start {align-content: flex-start;}
.align-content-stretch {align-content: stretch;}

.align-self-center {align-content: center;}
.align-self-end {align-content: flex-end;}
.align-self-start {align-content: flex-start;}
.align-self-stretch {align-content: stretch;}

.justify-content-center {justify-content: center;}
.justify-content-end {justify-content: end;}
.justify-content-start {justify-content: flex-start;}
.justify-content-space-around {justify-content: space-around;}
.justify-content-space-between {justify-content: space-between;}
.justify-content-space-evenly {justify-content: space-evenly;}

.align-self-center{align-self: center;}


/*----------------spazi dinamici----------------*/
.padding {padding: var(--padding-box);}

.padding0 {padding: 0px !important;}
.padding0sx {padding-left: 0px !important;}
.padding0dx {padding-right: 0px !important;}
.padding0top {padding-top: 0px !important;}
.padding0bottom {padding-bottom: 0px !important;}

.paddingbase{padding: var(--baseline);}
.paddingbasetop{padding-top: var(--baseline);}
.paddingbasebottom{padding-bottom: var(--baseline);}
.paddingbaseleft{padding-left: var(--baseline);}
.paddingbaseright{padding-right: var(--baseline);}
.paddingbasey{padding-top: var(--baseline); padding-bottom: var(--baseline);}
.paddingbasex{padding-left: var(--baseline); padding-right: var(--baseline);}

.paddingbase2{padding: var(--spacing-2);}
.paddingbasetop2{padding-top: var(--spacing-2);}
.paddingbasebottom2{padding-bottom: var(--spacing-2);}
.paddingbaseleft2{padding-left: var(--spacing-2);}
.paddingbaseright2{padding-right: var(--spacing-2);}
.paddingbasey2{padding-top: var(--spacing-2); padding-bottom: var(--spacing-2);}
.paddingbasex2{padding-left: var(--spacing-2); padding-right: var(--spacing-2);}

.paddingbase3{padding: var(--spacing-3);}
.paddingbasetop3{padding-top: var(--spacing-3);}
.paddingbasebottom3{padding-bottom: var(--spacing-3);}
.paddingbaseleft3{padding-left: var(--spacing-3);}
.paddingbaseright3{padding-right: var(--spacing-3);}
.paddingbasey3{padding-top: var(--spacing-3); padding-bottom: var(--spacing-3);}
.paddingbasex3{padding-left: var(--spacing-3); padding-right: var(--spacing-3);}

.paddingbase4{padding: var(--spacing-4);}
.paddingbasetop4{padding-top: var(--spacing-4);}
.paddingbasebottom4{padding-bottom: var(--spacing-4);}
.paddingbaseleft4{padding-left: var(--spacing-4);}
.paddingbaseright4{padding-right: var(--spacing-4);}
.paddingbasey4{padding-top: var(--spacing-4); padding-bottom: var(--spacing-4);}
.paddingbasex4{padding-left: var(--spacing-4); padding-right: var(--spacing-4);}

.paddingbase5{padding: var(--spacing-5);}
.paddingbasetop5{padding-top: var(--spacing-5);}
.paddingbasebottom5{padding-bottom: var(--spacing-5);}
.paddingbaseleft5{padding-left: var(--spacing-5);}
.paddingbaseright5{padding-right: var(--spacing-5);}
.paddingbasey5{padding-top: var(--spacing-5); padding-bottom: var(--spacing-5);}
.paddingbasex5{padding-left: var(--spacing-5); padding-right: var(--spacing-5);}

/*margin*/
.margin0 {margin: 0px !important;}
.margin0sx {margin-left: 0px !important;}
.margin0dx {margin-right: 0px !important;}
.margin0top {margin-top: 0px !important;}
.margin0bottom {margin-bottom: 0px !important;}

.marginbase{margin: var(--baseline);}
.marginbasetop{margin-top: var(--baseline);}
.marginbasebottom{margin-bottom: var(--baseline) !important;}
.marginbaseleft{margin-left: var(--baseline);}
.marginbaseright{margin-right: var(--baseline);}
.marginbasey{margin-top: var(--baseline); margin-bottom: var(--baseline);}
.marginbasex{margin-left: var(--baseline); margin-right: var(--baseline);}

.marginbase2{margin: var(--spacing-2);}
.marginbasetop2{margin-top: var(--spacing-2);}
.marginbasebottom2{margin-bottom: var(--spacing-2) !important;}
.marginbaseleft2{margin-left: var(--spacing-2);}
.marginbaseright2{margin-right: var(--spacing-2);}
.marginbasey2{margin-top: var(--spacing-2); margin-bottom: var(--spacing-2);}
.marginbasex2{margin-left: var(--spacing-2); margin-right: var(--spacing-2);}

.marginbase3{margin: var(--spacing-3);}
.marginbasetop3{margin-top: var(--spacing-3);}
.marginbasebottom3{margin-bottom: var(--spacing-3);}
.marginbaseleft3{margin-left: var(--spacing-3);}
.marginbaseright3{margin-right: var(--spacing-3);}
.marginbasey3{margin-top: var(--spacing-3); margin-bottom: var(--spacing-3);}
.marginbasex3{margin-left: var(--spacing-3); margin-right: var(--spacing-3);}

.marginbase4{margin: var(--spacing-4);}
.marginbasetop4{margin-top: var(--spacing-4);}
.marginbasebottom4{margin-bottom: var(--spacing-4);}
.marginbaseleft4{margin-left: var(--spacing-4);}
.marginbaseright4{margin-right: var(--spacing-4);}
.marginbasey4{margin-top: var(--spacing-4); margin-bottom: var(--spacing-4);}
.marginbasex4{margin-left: var(--spacing-4); margin-right: var(--spacing-4);}

.marginbase5{margin: var(--spacing-5);}
.marginbasetop5{margin-top: var(--spacing-5);}
.marginbasebottom5{margin-bottom: var(--spacing-5);}
.marginbaseleft5{margin-left: var(--spacing-5);}
.marginbaseright5{margin-right: var(--spacing-5);}
.marginbasey5{margin-top: var(--spacing-5); margin-bottom: var(--spacing-5);}
.marginbasex5{margin-left: var(--spacing-5); margin-right: var(--spacing-5);}


/*----------------spazi px----------------*/
.padding10 {padding: 10px;}
.padding10sx {padding-left: 10px;}
.padding10dx {padding-right: 10px;}
.padding10top {padding-top: 10px;}
.padding10bottom {padding-bottom: 10px;}

.padding20 {padding: 20px;}
.padding20sx {padding-left: 20px;}
.padding20dx {padding-right: 20px;}
.padding20top {padding-top: 20px;}
.padding20bottom {padding-bottom: 20px;}

.padding30 {padding: 30px;}
.padding30sx {padding-left: 30px;}
.padding30dx {padding-right: 30px;}
.padding30top {padding-top: 30px;}
.padding30bottom {padding-bottom: 30px;}

.padding40 {padding: 40px;}
.padding40sx {padding-left: 40px;}
.padding40dx {padding-right: 40px;}
.padding40top {padding-top: 40px;}
.padding40bottom {padding-bottom: 40px;}

.padding60 {padding: 60px;}
.padding60sx {padding-left: 60px;}
.padding60dx {padding-right: 60px;}
.padding60top {padding-top: 60px;}
.padding60bottom {padding-bottom: 60px;}

.padding80 {padding: 80px;}
.padding80sx {padding-left: 80px;}
.padding80dx {padding-right: 80px;}
.padding80top {padding-top: 80px;}
.padding80bottom {padding-bottom: 80px;}

.padding100 {padding: 100px;}
.padding100sx {padding-left: 100px;}
.padding100dx {padding-right: 100px;}
.padding100top {padding-top: 100px;}
.padding100bottom {padding-bottom: 100px;}

.padding70 {padding: 70px;}
.padding70sx {padding-left: 70px;}
.padding70dx {padding-right: 70px;}
.padding70top {padding-top: 70px;}
.padding70bottom {padding-bottom: 70px;}

.padding125top {padding-top: 125px;}
.padding125bottom {padding-bottom: 125px;}

/*margin*/
.margin0 {margin: 0px;}
.margin0sx {margin-left: 0px;}
.margin0dx {margin-right: 0px;}
.margin0top {margin-top: 0px;}
.margin0bottom {margin-bottom: 0px;}

.margin10 {margin: 10px;}
.margin10sx {margin-left: 10px;}
.margin10dx {margin-right: 10px;}
.margin10top {margin-top: 10px;}
.margin10bottom {margin-bottom: 10px;}

.margin20 {margin: 20px;}
.margin20sx {margin-left: 20px;}
.margin20dx {margin-right: 20px;}
.margin20top {margin-top: 20px;}
.margin20bottom {margin-bottom: 20px;}

.margin30 {margin: 30px;}
.margin30sx {margin-left: 30px;}
.margin30dx {margin-right: 30px;}
.margin30top {margin-top: 30px;}
.margin30bottom {margin-bottom: 30px;}

.margin40 {margin: 40px;}
.margin40sx {margin-left: 40px;}
.margin40dx {margin-right: 40px;}
.margin40top {margin-top: 40px;}
.margin40bottom {margin-bottom: 40px;}

.margin60 {margin: 60px;}
.margin60sx {margin-left: 60px;}
.margin60dx {margin-right: 60px;}
.margin60top {margin-top: 60px;}
.margin60bottom {margin-bottom: 60px;}

.margin70bottom {margin-bottom: 70px;}
.margin70top {margin-top: 70px;}

.margin100bottom {margin-bottom: 100px;}
.margin100top {margin-top: 100px;}

.margin150bottom {margin-bottom: 150px;}
.margin150top {margin-top: 150px;}

.margin250bottom {margin-bottom: 250px;}
.margin250top {margin-top: 250px;}

.margin-125top {margin-top: -125px;}

.margin-auto {margin: 0 auto;}
.no-margin {margin: 0px !important;}
.no-padding {padding: 0px !important;}

/*----------------z-index----------------*/
.z-index-negativo{z-index: -1;}
.z-index-1{z-index: 1;}
.z-index-2{z-index: 2;}
.z-index-3{z-index: 3;}
.z-index-4{z-index: 4;}
.z-index-5{z-index: 5;}
.z-index-6{z-index: 6;}
.z-index-7{z-index: 7;}
.z-index-8{z-index: 8;}
.z-index-9{z-index: 9;}

.z-index-10{z-index: 10;}
.z-index-100{z-index: 100;}
.z-index-1000{z-index: 1000;}
.z-index-10000{z-index: 10000;}

/*----------------classi generiche----------------*/
.display-block {display: block !important;}
.display-inline-block {display: inline-block;}
.display-inline-flex {display: inline-flex;}
.clear-both {clear: both;}
.hidden {display: none;}
.super-hidden {display: none!important;}
.display-block-mb{display: none!important;}
.display-inline-block-mb{display: none!important;}
.float-left {float: left;}
.float-right {float: right;}
.float-none {float: none;}
.align-center {text-align: center;}
.align-right {text-align: right;}
.align-left {text-align: left;}
.vertical-top {vertical-align: top;}
.vertical-middle {vertical-align: middle;}
.overflow {overflow: visible !important;}
.no-overflow {overflow: hidden !important;}
.no-overflow-x {overflow-x: hidden !important;}
.no-overflow-y {overflow-y: hidden !important;}
.bordo-top {border-top: 1px solid #d1d1d1;}
.bordo-bottom {border-bottom: 1px solid #d1d1d1;}
.bordo-destra {border-right: 1px solid #d1d1d1;}
.bordo-sinistra {border-left: 1px solid #d1d1d1;}
.bordo {border: 1px solid #d1d1d1;}
.tondo {border-radius: 100% !important;}
.background-color {background-color: var(--grey)}

/*----------------liste----------------*/
main ul, main ol {
    /*list-style: none;*/
    padding: 0;
    margin: .5em 0 1.5em 2em;
}

main ol {
    counter-reset: my-awesome-counter;
    margin-top: 5px;
}

main ol li {
    counter-increment: my-awesome-counter;
    vertical-align: middle;
    clear: both;
    display: block;
    align-items: center;
    margin-bottom: 10px;
    font-family: var(--font-principale);
    min-height: 1em;
    vertical-align: middle
}

main ol li::before {
    content: counter(my-awesome-counter);
    color: #fff;
    font-weight: 600;
    display: block;
    width: 1.3em;
    height: 1.3em;
    font-size: 1em;
    line-height: 1.25em;
    text-align: center;
    display: inline-block;
    float: left;
    margin-left: -1em;
    margin-right: 5px;
    border-radius: 100%;
    background: var(--accent-color);
}

main ol li ol li::before {
    display: block;
    width: 1.3em;
    height: 1.3em;
    font-size: .9em;
    line-height: 1.2em;
    margin: 0 7px 0 20px
}

main ul li::before {
    /*content: "";*/
    color: var(--text-color);
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -2em;
    margin-bottom: 10px;
    margin-right: 0;
    font-size: 10px;
    padding-right: 2em;
}

ul.clean,
ol.clean,
ul.clean li,
ol.clean li{
    padding:0;
    margin:0;
    list-style:none;
}
ul.clean li:before,
ol.clean li:before{
  content:none;
}
/*----------------stili generici----------------*/
.box-shadow {box-shadow: var(--shadow);}
.border-radius {border-radius: var(--radius);}
.border-radius-small {border-radius: var(--radius-small);}

.circle {border-radius: 100%;}
.figure-radius {
    overflow: hidden;
    display: flex;
    border-radius: var(--radius-small);
}
.figure-radius img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*----------------position----------------*/
.absolute {position: absolute;}
.fixed {position: fixed;}
.overlay,
.relative {position: relative;}

.top0 {top: 0;}
.bottom0 {bottom: 0;}
.left0 {left: 0;}
.right0 {right: 0;}

/*----------------overlay----------------*/
.pop-up-overlay * {
    z-index: 10;
}
.pop-up-overlay:before {
    content: '';
    top: 0;
    background: #00000055;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 2;
}
.pop-up-overlay.blur:before {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background: #0000001a;
}

/*----------------colori variabili----------------*/
.testo-normale {color: var(--text-color) !important;}
.testo-alternativo {color: var(--text-color-alt) !important;}
.testo-evidenza {color: var(--accent-color) !important;}

/*colori custom*/
.testo-custom-1, .testo-custom-1 p {color: var(--custom-color-1) !important;}
.testo-custom-2, .testo-custom-2 p {color: var(--custom-color-2) !important;}
.testo-custom-3, .testo-custom-3 p {color: var(--custom-color-3) !important;}
.testo-custom-4, .testo-custom-4 p {color: var(--custom-color-4) !important;}

/*colori fissi*/
.negativo,.bianco,.bianco p,.white ,.white p {color: var(--white) !important;}
.nero, .nero p,.black ,.black p {color: var(--black) !important;}

.grey,.grey p {color: var(--grey);}
.darkgrey,.darkgrey p {color: var(--darkgrey);}
.darkgrey2,.darkgrey2 p {color: var(--darkgrey2);}
.darkgrey3,.darkgrey3 p {color: var(--darkgrey3);}
.darkergrey,.darkergrey p {color: var(--darkergrey);}
.darkergrey2,.darkergrey2 p {color: var(--darkergrey2);}


/*colori background*/
.bg-main {background-color: var(--background-color);}
.bg-alt {background-color: var(--background-color-alt);}
.bg-evidenza {background-color: var(--accent-color);}

/*colori custom*/
.bg-custom-1 {background-color: var(--custom-color-1);}
.bg-custom-2 {background-color: var(--custom-color-2);}
.bg-custom-3 {background-color: var(--custom-color-3);}
.bg-custom-4 {background-color: var(--custom-color-4);}

/*colori fissi*/
.bg-black {background: var(--black);}
.bg-white {background: var(--white);}

.bg-grey {background: var(--grey);}
.bg-darkgrey {background: var(--darkgrey);}
.bg-darkgrey2 {background: var(--darkgrey2);}
.bg-darkgrey3 {background: var(--darkgrey3);}
.bg-darkergrey {background: var(--darkergrey);}
.bg-darkergrey2 {background: var(--darkergrey2);}

/*svg*/
.stroke-accent,.stroke-accent *{stroke: var(--accent-color);}
.fill-accent,.fill-accent *{fill: var(--accent-color);}

.bg-size-cover {background-size: cover;}
.bg-position-center {background-position: center center;}
/*testo con sfumatura*/

.color-clip,
.color-clip-hover:hover{
    background: rgb(26,63,244);
    background: -moz-linear-gradient(90deg, rgba(26,63,244,1) 0%, rgba(1,164,255,1) 42%, rgba(206,255,0,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(26,63,244,1) 0%, rgba(1,164,255,1) 42%, rgba(206,255,0,1) 100%);
    background: linear-gradient(90deg, rgba(26,63,244,1) 0%, rgba(1,164,255,1) 42%, rgba(206,255,0,1) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/*opacity*/
.opacity70{opacity:.7;}
.opacity50{opacity:.5;}
.opacity30{opacity:.3;}

/*----------------fine colori----------------*/

/*----------------font----------------*/

.font-principale {
    font-family: var(--font-principale) !important;
}
.font-secondario, .font-secondario p {
    font-family: var(--font-secondario) !important;
}
.breadcrumb {
    font-size:var(--size-p);
}
.breadcrumb a {
    text-decoration: none;
    color: var(--text-color);
}
/*----------------line-height-generiche----------------*/

.line-height-1 {line-height: 1;}
.line-height-1-2 {line-height: 1.2;}
.line-height-1-4 {line-height: 1.4;}
.line-height-1-6 {line-height: 1.6;}
.line-height-1-8 {line-height: 1.8;}
.line-height-2 {line-height: 2;}

/*stili*/
.italic {font-style: italic !important;}
.maiuscolo,.uppercase {text-transform: uppercase !important;}
.minuscolo,.lowercase {text-transform: lowercase !important;}
.iniziali-maiuscole,.capitalize {text-transform: capitalize !important;}

/*pesi*/
.thin {font-weight: 100 !important;}
.extralight, .extralight p {font-weight: 200 !important;}
.light, .light p {font-weight: 300 !important;}
.regular {font-weight: 400 !important;}
.medium {font-weight: 500 !important;}
.semibold {font-weight: 600 !important;}
b,strong,.bold,.grassetto {font-weight: 700 !important;}
.extrabold  {font-weight: 800 !important;}
.black {font-weight: 900 !important;}



a, a:visited, a:focus {
    color: var(--accent-color);
	text-decoration:none;
}
a.clean {
    color: unset;
}

a:hover {
    color: var(--accent-color);
}

body, p, li, .p-base {
    font-family: var(--family-p);
    font-weight: var(--weight-p);
    font-size: var(--size-p);
    line-height: var(--lineH-p);
    color: var(--text-color);

}
.testo-alternativo p,
.testo-alternativo p li {
    color: var(--text-color-alt);
}
.p-big, .p-big p {
    font-family: var(--family-p-big);
    font-weight: var(--weight-p-big);
    font-size: var(--size-p-big);
    line-height: var(--lineH-p-big);
}
.p-small, .p-small p {
    font-family: var(--family-p-small);
    font-weight: var(--weight-p-small);
    font-size: var(--size-p-small);
    line-height: var(--lineH-p-small);
}

h1,
.title-h1 {
    font-family: var(--family-h1);
    font-size: var(--size-h1);
    line-height: var(--lineH-h1);
    font-weight: var(--weight-h1);
    letter-spacing: var(--spacing-h1);
}

h2,
.title-h2 {
    font-family: var(--family-h1);
    font-size: var(--size-h2);
    line-height: var(--lineH-h2);
    font-weight: var(--weight-h2);
    letter-spacing: var(--spacing-h2)
}

h3,
.title-h3 {
    font-family: var(--family-h1);
    font-size: var(--size-h3);
    line-height: var(--lineH-h3);
    font-weight: var(--weight-h3);
    letter-spacing: var(--spacing-h3)
}
h4,
.title-h4,
.title-h4 p {
    font-family: var(--family-h4);
    font-size: var(--size-h4);
    line-height: var(--lineH-h4);
    font-weight: var(--weight-h4);
    letter-spacing: var(--spacing-h4)
}
h5,
.title-h5,
.title-h5 p {
    font-family: var(--family-h5);
    font-size: var(--size-h5);
    line-height: var(--lineH-h5);
    font-weight: var(--weight-h5);
    letter-spacing: var(--spacing-h5)
}
h6,
.title-h6,
.title-h6 p {
    font-family: var(--family-h6);
    font-size: var(--size-h6);
    line-height: var(--lineH-h6);
    font-weight: var(--weight-h6);
    letter-spacing: var(--spacing-h6)
}
h1,h2,h3,h4,h5,h6,
.title-h1,.title-h2,.title-h3,.title-h4,.title-h5,.title-h6 {
    color: var(--text-color);
    margin: 0.5em 0;
}
h1.margin,h2.margin,h3.margin,h4.margin,h5.margin,h6.margin,
.title-h1.margin,.title-h2.margin,.title-h3.margin,.title-h4.margin,.title-h5.margin,.title-h6.margin {
    margin: 1em 0;
}

/*----------------Fine font----------------*/


/*----------------Bottoni----------------*/
.btn,
button.btn,
input[type="submit"].btn {
    font-family: var(--family-btn-s1);
    letter-spacing: var(--spacing-btn-s1);
    font-weight: var(--weight-btn-s1);
    text-transform: var(--transform-btn-s1);
    font-size: var(--size-btn-s1);
    line-height: var(--lineH-btn-s1);
    padding: var(--padding-btn-s1);
    margin: var(--margin-btn-s1);
    border-radius: var(--radius-btn-s1);
    border:var(--border-btn-s1) solid;
    /*global*/
    text-decoration: none;
    display: inline-block;
    text-align: center;
    overflow: hidden;
    transition: all 0.35s;
}

.btn:hover {
    transition: all 0.35s;
}
.btn:link,
.btn:visited {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
}
button::after {
    display: none;
}


/*dimensioni bottoni*/
.btn.btn-big,
button.btn.btn-big,
input[type="submit"].btn.btn-big {
    font-family: var(--family-btn-s2);
    letter-spacing: var(--spacing-btn-s2);
    font-weight: var(--weight-btn-s2);
    text-transform: var(--transform-btn-s2);
    font-size: var(--size-btn-s2);
    line-height: var(--lineH-btn-s2);
    padding: var(--padding-btn-s2);
    margin: var(--margin-btn-s2);
    border-radius: var(--radius-btn-s2);
    border:var(--border-btn-s2) solid;
}

.btn.btn-small,
button.btn.btn-small,
input[type="submit"].btn.btn-small {
    font-family: var(--family-btn-s3);
    letter-spacing: var(--spacing-btn-s3);
    font-weight: var(--weight-btn-s3);
    text-transform: var(--transform-btn-s3);
    font-size: var(--size-btn-s3);
    line-height: var(--lineH-btn-s3);
    padding: var(--padding-btn-s3);
    margin: var(--margin-btn-s3);
    border-radius: var(--radius-btn-s3);
    border:var(--border-btn-s3) solid;
}



/*tipologia bottone*/

/*Stile 1*/
a.btn,
button.btn,
input[type="submit"].btn,
.btn.btn-style-1,
button.btn-style-1,
input[type="submit"].btn.btn-style-1 {
    color:var(--color-btn-type-1);
    border-color:var(--border-btn-type-1);
    background-color:var(--bg-top-btn-type-1);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-1) 0%, var(--bg-bottom-btn-type-1) 100%);
}
a.btn:hover,
button.btn:hover,
.btn.btn-style-1:hover,
button.btn-style-1:hover{
    color:var(--color-btn-type-1-h);
    border-color: var(--border-btn-type-1-h);
}
/*input*/
input[type="submit"].btn:hover,
input[type="submit"].btn.btn-style-1:hover {
    color:var(--color-btn-type-1-h);
    background-color:var(--bg-top-btn-type-1-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-1-h) 0%, var(--bg-bottom-btn-type-1-h) 100%);
    border-color: var(--border-btn-type-1-h);
}
a.btn:before,
button.btn:before,
.btn.btn-style-1:before,
button.btn-style-1:before {
    background-color:var(--bg-top-btn-type-1-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-1-h) 0%, var(--bg-bottom-btn-type-1-h) 100%);
}



/*Stile 2*/
.btn.btn-style-2,
button.btn.btn-style-2,
input[type="submit"].btn.btn-style-2 {
    color:var(--color-btn-type-2);
    border-color:var(--border-btn-type-2);
    background-color:var(--bg-top-btn-type-2);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-2) 0%, var(--bg-bottom-btn-type-2) 100%);
}
/*input*/
.btn.btn-style-2:hover,
button.btn.btn-style-2:hover{
    color:var(--color-btn-type-2-h);
    border-color: var(--border-btn-type-2-h);
}
/*input hover*/
input[type="submit"].btn.btn-style-2:hover {
    color:var(--color-btn-type-2-h);
    background-color:var(--bg-top-btn-type-2-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-2-h) 0%, var(--bg-bottom-btn-type-2-h) 100%);
    border-color: var(--border-btn-type-2-h);
}
/*before*/
.btn.btn-style-2:before,
button.btn.btn-style-2:before{
    background-color:var(--bg-top-btn-type-2-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-2-h) 0%, var(--bg-bottom-btn-type-2-h) 100%);
}

/*Stile 3*/
.btn.btn-style-3,
button.btn.btn-style-3,
input[type="submit"].btn.btn-style-3 {
    color:var(--color-btn-type-3);
    border-color:var(--border-btn-type-3);
    background-color:var(--bg-top-btn-type-3);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-3) 0%, var(--bg-bottom-btn-type-3) 100%);
}
/*hover*/
.btn.btn-style-3:hover,
button.btn.btn-style-3:hover{
    color:var(--color-btn-type-3-h);
    border-color: var(--border-btn-type-3-h);
}
/*input hover*/
input[type="submit"].btn.btn-style-3:hover {
    color:var(--color-btn-type-3-h);
    background-color:var(--bg-top-btn-type-3-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-3-h) 0%, var(--bg-bottom-btn-type-3-h) 100%);
    border-color: var(--border-btn-type-3-h);
}
/*before*/
.btn.btn-style-3:before,
button.btn.btn-style-3:before{
    background-color:var(--bg-top-btn-type-3-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-3-h) 0%, var(--bg-bottom-btn-type-3-h) 100%);
}

/*Stile 4*/
.btn.btn-style-4,
button.btn.btn-style-4,
input[type="submit"].btn.btn-style-4 {
    color:var(--color-btn-type-4);
    border-color:var(--border-btn-type-4);
    background-color:var(--bg-top-btn-type-4);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-4) 0%, var(--bg-bottom-btn-type-4) 100%);
}
/*hover*/
.btn.btn-style-4:hover,
button.btn.btn-style-4:hover {
    color:var(--color-btn-type-4-h);
    border-color: var(--border-btn-type-4-h);
}
/*input hover*/
input[type="submit"].btn.btn-style-4:hover {
    color:var(--color-btn-type-4-h);
    background-color:var(--bg-top-btn-type-4-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-4-h) 0%, var(--bg-bottom-btn-type-4-h) 100%);
    border-color: var(--border-btn-type-4-h);
}
/*before*/
.btn.btn-style-4:before,
button.btn.btn-style-4:before {
    background-color:var(--bg-top-btn-type-4-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-4-h) 0%, var(--bg-bottom-btn-type-4-h) 100%);
}

/*Stile 5*/
.btn.btn-style-5,
button.btn.btn-style-5,
input[type="submit"].btn.btn-style-5 {
    color:var(--color-btn-type-5);
    border-color:var(--border-btn-type-5);
    background-color:var(--bg-top-btn-type-5);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-5) 0%, var(--bg-bottom-btn-type-5) 100%);
}
/*hover*/
.btn.btn-style-5:hover,
button.btn.btn-style-5:hover {
    color:var(--color-btn-type-5-h);
    border-color: var(--border-btn-type-5-h);
}
/*input hover*/
input[type="submit"].btn.btn-style-5:hover {
    color:var(--color-btn-type-5-h);
    background-color:var(--bg-top-btn-type-5-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-5-h) 0%, var(--bg-bottom-btn-type-5-h) 100%);
    border-color: var(--border-btn-type-5-h);
}
/*before*/
.btn.btn-style-5:before,
button.btn.btn-style-5:before {
    background-color:var(--bg-top-btn-type-5-h);
    background-image: linear-gradient(180deg, var(--bg-top-btn-type-5-h) 0%, var(--bg-bottom-btn-type-5-h) 100%);
}

/*icone*/
.btn i {
  position: relative;
  padding-left: 5px;
  display:inline-block;
  z-index: 1;
}
.btn i,
button.btn i {
  font-size: calc( var(--size-btn-s1) + 0px);
}
.btn.btn-big i,
button.btn.btn-big i {
  font-size: calc( var(--size-btn-s1) + 0px);
}

.btn.btn-small i,
button.btn.btn-small i {
  font-size: calc( var(--size-btn-s1) + 0px);
}

/*effetto hover*/
.btn {
    position: relative;
    }
.btn span {
    position: relative;
    z-index: 1;
    text-align: center;
    width:auto;
    display: inline-block;
    }
.btn:not(input):before {
    content: "";
    position: absolute;
    transition: all 0.35s;
    z-index: 1;
    }


/*standard*/
.animation-standard .btn:not(input):before {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity:0
    }
.animation-standard .btn:hover:before {
    width: 100%;
    opacity:1;
    }

/*rise*/
.animation-rise .btn:not(input):before {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity:0
    }
.animation-rise .btn:hover:before {
    width: 100%;
    opacity:1;
    }
.animation-rise .btn:hover {
    box-shadow: 0 0.5em 0.5em -0.4em #00000080;
    transform: translateY(-0.35em);
    }

/*slide*/
.animation-fill-slide .btn:not(input):before {
    bottom: 0;
    left: 0;
    width: 0%;
    height: 100%;
    }
.animation-fill-slide .btn:hover:before {
    width: 100%;
    }

/*fil-down*/
.animation-fill-down .btn:not(input):before {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0%;
    }
.animation-fill-down .btn:hover:before {
    height: 100%;
    }

/*fil-up*/
.animation-fill-up .btn:not(input):before {
    top: 0;
    left: 0;
    width: 100%;
    height: 0%;
    }
.animation-fill-up .btn:hover:before {
    height: 100%;
    }

/*grow-box*/
.animation-grow-box .btn:not(input):before {
    bottom: 50%;
    left: 50%;
    width: 0%;
    height: 0%;
    }
.animation-grow-box .btn:hover:before {
    width: 100%;
    height: 100%;
    bottom: 0%;
    left:0%;
    }

/*ellipse*/
.animation-grow-ellipse .btn:not(input):before {
    bottom: 50%;
    left: 50%;
    width: 0%;
    height: 0%;
    border-radius:50%
    }
.animation-grow-ellipse .btn:hover:before {
    width: 200%;
    height: 500%;
    bottom: -200%;
    left:-50%;
    }



/*bottoni disabilitati*/
.btn:disabled,
button:disabled,
.wpcf7 input[type="submit"]:disabled,
.btn:disabled:hover,
button:disabled:hover,
.wpcf7 input[type="submit"]:disabled:hover {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events:none
}

/*----------------Fine Bottoni----------------*/



/*form*/
.wpcf7 {
    width: 100%;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea,
.wpcf7 select {
    width:100%;
    background:transparent;
}

.wpcf7 input[type="checkbox"] {
    display: inline-block;
    margin: 0 5px 0 0;
    padding: 0px;
    width:auto;
}

.wpcf7 textarea {
    height: 150px;
}

.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
    border-radius: 3px;
    font-size: var(--size-p-small);
    font-family: var(--font-secondario);
    color:var(--text-color);
    font-weight: 400;
    line-height: 1.6;
    transition: .3s;
    padding: 10px 20px;
    border: 1px solid #a4a4a4;
    outline:1px solid transparent;

}

.wpcf7 input:focus:not([type="submit"]),
.wpcf7 select:focus,
.wpcf7 textarea:focus {
    padding: 10px 30px;
    border-color: var(--accent-color);
    outline:1px solid var(--accent-color);
    color: var(--text-color);
}
.wpcf7 input::placeholder,
.wpcf7 select::placeholder,
.wpcf7 textarea::placeholder {
    color:var(--text-color);
    opacity:0.4;
}

.wpcf7 .negativo select {
    background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23999%22%2F%3E%3C%2Fsvg%3E);
}
/*Change text in autofill textbox*/
.wpcf7 input:-webkit-autofill {
    -webkit-text-fill-color: var(--text-color);
    padding: 10px 0px;
}

.wpcf7 .ajax-loader {
    filter: brightness(500%) contrast(80%);
    width: 15px;
    height: 15px;
    background-size: cover;
}


/* FORM SPUNTE */
.wpcf7 .info-privacy,
.info-privacy * {
    font-size:var(--size-p-small);
    line-height:var(--lineH-p-smaller);
    color: var(--text-color) !important;
}
.wpcf7 .info-privacy span.wpcf7-list-item {
    margin: 0;
}
.wpcf7 .wpcf7-list-item:first-child{
    margin: 0 0 0 0em;
}
.wpcf7 .info-privacy p a {
    text-decoration: underline;
}
.wpcf7 small {
    display: inline;
}
.wpcf7 span.wpcf7-form-control-wrap.radio {
    width: auto;
}
.wpcf7 input::-webkit-calendar-picker-indicator {
    color: transparent !important;
    background: transparent url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E) no-repeat right 5px top 55% !important;
}
.wpcf7 input.wpcf7-file {
    width: 100%;
}
.wpcf7 input[type="radio"] {
    margin: 5px !important;
}
.wpcf7 input:disabled {
    cursor: not-allowed;
}


/*response*/
.wpcf7 form .wpcf7-response-output {
    border:none;
    float: left;
    width: 100%;
    padding: 0px;
    margin: 20px 0px 0px 0px;
    font-size:var(--size-p);
    font-weight: bold;
}
.wpcf7 form .wpcf7-response-output:before {
    font-family: 'Material Icons';
    display:inline-block;
    font-weight: normal;
    font-style: normal;
    font-size: 20px;
    line-height:30px;
    width:30px;
    height:30px;
    border-radius:15px;
    text-align:center;
    margin: -2px 10px 0px 0px;
    color: #fff;
    vertical-align:middle;
}
/*sent*/
.wpcf7 form.sent .wpcf7-response-output {
    color: #46b450;
}
.wpcf7 form.sent .wpcf7-response-output:before {
    content: '\e876';
    background: #46b450;
}
/*invalid*/
.wpcf7 form.invalid .wpcf7-response-output {
    color: #eaad2f;
}
.wpcf7 form.invalid .wpcf7-response-output:before {
    content: '\e002';
    background: #eaad2f;
}
/*aborted*/
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
    color: #dc3232 !important;

}
.wpcf7 form.aborted .wpcf7-response-output:before,
.wpcf7 form.failed .wpcf7-response-output:before {
    content: '\e5cd';
    background: #dc3232;
}
/*fine response*/

/*not-valid-tip*/
body:not(.cf7p-message) .wpcf7-not-valid-tip {
    position: absolute;
    width: auto;
    margin-top: 3px;
    padding: 2px 8px;
    border-radius: 3px;
    background-color: #dc3232;
    border: none;
    float: left;
    z-index: 999;
}
body:not(.cf7p-message) .wpcf7-not-valid-tip {
    color: #fff;
    font-size:14px;
    line-height:1.6;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
}

body:not(.cf7p-message) .wpcf7-not-valid-tip:after {
    content: '';
    position: absolute;
    left: 10px;
    top: -5px;
    background-color: #dc3232;
    width: 11px;
    height: 11px;
    transform: rotate(45deg);
    z-index:1;
}

body:not(.cf7p-message) .wpcf7-not-valid-tip:before {
    content: '\e5c9';
    font-family: 'Material Icons';
    display: inline-block;
    color: #fff;
    font-weight: normal;
    font-style: normal;
    position: relative;
    font-size: 20px;
    line-height: 1;
    left:-2px;
    top: -1px;
    z-index:2;
}
/*fine not-valid-tip*/



/* FINE FORM SPUNTE */

/*----------------fine form----------------*/




/*----------------owl carousel----------------fine*/
.owl-dots * {
    transition: 0.5s all ease-in-out;
}
.owl-dots {
    margin-top: 0px;
    text-align: center;
}
.owl-carousel .owl-dots .owl-dot {
    height: 5px;
    margin: 0px 5px;
    background: var(--accent-color);
    box-shadow: none;
    opacity: 0.4;
    border-radius: 0px;
}
.owl-carousel .owl-dots .owl-dot span {
    display: none;
}
.owl-carousel .owl-dots .owl-dot.active {
    opacity: 1;
    width: 25px;
}
.owl-img-auto.owl-carousel .owl-item img {
    display:block!important;
    width: auto!important;
}
.owl-dot {
    background: #EBEBEB;
    border: none;
    padding: 3.5px;
    border-radius: 0;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    margin-right: 5px;
	border:1px solid #EBEBEB;
}
.owl-dot.active, .owl-dot:hover{
    background: #fff;
	border:1px solid #000;
}
.owl-dot:not(.active){
    cursor: pointer;
}
/*owl carousel*/



/*----------------Footer----------------*/
footer {
    padding: var(--footer-padding);
}
footer, footer section#widget-area {
    background-color: var(--background-widget);
}

/*----------------widget----------------*/
footer section#widget-area {
    margin: 0;
    padding-top: var(--widget-padding-top);
    padding-bottom: var(--widget-padding-bottom)
}
footer section#widget-area p,
footer section#widget-area b,
footer section#widget-area span,
footer section#widget-area strong,
footer section#widget-area ul,
footer section#widget-area ol,
footer section#widget-area li,
footer section#widget-area li * {
    margin: 0;
    color: var(--widget-color);
    font-family: var(--family-widget-text);
    font-size: var(--size-widget-text);
    font-weight: var(--weight-widget-text);
    line-height: var(--lineH-widget-text);
}
footer section#widget-area a {
    color: var(--widget-link-color);
}
footer section#widget-area .widget-row .widget-column .widget:last-child {
    margin: 0;
}
footer section#widget-area .widget-row .widget-column .widget-title {
    color: var(--widget-color);
    font-family: var(--family-widget-title);
    font-size: var(--size-widget-title);
    font-weight: var(--weight-widget-title);
    line-height: var(--lineH-widget-title);
    text-transform: none;
    padding-bottom: 10px;
    margin: 0;
}
html.desktop footer section#widget-area .widget-row.widget-separator .widget-column:not(:first-child):before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1px;
    top: 0;
    left: calc(var(--widget-separator-gap) / -2);
    border-right: var(--widget-separator);
}
html.desktop footer section#widget-area .widget-row.widget-separator.widget_4c .widget-column:nth-child(2):before,
html.desktop footer section#widget-area .widget-row.widget-separator.widget_5b .widget-column:nth-child(2):before{
  content: none;
}

/*menu footer*/
footer section#widget-area .widget ul.menu {
    margin: 0px;
    padding: 0px;
    list-style: none;
}
footer section#widget-area .widget ul.menu li {
    padding-bottom: 8px
}
footer section#widget-area .widget ul.menu li ul.sub-menu {
    display: none;
}

/*----------------Socket Copyright-----------------*/
footer section#copyright-area {
    background: var(--background-socket);
    color:var(--socket-color);
	font-size:var(--size-socket-text) !important;
}
footer section#copyright-area .contenuto {
    padding-top:var(--socket-padding-top);
    padding-bottom:var(--socket-padding-bottom);
}

footer section#copyright-area p,
footer section#copyright-area b,
footer section#copyright-area span,
footer section#copyright-area strong,
footer section#copyright-area ul,
footer section#copyright-area ol,
footer section#copyright-area li {
    margin: 0;
    color:var(--socket-color);
    font-family:var(--family-socket-text);
    font-size:var(--size-socket-text) !important;
    font-weight:var(--weight-socket-text);
    line-height:var(--lineH-socket-text);
}
footer section#copyright-area a {
    color:var(--socket-link-color);
}


/*----------------header----------------*/

/*----------------action bar----------------*/
header #action-bar {
    width:100%;
    background:var(--bg-actionbar);
}
/*header.transparet #action-bar{
  background: #80808020;
  backdrop-filter: blur(10px);
}*/
header .action-bar-content{
    padding-top: var(--padding-actionbar-top);
    padding-bottom: var(--padding-actionbar-top);
    margin: 0 auto;
}
header .action-bar-content > *,
header .action-bar-content p,
header .action-bar-content ul li,
header .action-bar-content ol li,
header .action-bar-content i {
    color: var(--color-actionbar);

margin-bottom: 0;}
header .action-bar-content a {
     color: var(--link-actionbar);
}


/*----------------menu----------------*/


/*pre-footer*/
pre-footer#prefooter {
    display: block;
}

/*personalizzazioni header*/
header.transparet #navigation-bar .site-branding figure.logo-container svg#logo g#testo_1 path{
  fill:#fff;
  transition: fill ease-out 500ms;
}

header.transparet #navigation-bar.sticky .site-branding figure.logo-container svg#logo g#testo_1 path{
  fill:#2d2d2d;
  transition: fill ease-out 500ms;
}

header{
    position: relative;
    width: 100%;
    z-index: 99;
}

header.transparet{
    position: absolute;
    z-index: 9999;
}
/*generic*/
header #navigation-bar{
    padding: 0;
    background:var(--background-color-header);
    position: relative;
    width: 100%;
    transition: all ease-out 250ms;
}
header #navigation-bar .navigation-content{
    padding:var(--padding-header);
}
header #navigation-bar.sticky {
    position: fixed;
    top: 0px;
    z-index: 9999;
    transition: all ease-out 250ms;
}
header #navigation-bar.sticky .navigation-content{
    padding:var(--padding-header-sticky);
}
header #navigation-bar .site-menu nav ul:not(.sub-menu) > li > a {
    color:var(--text-color-header);
}
header #navigation-bar .navigation-content {
    margin: 0 auto;
}

/*trasparent*/
header.transparet #navigation-bar{
    background:var(--background-color-transparent);
}
header.transparet #navigation-bar .site-menu nav ul:not(.sub-menu) > li > a {
    color:var(--text-color-header-transparent);
}
header.transparet #navigation-bar.sticky {
    background:var(--background-color-header);
}
header.transparet #navigation-bar.sticky .site-menu nav ul:not(.sub-menu) > li > a {
    color:var(--text-color-header);
}


/*----------------font-size----------------*/
header #navigation-bar .site-menu nav ul:not(.sub-menu) > li > a {
    font-family: var(--family-menu);
    font-size: var(--size-menu);
    line-height: var(--lineH-menu);
    font-weight: var(--weight-menu);
    letter-spacing: var(--spacing-menu);
    padding: var(--padding-menu);
	position: relative;
    z-index: 99999999;
}
header #navigation-bar .site-menu nav ul ul.sub-menu > li > a {
    font-family: var(--family-menu_2);
    font-size: var(--size-menu_2);
    line-height: var(--lineH-menu_2);
    font-weight: var(--weight-menu_2);
    letter-spacing: var(--spacing-menu_2);

}



/*----------------site-branding----------------*/
header  #navigation-bar .navigation-content .site-branding,
header #navigation-bar .navigation-content .site-menu {
    display: flex;
    flex-direction: row;
    align-items: center;
}
header  #navigation-bar .navigation-content .site-branding{
    width: 30%;
    justify-content: flex-start;
}
.header-contacts {
    width: 30%;
    justify-content: flex-end;
	align-items:center;
}
.header-contacts .material-icons {
    font-size: 24px;
}
.material-symbols-rounded {
  font-variation-settings:
  'FILL' 0,
  'wght' 500,
  'GRAD' 200,
  'opsz' 48
}
.material-symbols-rounded.fill{
 font-variation-settings:'FILL' 1;
}
header #navigation-bar .navigation-content .site-branding .logo-container {
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 99999999999999;
}
header #navigation-bar .navigation-content .site-branding .logo-container #logo{
  display:block;
  fill:var(--text-color);
}




/*type_menu_1*/

header #navigation-bar .navigation-content.type_menu_1 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    }

/**************************custom************************/


.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  transition: all .3s linear;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

.padding-12col-left{
	padding-left: calc(var(--w-container) / 12);
}
.padding-12col-right{
	padding-right: calc(var(--w-container) / 12);
}
.padding-6col-left{
	padding-left: calc(var(--w-container) / 6);
}
.padding-6col-right{
	padding-right: calc(var(--w-container) / 6);
}

.padding-8col-left {
    padding-left: calc(var(--w-container) / 8);
}

.padding-8col-right {
    padding-right: calc(var(--w-container) / 8);
}

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

.cursor-pointer{
	cursor:pointer;
}

.owl-item {
    display: inline-block;
    vertical-align: top;
}
.owl-nav.disabled {
    display: none;
}

.container-allineato-dx > .col-50:first-child{
	padding-left: var(--single-padding-esterno);
}
.container-allineato-sx > .col-50:last-child{
	padding-right: var(--single-padding-esterno);
}

/***********************form iscrizione*************
.wpcf7-list-item {
    display: block;
	margin:0;
}

.blocco-form-iscriviti {
    display: flex;
    gap: 2%;
    flex-wrap: wrap;
	justify-content:space-between;
}

.blocco-form-iscriviti > div{
    width:49%;
}

.blocco-form-iscriviti > div input {
    width: 100%;
    background: transparent;
}

.form-prefooter form {
    padding: 20px;
    border-radius: 10px;
    border: 2px solid #c1d500;
}

.form-prefooter form input[type="text"]{
    width: 49%;
    margin-bottom: 20px;
    border-radius: 25px;
    padding: 5px 15px;
}

.form-prefooter form textarea{
    width: 98.5%;
    margin-bottom: 20px;
    border-radius: 10px;
    padding: 5px 15px;
}

.form-prefooter input[type="submit"]{
    margin-top: 30px;
}

@media screen and (max-width:767px){
.blocco-form-iscriviti {
    display: flex;
    gap: 0%;
    flex-wrap: wrap;
	justify-content:space-between;
}

.blocco-form-iscriviti > div{
    width:100%;
}

*/
html.desktop.megamenu-aperto {
    overflow: hidden!important;
}

.text-stroke-100 {
    -webkit-text-stroke: 1px;
    text-stroke:  1px;
}
.text-stroke-050 {
    -webkit-text-stroke: 0.5px;
    text-stroke:  0.5px;
}
.text-stroke-025 {
    -webkit-text-stroke: 0.25px;
    text-stroke:  0.25px;
}
.text-stroke-015 {
    -webkit-text-stroke: 0.15px;
    text-stroke:  0.15px;
}
.blurred {
    /* Note: currently only Safari supports backdrop-filter */
    backdrop-filter: blur(30px);
    --webkit-backdrop-filter: blur(30px);
    background-color: rgba(255, 255, 255, 0.15);
}

.opacity-09 {
    opacity: 0.9;
}
.opacity-08 {
    opacity: 0.8;
}
.opacity-07 {
    opacity: 0.7;
}
.opacity-06 {
    opacity: 0.6;
}
.opacity-05 {
    opacity: 0.5;
}
.opacity-04 {
    opacity: 0.4;
}
.opacity-03 {
    opacity: 0.3;
}
.opacity-02 {
    opacity: 0.2;
}
.opacity-01 {
    opacity: 0.1;
}
.opacity-00 {
    opacity: 0.0;
}

.letter-spacing-010 {
   letter-spacing: 0.10em;
}
.letter-spacing-015 {
   letter-spacing: 0.15em;
}
.letter-spacing-025 {
   letter-spacing: 0.25em;
}
.letter-spacing-035 {
   letter-spacing: 0.35em;
}
.letter-spacing-045 {
   letter-spacing: 0.45em;
}
.letter-spacing-055 {
   letter-spacing: 0.55em;
}

.border-radius-05{
   border-radius:5px;
}
.border-radius-10{
   border-radius:10px;
}
.border-radius-15{
   border-radius:15px;
}
.border-radius-20{
   border-radius:20px;
}


.ratio-1-1 {aspect-ratio: 1 / 1;}
.ratio-3-2 {aspect-ratio: 3 / 2;}
.ratio-4-3 {aspect-ratio: 4 / 3;}
.ratio-16-9 {aspect-ratio: 16 / 9;}

/* NEW BLOG CSS */

:root{
  --border-color: #DFDFDF;
  --article-list-odd-bg: #F6F6F6;
}
.category-title{
  font-size:48px; line-height:52px; color:var(--accent-color);
}

.quick-filter{
  float: left;
  width: 100%;
  margin-bottom: 55px;
}
.quick-filter .label{
  float:left; display:inline-block; 
  vertical-align:middle; font-weight:bold; font-size:16px; line-height:18px; color:var(--text-color); line-height:40px; 
  margin-right:20px;
}
.quick-filter ul{ 
  float: left; display:inline-block; 
  background-color:white; 
  padding:6px 14px; border-radius:12px; margin:0;
}
.quick-filter ul li{ 
  float: left; display:inline-block; 
}
.quick-filter ul li:first-child a{ 
  margin-left:0;
}
.quick-filter ul li a { 
  font-style:italic; font-size:14px; line-height:18px; font-weight:400; color:var(--text-color); 
  margin-left:5px; text-decoration:underline;
}

.category-title span{
  font-size:20px; line-height:52px; font-style:italic; font-weight:400; color:var(--accent-color);
}
.subcategory-title-wrapper{
  margin-top:0; margin-bottom: 15px;
}
.subcategory-title{
  display:flex; flex-direction:row; justify-content:space-between; align-items:flex-end;
  width:100%;
  font-size:20px; line-height:26px; font-style:italic; font-weight:700; color:var(--accent-color);
}
.read-more{
  font-size:12px; line-height:26px; font-style:italic; font-weight:400; color:var(--accent-color);
}
.read-more span{
  color: var(--custom-color-2);  vertical-align:middle;
  margin-left:4px;
}

.article-item > a{
  display:flex;
}
@media (max-width: 575px) {
  .article-item > a{
    flex-direction: column;
  }
  .article-item .article-content{
    margin-left: 0;
    margin-top: 20px;
  }
  .article-item > a picture{
    max-width: unset !important;
  }
}
.article-item > a picture{
  display:flex; flex-shrink:0; position: relative;
  width:100%;
  max-width:205px; height:auto;
}
.article-item > a picture:before {
  content: ""; position: relative;
  width: 205px; height: 137px;
}
.article-item > a picture img{
  position:absolute; top: 0; left: 0;
  object-fit:cover; align-self:flex-start;
  width: 100%; height: 100%; max-height: 137px;
  border:1px solid var(--border-color);
}

.article-item-wrapper{
  margin-bottom:35px;
}
.article-content{
  flex-grow:1;
  margin-left:16px; 
  font-size:0;
}

.article-category{
  float:left; width:100%;
  margin-bottom:7px;
  font-size:12px; line-height:16px; font-style:italic;
}
.article-title{
  font-size:22px; line-height:26px; font-style:italic;
  margin-top:0;
}
.article-excerpt{
  font-size:14px; line-height:18px; font-style:normal; color:var(--text-color);
  margin-bottom:7px;
}

#sidebar-boxes{
  z-index:1;
}
.side-box{
  border:1px solid var(--border-color); border-radius: 12px; margin-bottom:30px;
}
.side-box header{
  background-color:white;
  border-top-left-radius: 12px; border-top-right-radius: 12px; padding:18px 24px 0 24px;
  color:var(--accent-color);
}
.side-box header h2{
  margin-top:0; padding-top:0;
  font-weight:700;
}
.side-box header .border-1-dashed{
  width: calc(100% + 48px);
  margin-left: -24px;
}
.side-box .post-item > a{
  text-decoration:none;
  display:flex;
}
.side-box .post-item > a picture{
  display:flex; flex-shrink:0; position: relative;
  width:100%;
  max-width:115px; height:auto;
}
.side-box .post-item > a picture:before {
  content: ""; position: relative;
  width: 115px; height: 76px;
}
.side-box .post-item > a picture img{
  position:absolute; top: 0; left: 0;
  object-fit:cover; align-self:flex-start;
  width: 100%; height: 100%; max-height: 77px;
}

.side-box .post-item .article-title{
  font-size:16px; line-height:18px; font-style:italic;
}
.side-box .post-list .post-item{
  padding:18px 23px; border-bottom:1px solid var(--border-color);
  background-color: white;
}
.side-box .post-list .post-item:last-child{
  border-bottom:none; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px;
}
.side-box .post-list .post-item:nth-child(odd) {
  background-color: var(--article-list-odd-bg);
}



.sticky-posts-wrapper .article-content{
  margin-left:0;
}
.sticky-posts-wrapper .article-content .article-title{
  font-size:20px; font-weight:400; line-height:24px; font-style:italic;
}
.sticky-posts-wrapper .subcategory-title{
  margin-bottom:0;
}
.sticky-posts-wrapper .post-item > a picture{
  display:flex; flex-shrink:0; position: relative;
  width:100%;
  max-width:194px; height:auto;
  margin-bottom:16px;
}
.sticky-posts-wrapper .post-item > a picture:before {
  content: ""; position: relative;
  width: 194px; height: 115px;
}
.sticky-posts-wrapper .post-item .article-title, .sticky-posts-wrapper .post-item .read-more{
  float:left;
  width:100%;
}
.sticky-posts-wrapper .post-item .read-more{
  margin-top:6px;
}
.sticky-posts-wrapper .post-item > a picture img{
  position:absolute; top: 0; left: 0;
  object-fit:cover; align-self:flex-start;
  width: 100%; height: 100%; max-height: 115px;
}
.post-item:hover .article-title, .article-item:hover .article-title{
  text-decoration:underline;
}
.subcategory-title-wrapper:hover a{
  text-decoration:underline;
}

.newsletter-blog{
  max-width: 1740px;
}


.app-blog{
  margin-top: 150px; margin-bottom: 60px;
}

/* Blog author css */

.article-date, .article-authors{
  font-size:12px; line-height:16px; font-style:italic;
}
.article-authors{
  margin-left: 5px;
}

.author-line {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 16px;
}

.author-label {
  font-weight: 600;
}

.author-list {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin: 0;
}

.author-item {
  display: flex;
}

.author-link {
  display: flex;
  align-items: center;
  gap: 6px;
}

.author-link img {
  width: calc(32px + (48 - 32) * ((100vw - 320px) / (1280 - 320)));
  border-radius: 50%;
}
@media (min-width: 1281px) {
  .author-link:hover img {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    transform: scale(1.05);
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  }
  .author-link:hover .author-name{
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    color: var(--color-btn-type-5-h);
  }
}

.author-name {
  font-size: 16px;
}


.authors-wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 40px;
}

.author-box {
  display: flex;
  gap: 16px;
  padding: 20px;
  background: #f5f5f5;
  border-radius: 8px;
  border: 1px dashed var(--accent-color-alt);
  transition: background-color 0.2s ease;
}
@media (max-width: 757px) {
.author-box{
  flex-direction: column;
}
}
.author-box .author-avatar img {
  width: 96px;
  border-radius: 50%;
}

.author-box .author-info {
  flex: 1;
}
.author-box h4 {
  margin-top: 0;
  margin-bottom: 0;
}  

.author-box .author-bio {
  font-size: 16px;
  color: #444;
  margin: 16px 0;
}
.author-box .author-title {
  font-size: 14px;
  color: #444;
}

.author-box .author-readmore {
  font-weight: 600;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.author-box .author-social {
  display: flex;
  margin-top: 16px;
  gap: 8px;
}

.author-box .social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #dbdbdb;
  border-radius: 50%;
  color: #ffffff;
  text-decoration: none;
  transition: all 0.2s ease;
}

@media (min-width: 1281px) {
  .author-box:hover .author-readmore {
      color: var(--color-btn-type-5-h);
  }

  .author-box .social-link:hover {
      background: var(--color-btn-type-5-h);
      transform: translateY(-2px);
      fill: #ffffff;
  }
}

.author-block {
  background: #f5f5f5;
  border: 2px dashed var(--border-color);
  border-radius: 15px;
  padding: 40px;
  text-align: center;
}

.author-block .author-photo {
  width: 150px;
  border-radius: 50%;
}

.author-block h1 {
  margin-bottom: 0;
}  

.author-block .author-title {
  margin-top: 8px;
}
.author-block .author-bio {
  margin-top: 8px;
}
.author-block .author-bio p:last-child {
  margin-bottom: 0;
}
.author-block .author-social {
  display: flex;
  margin-top: 16px;
  gap: 8px;
  justify-content: center;
}

.author-block .social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #dbdbdb;
  border-radius: 50%;
  color: #ffffff;
  text-decoration: none;
  transition: all 0.2s ease;
}

@media (min-width: 1281px) {
  .author-block .social-link:hover {
      background: var(--color-btn-type-5-h);
      transform: translateY(-2px);
      fill: #ffffff;
  }
}
#news .col-25-flex{
  z-index: 0;
}

html[lang="fr-FR"] header #navigation-bar .site-menu nav .nav-menu > li > a{
    padding: 20px 5px !important;
}

#visore nav span.breadcrumb_last {
    color: #04122380;
}