/*
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(--white);
    background: var(--accent-color);
}
::selection{
    color: var(--white);
    background: var(--accent-color);
}

::-webkit-scrollbar{
    width: 7px;
}
::-webkit-scrollbar-thumb{
    background:rgb(128 128 128 / 0.5);
    border-radius: 4px;
}
::-webkit-scrollbar-track{
    background:transparent;
}



/*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;
}
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-400{
  height: 400px;
}
.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{width: 100%; max-width: var(--w-container);}
.w-container-small{width: var(--w-container-stretto);}
.col-100,
.full-width{width: 100%;}


/*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-16{width: 16.66%;}
.col-15{width: 15%;}
.col-12{width: 12.5%;}


/*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-5px{gap: 5px;}
.gap-10px{gap: 10px;}
.gap-15px{gap: 15px;}
.gap-20px{gap: 20px;}
.gap-25px{gap: 25px;}
.gap-30px{gap: 30px;}
.gap-35px{gap: 35px;}
.gap-40px{gap: 40px;}
.gap-50px{gap: 50px;}
.gap-60px{gap: 60px;}
.gap-70px{gap: 70px;}
.gap-100px{gap: 100px;}

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

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



.gap-5px > .col-20{
  width: calc(20% - 10px);
}
.gap-5px > .col-33 {
  width: calc(33% - 1px);
}
.gap-20px > .col-20{
  width: calc(20% - 17px);
}
.gap-20px > .col-50{
  width: calc(50% - 10px);
}
.column-gap-20px > .col-33{
  width: calc(33% - 11px);
}
.gap-25px > .col-25{
  width: calc(25% - 19px);
}
.gap-25px > .col-33{
  width: calc(33% - 15px);
}
.gap-30px > .col-20{
  width: calc(20% - 24px);
}
.gap-30px > .col-25{
  width: calc(25% - 23px);
}
.gap-30px .col-33 {
  width: calc(33% - 18px);
}
.gap-30px > .col-40{
  width: calc(40% - 15px);
}
.gap-30px > .col-50{
  width: calc(50% - 15px);
}
.gap-30px > .col-60{
  width: calc(60% - 15px);
}
.gap-35px > .col-33{
  width: calc(33% - 21px);
}
.gap-40px > .col-25{
  width: calc(25% - 30px);
}
.gap-50px > .col-25{
  width: calc(25% - 38px);
}
.gap-50px > .col-33{
  width: calc(33% - 31px);
}
.gap-50px > .col-50,
.woocommerce-page div.product .gap-50px > div.summary.col-50{
  width: calc(50% - 25px);
}
.gap-60px > .col-50{
  width: calc(50% - 30px);
}
.gap-60px > .col-45{
  width: calc(45% - 30px);
}
.gap-60px > .col-55{
  width: calc(55% - 30px);
}
.gap-70px .col-50{
  width: calc(50% - 35px);
}

/*----------------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 !important;}

.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;}

/*----------------positioning----------------*/

.absolute-center-y{
  top: 50%;
  transform: translateY(-50%);
}
.title-h1-big,
.title-h1-big p{
  font-family: var(--family-h1);
  font-size: var(--size-h1-big);
  line-height: var(--lineH-h1-big);
  font-weight: var(--weight-h1-big);
  letter-spacing: var(--spacing-h1-big);
}
h1,
h1 p,
.title-h1,
.title-h1 p{
    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,
h2 p,
.title-h2,
.title-h2 p{
    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,
h3 p,
.title-h3,
.title-h3 p{
    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,
h4 p,
.title-h4,
.title-h4 p{
    font-family: var(--font-principale);
    font-size: var(--size-h4);
    line-height: var(--lineH-h4);
    font-weight: var(--weight-h4);
    letter-spacing: var(--spacing-h4)
}
h5,
h5 p,
.title-h5,
.title-h5 p{
    font-family: var(--font-principale);
    font-size: var(--size-h5);
    line-height: var(--lineH-h5);
    font-weight: var(--weight-h5);
    letter-spacing: var(--spacing-h5)
}
h6,
h6 p,
.title-h6,
.title-h6 p{
    font-family: var(--font-principale);
    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{
  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;
}
/*----------------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;}

.paddingbase05{padding: calc(var(--baseline)*0.5);}
.paddingbasetop05{padding-top: calc(var(--baseline)*0.5);}
.paddingbasebottom05{padding-bottom: calc(var(--baseline)*0.5);}
.paddingbaseleft05{padding-left: calc(var(--baseline)*0.5);}
.paddingbaseright05{padding-right: calc(var(--baseline)*0.5);}
.paddingbasey05{padding-top: calc(var(--baseline)*0.5); padding-bottom: calc(var(--baseline)*0.5);}
.paddingbasex05{padding-left: calc(var(--baseline)*0.5); padding-right: calc(var(--baseline)*0.5);}

.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;}

.marginbase05{margin: calc(var(--baseline)*0.5) !important;}
.marginbasetop05{margin-top: calc(var(--baseline)*0.5) !important;}
.marginbasebottom05{margin-bottom: calc(var(--baseline)*0.5) !important;}
.marginbaseleft05{margin-left: calc(var(--baseline)*0.5) !important;}
.marginbaseright05{margin-right: calc(var(--baseline)*0.5) !important;}
.marginbasey05{margin-top: calc(var(--baseline)*0.5); margin-bottom: calc(var(--baseline)*0.5);}
.marginbasex05{margin-left: calc(var(--baseline)*0.5); margin-right: calc(var(--baseline)*0.5);}

.marginbase{margin: var(--baseline);}
.marginbasetop{margin-top: var(--baseline) !important;}
.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) !important;}
.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);}

.marginbase6{margin: var(--spacing-6);}
.marginbasetop6{margin-top: var(--spacing-6);}
.marginbasebottom6{margin-bottom: var(--spacing-6);}
.marginbaseleft6{margin-left: var(--spacing-6);}
.marginbaseright6{margin-right: var(--spacing-6);}
.marginbasey6{margin-top: var(--spacing-6); margin-bottom: var(--spacing-6);}
.marginbasex6{margin-left: var(--spacing-6); margin-right: var(--spacing-6);}

.marginbase7{margin: var(--spacing-7);}
.marginbasetop7{margin-top: var(--spacing-7);}
.marginbasebottom7{margin-bottom: var(--spacing-7);}
.marginbaseleft7{margin-left: var(--spacing-7);}
.marginbaseright7{margin-right: var(--spacing-7);}
.marginbasey7{margin-top: var(--spacing-7); margin-bottom: var(--spacing-7);}
.marginbasex7{margin-left: var(--spacing-7); margin-right: var(--spacing-7);}

.marginbase8{margin: var(--spacing-8);}
.marginbasetop8{margin-top: var(--spacing-8);}
.marginbasebottom8{margin-bottom: var(--spacing-8);}
.marginbaseleft8{margin-left: var(--spacing-8);}
.marginbaseright8{margin-right: var(--spacing-8);}
.marginbasey8{margin-top: var(--spacing-8); margin-bottom: var(--spacing-8);}
.marginbasex8{margin-left: var(--spacing-8); margin-right: var(--spacing-8);}

.marginbase9{margin: var(--spacing-9);}
.marginbasetop9{margin-top: var(--spacing-9);}
.marginbasebottom9{margin-bottom: var(--spacing-9);}
.marginbaseleft9{margin-left: var(--spacing-9);}
.marginbaseright9{margin-right: var(--spacing-9);}
.marginbasey9{margin-top: var(--spacing-9); margin-bottom: var(--spacing-9);}
.marginbasex9{margin-left: var(--spacing-9); margin-right: var(--spacing-9);}

.marginbase10{margin: var(--spacing-10);}
.marginbasetop10{margin-top: var(--spacing-10);}
.marginbasebottom10{margin-bottom: var(--spacing-10);}
.marginbaseleft10{margin-left: var(--spacing-10);}
.marginbaseright10{margin-right: var(--spacing-10);}
.marginbasey10{margin-top: var(--spacing-10); margin-bottom: var(--spacing-10);}
.marginbasex10{margin-left: var(--spacing-10); margin-right: var(--spacing-10);}


/*----------------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;}

.margin5{margin: 5px;}
.margin5sx{margin-left: 5px;}
.margin5dx{margin-right: 5px;}
.margin5top{margin-top: 5px;}
.margin5bottom{margin-bottom: 5px;}

.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{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 #707070;}
.bordo-bottom{border-bottom: 1px solid #707070;}
.bordo-destra{border-right: 1px solid #707070;}
.bordo-sinistra{border-left: 1px solid #707070;}
.bordo{border: 1px solid #707070;}
.tondo{border-radius: 100% !important;}
.background-color{background-color: var(--grey)}
.text-underline{text-decoration: underline;}

/*----------------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(--accent-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);}
.cursor-pointer{cursor: pointer;}
.no-pointer-events{pointer-events: none;}

.circle{border-radius: 100%;}
.figure-radius{
  overflow: hidden;
  display: flex;
  border-radius: var(--radius-small);
  width: 100%;
}
.figure-radius img,
.figure-16-9 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.figure-h-800{
  max-height: calc(100vh - 100px);
  height: 800px;
}
.figure-h-265{
  height: 265px;
}
.figure-bg{
  width: 100%;
}
.figure-16-9,
.figure-10-8-5,
.figure-10-8{
  width: 100%;
  display: flex;
}
.figure-16-9 img{
  aspect-ratio: 16/9;
}
.figure-10-8-5 img{
  aspect-ratio: 10/8.5;
}
.figure-10-8 img{
  aspect-ratio: 10/8;
  width: 100%;
}
.figure-border{
  border: 1px solid #8D909333;
}
.aspect-ratio-1{
  aspect-ratio: 1;
}
/*----------------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);}
.testo-custom-2, .testo-custom-2 p{color: var(--custom-color-2);}
.testo-custom-3, .testo-custom-3 p{color: var(--custom-color-3);}
.testo-custom-4, .testo-custom-4 p{color: var(--custom-color-4);}

/*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: #8D9093;}
.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*/
.opacity80{opacity:.8;}
.opacity70{opacity:.7;}
.opacity50{opacity:.5;}
.opacity30{opacity:.3;}

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

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

.font-principale{
    font-family: var(--font-principale) !important;
}
.font-secondario{
    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 !important;}
.line-height-1-1{line-height: 1.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;}
.light{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;}

.font0{
  font-size: 0;
}

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

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

body, p, li{
  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);
}

.p-smaller, .p-smaller p{
  font-weight: 400;
  font-size: 13px;
  line-height: 1;
}
p.p-normal, .p-normal p{
  font-family: var(--family-p);
  font-weight: var(--weight-p);
  font-size: var(--size-p);
  line-height: var(--lineH-p);
  color: var(--text-color);
}

/*----------------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) + 4px);
}
.btn.btn-big i,
button.btn.btn-big i{
  font-size: calc( var(--size-btn-s1) + 8px);
}

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

/*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;
    background:var(--darkgrey3);
    border-color:var(--darkgrey3);
}
/*----------------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 10px;
    border: 1px solid #a4a4a4;
    outline:1px solid transparent;

}

.wpcf7 input:focus:not([type="submit"]),
.wpcf7 select:focus,
.wpcf7 textarea:focus{
    padding: 10px 20px;
    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{
    background:var(--background-color-header);
    padding:var(--padding-header);
    position: relative;
    width: 100%;
    transition: all ease-out 250ms;
}
header #navigation-bar.sticky{
    position: fixed;
    padding:var(--padding-header-sticky);
    top: 0px;
    z-index: 9999;
    transition: all ease-out 250ms;
}
header #navigation-bar .site-menu nav ul:not(.sub-menu) > li > a{
    color:var(--text-color-header);
}
header #navigation-bar .navigation-content{
  padding: 0;
  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 #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;
    }


/*******************wpml***********************/
.wpml-ls-menu-item ul.sub-menu{
    background-color: #FFF;
    padding: 10px;
    border-radius: 10px;
}
#primary-menu > li.wpml-ls-menu-item > a{
    border: 1px solid #FFF;
    padding: 5px 8px !important;
    border-radius: 20px;
    font-size: 14px !important;
}

.sticky #primary-menu > li.wpml-ls-menu-item > a{
    border: 1px solid #000;
}


/**************************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);
}

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

.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);
}	
.woosb-price-6633{
  display: none;
}