@charset "UTF-8";
:root {
    --mainTextColor: #707070;
    --specialTextColor: #04417B;
    /*blu*/
    --mainBG: #fff;
    /*bianco*/
    --colorA: #04417B;
    /*blu*/
    --colorB: #F26521;
    /*arancione*/
    --colorC: #E6ECF2;
    /*azzurro*/
    --colorD: #DEECF5;
    /*azzurro footer*/
    --mainFont: 'Montserrat', sans-serif;
    --mainFontWeight: 400;
    --minMinFontSize: 16px;
    --minFontSize: 18px;
    --mainFontSize: 20px;
    --midFontSize: 24px;
    --mid2FontSize: 28px;
    --bigFontSize: 40px;
    --biggerFontSize: 70px;
    --regFontWeight: 400;
    /*regular*/
    --midFontWeight: 500;
    /*medium*/
    --boldFontWeight: 700;
    /*bold*/
    --lightFontWeight: 300;
    --specialFont: ;
    --maxWidth: 1920px;
    --mainGutter: calc(100% / 10.5);
    /*183px in windowW 1920px*/
    --borderRadius: 15px;
    --borderRadius2: 20px;
    --borderRadius3: 40px;
}

html,
body {
    height: 100%;
    min-height: 100%
}

html * {
    box-sizing: border-box;
    outline: none;
}

body {
    margin: 0;
    padding: 0;
    line-height: 30px;
    color: var(--mainTextColor);
    background-color: var(--mainBG);
    font-size: var(--mainFontSize);
    font-family: var(--mainFont);
    font-weight: var(--mainFontWeight)
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none
}

img {
    max-width: 100%;
}

img,
a {
    border: 0
}

a:hover,
a:hover *,
a,
button {
    transition: all 0.4s;
}

a {
    color: var(--colorB);
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

a,
img {
    outline: none;
}

a,
button {
    cursor: pointer;
    font-family: var(--mainFont);
    outline: none;
}

p {
    padding-bottom: 30px;
    margin: 0;
}

b {
    font-weight: bold
}

ul {
    margin-bottom: 0
}

label {
    vertical-align: middle
}

input,
select {
    height: 22px;
}

input,
textarea,
select {
    font-family: var(--mainFont);
    font-weight: var(--mainFontWeight);
    border: none;
    line-height: 1;
    border: 1px solid #a8a8a8;
    border-radius: 0;
    padding: 0 5px;
    background-color: var(--mainBG);
    vertical-align: middle;
    color: var(--mainTextColor);
}

input:focus,
select:focus,
textarea:focus {
    color: var(--mainTextColor);
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    outline: none;
}


/*::-webkit-input-placeholder{color:var(--mainTextColor);font-weight: var(--mainFontWeight);}
:-moz-placeholder{color:var(--mainTextColor);font-weight: var(--mainFontWeight);}
::-moz-placeholder{color:var(--mainTextColor);font-weight: var(--mainFontWeight);}
:-ms-input-placeholder{color:var(--mainTextColor);font-weight: var(--mainFontWeight);}*/

input:focus::-webkit-input-placeholder {
    opacity: 0.4
}

input:focus:-moz-placeholder {
    opacity: 0.4
}

input:focus::-moz-placeholder {
    opacity: 0.4
}

input:focus:-ms-input-placeholder {
    opacity: 0.4
}

body * {
    scrollbar-color: var(--colorA) #f0f1f2;
    scrollbar-width: thin;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body *::-webkit-scrollbar {
    width: 3px;
}

body *::-webkit-scrollbar-track {
    background: #f0f1f2;
}

body *::-webkit-scrollbar-thumb {
    background: var(--colorA);
}

body *::-webkit-scrollbar-thumb:hover {
    background: var(--colorA);
}


/* preset */

.displayNo {
    display: none;
}

.mobileOnly {
    display: none
}

.row {
    width: 100%;
}

.rowMin {
    width: 100%;
    padding-left: var(--mainGutter);
    padding-right: var(--mainGutter);
}

.rowMaxW {
    width: 100%;
    max-width: var(--maxWidth);
    margin: 0 auto;
    display: flex;
}

.alignCenter {
    text-align: center;
}

.alignRight {
    text-align: right;
}

.alignLeft {
    text-align: left;
}

.d-block {
    display: block;
}

.d-flex {
    display: flex;
    flex-wrap: wrap;
}

.w-100 {
    width: 100%;
}

.flex-column {
    flex-flow: column;
}

.justify-end {
    justify-content: flex-end;
}

.justify-start {
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.windowLayerOpened {
    overflow-y: hidden;
}

.windowLayerOpened:before,
.menuOpened:before,
.searchOpened:before {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0.4;
    z-index: 9999999;
    transition: all 0.3s linear;
}

.weight500 {
    font-weight: 500
}

.weight600 {
    font-weight: 600
}

.weight700 {
    font-weight: 700
}

.m-top {
    margin-top: 60px;
}

.m-top40 {
    margin-top: 40px;
}

.m-bottom {
    margin-bottom: 20px;
}

.underline {
    text-decoration: underline;
}

.uppercase {
    text-transform: uppercase;
}

.t-italic {
    font-style: italic;
}

.maxWText {
    max-width: 1055px;
}

.overflowHidden {
    overflow: hidden;
}

.normalText {
    font-size: var(--mainFontSize);
    font-weight: var(--mainFontWeight);
    color: var(--mainTextColor);
    margin: 0
}

ul.ulText {
    margin: 0;
    line-height: 30px;
}

ul.ulText li:before {
    content: "";
    width: 2px;
    height: 2px;
    background: currentColor;
    display: inline-block;
    vertical-align: middle;
    border-radius: 100%;
    margin-right: 7px;
}


/* generale ************************************************************************************************************************************************/

.column-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.column-2 .column-el {
    width: 42%;
}

.wrapperSupertop {
    background: #fff;
    z-index: 999999;
    box-shadow: 0px 5px 20px rgb(0 0 0 / 10%);
    transition: all 0.3s ease;
}

.wrapperSupertop.fixed {
    position: sticky;
    top: 0;
    transform: translateY(0);
    transform-origin: top;
}

.wrapperSupertop.fixedAnimation {
    transform: translateY(-20px);
}

.supertop {
    justify-content: space-between;
    align-items: center;
    height: 90px;
}

.supertop h1 {
    margin: 0
}

.supertop .mainLogo,
footer .footerWrap .infoArea .footerLogo {
    width: 200px;
    display: inline-flex;
}

.supertop .mainLogo img {
    width: 100%;
    height: auto;
}

.supertop .mainMenu {
    display: flex;
    flex-wrap: wrap;
    z-index: 999999;
}

.supertop .mainMenu li {
    margin-left: 53px;
    height: 40px;
    display: flex;
    align-items: center;
}



.supertop .mainMenu li a,
.submenuBlock span {
    color: var(--specialTextColor);
    text-decoration: none;
    cursor: pointer;
    font-weight: var(--regFontWeight);
}

.supertop .mainMenu li.mainSearchbtn {
    width: 24px;
    cursor: pointer;
}

.supertop .mainMenu li.mainSearchbtn img {
    width: 100%;
    height: auto;
}

.supertop .menuMobile,
.supertop .closeMobileMenu {
    display: none;
    cursor: pointer;
}

.supertop .mainMenu .selEl,
.supertop .mainMenu a:hover {
    color: var(--colorB)
}

.supertop .mainMenu .submenuBlock li a {
    font-weight: var(--regFontWeight);
    padding: 7px 0;
    display: block;
}

.supertop .mainMenu .submenuBlock .arrowDown {
    margin-left: 10px;
    width: 11px;
    height: auto;
}

.supertop .mainMenu .switchLang {
    border-left: 1px solid var(--colorA);
    border-right: 1px solid var(--colorA);
    width: 100px;
    justify-content: center;
    text-transform: uppercase;
}

.supertop .mainMenu .switchLang.submenuBlock .submenuBlockEl {
    left: -7px;
    text-align: center;
    min-width: 113px;
    padding-left: 0;
    padding-right: 9px;
    overflow: hidden;
}

.supertop .mainMenu .switchLang.submenuBlock span {
    display: flex;
    align-items: center;
}

.top {
    position: relative;
    overflow: hidden;
}

.top .topImgWrap {
    position: relative;
    display: flex;
    height: 100%;
}

.top .topImgWrap:after,
.top .imageBg:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: var(--colorA);
    opacity: .3;
}

.top .topImgWrap img {
    object-fit: cover;
    width: 100%;
}
.top .topImgWrap.wrap_video{
	padding-bottom:35%;
	position:relative;
}

.top .topImgWrap .video_in_testata {
    object-fit: cover;
    width: 100%;
	position:absolute;
}

.top .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    color: #fff;
    text-align: center;
}

.top .header .textArea {
    display: flex;
    flex-flow: column;
    max-width: 798px;
}

.top.ricerca .header .textArea {
    max-width: 1000px;
}

.top .header .textArea .mainTitle {
    order: 2;
    font-size: var(--biggerFontSize);
    line-height: 76px;
    margin: 0;
    font-weight: var(--boldFontWeight);
}

.top.ricerca .header .textArea .mainTitle {
    font-size: 56px;
}

.top .header .textArea .mainSubTitle {
    order: 1;
    font-size: 32px;
    line-height: 34px;
    margin: 0 0 26px 0;
    font-weight: var(--regFontWeight);
}

.top .header .textArea .mainSubTitle:before {
    content: "";
    width: 23px;
    height: 3px;
    background: currentColor;
    display: inline-block;
    margin-right: 14px;
    border-radius: 8px;
    vertical-align: middle;
}

.homePage .top .header {
    padding-left: 515px;
}

.top .topFilter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
}

.top .imageBg {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.top .imageBg img {
    object-fit: cover;
    width: 100%;
    height: 0;
    opacity: 0;
    transition: height 0ms 400ms, opacity 400ms 0ms;
}

.top .imageBg img.visible {
    height: auto;
    opacity: 1;
    transition: height 0ms 0ms, opacity 600ms 0ms;
}

.top .topFilter .leftArea {
    width: 515px;
    height: 100%;
    position: relative;
    background: rgba(27, 60, 112, 0.87);
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.top .topFilter .leftArea span {
    width: 100%;
    margin: 30px 0;
    position: relative;
}

.top .topFilter .leftArea span:after {
    content: "";
    width: 156px;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: -9px;
}

.lang_de .top .topFilter .leftArea span:after{
  width:80px;
}

.top .topFilter .leftArea label {
    cursor: pointer;
    width: 350px;
    padding-left: 10px;
    float: right;
    font-size: 35px;
    font-weight: var(--regFontWeight);
    text-transform: uppercase;
    color: #fff;
    position: relative;
}

.lang_de .top .topFilter .leftArea label{
  font-size:30px;
  width:430px;
}

.top .topFilter .leftArea label:after {
    content: "";
    width: calc(100% + 9px);
    height: 2px;
    background: #fff;
    position: absolute;
    left: -9px;
    bottom: -9px;
}

.top .topFilter .leftArea label.active:after {
    content: "";
    width: 100%;
    height: 5px;
    background: var(--colorB);
    position: absolute;
    left: 0;
    bottom: -10px;
}

.top .topFilter .leftArea label input {
    display: none;
}

.top .topFilter .leftArea .openFilterBtn {
    font-family: var(--mainFont);
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    border: none;
    font-size: 26px;
    padding: 23px 40px;
    color: var(--colorB);
    background: var(--colorD);
    font-weight: var(--regFontWeight);
    border-radius: 15px 0 0 0;
}

.top .topFilter .leftArea .openFilterBtn img.btn-icon {
    margin-left: 50px;
    height: auto;
    transition: all 0.4s;
}

.top .topFilter .leftArea .openFilterBtn img.srcIcon {
    margin-right: 20px;
    height: 21px;
}

.filterContainer {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    height: 100%;
}

.filterListArea {
    border-top: 17px solid transparent;
    width: 460px;
    transform-origin: left bottom;
    position: absolute;
    bottom: 0;
    left: 515px;
    border-radius: 0 15px 0 0;
    background: rgba(222, 236, 245, 0.9);
    padding: 18px 30px 35px 30px;
    max-height: 92%;
    overflow-y: auto;
}

.filterListArea {
    transform: scaleX(0);
    transition: transform 0.5s;
}

.filterListArea * {
    opacity: 0;
    transition: opacity 0.8s;
}

.filterListArea .dropDownButton {
    margin-bottom: 11px;
    padding-bottom: 11px;
    border-bottom: 2px solid #fff;
    color: var(--colorA);
    font-weight: var(--midFontWeight);
    font-size: 22px;
    text-transform: uppercase;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.filterListArea .dropDownEl label {
    outline: none;
    margin-bottom: 13px;
    width: 100%;
    display: inline-block;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    cursor: pointer;
}

.filterListArea .dropDownEl label:last-child {
    margin-bottom: 25px;
}

.filterListArea .dropDownEl label input[type="checkbox"] {
    width: 45px;
    vertical-align: sub;
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    position: relative;
    margin: 0;
}

.filterListArea .dropDownEl label input[type="checkbox"]::before {
    content: "";
    border-radius: 5px;
    width: 25px;
    height: 25px;
    display: inline-block;
    margin-right: 20px;
    background: #fff;
    border: 1px solid #fff
}

.filterListArea .dropDownEl label input[type="checkbox"]:checked::after {
    content: "";
    width: 15px;
    height: 15px;
    position: absolute;
    left: 11px;
    top: 6px;
    background: #C5C5C5;
    border-radius: 3px;
}

.filterListArea .dropDownEl label.disabled {
    color: #c1c1c1;
    pointer-events: none;
}

.filterListArea .dropDownEl label.disabled input {
    opacity: .5;
}

.filterListArea .btn-dg#goSearch {
    float: right;
    margin-top: 23px;
    transition: all 0.4s;
}

.filterListAreaOpened .filterListArea {
    transform: scalex(1);
}

.filterListAreaOpened .filterListArea * {
    opacity: 1;
}

.filterListAreaOpened .top .topFilter .leftArea .openFilterBtn img.btn-icon {
    transform: rotate(180deg);
}

.internalPage .filterContainer {
    height: auto;
}

.internalPage .filterListArea {
    border-radius: 0 15px 15px 0;
    position: fixed;
    left: 0;
    top: 0;
    bottom: inherit;
    width: calc(100% - 44px);
    background: #f1f1f1;
    z-index: 9999999;
    max-height: 100%;
    padding: 0 30px 30px 30px
}

.internalPage .filterListArea .dropDownButton {
    font-size: 14px;
}

.internalPage .filterListArea .dropDownEl label {
    font-size: 16px;
}

.internalPage .filterListArea .btnGroupArea {
    display: flex;
    justify-content: space-between;
    padding: 10px 0 25px 0;
    position: sticky;
    top: -1px;
    background: #f1f1f1;
    z-index: 9;
}

.internalPage .filterListArea .btnGroupArea .btn-dg {
    font-size: 12px;
}

.internalPage .filterListArea .btnGroupArea .btn-dg img {
    width: 11px;
    margin: 0 0 0 10px
}

.internalPage .filterListArea .btn-dg#goSearch {
    width: 100%;
    margin-top: 10px;
}

.breadcrumb {
    width: 100%;
    padding-top: 12px;
    padding-bottom: 12px;
    text-align: right;
    background: #F1F1F1;
    font-size: 16px;
    line-height: 1em;
    text-decoration: none;
    font-weight: var(--midFontWeight);
    color: var(--specialTextColor)
}

.breadcrumb a {
    color: currentColor;
    text-decoration: none;
    font-weight: var(--regFontWeight);
    position: relative;
    padding-right: 30px;
    margin-right: 5px;
}

.breadcrumb a:after {
    content: "";
    background-image: url("../img/icon/arrow-breadcrumb.svg");
    width: 9px;
    height: 15px;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center right;
    position: absolute;
    right: 0;
    top: 2px
}

.section {
    margin-top: 100px;
    position: relative;
}

.section .mainTitle {
    margin: 0 0 21px 0;
    font-size: var(--bigFontSize);
    line-height: 48px;
    font-weight: var(--boldFontWeight);
    color: var(--specialTextColor);
}

.section .mainSubTitle {
    font-size: var(--mid2FontSize);
    font-weight: var(--regFontWeight);
    line-height: 30px;
    margin: 0
}

.section.p-left {
    padding-left: var(--mainGutter);
}

.section.widthSwiper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.section.widthSwiper .navigation {
    position: relative;
    width: 160px;
    margin-right: var(--mainGutter);
}

.section.widthSwiper .mainSwiper {
    width: 100%;
    margin-top: 0;
}

.section.widthSwiper .mainSwiper.onlyImg {
    margin-top: 30px;
}

.section.widthSwiper .mainSwiper .swiper-slide {
    width: 375px;
    letter-spacing: -.012em;
}

.section.widthSwiper .mainSwiper .swiper-slide.cardTypeImg {
    width: auto;
    border-radius: 0;
    max-width: 80%;
}

.cardType {
    border-radius: var(--borderRadius);
    overflow: hidden;
    position: relative;
    transition: all 0.4s;
}

.cardType .cardLabel,
.cardType .wrapperCard:after {
    transition: all .5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.cardType .wrapperCard {
    flex-wrap: wrap;
}

.cardType .wrapperCard,
.cardType a.wrapperCard {
    width: 100%;
    display: flex;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

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

.cardType .wrapperCard .cardLabel {
    width: 100%;
    margin-top: auto
}

.cardType .wrapperCard .cardLabel span {
    transition: all 0.4s;
    margin: 0 auto;
    font-size: var(--minFontSize);
    font-weight: var(--regFontWeight);
    padding: 9px 28px; 
    border-radius: var(--borderRadius3);
    background: var(--colorA);
    color: #fff;
    max-width: 95%;
    width: auto;
    display: inline-block;
}

.cardType .wrapperCard .textArea {
    z-index: 999;
    line-height: 22px;
    padding: 40px 45px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    justify-content: space-between;
}

.cardType .wrapperCard .textArea p {
    font-weight: var(--regFontWeight);
    font-size: var(--minMinFontSize);
}

.cardType .wrapperCard .textArea .asBtn {
    background: #fff;
    border-radius: 100%;
    width: 60px;
    height: 60px;
    margin: 15px auto 25px auto
}

.cardType .wrapperCard .textArea .asBtn img {
    width: 60px;
    height: auto;
    padding: 20px 15px;
}

.cardType .wrapperCard .textArea .mainTitle {
    font-size: 32px;
    font-weight: var(--regFontWeight);
    line-height: 39px;
    margin: 0 0 20px 0;
    color: #fff
}

.cardType .wrapperCard .textArea .hiddenTxt {
    opacity: 0;
    display: flex;
    flex-flow: column;
}

.cardType .wrapperCard:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: var(--colorA);
    opacity: 0
}

.cardType:hover .wrapperCard .textArea .hiddenTxt {
    opacity: 1;
}

.cardType:hover .wrapperCard:after {
    opacity: .8;
}

.cardType:hover .cardLabel span {
    background: var(--colorB);
}

.cardType:hover .wrapperCard .textArea .asBtn {
    animation: arrowDance 1.5s ease-in-out infinite;
}

.cardType.cardTypeBase .wrapperCard .textArea .hiddenTxt {
    justify-content: space-between;
    height: inherit
}

.cardType.cardTypeBase .wrapperCard .textArea .hiddenTxt {
    min-height: 286px
}


/*alessia*/

.cardType.cardTypeBase .wrapperCard .textArea p {
    padding-bottom: 0;
}

.cardType.cardTypeA {
    width: 370px;
}

.cardType.cardTypeA .wrapperCard {
    padding-bottom: 90px;
}

.cardType.cardTypeA .wrapperCard img,
.cardType.cardTypeA .wrapperCard:after {
    border-radius: var(--borderRadius);
}

.cardType.cardTypeA .wrapperCard:after,
.cardType.cardTypeA .wrapperCard .imgArea {
    height: calc(100% - 90px);
}

.cardType.cardTypeA .wrapperCard .imgArea {
    z-index: 999;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cardType.cardTypeA .wrapperCard .imgArea img {
    flex-shrink: 1;
    width: auto;
}

.cardType.cardTypeA .wrapperCard .textArea {
    height: calc(100% - 90px);
    display: block;
}

.cardType.cardTypeA .hiddenTxt {
    height: 100%;
    justify-content: center;
}

.cardType.cardTypeA .wrapperCard .mainTitle {
    position: absolute;
    top: calc(100% - 60px);
    margin: 0;
    left: 0;
    width: 100%;
    line-height: 26px;
    text-align: left;
    font-size: var(--midFontSize);
    font-weight: var(--regFontWeight);
}

.cardType.cardTypeA .wrapperCard .mainTitle:after {
    content: url(../img/icon/arrow-right-orange.svg);
    vertical-align: middle;
    margin-left: 12px;
    display: inline-block;
    animation: arrowDance 1.5s ease-in-out infinite;
    opacity: 0;
}

.cardType.cardTypeA:hover .mainTitle {
    color: var(--colorB)
}

.cardType.cardTypeA:hover .wrapperCard .mainTitle:after {
    opacity: 1;
}

.cardType.cardTypeA .wrapperCard .textArea .hiddenTxt .mainTitle {
    position: relative;
    top: 0;
    text-align: center;
    color: #fff;
    margin-bottom: 19px;
    font-size: 28px;
}

.cardType.cardTypeA .wrapperCard .textArea .hiddenTxt .mainTitle:after {
    content: ""
}

.cardContent.bandaBg .cardType.cardTypeA .wrapperCard .mainTitle {
    text-align: center;
}

.cardContent.bandaBg .cardType.cardTypeA .wrapperCard .mainTitle:after {
    display: none;
}

.cardType.cardTypeB .textArea,
.cardType.cardTypeB .wrapperCard:after {
    height: 45%;
    bottom: 0;
    top: inherit;
    text-align: left;
}

.cardType.cardTypeB .wrapperCard:after {
    opacity: .85;
    border-radius: var(--borderRadius);
}

.cardType.cardTypeB .wrapperCard .textArea {
    padding: 18px 35px;
    justify-content: flex-start;
}

.cardType.cardTypeB .wrapperCard .textArea .mainTitle {
    font-size: var(--mainFontSize);
    line-height: 25px;
    font-weight: var(--regFontWeight);
    margin: 12px 0 10px 0
}

.cardType.cardTypeB .wrapperCard .textArea p,
.cardType.cardTypeB .wrapperCard .textArea .data {
    font-size: 22px;
    line-height: 33px;
    font-weight: var(--regFontWeight);
}

.cardType.cardTypeB .wrapperCard img {
    transition: transform .5s;
}

.cardType.cardTypeB:hover .wrapperCard img {
    transform: scale(1.1);
}

.cardType.cardTypeC {
    width: 370px;
    background: var(--colorD);
    max-width: calc(50% - 45px);
    border: 3px solid #fff;
}

.cardType.cardTypeC .wrapperCard {
    height: 100%;
    justify-content: space-between;
    flex-flow: column;
}

.cardType.cardTypeC .wrapperCard .textArea {
    position: relative;
    padding: 0 20px 40px 20px
}

.cardType.cardTypeC .wrapperCard .textArea .mainTitle {
    letter-spacing: -0.016em;
    color: var(--specialTextColor);
    font-size: var(--mainFontSize);
    line-height: 32px;
}

.cardType.cardTypeC .wrapperCard .cardLabel span {
    background: #fff;
    font-size: var(--minMinFontSize);
    ;
    text-transform: uppercase;
    color: var(--specialTextColor)
}

.cardType.cardTypeC .wrapperCard img {
    max-width: 260px;
    height: auto;
    margin: 0 auto
}

.cardType.cardTypeC:hover {
    border-color: #f1f1f1;
    background: transparent;
}

.cardType.cardTypeC:hover .wrapperCard:after {
    opacity: 0;
}

.cardType.cardTypeC:hover .cardLabel span {
    background: var(--specialTextColor);
    color: #fff
}

.cardType.cardTypeD {
    width: 100%;
    background: var(--colorD);
    margin-bottom: 10px;
    border: 3px solid #fff;
}

.cardType.cardTypeD .wrapperCard {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.cardType.cardTypeD .imgArea {
    width: 410px;
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px;
}

.cardType.cardTypeD .imgArea:before {
    content: "";
    position: absolute;
    left: 17.5%;
    top: 40px;
    background: #fff;
    z-index: 2;
    width: 65%;
    height: 0;
    padding-bottom: 65%;
    border-radius: 100%;
}

.cardType.cardTypeD .imgArea img {
    max-width: 255px;
    margin: 0 auto;
    height: auto;
    position: relative;
    z-index: 99;
    margin-bottom: -15px;
}

.cardType.cardTypeD .textArea {
    color: var(--mainTextColor);
    width: calc(100% - 410px);
    position: relative;
    padding-left: 0;
    text-align: left;
}

.cardType.cardTypeD .textArea p {
    font-size: var(--mainFontSize);
    line-height: 30px;
}

.cardType.cardTypeD .textArea .mainTitle {
    color: var(--specialTextColor);
    font-size: var(--mid2FontSize);
    font-weight: var(--midFontWeight);
    line-height: 36px;
    text-transform: uppercase;
}

.cardType.cardTypeD .textArea .detailInfo {
    margin-bottom: 36px;
}

.cardType.cardTypeD .textArea .cardLabel span {
    border: 2px solid #fff;
    color: var(--colorB);
    text-transform: uppercase;
    padding: 18px 45px;
    background: #fff;
    border-radius: 30px;
    font-weight: var(--midFontWeight);
    font-size: var(--mainFontSize);
}

.cardType.cardTypeD:hover .wrapperCard:after {
    opacity: 0;
}

.cardType.cardTypeD:hover .cardLabel span {
    background: var(--colorB);
    color: #fff
}

.cardType.cardTypeD:hover {
    border-color: #f1f1f1;
    background: transparent;
}

.cardType.cardTypeE {
    width: 100%;
    background: var(--colorD);
    margin-bottom: 10px;
    border: 3px solid #fff;
    margin-bottom: 20px;
}

.cardType.cardTypeE .wrapperCard {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    align-items: stretch;
}

.cardType.cardTypeE .imgArea {
    width: 533px;
    position: relative;
}

.cardType.cardTypeE .imgArea img {
    height: 100%;
}

.cardType.cardTypeE .textArea {
    color: var(--mainTextColor);
    width: calc(100% - 533px);
    position: relative;
    padding-left: 60px;
    text-align: left;
}

.cardType.cardTypeE .textArea p {
    font-size: var(--mainFontSize);
    line-height: 30px;
}

.cardType.cardTypeE .textArea .mainTitle {
    color: var(--specialTextColor);
    font-size: 32px;
    font-weight: var(--regFontWeight);
    line-height: 36px;
    text-transform: uppercase;
}

.cardType.cardTypeE .textArea .mainSubTitle {
    margin: 0 0 10px 0;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    color: var(--colorB)
}

.cardType.cardTypeE .textArea .cardLabel span {
    border: 2px solid #fff;
    color: var(--specialTextColor);
    text-transform: uppercase;
    padding: 18px 45px;
    background: #fff;
    border-radius: 30px;
    font-weight: var(--midFontWeight);
    font-size: var(--mainFontSize);
}

.cardType.cardTypeE:hover {
    border-color: #f1f1f1;
    background: transparent;
}

.cardType.cardTypeE:hover .wrapperCard:after {
    opacity: 0;
}

.cardType.cardTypeE:hover .cardLabel span {
    border-color: currentColor;
}

.wrapContentCardF {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
}

.cardType.cardTypeF {
    width: 20%;
    margin: 20px 6.6% 80px 0;
    transition: all 0.4s;
    padding: 10px
}

.cardType.cardTypeF:nth-child(4n+0) {
    margin-right: 0;
}

.cardType.cardTypeF .wrapperCard {
    width: 100%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
}

.cardType.cardTypeF .imgArea {
    width: calc(100% - 12px);
    max-width: 190px;
    max-height: 190px;
    padding: 5px;
    overflow: hidden;
    border-radius: 100%;
    box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.07);
}

.cardType.cardTypeF .wrapperCard .textArea {
    position: relative;
    padding: 0
}

.cardType.cardTypeF .wrapperCard .textArea .mainTitle {
    font-size: var(--mainFontSize);
    font-weight: var(--regFontWeight);
    line-height: 30px;
    color: var(--mainTextColor);
    margin: 40px 0 30px 0
}

.cardType.cardTypeF .wrapperCard .textArea span {
    white-space: nowrap;
    color: var(--colorB);
    text-transform: uppercase;
    font-size: var(--mainFontSize);
    font-weight: var(--midFontWeight);
}

.cardType.cardTypeF .wrapperCard .textArea span img {
    animation: arrowDance 1.5s ease-in-out infinite;
    height: 11px;
    width: auto;
    margin-left: 15px;
    margin-top: -4px;
    display: inline-block;
    vertical-align: middle;
}

.cardType.cardTypeF:hover .wrapperCard:after {
    display: none;
}

.cardType.cardTypeF.noImg .wrapperCard .textArea .mainTitle {
    font-weight: var(--regFontWeight);
}

.cardType.cardTypeF.noImg .wrapperCard .textArea .mainTitle span {
    font-weight: var(--midFontWeight);
    color: var(--mainTextColor);
    text-transform: none;
}

.cardType.cardTypeF:hover .wrapperCard .textArea span {
    color: var(--specialTextColor)
}

.cardType.cardTypeF:hover .wrapperCard .textArea span img {
    content: url("../img/icon/arrow-blu.svg");
}

.cardType.cardTypeG {
    width: 100%;
    margin-bottom: 20px;
}

.cardType.cardTypeG .wrapperCard {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.cardType.cardTypeG .imgArea {
    width: 510px;
    position: relative;
    border-radius: 15px;
    overflow: hidden;
}

.cardType.cardTypeG .imgArea img {
    display: block;
}

.cardType.cardTypeG .textArea {
    color: var(--mainTextColor);
    width: calc(100% - 510px);
    position: relative;
    padding-left: 60px;
    text-align: left;
}

.cardType.cardTypeG .textArea .mainTitle {
    color: var(--specialTextColor);
    font-size: 32px;
    font-weight: var(--regFontWeight);
    line-height: 36px;
    text-transform: uppercase;
}

.cardType.cardTypeG .textArea .mainSubTitle {
    margin: 0 0 10px 0;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    color: var(--colorB)
}

.risultato-ricerca .mainSubTitle {
    margin: 0 0 10px 0;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    color: var(--colorB)
}

.cardType.cardTypeG .textArea p {
    font-size: var(--mainFontSize);
    line-height: 30px;
    padding-bottom: 0;
}

.cardType.cardTypeG:hover .wrapperCard:after {
    display: none;
}

.rowBluCard {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 136px;
}

.cardType.cardTypeH {
    margin-bottom: 50px;
    background: var(--colorD);
    padding: 115px 40px 40px 40px;
    position: relative;
    overflow: visible;
    width: 24%
}

.cardType.cardTypeH .textArea .mainTitle {
    margin: 0 0 50px 0;
    font-size: var(--mid2FontSize);
    font-weight: var(--midFontWeight);
    width: 100%;
    text-align: center;
}

.cardType.cardTypeH .imgArea {
    width: 100%;
    position: absolute;
    top: -63px;
    left: 0;
    text-align: center;
}

.cardType.cardTypeH .imgArea img {
    margin: 0 10px;
    width: 126px;
    height: auto;
    max-width: 40%;
    border: 6px solid #fff;
    border-radius: 100%;
    box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.07);
}

.cardType.cardTypeI {
    width: 100%;
    margin-top: 45px;
    padding-bottom: 45px;
    border-bottom: 2px solid #f1f1f1;
    border-radius: 0;
}

.cardType.cardTypeI .imgArea {
    width: 200px;
    height: 200px;
    padding: 5px;
    overflow: hidden;
    border-radius: 100%;
    box-shadow: 0px 0px 10px 4px rgb(0 0 0 / 7%);
    margin: 7px
}

.cardType.cardTypeI .textArea {
    width: calc(100% - 215px);
    position: relative;
    height: auto;
    text-align: left;
}

.cardType.cardTypeI .wrapperCard {
    align-items: center;
}

.cardType.cardTypeI .wrapperCard .textArea {
    line-height: inherit;
    padding: 0 50px;
    justify-content: center;
}

.cardType.cardTypeI .wrapperCard .textArea .mainTitle {
    color: var(--colorB);
    text-transform: uppercase;
}

.cardType.cardTypeI .wrapperCard .textArea p {
    color: var(--mainTextColor);
    font-size: var(--mainFontSize);
    font-weight: var(--mainFontWeight);
}

.cardType.cardTypeI .wrapperCard .textArea span {
    white-space: nowrap;
    color: var(--mainTextColor);
    text-transform: uppercase;
    font-size: var(--mainFontSize);
    font-weight: var(--midFontWeight);
}

.cardType.cardTypeI .wrapperCard .textArea span img {
    height: 11px;
    width: auto;
    margin-left: 15px;
    margin-top: -4px;
    display: inline-block;
    vertical-align: middle;
}

.cardType.cardTypeI .wrapperCard:after {
    display: none;
}

.cardType.cardTypeI:last-child {
    border: none
}

.cardType.cardTypeI:hover .wrapperCard .textArea span {
    color: var(--specialTextColor)
}

.cardType.cardTypeI:hover .wrapperCard .textArea span img {
    animation: arrowDance 1.5s ease-in-out infinite;
    content: url(../img/icon/arrow-blu.svg);
}

.column-2 .column-el.wrapContentCardF {
    justify-content: space-between;
}

.column-2 .column-el.wrapContentCardF .cardType.cardTypeF {
    width: 38%;
}

.bandaGreen {
    background: #93C025;
}

.bandaGreen .rowFlexContent {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 50px auto;
    align-items: center;
}

.bandaGreen .rowFlexContent .imgArea {
    width: 510px;
    text-align: right;
}

.bandaGreen .rowFlexContent .textArea {
    width: calc(100% - 510px);
    padding-left: 60px;
    color: #fff
}

.bandaGreen .rowFlexContent .textArea .mainTitle {
    font-size: 32px;
    color: #fff;
    text-transform: uppercase;
    line-height: 40px;
    font-weight: var(--regFontWeight);
}

.bandaGreen .rowFlexContent .textArea p {
    padding: 0;
}

.blockImgText {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 70px;
    /*fix*/
    align-items:center;
}

.blockImgText .imgArea {
    width: 50%;
    overflow: hidden;
}

.blockImgText .imgArea img {
    object-fit: contain;
    width: 100%;
    height: auto;
    border-radius: var(--borderRadius);
}

.blockImgText .textArea {
    width: 50%;
    /* padding: 50px 50px 0 50px */
    padding: 0px 50px 0 50px
}

.blockImgText .textArea .mainTitle {
    font-size: var(--mid2FontSize);
    font-weight: var(--midFontWeight);
    line-height: 36px;
    text-transform: uppercase;
}

.blockImgText .textArea div.contenuto-libero p:last-child{padding-bottom:0;}

.blockImgTextSquare {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 100px;
}

.blockImgTextSquare .squareEl {
    width: 50%;
    background: #f1f1f1;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-height: 30vw;
}

.blockImgTextSquare .squareEl .imgArea {
    width: 100%;
    height: 100%;
}

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

.blockImgTextSquare .squareEl .textArea {
    padding: 60px;
    margin: 10px auto auto auto
}

.blockImgTextSquare .squareEl .textArea p {
    padding: 0
}

.blockImgTextSquare .squareEl .miniCard {
    display: flex;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.blockImgTextSquare .squareEl .miniCard .imgArea {
    display: flex;
    align-items: center;
    width: 190px;
    height: 190px;
    padding: 5px;
    overflow: hidden;
    border-radius: 100%;
    box-shadow: 0px 0px 10px 4px rgb(0 0 0 / 7%);
}

.blockImgTextSquare .squareEl .miniCard .imgArea img {
    width: 100%;
    height: auto;
}

.blockImgTextSquare .squareEl .miniCard .textArea {
    margin: auto;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 0;
    margin-left: 35px;
    width: calc(100% - 225px)
}

.blockImgTextSquare .squareEl .mainTitle {
    margin: 0;
    color: var(--specialTextColor);
    font-size: 32px;
    font-weight: var(--regFontWeight);
    line-height: 36px;
    text-transform: uppercase;
}

.blockImgTextSquare .squareEl .mainSubTitle {
    margin: 0 0 10px 0;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    color: var(--colorB)
}

.blockImgTextSquare .squareEl:last-child {
    border-left: 6px solid #fff
}

.blockImgTextSquare .squareEl:nth-child(2) {
    background: #fff;
}

.blockImgTextSquare .titleGroup {
    margin-bottom: 30px;
}

.blockImgTextSquare .squareRow {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-flow: row;
}

.blockImgTextSquare .squareRow .squareEl {
    background: #fff;
}

.blockImgTextSquare .squareRow .squareEl .textArea {
    margin: auto
}

.blockImgTextSquare .squareRow:nth-child(2n+0) {
    flex-flow: row-reverse;
}

.blockImgTextSquare .squareEl .miniCard .textArea.v-senza-img {
    margin-left: 0;
    width: 100%;
}

.section.blockScrollA>.textArea {
    max-width: 715px;
}

.section.blockBgArtline {
    position: relative;
    padding: 65px 0;
    text-align: center;
    color: #fff;
    min-height: 130px;
}

.section.blockBgArtline .imgArea {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

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

.section.blockBgArtline .imgArea:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--colorA);
    opacity: .47;
}

.section.blockBgArtline .textArea {
    width: 96%;
    height: auto;
    z-index: 999;
    position: relative;
    margin: 0 auto
}

.section.blockBgArtline .textArea.maxW {
    max-width: 720px;
    margin: 0 auto
}

.section.blockBgArtline .textArea.maxW a {
    color: #fff
}

.section.blockBgArtline .textArea p {
    margin-top: 20px;
    padding: 0
}

.section.blockBgArtline .mainTitle {
    color: #fff;
    margin-bottom: 6px;
}

.section.blockBgArtline.artlineMainJob .mainSubTitle {
    color: var(--colorB);
    font-weight: var(--boldFontWeight);
    font-size: var(--mid2FontSize);
    margin: 25px 0 45px 0
}

.section.blockBgArtline .artLine {
    position: relative;
    margin-top: 67px;
    min-height: 130px;
}

.section.blockBgArtline .artLine img {
    position: absolute;
    width: 100%;
    height: auto;
    left: 0;
    top: 50px;
    filter: brightness(70)
}

.section.blockBgArtline .artLine .listLink {
    padding: 0 30px;
    display: flex;
    justify-content: center;
    font-size: var(--midFontSize);
    font-weight: var(--regFontWeight);
}

.section.blockBgArtline .artLine .listLink .el {
    font-weight: var(--regFontWeight);
    color: currentColor;
    text-decoration: none;
    display: inline-block;
    position: relative;
}

.section.blockBgArtline .artLine .listLink .el:nth-child(2n+1) {
    margin-top: 8.5%
}


/*.section.blockBgArtline .artLine .listLink .el:after{content:"";position:absolute;top:16px;left:-15px;height:15px;transform: scaleX(0);width:calc(100% + 30px);z-index: -1;background:transparent;border-radius:var(--borderRadius);transition: all .5s cubic-bezier(0.25, 0.1, 0.25, 1);}
.section.blockBgArtline .artLine .listLink .el:hover:after{background:var(--colorB); transform:scaleX(1);}*/

.section.blockBgArtline .artLine .listLink a.el:before {
    content: "";
    background: currentColor;
    top: -25px;
    left: 50%;
    margin-top: 0;
    margin-left: -10px;
    border-radius: 100%;
    height: 20px;
    width: 20px;
    transform: scale(1);
    animation: pulseWhite 2s infinite;
    z-index: -1;
    display: inline-block;
    position: absolute;
}

.section.blockBgArtline .artLine .listLink a.el:after {
    content: "";
    width: 100%;
    height: 2px;
    background: transparent;
    display: block;
    transform: scaleX(0);
    transition: all .5s cubic-bezier(0.25, 0.1, 0.25, 1);
    margin-top: 3px;
    border-radius: var(--borderRadius);
}

.section.blockBgArtline .artLine .listLink a.el:hover:after {
    transform: scaleX(1);
    background: var(--colorB)
}

.section.blockBgArtline .artLine .listLink.maxWidthArtline {
    max-width: 1500px;
    justify-content: space-around;
    margin: 0 auto
}

.section.blockBgArtline .artLine .listLink.maxWidthArtline .el:nth-child(2n+1) {
    margin-top: 10.5%;
}

.section.blockBgArtline .btn-dg {
    margin-top: 50px;
}

.section.blockBgArtline.artLineJob .imgArea:after {
    opacity: .25;
}

.section.blockBgArtline.invertOrder .artLine .listLink .el:nth-child(2n+1) {
    margin-top: 0
}

.section.blockBgArtline.invertOrder .artLine .listLink .el:nth-child(2n+0) {
    margin-top: 8.5%
}

.section.blockBgArtline .artLine .listLink span.el:after {
    display: none;
}

.section.blockBgArtline.artlineNoList .artLine {
    margin-top: 0;
}

.section.blockScrollB.widthSwiper .mainSwiper .swiper-slide {
    width: 340px;
}

.section.blockScrollB .wrapEl {
    width: 235px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

.section.blockScrollB .wrapEl .navigation {
    display: inline-block;
    margin-bottom: 60px;
}

.section.blockScrollB .mainSwiper {
    width: calc(100% - 315px);
    margin-right: 0;
}

.section.blockMap .textArea {
    max-width: 715px;
}

.section.blockMap .mapArea {
    margin-top: 73px;
}

.section.blockMap .mapArea img {
    width: 100%;
    height: auto;
}

.section.bg-azure {
    padding-top: 60px;
    padding-bottom: 60px;
    background: var(--colorC);
}

.videoBlock video {
    width: 100%;
    border-radius: 15px;
}

.productMain,
.caseificioMain {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.productMain .mainContent {
    width: 33%;
}

.productMain .mainContent .mainTitle {
    font-size: var(--bigFontSize);
    font-weight: var(--boldFontWeight);
    line-height: 46px;
    margin: 0
}

.productMain .mainContent .mainSubTitle,
.caseificioMain .mainContent .mainSubTitle {
    font-size: var(--mid2FontSize);
    color: var(--colorB);
    font-weight: var(--boldFontWeight);
    line-height: 33px;
    margin: 5px 0 0 0
}

.productMain .mainContent .textArea {
    margin-top: 38px;
}

.productMain .mainContent .textArea a.btn-dg {
    margin-top: 50px;
}

.productMain .productImage {
    width: 33%;
    padding: 35px 7.5%
}

.productMain .productImage img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.productMain .asideArea {
    width: 33%;
}

.productMain .asideArea .section {
    margin: 0
}

.productMain .asideArea .formatiBlock .descriptiveTitle {
    font-size: var(--mainFontSize);
    font-weight: var(--regFontWeight);
    line-height: 70px;
    width: 70px;
    border-radius: 100%;
    background: #F1F1F1;
    text-align: center;
    color: var(--specialTextColor);
    margin: 0 40px 15px 0
}

.productMain .asideArea .formatiBlock.more_pesi .descriptiveTitle{
   margin: 0 30px 15px 0
}

.productMain .asideArea .formatiBlock .wrapIn {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
}

.productMain .asideArea .gustoBlock {
    margin-top: 40px;
}

.productMain .asideArea .gustoBlock .descriptiveTitle {
    font-size: var(--mainFontSize);
    font-weight: var(--regFontWeight);
    margin: 0;
    line-height: 30px;
}


/*.productMain .animateEl{visibility:hidden;}*/

.animateEl {
    visibility: hidden;
}

.asideArea .sectionSubtitle,
.extraArea .sectionSubtitle,
.productMain .mainContent .textArea .sectionSubtitle {
    display: inline-block;
    font-size: var(--mid2FontSize);
    font-weight: var(--midFontWeight);
    line-height: 33px;
    color: var(--specialTextColor);
    margin: 0 0 15px 0
}

.productMain .mainContent .textArea .sectionSubtitle {
    display: block;
}

.extraArea .wrapIn {
    border-top: 2px solid #B4CEDE;
    padding-top: 75px;
    margin-top: 95px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.extraArea .tableEl {
    margin-top: 20px;
}

.extraArea .tableEl .descriptiveTitle {
    font-size: var(--mainFontSize);
    color: var(--specialTextColor);
    margin: 0 0 4px 0;
    padding: 0 0 0 70px;
    background: #DEECF5;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.extraArea .tableEl .descriptiveTitle span {
    background: #C5E0F0;
    width: 42%;
    border-left: 4px solid #fff;
    padding: 15px;
    text-align: center;
    margin-left: 50px;
    font-weight: var(--regFontWeight);
}

.extraArea .tableEl .descriptiveTitle:first-child {
    border-radius: 15px 15px 0 0;
    overflow: hidden;
}

.extraArea .tableEl .descriptiveTitle:last-child {
    border-radius: 0 0 15px 15px;
    overflow: hidden;
}

.extraArea .valoriBlock {
    width: calc(60% - 100px)
}

.extraArea .varieBlock {
    width: calc(33% + 100px);
    margin-top: 45px
}

.extraArea .varieBlock .wrapEl {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.extraArea .varieBlock .wrapEl:last-child {
    margin: 0
}

.extraArea .varieBlock .wrapEl .sectionSubtitle {
    font-size: 24px;
    margin-bottom: 0;
}

.extraArea .varieBlock .wrapEl p {
    padding-bottom: 0;
}

.extraArea .varieBlock img {
    width: 77px;
    height: auto;
    margin-right: 33px;
}

.certificazione_wrap{display:flex; gap:20px; align-items:center;}

.caseificioMain .mainContent {
    width: 43%;
}

.caseificioMain .mainContent .extraArea {
    width: 100%;
}

.caseificioMain .mainContent .textArea {
    margin-top: 38px;
}

.caseificioMain .asideArea {
    width: 44%;
}

.caseificioMain .asideArea .cardContent {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: 570px;
}

.caseificioMain .asideArea .cardContent .cardType.cardTypeF .imgArea {
    width: 90%;
    height: 0;
    padding: 0 0 90% 0
}

.caseificioMain .asideArea .cardContent .cardType.cardTypeF {
    border: 0;
    padding: 12px;
    width: 30%;
    max-width: 160px;
    margin: 0 5% 40px 0
}

.caseificioMain .asideArea .cardContent .cardType.cardTypeF .wrapperCard .textArea .mainTitle {
    margin: 30px 0 0 0;
}

.caseificioMain .asideArea section {
    margin-top: 0;
}

.caseificioMain .asideArea .cardContent .cardType.cardTypeF:nth-child(3n+0) {
    margin: 0
}

.cardContentFiltered {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 65px;
}

.cardContentFiltered .filterSidebar {
    width: 300px;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock {
    width: 100%;
    margin-bottom: 40px;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock span {
    display: block;
    margin-top: 16px;
    cursor: pointer;
    line-height: 25px;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock span.disabled {
    pointer-events: none;
    opacity: 0.5;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock span.filterTitle {
    margin-top: 0;
    font-size: var(--midFontSize);
    font-weight: var(--midFontWeight);
    text-transform: uppercase;
    color: var(--specialTextColor)
}

.cardContentFiltered .filterSidebar .filterSideBarBlock.activeFilters span.filterTitle {
    color: var(--colorB);
    margin-bottom: 30px;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock.activeFilters .filterElBtn {
    display: flex;
    width: fit-content;
    background: var(--colorD);
    border-radius: 25px;
    padding: 8px 20px;
    margin-bottom: 10px;
    cursor: pointer;
}

.cardContentFiltered .filterSidebar .filterSideBarBlock.activeFilters .filterElBtn span {
    display: inline-block;
    color: var(--specialTextColor);
    margin: 0 15px 0 0
}

.cardContentFiltered .filterSidebar .filterSideBarBlock.activeFilters .reset {
    font-size: var(--midFontSize);
    font-weight: var(--midFontWeight);
    color: var(--colorB);
    background: transparent;
    padding: 0;
    border: 0;
    margin-top: 20px;
}

.cardContentFiltered .cardContent {
    width: calc(100% - 330px);
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: sticky;
    top: 30px
}

.cardContentFiltered.griglia .cardContent {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: static
}

.cardContentFiltered .cardContent .cardType {
    margin-left: 45px;
    margin-bottom: 45px;
}

.cardContentFiltered .cardContent .cardType.cardTypeD {
    margin-bottom: 20px;
}

.cardContentFiltered #elenco-confezioni.cardContent .cardType.cardTypeD {
    margin-bottom: 64px;
}

.elenco_badge_v2.cardContent .cardType {
    margin-bottom: 64px;
}

.mobileFilter {
    width: 100%;
    background: #f1f1f1;
    padding: 8px var(--mainGutter);
    display: none;
}

.mobileFilter .openFilterMobile {
    margin: 0
}

.rowContentCard {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1315px;
    margin: 0 auto;
    position: relative;
}

.bandaBg:before {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    width: 100%;
    height: calc(100% - 170px);
    background: var(--colorD);
}

.blockForm .btn-dg.btn-dg-orange-filled:hover {
    background: #fff;
}

.timelineSection {
    position: relative;
    width: 100%;
    max-width: 1086px;
    margin: 0 auto;
    display: flex;
    flex-flow: column;
    align-items: center;
}

.timelineSection .timelineEl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 130px;
    margin-top: 35px;
    position: relative;
}

.timelineSection .timelineEl .imgArea img {
    border-radius: 15px;
    overflow: hidden;
}

.timelineSection .timelineEl .imgArea,
.timelineSection .timelineEl .textArea {
    width: 37%;
}

.timelineSection .timelineEl .textArea {
    padding: 0 40px;
    z-index: 999;
}

.timelineSection .timelineEl .textArea .titleGroup {
    display: flex;
    flex-flow: column-reverse;
    margin-bottom: 35px;
}

.timelineSection .timelineEl .textArea .titleGroup .mainTitle {
    display: block;
    width: 100%;
    font-size: 32px;
    font-weight: var(--regFontWeight);
    line-height: 40px;
    text-transform: uppercase;
    color: var(--colorB);
    margin: 0
}

.timelineSection .timelineEl .textArea .titleGroup .mainSubTitle {
    font-weight: var(--boldFontWeight);
    font-size: 22px;
    margin: 0 0 6px 0;
    color: #B4CEDE
}

.timelineSection .timelineEl:nth-child(even) {
    flex-flow: row-reverse;
}

.timelineSection:after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1px;
    width: 2px;
    background: #B4CEDE;
    height: 100%;
}

.timelineSection .timelineEl .textArea:before {
    content: "";
    width: 14px;
    height: 14px;
    border: 2px solid #B4CEDE;
    border-radius: 100%;
    position: absolute;
    left: 50%;
    top: 5px;
    background: #fff;
    z-index: 999;
    margin-left: -9px
}

.timelineSection .timelineEl .textArea:after {
    content: "";
    width: 13%;
    height: 2px;
    position: absolute;
    left: 50%;
    top: 13px;
    background: #B4CEDE;
    z-index: 999;
    margin-left: 8px
}

.timelineSection .timelineEl:nth-child(even) .textArea:after {
    left: inherit;
    right: 50%;
    margin-right: 8px;
}

.dropDownSquared {
    width: 100%;
    background: #f1f1f1;
    display: flex;
    flex-flow: column;
    margin-top: 20px;
}

.dropDownSquared .dropDownButton {
    border-top: 4px solid #fff;
    padding: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--specialTextColor);
    font-weight: var(--midFontWeight);
    font-size: var(--midFontSize);
}

.dropDownSquared .dropDownButton span {}

.dropDownSquared .dropDownButton img {
    width: 23px;
}

.dropDownSquared .dropDownEl {
    border-left: 4px solid #fff;
    padding-left: 30px;
    margin-left: 50px;
    margin-bottom: 40px;
    padding-right: 30px;
}

.dropDownSquared .dropDownEl .bnt-link {
    font-size: var(--mainFontSize);
    font-weight: var(--midFontWeight);
}

.dropDownSquared .dropDownEl .bnt-link img {
    margin-left: 7px;
    height: 11px;
    width: auto;
    animation: arrowDance 1.5s ease-in-out infinite
}

.dropDownSquared .dropDownEl .bnt-link:hover {
    color: var(--specialTextColor)
}

.dropDownSquared .dropDownEl .bnt-link:hover img {
    content: url("../img/icon/arrow-blu.svg")
}


/*form*/

.bg-azure .form-dg input:not([type="button"]),
.bg-azure .form-dg select,
.bg-azure .form-dg textarea {
    border-color: #fff;
}


/*.bg-azure .form-dg input.wpcf7-submit{border:#fff;}*/

.form-dg * {
    font-size: 20px;
    font-weight: var(--regFontWeight);
    border-radius: 12px;
}

.form-dg {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 35px;
}

.form-dg input,
.form-dg select,
.form-dg textarea {
    color: var(--mainTextColor);
    padding: 15px 22px;
    margin-bottom: 50px;
    width: 100%;
    border: 1px solid var(--colorC);
    background-color: #fff;
    min-height: 56px;
}

.form-dg input[type="button"] {
    padding: 18px;
    height: 60px;
    transition: all 0.4s;
}

.form-dg .formGroup {
    width: 100%;
}

.form-dg .formGroup.column-3 {
    width: 31%;
}

.form-dg .btn-dg {
    margin: 40px 0 auto auto
}

.form-dg .formGroup label input[type="checkbox"],
.form-dg .formGroup input[type="radio"] {
    padding: 0;
    width: 25px;
    height: 25px;
    vertical-align: sub;
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    position: relative;
    margin: 0 10px 0 0;
    min-height: 1px;
}

.form-dg .formGroup label input[type="checkbox"]::before,
.form-dg .formGroup input[type="radio"]::before {
    content: "";
    border-radius: 5px;
    width: 25px;
    height: 25px;
    display: inline-block;
    margin-right: 20px;
    background: #fff;
    border: 1px solid #fff
}

.form-dg .formGroup label input[type="checkbox"]:checked::after,
.form-dg .formGroup input[type="radio"]:checked::after {
    content: "";
    width: 15px;
    height: 15px;
    position: absolute;
    left: 6px;
    top: 6px;
    background: #C5C5C5;
    border-radius: 3px;
}

.form-dg .formGroup input[type="radio"]::before,
.form-dg .formGroup input[type="radio"]:checked::after {
    border-radius: 100%;
}

.form-dg .formGroup label input[type="radio"] {
    margin-left: 30px;
}

.form-dg .formGroup label:first-child input[type="radio"] {
    margin-left: 0;
}

.form-dg .formGroup label span,
.form-dg .formGroup a,
.wpcf7-not-valid-tip {
    font-size: var(--minMinFontSize)
}

.form-dg .formGroup label span,
.form-dg .formGroup a,
.form-dg .formGroup.privacy_check,
.form-dg .formGroup.marketing_check {
    font-size: var(--minMinFontSize)
}

.btn-dg-wrap {
    display: block;
    text-align: right;
    position: relative;
}

.btn-dg-wrap .btn-dg {
    width: auto;
}

.btn-dg-wrap .wpcf7-spinner {
    position: absolute;
    right: 250px;
    top: 55px;
}

.wpcf7-list-item {
    margin-left: 0
}

.bg-azure .form-dg input[type="radio"] {
    width: auto;
    min-height: 0;
    padding: 0;
    margin: 0;
}

.bg-azure .form-dg input[type="checkbox"] {
    width: auto;
    min-height: 0;
    padding: 0;
    margin: 0;
}

.wpcf7-not-valid-tip {
    transform: translateY(-50px);
}

.privacy .wpcf7-not-valid-tip {
    transform: translateY(0);
}

.mt-40 {
    margin-top: 40px;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
    margin-right: 30px;
}


/*lateral menu*/

.showAsidePanel {
    cursor: pointer;
}

.asidePanel#menuPanel {
    max-width: 50%;
    background: var(--colorC);
}

.asidePanel#menuPanel .headerPanel {
    background: transparent;
    text-align: center;
    padding: 45px 0;
}

.asidePanel#menuPanel .headerPanel .logoLateralMenu {
    width: 180px;
    height: auto;
}

.asidePanel#menuPanel .headerPanel .closeAsidePanel {
    width: 16px;
    height: auto;
    position: absolute;
    top: 85px;
    right: 20px;
}

.asidePanel#menuPanel .bodyPanel .rowMenu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #fff;
    padding: 0 0 70px 0;
    margin-bottom: 70px;
}

.asidePanel#menuPanel .bodyPanel .rowMenu:last-of-type {
    border: none
}

.asidePanel#menuPanel .bodyPanel .rowMenu .imgArea {
    width: 40%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.asidePanel#menuPanel .bodyPanel .rowMenu .imgArea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.asidePanel#menuPanel .bodyPanel .rowMenu .listArea {
    width: 53%;
    display: flex;
    flex-wrap: wrap;
}

.asidePanel#menuPanel .bodyPanel .rowMenu .listArea a {
    display: block;
    width: 100%;
    text-transform: uppercase;
    color: var(--darkerTextColor);
    text-decoration: none;
    margin: 12px 0;
    padding: 0;
    font-size: var(--minFontSize);
}

.asidePanel#menuPanel .bodyPanel .rowMenu .listArea a.menuEl:before {
    content: "";
    opacity: 0;
    width: 0;
    transition: all 0.4s linear;
}

.asidePanel#menuPanel .bodyPanel .rowMenu .listArea a.menuEl:hover:before {
    content: "";
    width: 19px;
    height: 1px;
    background: currentColor;
    display: inline-block;
    margin-right: 10px;
    opacity: 1;
}

.asidePanel#menuPanel .bodyPanel .rowMenu:last-of-type {
    margin-bottom: 0;
}

.asidePanel#menuPanel .socialFooter {
    width: 100%;
    flex-flow: row;
    height: auto;
    justify-content: center;
}

.asidePanel#menuPanel .socialFooter a {
    padding: 0 12px
}

.asidePanel#menuPanel .footerList {
    padding: 30px 0;
    border-top: 1px solid #fff;
    display: none;
}

.asidePanel#menuPanel .footerList .footerListEl {
    width: 50%;
    max-width: 100%;
    margin: 15px 0
}

.asidePanel#menuPanel .footerList .footerListEl a {
    text-decoration: none;
}

.asidePanel#menuPanel .footerList .footerListEl a .hType {
    display: block;
}

.asidePanel#menuPanel .superBottom {
    border-top: 1px solid #fff;
    padding: 40px 0;
    font-size: 10px;
    line-height: 22px;
    display: none;
}

.asidePanel#menuPanel .superBottom a {
    display: block;
    text-decoration: none;
    font-size: 10px;
}

.asidePanel#menuPanel .superBottom a:first-of-type {
    font-size: 16px;
}


/*FINE lateral menu*/

.swiper-button-next,
.swiper-button-prev {
    width: 72px;
    height: 72px;
    border-radius: 100%;
    background: var(--colorC);
}

.swiper-button-prev {
    margin-right: 16px;
    left: 0
}

.swiper-button-prev img {
    transform: rotate(180deg);
}

.swiper-button-next {
    right: 0;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    display: none;
}

@keyframes pulseWhite {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}


/*buttons*/

.btn-dg {
    text-align: center;
    cursor: pointer;
    font-family: var(--mainFont);
    margin-top: 30px;
    color: currentColor;
    border: 1px solid currentColor;
    border-radius: 30px;
    padding: 18px;
    min-width: 315px;
    text-transform: uppercase;
    background: transparent;
    display: inline-block;
    font-size: 20px;
    line-height: 24px;
    font-weight: var(--midFontWeight);
    text-decoration: none
}

.btn-dg:hover {
    text-decoration: none;
}

.btn-dg.btn-maxW {
    min-width: 230px;
}

.btn-dg.btn-dg-light {
    color: #fff
}

.btn-dg.btn-dg-light:hover {
    color: var(--colorB);
}

.btn-dg.btn-dg-orange-filled {
    background: var(--colorB);
    color: #fff;
    border-color: var(--colorB);
}

.btn-dg.btn-dg-orange-filled:hover {
    background: transparent;
    color: var(--colorB);
}

.btn-dg.btn-dg-wo {
    background: #fff;
    color: var(--colorB);
    border-color: #fff;
}

.btn-dg.btn-dg-wo:hover {
    color: #fff;
    border-color: var(--colorB);
    background: var(--colorB);
}

.btn-dg.btn-dg-wo.bnt-icon:hover img {
    filter: brightness(100);
}

.btn-dg.bnt-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1em;
}

.btn-dg.bnt-icon img {
    margin-right: 10px;
    width: auto;
    height: 24px;
}

.btn-dg.bnt-link {
    font-family: var(--mainFont);
    font-size: 20px;
    line-height: 24px;
    font-weight: var(--midFontWeight);
    text-decoration: none;
    color: var(--colorB);
    background: transparent;
    padding: 0;
    border: 0;
    margin: 0;
    min-width: 1px;
}

.btn-dg.bnt-t-mainC {
    color: var(--mainTextColor)
}

.btn-dg.bnt-t-orange {
    color: var(--colorB)
}

.btn-dg.bnt-t-blu {
    color: var(--specialTextColor)
}


/*dropdown*/

.dropDownBlock .dropDownButton {
    cursor: pointer;
}

.dropDownBlock .dropDownButton img {
    transition: all 0.4s;
}

.dropDownBlock .dropDownButton.visibleEl img {
    transform: rotate(180deg);
}

.dropDownBlock .dropDownEl {
    display: none;
}


/*search area*/

.searchArea {
    position: fixed;
    left: 0;
    z-index: 9999999;
    transition: all .5s ease-in-out;
    overflow: hidden;
    top: -500px;
    width: 100%
}

.searchArea .searchDiv {
    background: #fff;
    width: 100%;
    margin: 0 auto;
    padding: 0 100px;
    height: 90px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.searchArea .searchDiv form,
.searchArea .searchDiv form input {
    margin: 0;
    background: transparent;
    border-color: transparent;
}

.searchArea .searchDiv form {
    align-items: center;
    flex-wrap: nowrap;
    position: relative;
    width: 100%;
    padding-right: 120px;
}

.searchArea .searchDiv form .btn-dg {
    min-width: 120px;
    font-size: 14px;
    position: absolute;
    right: 0;
    top: 0;
    line-height: 16px;
    margin-top: 0
}

.searchArea .searchDiv .iconClose {
    width: 15px;
    height: auto;
    display: inline-flex;
    cursor: pointer;
    top: 15px;
    right: 15px;
    position: absolute;
}

.searchArea .searchDiv .iconClose img {
    width: 100%;
    height: auto;
}

.searchOpened .searchArea {
    top: 0
}

.submenuBlock {
    position: relative;
}

.submenuBlock .submenuBlockEl:before {
    content: "";
    width: 116px;
    height: 3px;
    background: var(--colorB);
    position: absolute;
    left: 0;
    top: 10px;
}

.submenuBlock .submenuBlockEl {
    display: none;
    position: absolute;
    left: -23px;
    top: 40px;
    min-width: 345px;
    background: #fff;
    z-index: 999999;
    padding: 30px 23px 16px 23px;
    border-radius: 0 0 10px 0;
}

.submenuBlock .submenuBlockEl li {
    margin: 0;
    height: auto;
    width: 100%;
    display: block;
}

.submenuBlock .submenuBlockEl li:hover a,
.submenuBlock.focusedEl span {
    color: var(--colorB)
}

.submenuBlock.focusedEl img.arrowDown {
    transform: rotate(180deg)!important;
}

footer {
    font-size: 16px;
    background: var(--colorD);
    margin-top: 30px;
    line-height: 28px;
    border-bottom: 10px solid var(--colorA);
    padding-top: 30px;
    padding-bottom: 30px;
}

footer,
footer a {
    color: var(--specialTextColor);
}

footer .footerWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}

footer .footerWrap .textArea p {
    padding: 0
}

footer .footerWrap .textArea p span {
    color: var(--colorB)
}

footer .footerWrap .textArea .m-top {
    margin-top: 15px;
}

footer .footerWrap .infoArea {
    text-align: right;
}

footer .footerWrap .infoArea .socialLink a {
    width: 35px;
    display: inline-block;
    margin-left: 10px;
}

footer .footerWrap .infoArea .footerLogo {
    max-width: 285px;
    margin-top: 20px;
}

@keyframes arrowDance {
    0%,
    100% {
        transform: translate(0, 0);
    }
    50% {
        transform: translate(5px, 0);
    }
}

@media only screen and (min-width:0) and (max-width:1850px) {
    .supertop .mainLogo,
    footer .footerWrap .infoArea .footerLogo {
        width: 200px;
    }
    .supertop .mainMenu li {
        margin-left: 35px;
        font-size: 18px;
    }
    .supertop .mainMenu li li {
        margin-left: 0;
    }
    .top .topFilter .leftArea {
        width: 400px;
    }
    .top .topFilter .leftArea label {
        font-size: 20px;
        width: 300px;
    }
    .lang_de .top .topFilter .leftArea label {
        font-size: 20px;
        width: 300px;
    }
    .top .topFilter .leftArea .openFilterBtn {
        font-size: 23px;
    }
    .top .topFilter .filterListArea {
        left: 400px;
    }
    .top .topFilter .leftArea label:after {
        left: -5px;
        width: 100%;
    }
    .top .topFilter .leftArea span:after {
        width: 95px;
    }
    .lang_de .top .topFilter .leftArea span:after {
        width: 95px;
    }
    .homePage .top .header {
        padding-left: 400px;
    }
}

@media only screen and (min-width:1600px) {
    .cardType.cardTypeC {
        max-width: calc(33.33% - 45px);
    }
    .griglia .cardType.cardTypeC {
        max-width: calc(25% - 45px);
    }
}

@media only screen and (max-width:1600px) {
    :root {
        --mainGutter: calc(100% / 15);
    }
}

@media only screen and (min-width:0) and (max-width:1480px) {
    :root {
        --mainGutter: calc(100% / 25);
        --mainFontSize: 16px;
    }
    body {
        line-height: 22px;
    }
    .supertop {
        height: 100px;
    }
    .supertop .mainLogo,
    footer .footerWrap .infoArea .footerLogo {
        width: 150px;
    }
    .supertop .mainMenu li {
        margin-left: 40px;
    }
    .supertop .mainMenu .switchLang {
        width: 35px;
        border: none
    }
    .supertop .mainMenu li a,
    .submenuBlock span {
        font-size: 17px;
    }
    .submenuBlock .submenuBlockEl {
        min-width: 280px;
    }
    .cardContent {
        display: flex;
        flex-wrap: wrap;
    }
    .cardType.cardTypeE .imgArea {
        width: 40%;
    }
    .cardType.cardTypeE .textArea {
        width: 60%;
    }
    .cardContent .cardType.cardTypeD {
        margin-left: 2%;
        width: 48%;
    }
    .cardContentFiltered .cardContent .cardType.cardTypeD {
        margin-left: 2%;
        width: 48%;
    }
    .cardType.cardTypeD .imgArea:before {
        display: none;
    }
    .cardType.cardTypeD .imgArea {
        margin: 0;
        width: 100%;
        padding: 20px 20px 0 20px;
    }
    .cardType.cardTypeD .imgArea img {
        max-width: 240px;
    }
    .cardType.cardTypeD .wrapperCard .textArea {
        width: 100%;
        text-align: center;
        padding: 40px 20px;
    }
    .cardType .wrapperCard .textArea .mainTitle {
        font-size: 20px;
        line-height: 24px;
    }
    .cardType.cardTypeF .wrapperCard .textArea .mainTitle {
        line-height: 25px;
    }
    .homePage .top .header {
        padding-left: 0;
    }
    .top {
        height: 300px;
    }
    .top .topImgWrap {
        height: 100%;
    }
    .top .imageBg img.visible {
        height: 100%;
    }
    .top .topFilter {
        height: 100%;
        top: 0
    }
    .top .topFilter .filterListArea {
        left: 33.33%;
        width: 40%;
        max-height: calc(100% - 120px);
    }
    .top .topFilter .leftArea {
        width: 100%;
        background: transparent;
        height: 100%;
        flex-flow: row;
    }
    .top .topFilter .leftArea span {
        background: rgba(255, 255, 255, 0.6);
        margin: 0;
        height: 80px;
        display: flex;
        align-items: center;
        border-right: 2px solid #fff;
    }
    .top .topFilter .leftArea span:last-of-type {
        border: none;
    }
    .top .topFilter .leftArea label {
        font-weight: var(--midFontWeight);
        text-align: center;
        padding-left: 0;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        color: var(--specialTextColor)
    }
    .lang_de .top .topFilter .leftArea label{
      width:100%;
    }
    .top .topFilter .leftArea span:after {
        display: none;
    }
    .top .topFilter .leftArea label:after {
        display: none;
    }
    .top .topFilter .leftArea label.active {
        background: rgba(27, 60, 112, 0.87);
        color: #fff
    }
    .top .topFilter .leftArea .openFilterBtn {
        left: 0;
        right: inherit;
        border-radius: 0 15px 0 0;
        font-size: 18px;
        width: 33.33%;
        justify-content: space-between;
    }
    .top .topFilter .leftArea .openFilterBtn img.btn-icon {
        height: 18px;
        width: auto;
        margin-right: 3px;
    }
    .top .topFilter .filterListArea .dropDownButton {
        font-size: 18px;
    }
    .dropDownBlock .dropDownButton img {
        width: 18px;
    }
    .top .topFilter .filterListArea .dropDownEl label {
        font-size: 18px;
        margin-bottom: 12px;
    }
    .productMain .mainContent,
    .productMain .productImage {
        width: 50%;
    }
    .productMain .productImage {
        padding: 0 0 0 100px
    }
    .productMain .asideArea,
    .extraArea .valoriBlock,
    .extraArea .varieBlock {
        width: 100%;
    }
    .productMain .asideArea {
        margin-top: 45px;
    }
    .productMain .asideArea .gustoBlock .descriptiveTitle {
        font-size: 16px;
    }
    .productMain .productImage img {
        width: 85%;
        max-width: 520px;
    }
    .extraArea .tableEl .descriptiveTitle {
        padding-left: 20px;
    }
    .extraArea .tableEl .descriptiveTitle span {
        min-width: 170px;
    }
    .extraArea .varieBlock .wrapEl {
        align-items: center;
        justify-content: flex-start;
    }
    .asideArea .sectionSubtitle,
    .extraArea .sectionSubtitle,
    .productMain .mainContent .textArea .sectionSubtitle {
        font-size: 20px;
    }
}

@media only screen and (min-width:0) and (max-width:1280px) {
    /*mobile menu*/
    .wrapperSupertop,
    .wrapperSupertop.fixed,
    .wrapperSupertop.fixedAnimation {
        position: sticky!important;
        top: 0!important;
        transform: none
    }
    .supertop {
        height: 80px;
    }
    .supertop .mainLogo,
    footer .footerWrap .infoArea .footerLogo {
        width: 120px;
    }
    .supertop .mainMenu {
        display: flex;
        flex-wrap: wrap;
        transition: all .3s ease-in-out;
        width: 100%;
        position: fixed;
        flex-flow: column;
        right: -100%;
        top: 80px;
        height: 100%;
        padding: 13px var(--mainGutter);
        overflow-y: auto;
        background: var(--colorD);
        margin: 0;
    }
    .supertop .mainMenu li {
        width: 100%;
        margin: 0
    }
    .supertop .menuMobile {
        display: block;
    }
    .supertop .closeMobileMenu {
        z-index: 99999999;
        width: 12px;
        height: auto;
        margin-right: 12px;
    }
    .supertop .mainMenu li {
        height: auto;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .supertop .mainMenu li a,
    .supertop .mainMenu li.submenuBlock span {
        position: relative;
        padding: 10px 12px;
        border-bottom: 2px solid #fff;
        display: block;
        width: 100%;
        text-transform: uppercase;
        font-weight: var(--midFontWeight);
    }
    .supertop .mainMenu li.submenuBlock span:after {
        content: url("../img/icon/arrow-slim-blu-min.svg");
        position: absolute;
        right: 12px;
        top: 9px;
        width: 13px;
        height: auto;
    }
    .supertop .mainMenu li.submenuBlock.focusedEl span:after {
        transform: rotate(180deg);
    }
    .supertop .mainMenu li.submenuBlock span a {
        padding: 0;
        border: 0;
        display: inline;
    }
    .supertop .mainMenu li.submenuBlock li a {
        text-transform: none;
        padding: 10px 12px;
        border: none;
        font-weight: var(--regFontWeight);
        color: var(--mainTextColor)
    }
    .supertop .mainMenu .switchLang {
        display: flex;
        padding-top: 40px;
        border: 0;
        width: 100%;
        flex-flow: row;
        justify-content: center;
    }
    .supertop .mainMenu .switchLang.submenuBlock span {
        display: inline-flex;
        width: auto;
        border: none;
        pointer-events: none;
        padding-top: 0;
    }
    .supertop .mainMenu .switchLang.submenuBlock span img {
        display: none;
    }
    .supertop .mainMenu .switchLang.submenuBlock span:after {
        display: none;
    }
    .supertop .mainMenu .switchLang.submenuBlock .submenuBlockEl {
        width: auto;
        padding: 0;
        display: inline-flex!important;
        min-width: 1px;
        padding: 0;
        left: inherit;
        top: inherit!important;
        margin: 0!important;
        padding: 0!important;
        height: auto!important;
    }
    .supertop .mainMenu .switchLang.submenuBlock a {
        font-weight: var(--midFontWeight);
        color: var(--specialTextColor)
    }
    .supertop .mainMenu .switchLang.submenuBlock .submenuBlockEl a {
        text-transform: uppercase;
        padding: 0 10px
    }
    .mobileMenuOpened {
        overflow-y: hidden;
    }
    .mobileMenuOpened .mainMenu {
        right: 0;
        z-index: 999999;
        height: calc(100vh - 50px);
    }
    .mobileMenuOpened .supertop .closeMobileMenu {
        display: block;
        z-index: 99;
    }
    .mobileMenuOpened .supertop .menuMobile {
        display: none;
    }
    .submenuBlock .submenuBlockEl {
        position: relative;
        top: inherit;
        left: inherit;
        width: 100%;
        background: transparent;
        margin: 10px 0;
        padding: 0
    }
    .submenuBlock .submenuBlockEl:before {
        display: none;
    }
    .supertop .mainMenu li.mainSearchbtn {
        position: fixed;
        top: 31px;
        right: 75px;
        width: 16px;
    }
    /*FINE mobile menu*/
    .searchArea .searchDiv {
        height: 80px;
        padding: 0 45px 0 var(--mainGutter)
    }
    .searchArea .searchDiv form {
        padding-right: 0;
    }
    .searchArea .searchDiv form input {
        padding: 0
    }
    .searchArea .searchDiv form .btn-dg {
        margin: auto;
        top: inherit;
    }
    .searchArea .searchDiv .iconClose {
        top: 30px
    }
    .rowContentCard {
        justify-content: center;
    }
    .rowContentCard .cardType.cardTypeA {
        width: 270px;
        margin: 0 20px 20px 20px
    }
    .cardType.cardTypeA .wrapperCard .textArea .hiddenTxt .mainTitle {
        font-size: 20px;
    }
    .cardType.cardTypeA .wrapperCard .textArea .hiddenTxt p {
        display: none;
    }
    .cardType.cardTypeH {
        margin-bottom: 100px;
        width: 48%;
    }
    .cardType.cardTypeH .textArea .mainTitle {
        font-size: 22px;
        line-height: 30px;
        margin-bottom: 20px;
    }
    .blockImgText .textArea {
        padding-top: 0;
    }
    .blockImgTextSquare .squareEl .miniCard .imgArea {
        width: 130px;
        height: 130px;
    }
    .blockImgTextSquare .squareEl .miniCard .textArea {
        width: calc(100% - 166px);
    }
    .blockImgTextSquare .squareEl .mainTitle {
        font-size: 22px;
        line-height: 30px;
    }
    .blockImgTextSquare .squareEl .mainSubTitle {
        font-size: 18px;
    }
}

@media only screen and (min-width:0) and (max-width:1040px) {
    :root {
        --mainGutter: 24px;
        --mainFontSize: 16px;
    }
    /*typo*/
    body {
        line-height: 20px;
    }
    .form-dg * {
        font-size: 18px;
    }
    .btn-dg {
        font-size: 16px;
        padding: 13px
    }
    .top .header .textArea .mainTitle {
        font-size: 30px;
        line-height: 33px;
    }
    .top.ricerca .header .textArea .mainTitle {
        font-size: 30px;
        line-height: 33px;
    }
    .top .header .textArea .mainSubTitle {
        font-size: 13px;
        line-height: 14px;
    }
    .cardType.cardTypeC .wrapperCard .cardLabel span {
        font-size: 16px;
        line-height: 1em;
        padding: 18px 25px;
        max-width: 100%;
        min-width: 230px;
    }
    .cardType.cardTypeC .wrapperCard .textArea .mainTitle {
        font-size: 14px;
        line-height: 22px;
    }
    .cardType.cardTypeA .wrapperCard .mainTitle {
        font-size: 18px;
        top: calc(100% - 75px)
    }
    .cardType .wrapperCard .cardLabel span {
        font-size: 14px;
    }
    .cardType.cardTypeB .wrapperCard .textArea .mainTitle {
        font-size: 22px;
        line-height: 30px;
        margin-top: 0;
    }
    .cardType.cardTypeB .wrapperCard .textArea .mainTitle.newsTitle {
        font-size: var(--mainFontSize);
        line-height: 20px;
    }
    .cardType.cardTypeB .wrapperCard .textArea .data {
        font-size: 17px;
        line-height: 29px;
    }
    .cardType.cardTypeB .wrapperCard .textArea p {
        font-size: 14px;
        line-height: 19px;
    }
    .section .mainSubTitle {
        font-size: 18px;
        font-weight: var(--regFontWeight);
    }
    .section.blockBgArtline .artLine .listLink,
    .cardType .wrapperCard .textArea .mainTitle {
        font-size: 18px;
        line-height: 22px
    }
    .cardType.cardTypeE .textArea .mainSubTitle {
        font-size: 14px;
        margin: 0
    }
    .timelineSection .timelineEl .textArea .titleGroup .mainTitle {
        font-size: 24px;
        line-height: 30px;
    }
    .timelineSection .timelineEl .textArea .titleGroup .mainSubTitle {
        font-size: 18px;
        line-height: 22px;
    }
    .dropDownSquared .dropDownButton {
        font-size: 18px;
    }
    /*fine typo*/
    .supertop .mainMenu li a,
    .supertop .mainMenu li.submenuBlock span {
        font-size: var(--mainFontSize);
    }
    .supertop .mainMenu li.submenuBlock li a,
    .supertop .mainMenu .switchLang.submenuBlock span {
        font-size: 16px;
    }
    .homePage .top {
        height: 85vh;
    }
    .breadcrumb {
        display: none;
    }
    .section {
        margin-top: 40px;
    }
    .section .mainTitle {
        font-size: 20px;
        line-height: 28px;
    }
    .section.widthSwiper .navigation,
    .section.blockScrollB .wrapEl .navigation {
        display: none;
    }
    .section.widthSwiper .mainSwiper {
        margin-top: 20px;
    }
    .cardContentFiltered .cardContent {
        justify-content: space-between;
    }
    .cardContentFiltered .cardContent .cardType {
        margin-left: 0;
    }
    .section.blockScrollB .wrapEl,
    .section.blockScrollB .mainSwiper {
        width: 100%;
    }
    .section.widthSwiper .mainSwiper .swiper-slide,
    .section.blockScrollB.widthSwiper .mainSwiper .swiper-slide {
        width: 270px;
    }
    .section.blockMap .mapA {
        margin-top: 10px;
    }
    .cardType.cardTypeA .wrapperCard .mainTitle {
        color: var(--colorB)
    }
    .cardType.cardTypeA .wrapperCard .imgArea img {
        width: 50%;
        height: auto;
    }
    .cardType.cardTypeB .wrapperCard .textArea p {
        display: block;
    }
    .cardType.cardTypeC,
    .cardType.cardTypeD {
        width: 48%;
        max-width: 100%;
        margin-left: 0
    }
    .cardType.cardTypeE .imgArea {
        width: 100%;
    }
    .cardType.cardTypeE .textArea {
        width: 100%;
    }
    .cardContentFiltered .filterSidebar,
    .cardContentFiltered .cardContent {
        width: 100%;
    }
    .cardType .wrapperCard .textArea {
        padding: 20px;
        height: 55%;
        bottom: 0;
        top: inherit;
        justify-content: flex-end;
    }
    .section .mainContent .btn-dg.btn-dg-orange-filled {
        margin-top: 0;
    }
    .cardType.cardTypeBase .wrapperCard:after,
    .cardType.cardTypeB .wrapperCard:after {
        border-radius: 15px 15px 0 0;
        content: "";
        position: absolute;
        width: 100%;
        height: 55%;
        top: inherit;
        bottom: 0;
        left: 0;
        background: var(--colorA);
        opacity: 0.8
    }
    .cardType.cardTypeBase .wrapperCard .textArea .hiddenTxt {
        opacity: 1;
    }
    .cardType.cardTypeBase .cardLabel span {
        background: var(--colorB);
    }
    .cardType .wrapperCard .textArea .asBtn,
    .cardType .wrapperCard .textArea p {
        display: none;
    }
    .cardType .wrapperCard .cardLabel {
        margin-top: 0;
    }
    .cardType .wrapperCard .cardLabel span {
        background: var(--colorB);
        color: #fff
    }
    .cardType.cardTypeBase .wrapperCard .textArea {
        justify-content: flex-start;
    }
	.mostra_etichetta .cardType.cardTypeBase .wrapperCard .textArea{
		flex-direction: column-reverse;
		padding-top:30px;
	}
    .cardType.cardTypeBase .wrapperCard .textArea .asBtn {
        display: inline-flex;
        margin: 0 auto;
        animation: arrowDance 1.5s ease-in-out infinite;
    }
    .cardType.cardTypeBase .wrapperCard .cardLabel span {
        position: relative;
        line-height: 18px;
        display: none;
    }
	
	.mostra_etichetta .cardType.cardTypeBase .wrapperCard .cardLabel span{
		display: inline-block;
		margin-bottom:20px;
	}
	
    .cardType.cardTypeBase .wrapperCard .cardLabel span:after {
        content: "";
        background-image: url("../img/icon/arrow-white.svg");
        height: 11px;
        width: 10px;
        display: inline-block;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        right: 10px;
        top: 50%;
        margin-top: -6px;
    }
	.mostra_etichetta .cardType.cardTypeBase .wrapperCard .cardLabel span:after{
		display:none;
	}
    .cardType.cardTypeI .wrapperCard .textArea p {
        display: block;
    }
    .cardType.cardTypeF {
        width: 45%;
        margin: 30px 2.5%!important
    }
    .cardType.cardTypeG .imgArea {
        width: 40%;
    }
    .cardType.cardTypeG .textArea {
        width: 55%;
        height: auto;
    }
    .cardType.cardTypeG .wrapperCard .textArea p {
        display: block;
    }
    .cardType.cardTypeG .wrapperCard .textArea p,
    .cardType.cardTypeG .wrapperCard .textArea ul {
        line-height: 22px;
    }
    .cardContentFiltered .filterSidebar {
        display: none;
    }
    .cardContentFiltered .cardContent {
        width: 100%;
    }
    .cardContentFiltered .cardContent .cardType.cardTypeD {
        margin-left: 0;
    }
    .mobileFilter {
        display: flex;
        width: calc(100% + 48px);
        margin-left: -24px;
    }
    .cardContent {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .cardContent .cardType.cardTypeE {
        width: 49%;
    }
    .cardType.cardTypeE .textArea .cardLabel span {
        padding: 10px 20px;
        width: 100%;
        text-align: center;
    }
    .bandaGreen {
        margin-bottom: 140px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .bandaGreen .rowFlexContent .imgArea {
        text-align: center;
        width: 40%;
    }
    .bandaGreen .rowFlexContent .textArea {
        width: 55%;
        padding: 0 20px
    }
    .bandaGreen .rowFlexContent .textArea .mainTitle {
        font-size: 18px;
        line-height: 22px;
    }
    body .section.blockBgArtline .artLine .listLink a.el:after,
    body .section.blockBgArtline .artLine .listLink a.el:hover:after {
        transform: none;
        background-color: transparent;
        content: ""!important;
        background-image: url("../img/icon/arrow-blu.svg");
        height: 11px;
        width: 10px;
        display: inline-block!important;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        margin-left: 7px;
        float: right;
        margin-top: 6px;
    }
    .cardType.cardTypeA .wrapperCard .mainTitle:after {
        opacity: 1;
        content: ""!important;
        background-image: url("../img/icon/arrow-orange.svg");
        height: 11px;
        width: 10px;
        display: inline-block!important;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        margin-left: 7px;
    }
    .section.blockBgArtline:not(.artLineJob,
    .artlineMainJob) {
        background: var(--colorC);
        color: var(--specialTextColor)
    }
    .section.blockBgArtline:not(.artLineJob,
    .artlineMainJob) a {
        color: currentColor!important;
    }
    .section.blockBgArtline .mainTitle:not(.artLineJob .mainTitle,
    .artlineMainJob .mainTitle) {
        color: var(--specialTextColor);
    }
    .section.blockBgArtline .imgArea:not(.artLineJob .imgArea,
    .artlineMainJob .imgArea) {
        display: none;
    }
    .section.blockBgArtline .artLine {
        margin: 0;
        overflow: hidden;
        min-height: 1px;
    }
    .section.blockBgArtline .artLine img {
        filter: inherit;
        position: relative;
        top: 0;
        height: 90px;
        transform: scale(2);
    }
    .section.blockBgArtline .artLine .listLink {
        flex-wrap: wrap;
    }
    .section.blockBgArtline .artLine .listLink .el {
        width: 100%;
        padding-top: 13px;
        padding-bottom: 13px;
        border-top: 2px solid #fff;
        text-align: left;
    }
    .section.blockBgArtline .artLine .listLink .el:last-child {
        border-bottom: 2px solid #fff;
    }
    .section.blockBgArtline .artLine .listLink .el:nth-child(2n+1),
    .section.blockBgArtline.invertOrder .artLine .listLink .el:nth-child(2n+0),
    .section.blockBgArtline .artLine .listLink.maxWidthArtline .el:nth-child(2n+1) {
        margin-top: 0;
    }
    .section.blockBgArtline .artLine .listLink .el:hover:after {
        display: none;
    }
    .section.blockBgArtline .artLine .listLink a.el:before,
    .section.blockBgArtline .artLine .listLink a.el:after {
        display: none;
    }
    .section.blockBgArtline.artLineJob .artLine .listLink {
        display: none;
    }
    .section.blockBgArtline.artLineJob .artLine img {
        filter: brightness(70);
    }
    .section.blockBgArtline.artLineJob .mainTitle {
        font-size: 30px;
    }
    .section.blockBgArtline .btn-dg.btn-dg-light {
        color: var(--specialTextColor)
    }
    .section.blockBgArtline.artLineJob .btn-dg.btn-dg-light {
        color: #fff
    }
    .section.blockBgArtline.artlineMainJob .btn-dg.btn-dg-light {
        color: #fff
    }
    .section.blockMap .mapArea {
        margin-top: 0;
    }
    .productMain .mainContent,
    .productMain .productImage {
        width: 100%;
    }
    .productMain .productImage {
        text-align: center;
        margin: 80px 0;
        padding: 0
    }
    .productMain .productImage img {
        width: 85%;
        max-width: 400px;
    }
    .productMain .mainContent .textArea a.btn-dg {
        margin-top: 10px;
    }
    footer {
        font-size: 14px;
        line-height: 20px;
    }
    footer .footerWrap .textArea {
        width: 100%;
        text-align: center;
        order: 2
    }
    footer .footerWrap .infoArea {
        width: 100%;
        text-align: center;
        order: 1
    }
    footer .footerWrap .infoArea .footerLogo {
        max-width: 230px;
        margin: 20px auto 0 auto
    }
    footer .footerWrap .infoArea .socialLink a {
        width: 34px;
        margin: 0 5px
    }
    /*.homePage .top .header .textArea{background:rgba(27, 60, 112, 0.87);}*/
    .top .header .textArea {
        max-width: calc(100% - 30px);
        padding: 40px;
        border-radius: 15px;
    }
    .top .topFilter .leftArea span {
        height: 50px;
    }
    .top .topFilter .leftArea label {
        font-size: 14px;
    }
    .lang_de .top .topFilter .leftArea label {
        font-size: 12px;
        width: 100%;
        text-align: center;
        padding-left: 10px;
        padding-right: 10px;
    }
    .top .topFilter .filterListArea .dropDownButton {
        font-size: 14px;
    }
    .top .topFilter .filterListArea .dropDownEl label {
        font-size: 16px;
    }
    .top .topFilter .leftArea .openFilterBtn {
        width: calc(100% - var(--mainGutter));
        padding: 12px var(--mainGutter);
        background: rgba(222, 236, 245, 0.9);
        font-size: 18px;
    }
    .top .topFilter .leftArea .openFilterBtn img.btn-icon {
        transform: rotate(-90deg);
    }
    .top .topFilter .filterListArea {
        transform: scaleX(1);
        transform: scaleY(0);
        left: 0;
        width: calc(100% - var(--mainGutter));
        height: calc(100% - 127px);
        border-radius: 0;
        top: 127px;
        padding: 0 30px 30px 30px;
        min-height: 1px;
        max-height: calc(100% - 127px);
    }
    .filterListAreaOpened .top .topFilter .filterListArea {
        transform: scaleY(1);
    }
    .filterListAreaOpened .top .topFilter .leftArea .openFilterBtn {
        bottom: calc(100% - 117px);
        transform: translateY(10px);
        padding: 30px 30px 0 30px
    }
    .filterListAreaOpened .top .topFilter .leftArea .openFilterBtn img.btn-icon {
        transform: rotate(90deg);
    }
    .filterListArea .dropDownEl label input[type="checkbox"]::before {
        width: 16px;
        height: 16px;
    }
    .filterListArea .dropDownEl label input[type="checkbox"]:checked::after {
        left: 9px;
        top: 4px;
        width: 10px;
        height: 10px;
    }
    .filterListArea .dropDownEl label input[type="checkbox"] {
        width: 33px;
    }
    .timelineSection .timelineEl .textArea {
        padding: 0;
        width: 43%;
    }
    .timelineSection .timelineEl .textArea:after {
        width: 5%;
    }
    .caseificioMain .mainContent,
    .caseificioMain .asideArea {
        width: 100%;
    }
    .caseificioMain .asideArea {
        margin-top: 60px;
    }
    .caseificioMain .asideArea .cardContent {
        max-width: 100%;
    }
    .caseificioMain .asideArea .cardContent .cardType.cardTypeF {
        margin: 0 3% 30px 0!important;
        padding: 12px 0;
    }
    .blockImgTextSquare .squareEl {
        width: 100%;
        border: 0!important;
        margin-bottom: 12px;
    }
    .blockImgTextSquare .squareRow {
        flex-flow: column!important;
    }
    .wpcf7-not-valid-tip {
        transform: translateY(-35px);
    }
    .privacy .wpcf7-not-valid-tip {
        transform: translateY(0);
    }
    #elenco-confezioni .cardType.cardTypeD .textArea .cardLabel span {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media only screen and (min-width:0) and (max-width:768px) {
    /*smartphone fino a ipad*/
    :root {
        --mainGutter: 15px;
    }
    .supertop {
        height: 50px;
    }
    .supertop .mainLogo {
        width: 94px;
    }
    .supertop .mainMenu {
        top: 50px
    }
    .form-dg {
        margin-top: 20px;
    }
    .form-dg .formGroup.column-3 {
        width: 100%;
    }
    .form-dg input,
    .form-dg select,
    .form-dg textarea {
        margin-bottom: 20px;
    }
    .form-dg .btn-dg {
        margin: 45px auto auto auto
    }
    .mobileFilter {
        width: calc(100% + 30px);
        margin-left: -15px;
    }
    .supertop .mainMenu li.mainSearchbtn {
        top: 17px;
        right: 50px;
    }
    .timelineSection:after,
    .timelineSection .timelineEl .textArea:after,
    .timelineSection .timelineEl .textArea:before {
        display: none;
    }
    .timelineSection .timelineEl {
        flex-flow: row-reverse;
        margin-bottom: 20px;
    }
    .timelineSection .timelineEl .textArea {
        width: 57%;
    }
    .timelineSection .timelineEl .imgArea {
        width: 38%;
    }
    .timelineSection .timelineEl .textArea .titleGroup {
        margin-bottom: 10px;
    }
    .cardType.cardTypeF,
    .column-2 .column-el.wrapContentCardF .cardType.cardTypeF {
        width: 100%;
        margin: 30px 0!important
    }
    .cardType.cardTypeF .wrapperCard {
        flex-flow: row;
        padding: 10px
    }
    .cardType.cardTypeF .wrapperCard .textArea {
        text-align: left;
        margin-left: 40px;
    }
    .cardType.cardTypeF .wrapperCard .textArea .mainTitle {
        margin: 0 0 15px 0
    }
    .cardType.cardTypeF .imgArea {
        width: 50%;
        display: inline-flex;
    }
    .cardType.cardTypeF.noImg {
        width: 48%;
        padding: 0
    }
    .cardType.cardTypeF.noImg .wrapperCard .textArea {
        margin-left: 0;
        text-align: center;
    }
    .caseificioMain .asideArea .cardContent .cardType.cardTypeF {
        width: 47%
    }
    .caseificioMain .asideArea .cardContent .cardType.cardTypeF .wrapperCard {
        flex-flow: column;
        padding: 0;
    }
    .cardContentFiltered .cardContent .cardType.cardTypeD,
    .cardContent .cardType.cardTypeD {
        width: 100%;
        margin-bottom: 20px;
        margin-left: 0;
    }
    .cardType.cardTypeD .wrapperCard .textArea {
        padding: 20px
    }
    .cardType.cardTypeD .wrapperCard .cardLabel {
        margin-top: 20px;
    }
    .cardType.cardTypeD .wrapperCard .cardLabel span {
        width: 90%;
        max-width: 230px;
        font-size: 16px;
        padding: 13px
    }
    .cardType.cardTypeD .textArea .mainTitle {
        margin-bottom: 5px;
    }
    .cardType.cardTypeD .textArea .detailInfo {
        margin-bottom: 0;
    }
    .cardType.cardTypeG .imgArea,
    .cardType.cardTypeG .textArea {
        width: 100%;
    }
    .bandaGreen .rowFlexContent .imgArea {
        width: 30%;
    }
    .bandaGreen .rowFlexContent .textArea {
        width: 70%;
    }
    .column-2 .column-el {
        width: 100%;
    }
    .cardType.cardTypeH {
        width: 100%;
        padding-top: 70px;
    }
    .cardType.cardTypeH .imgArea {
        top: -40px
    }
    .cardType.cardTypeH .imgArea img {
        width: 80px;
        margin: 0 5px;
        border: 4px solid #fff
    }
    .wpcf7-not-valid-tip {
        transform: translateY(-20px);
    }
    .privacy .wpcf7-not-valid-tip {
        transform: translateY(0);
    }
    .cardContent .cardType.cardTypeC {
        margin-bottom: 20px;
    }
    .cardType.cardTypeC .wrapperCard .textArea {
        padding: 0 10px 20px 10px
    }
    .cardType.cardTypeC .wrapperCard img {
        width: 90%;
    }
    .cardType.cardTypeC .wrapperCard .cardLabel span {
        min-width: 1px;
        padding: 18px 10px;
        font-size: 12px;
        width: 100%;
        border-radius: 30px;
    }
    .blockImgText {
        margin-top: 30px;
    }
    .blockImgText .imgArea,
    .blockImgText .textArea {
        width: 100%;
    }
    .blockImgText .textArea {
        padding: 30px;
    }
    .blockImgTextSquare .squareEl .miniCard .textArea {
        width: 100%;
        margin-left: 0;
    }
    .blockImgTextSquare .squareEl .miniCard .imgArea {
        margin: 0 auto 40px auto
    }
    .cardType.cardTypeI .wrapperCard .textArea {
        width: 100%;
        padding: 0;
        text-align: center;
    }
    .cardType.cardTypeI .imgArea {
        margin: 7px auto 40px auto
    }
    /*.side1-4{padding-left:0;}*/
    .btn-dg-wrap {
        text-align: center;
    }
    .marketing_check .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
        margin-right: 0;
        display: block;
        margin-bottom: 20px;
    }
    .btn-dg-wrap .wpcf7-spinner {
        position: absolute;
        right: 150px;
        top: auto;
        bottom: -30px;
    }
    .rowBluCard {
        margin-top: 0;
    }
    .fasceAzzurreVerticali .rowBluCard {
        margin-top: 100px;
    }
    .cardContentFiltered #elenco-confezioni.cardContent .cardType.cardTypeD {
        margin-bottom: 20px;
    }
    .blockImgTextSquare .squareEl .textArea {
        padding: 60px 30px;
    }
    .caseificioMain .cardType .wrapperCard img {
        min-width: 140px;
        min-height: 140px;
        /* fix per immagini invisibili in mobile... */
    }
}

@media only screen and (min-width:0) and (max-width:500px) {
    .timelineSection .timelineEl {
        flex-flow: column-reverse!important;
    }
    .timelineSection .timelineEl .textArea {
        width: 100%;
    }
    .timelineSection .timelineEl .imgArea {
        width: 100%;
    }
    .caseificioMain .asideArea .cardContent .cardType.cardTypeF:nth-child(2n+0) {
        margin: 0 0 30px auto!important;
    }
    .caseificioMain .asideArea .cardContent .cardType.cardTypeF .wrapperCard .textArea {
        margin-left: 0;
        text-align: center;
    }
    .bandaGreen .rowFlexContent {
        margin-top: 30px;
    }
    .bandaGreen .rowFlexContent .imgArea,
    .bandaGreen .rowFlexContent .textArea {
        width: 100%;
    }
    .bandaGreen .rowFlexContent .imgArea {
        margin-bottom: 20px;
    }
    .bandaGreen .rowFlexContent .imgArea img {
        max-width: 200px;
    }
    .bandaGreen .rowFlexContent .textArea .mainTitle {
        text-align: center;
    }
    .cardType.cardTypeF.noImg {
        width: 100%;
    }
    /*	.cardType.cardTypeI .wrapperCard .imgArea{width:100px;height:100px;}
	.cardType.cardTypeI .wrapperCard .textArea{width:calc(100% - 115px);padding:0 15px}*/
}

@media only screen and (min-width:0) and (max-width:360px) {
    .caseificioMain .cardType .wrapperCard img {
        min-width: 125px;
        min-height: 125px;
        /* fix per immagini invisibili in mobile... */
    }
}

@media (pointer:coarse) {
    .animateEl {
        visibility: visible;
    }
}


/* mappa google */

.section.blockMap .mapArea img.logo_popup {
    width: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#map {
    height: 700px
}

@media screen and (max-width:767px) {
    #map {
        height: 400px
    }
}


/*paginazione*/

.navigation ul {
    display: block;
    text-align: center
}

.navigation ul li {
    display: inline-block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    margin: 0 10px;
    background: var(--specialTextColor);
    border: 1px solid var(--specialTextColor);
    padding-top: 12px;
}

.navigation ul li a {
    color: #fff;
    font-weight: var(--midFontWeight);
    font-size: var(--mainFontSize);
    text-decoration: none;
}

.navigation ul li.active,
.navigation ul li:hover {
    background: #fff;
}

.navigation ul li.active a,
.navigation ul li:hover a {
    color: var(--specialTextColor);
}


/* pagina testo semplice */

.pagina-testo-semplice .mainSubTitle {
    font-size: var(--mid2FontSize);
    color: var(--colorB);
    font-weight: var(--boldFontWeight);
    line-height: 33px;
    margin: 5px 0 0 0
}


/* pagina news */

.cardType .wrapperCard .cardLabel.mt-2 {
    margin-top: 2em
}


/* singola news */

.d-flex {
    display: flex;
    gap: 2rem;
}

.side3-4 {
    width: calc(75% - 2rem)
}

.side1-4 {
    width: 25%;
    border-left: 2px solid #f1f1f1;
    padding-left: 2rem;
}

.single_last_news {
    padding: 2rem 1rem;
    border-bottom: 1px solid #ccc;
}

.single_last_news:last-child {
    border-bottom: 0;
}

.single_last_news a {
    text-decoration: none;
    color: var(--mainTextColor);
    font-weight: var(--mainFontWeight)
}

.news-img {
    object-fit: contain;
}

.news-img-cotainer {
    margin-top: 100px;
    max-height: 700px;
    max-width: 100%
}

.meta-news {
    margin-bottom: 50px;
}

.btn-share {
    text-decoration: none;
    margin: 0 auto;
    font-size: var(--minFontSize);
    font-weight: var(--regFontWeight);
    padding: 9px 33px;
    border-radius: var(--borderRadius2);
    background: var(--colorA);
    color: #fff;
    max-width: 95%;
    width: auto;
    display: inline-block;
}

.social-list-share {
    display: inline-block;
    width: 0;
    overflow-x: hidden;
    transition: all 1s;
    vertical-align: middle;
}

.singola-news-content .data {
    margin: 0 10px 0px 0;
    ;
    font-size: 22px;
    font-weight: var(--regFontWeight);
    color: var(--colorB);
}

.share-container {
    width: 250px;
}

.share-area {
    display: inline-block;
    min-width: 181px;
}

.share-area:hover .social-list-share {
    width: 250px
}

.social-btn {
    padding: 0 20px;
}

@media screen and (max-width:768px) {
    .singola-news-content {
        display: block;
    }
    .side3-4,
    .side1-4 {
        width: 100%
    }
    .side1-4 {
        border-left: 0;
        padding-left: 0;
    }
    .social-btn {
        padding: 0 10px;
    }
    .social-list-share {
        display: block;
        padding-top: 20px;
    }
}

.w533 {
    width: 533px;
}

.contenuto-libero ul li {
    position: relative;
    padding-left: 20px;
}

.contenuto-libero ul li:before {
    position: absolute;
    left: 0;
    top: 0;
    content: "•";
    display: block;
}

.addFiltro {
    cursor: pointer;
}

.addFiltro.disabled {
    cursor: context-menu;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 700px;
    max-width: 90%;
    transform: translate(-50%, -50%);
    color: #fff;
    background: #46b450;
    text-align: center;
    padding: 2rem;
    border-radius: 10px;
}

.wpcf7 form.sent .wpcf7-response-output:before {
    color: #fff;
    content: "X";
    position: absolute;
    top: 10px;
    right: 10px;
    width: 20px;
    height: 20px;
    cursor: pointer;
}

.gm-ui-hover-effect span {
    display: none!important;
}

.gm-ui-hover-effect {
    background-image: url(../img/icon/chiudi_popup.svg)!important;
    width: 21px!important;
    height: 21px!important;
    top: 20px!important;
    right: 20px!important;
    background-size: 20px!important;
}

.dettagli_wrap {
    text-align: center;
    padding: 30px 10px;
}

.mainTitlePopup {
    color: var(--colorB);
    font-size: 20px;
    font-weight: var(--regFontWeight);
    line-height: 24px;
    margin-bottom: 15px;
}

.logo_popup {
    margin-bottom: 15px;
    width: 100px;
    height: auto;
}

.indirizzoPopup {
    color: var(--mainTextColor);
    font-size: 16px;
    line-height: 20px;
}

.intro_search {
    font-size: var(--mainFontSize);
    color: var(--mainTextColor);
    line-height: 30px;
    font-weight: var(--regFontWeight);
}

#caricamento {
    position: fixed;
    z-index: 999999999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: none;
}

.loader,
.loader:before,
.loader:after {
    border-radius: 50%;
    width: 2.5em;
    height: 2.5em;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation: load7 1.8s infinite ease-in-out;
    animation: load7 1.8s infinite ease-in-out;
}

.loader {
    color: #04417B;
    font-size: 10px;
    margin: 80px auto;
    position: relative;
    text-indent: -9999em;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

.loader:before,
.loader:after {
    content: '';
    position: absolute;
    top: 0;
}

.loader:before {
    left: -3.5em;
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.loader:after {
    left: 3.5em;
}

@-webkit-keyframes load7 {
    0%,
    80%,
    100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }
    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

@keyframes load7 {
    0%,
    80%,
    100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }
    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

.loader-outer {
    /*background: rgba(255,255,255,0.7);*/
    position: fixed;
    z-index: 99999999999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.btn_news_wrap {
    padding-top: 20px;
}

@media screen and (max-width:1040px) {
    .cardType.cardTypeBase .wrapperCard .textArea .mainTitle {
        min-height: 44px;
    }
    .intro_search {
        line-height: 20px;
    }
    .cardType.cardTypeBase .wrapperCard .textArea .hiddenTxt {
        min-height: 0px;
    }
}

@media screen and (max-width:1480px) {
    .navigation ul li {
        padding-top: 18px;
    }
}

footer .footerWrap .textArea p span.footer_text {
    color: var(--specialTextColor)
}

footer a.footer_link {
    color: var(--colorB);
}

.raccolta-differenziata_container {
    margin-bottom: -35px;
}

@media screen and (max-width:768px) {
    .raccolta-differenziata_container {
        text-align: center;
        margin-bottom: 35px;
    }
}


/*alessia  possibile fix 28/7/22 */

@media only screen and (min-width:1340px) and (max-width:1480px) {
    .homePage .top {
        height: auto;
    }
}

@media only screen and (min-width:1041px) and (max-width:1339px) {
    .homePage .top {
        height: 85vh;
    }
    .top .header .textArea {
        max-width: calc(100% - 30px);
        padding: 40px;
        border-radius: 15px;
    }
    .top .topFilter .leftArea span {
        height: 50px;
    }
    .top .topFilter .leftArea label {
        font-size: 14px;
    }
    .top .topFilter .filterListArea .dropDownButton {
        font-size: 14px;
    }
    .top .topFilter .filterListArea .dropDownEl label {
        font-size: 16px;
    }
    .top .topFilter .leftArea .openFilterBtn {
        width: calc(100% - var(--mainGutter));
        padding: 12px var(--mainGutter);
        background: rgba(222, 236, 245, 0.9);
        font-size: 18px;
    }
    .top .topFilter .leftArea .openFilterBtn img.btn-icon {
        transform: rotate(-90deg);
    }
    .top .topFilter .filterListArea {
        transform: scaleX(1);
        transform: scaleY(0);
        left: 0;
        width: calc(100% - var(--mainGutter));
        height: calc(100% - 127px);
        border-radius: 0;
        top: 127px;
        padding: 0 30px 30px 30px;
        min-height: 1px;
        max-height: calc(100% - 127px);
    }
}

.top .imageBg.vMob {
    display: none;
}

@media screen and (max-width:678px) {
    .top .imageBg.vMob {
        display: flex;
    }
    .top .imageBg.vDesk {
        display: none;
    }
}

.rwd-video {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    padding-top: 30px;
    position: relative;
}

.rwd-video iframe,
.rwd-video object,
.rwd-video embed {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}


/* 5 Star Rating Score*/

.mt-40 {
    margin-top: 40px !important;
}

.productMain .asideArea .gustoBlock-star {
    margin-top: 16px;
}

.gustoBlock-star .sectionSubtitle {
    font-size: 18px;
    font-weight: 500;
    color: #707070;
    margin: 0 0 5px 0;
}

.rating-score>.rating-score-item {
    display: inline-block;
    margin-right: 15px;
}

.rating-score>.rating-score-item:after {
    display: block;
    height: 22px;
    width: 22px;
}

.rating-score[data-rating="4.5"]>.rating-score-item:nth-child(-n+4):after,
.rating-score[data-rating="3.5"]>.rating-score-item:nth-child(-n+3):after,
.rating-score[data-rating="2.5"]>.rating-score-item:nth-child(-n+2):after,
.rating-score[data-rating="1.5"]>.rating-score-item:nth-child(-n+1):after,
.rating-score[data-rating="0.5"]>.rating-score-item:nth-child(-n+0):after,
.rating-score[data-rating="5"]>.rating-score-item:nth-child(-n+5):after,
.rating-score[data-rating="4"]>.rating-score-item:nth-child(-n+4):after,
.rating-score[data-rating="3"]>.rating-score-item:nth-child(-n+3):after,
.rating-score[data-rating="2"]>.rating-score-item:nth-child(-n+2):after,
.rating-score[data-rating="1"]>.rating-score-item:nth-child(-n+1):after {
    content: url(/wp-content/uploads/2022/10/stellina-full.svg);
}

.rating-score[data-rating="4.5"]>.rating-score-item:nth-child(5):after,
.rating-score[data-rating="3.5"]>.rating-score-item:nth-child(4):after,
.rating-score[data-rating="2.5"]>.rating-score-item:nth-child(3):after,
.rating-score[data-rating="1.5"]>.rating-score-item:nth-child(2):after,
.rating-score[data-rating="0.5"]>.rating-score-item:nth-child(1):after {
    content: url(/wp-content/uploads/2022/10/stellina-half.svg);
}

.rating-score>.rating-score-item:after {
    content: url(/wp-content/uploads/2022/10/stellina.svg);
}

.rating-score {
    display: inline-flex;
    flex-direction: row;
    align-items: flex-start;
    margin: 0;
    padding: 0;
}


/* Pagina Bilancio Sostenibilità */

.chart-container {
    height: auto;
    max-width: 320px;
    margin: 0 auto;
}
@media screen and (max-width:370px) {
    .chart-container {
    height: auto;
    max-width: 320px;
    margin: 0 auto;
}
}

#myChartbarre,
#myChartConsumi,
#myChartOccupazione {
	background-color: #04417b;
	max-width: 100%;
	min-height: 450px;
}
#myChartBarre {
	width: 100%!important;
    height: 450px!important;
}

#no-bg-overlay .imgArea:after {
    opacity: 0;
}

.bg-light-grey {
    background-color: #F1F1F1;
}

.blockImgTextSquare .squareRow .squareEl.bg-blue {
    background-color: #04417B;
}

#goals-box {
    background-color: #F1F1F1;
    padding-top: 100px;
    padding-bottom: 60px;
    margin-top: 0;
}

#goals-box .swiper-button-next,
#goals-box .swiper-button-prev {
    background: #fff;
}

#goals-box .cardType.cardTypeA .wrapperCard .imgArea img {
    display: none;
}
#goals-box .cardType.cardTypeA .wrapperCard:after,
#goals-box .cardType.cardTypeA .wrapperCard .imgArea {
    height: auto;
}
#goals-box-de {
    background-color: #F1F1F1;
    padding-top: 100px;
    padding-bottom: 60px;
    margin-top: 0;
}

#goals-box-de .swiper-button-next,
#goals-box-de .swiper-button-prev {
    background: #fff;
}

#goals-box-de .cardType.cardTypeA .wrapperCard .imgArea img {
    display: none;
}
#goals-box-de .cardType.cardTypeA .wrapperCard:after,
#goals-box-de .cardType.cardTypeA .wrapperCard .imgArea {
    height: auto;
}


.blue-txt {
	color: #04417B !important;
}

.orange-txt {
	color: #F26521 !important;
}

.light-blu-txt {
	color: #9BD9FF !important;
}

.grey-d-txt {
	color: #909090 !important;
}

.grey-l-txt {
	color: #D1D1D1 !important;
}

.grey-txt {
	color: #A2A2A2 !important;
}

.ciano-txt {
	color: #10B6F4 !important;
}

.no-margin {
    margin: 0;
}

.card-chart {
    background-color: #F1F1F1;
    padding-top: 100px;
    padding-bottom: 100px;
}

@media only screen and (min-width: 400px) and (max-width: 1280px) {
    .card-chart .rowContentCard .cardType.cardTypeA {
        width: 370px;
        margin: 0 0 30px;
    }
}
@media only screen and (max-width: 400px) {
    .card-chart .rowContentCard .cardType.cardTypeA {
        width: 340px;
        margin-left: 0;
        margin-right: 0;
    }
}
.legend-box {
    margin-top: 30px;
}

.bg-white {
    background-color: #fff;
}
/* Blocco Text + 2 icon */

.sec-rifiuti-scarti {
    justify-content: center;
    margin-top: 150px;
    margin-bottom: 100px;
}

.sec-rifiuti-scarti .column-el {
    padding-right: 30px;
    width: 55%;
}

.sec-rifiuti-scarti .column-el.wrapContentCardF {
    width: 45%;
    justify-content: space-between;
}

.sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF {
    width: 45%;
}

.sec-rifiuti-scarti .cardType.cardTypeF {
    margin: 0 auto;
    padding: 10px;
}

.sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF .imgArea {
    width: 190px;
    height: 190px;
}

.sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF .imgArea h2 {
    font-size: 50px;
    color: #04417B;
    margin-top: 78px;
}

@media only screen and (min-width: 0) and (max-width: 1040px) {
    .sec-rifiuti-scarti {
        margin-top: 100px;
        margin-bottom: 0;
    }
}

@media screen and (max-width:1140px) {
    .sec-rifiuti-scarti .column-el {
        padding-right: 0;
        width: 100%;
    }
    .sec-rifiuti-scarti .column-el.wrapContentCardF {
        width: 100%;
    }
}

@media only screen and (min-width: 0) and (max-width: 768px) {
    .sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF .wrapperCard {
        flex-flow: column;
        padding: 10px;
    }
    .sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF .imgArea {
        justify-content: center;
    }
    .sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF .wrapperCard .textArea {
        text-align: center;
        margin-left: 0;
        padding: 20px;
    }
}

@media only screen and (min-width: 0) and (max-width: 560px) {
    .sec-rifiuti-scarti .column-el.wrapContentCardF .cardType.cardTypeF {
        width: 100%;
    }
}

.maxWText-chart {
    margin: 0 auto;
    text-align: center;
    max-width: 1280px;
    margin-bottom: 30px;
}

.maxWText-chart .mainTitle {
    font-weight: 400;
    font-size: 32px;
    text-transform: uppercase;
}

.legend-box-doug {
    display: grid;
    flex-wrap: wrap;
    justify-content: center;
}

.legend-box-doug .legend-item {}

.legend-box-doug p {
    margin-left: 10px;
    margin-right: 10px;
    padding-bottom: 10px;
}

.doughnut-title h3 {
    width: 100%;
    position: absolute;
    text-align: center;
    left: 0;
    top: 0;
    right: 0;
    /* bottom: 50%; */
    padding: 120px 110px;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 22px;
    z-index: -1;
}
.doughnut-title-de h3 {
    font-size: 15px;
    padding: 130px 110px;
}

.img-3-card .cardType.cardTypeA {
    margin: 10px;
}

/** nuovo blocco 3 box section-bloccox3box **/

p.card-testo-hover {
    position: absolute;
    top: 150px;
    z-index: 10;
    font-size: 17px;
    line-height: 23px;
    padding: 0 30px;
}

.section-bloccox3box .imgArea img {
    height: 80px;
    width: auto;
    margin: 0 auto;
    top: -130px;
    position: relative;
	display: none;
}
.section-bloccox3box p.card-testo-hover  {
    display: none;
}

.section-bloccox3box .cardType.cardTypeA {
    width: 400px;
	height: auto;
}
.section-bloccox3box .swiper-slide.cardType.cardTypeA:hover p.card-testo-hover, .section-bloccox3box .swiper-slide.cardType.cardTypeA:hover .imgArea img {
    display: block;
}


@media only screen and (min-width: 0) and (max-width: 1040px) {
	.section-bloccox3box .cardType.cardTypeA .wrapperCard .imgArea img {
		height: 60px;
		width: auto;
	}
}	

@media only screen and (min-width:0) and (max-width:400px) {
	.section-bloccox3box .cardType.cardTypeA {
		width: 90%;
		height: auto;
	}
	.section-bloccox3box p.card-testo-hover {
		top: 115px;
		font-size: 14px;
		line-height: 21px;
		padding: 0 20px;
	}
	/* .section-bloccox3box .cardType.cardTypeA .wrapperCard .imgArea img {
		top: -80px;
	} */
}	
@media only screen and (min-width:1281px) and (max-width:1480px) {
	.section-bloccox3img .cardContent, 
	.section-bloccox3box .cardContent {
		display: block;
		/* flex-wrap: wrap; */
	}
}	

.section-bloccox3box .cardType.cardTypeA .wrapperCard .mainTitle:after {
	content: none!important;
}
/*.chart-container-line {
	position: relative;
  margin: auto;
  height: 80vh;
  width: 70%;
}*/

.cardType.cardTypeA .wrapperCard .img-overlay {
    z-index: 999;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}

#goals-box .cardType.cardTypeA .wrapperCard:hover .img-overlay {
    opacity: 1;
}

#goals-box .cardType.cardTypeA .wrapperCard .mainTitle:after {
    content: '';
}

#goals-box .cardType.cardTypeA:hover .mainTitle {
    color: #04417B;    
}
#goals-box-de .cardType.cardTypeA .wrapperCard:hover .img-overlay {
    opacity: 1;
}

#goals-box-de .cardType.cardTypeA .wrapperCard .mainTitle:after {
    content: '';
}
#goals-box-de .cardType.cardTypeA .mainTitle {
    font-size: 18px;
}
#goals-box-de .cardType.cardTypeA:hover .mainTitle {
    color: #04417B;
}

.legend-box-cont1 {
    margin: 50px 0 0 0;
}

.legend-box-cont2 {
    margin: 50px 0 0 0;
}

.legend-box-cont3 {
    margin: 50px 0 0 0;
}

@media only screen and (min-width: 0) and (max-width: 768px) {
    .blocco-barchart .squareEl.bg-blue .textArea {
        padding: 60px 0;
        width: 100%;
    }
}

@media only screen and (min-width: 0) and (max-width: 1040px) {
    .blocco-barchart .squareRow {
        flex-flow: column-reverse !important;
    }
    .blockImgTextSquare .squareRow .squareEl.bg-blue {
        margin-bottom: 0;
    }
}

@media only screen and (min-width: 1041px) {
    .blocco-barchart-reverse .squareRow {
        flex-flow: row-reverse !important;
    }
}


/* Section Solo CTA */


/* Scarica il Report btn */

#download-report {
    margin-top: 60px;
    text-align: center;
    padding: 20px;
    /* display: none; */
}
#download-report2 {
    margin-top: 60px;
    text-align: center;
    padding: 20px;
    display: none;
}
.singola-news-content ul {
    list-style-type: disc;
	padding-left: 40px;
}

.cardType.cardTypeF.noImg.animateEl {
    visibility: visible;
}

/* menu lingue 


[lang="de-DE"] .supertop .mainMenu > li, [lang="es-ES"] .supertop .mainMenu > li {
    margin-left: 38px;
}

[lang="es-ES"] .supertop .mainMenu > li {
    font-size: 18px;
	margin-left: 29px;
}

@media only screen and (min-width: 0) and (max-width: 1850px) {
[lang="de-DE"] .supertop .mainMenu > li {
    margin-left: 25px;
    font-size: 18px;
}
[lang="es-ES"] .supertop .mainMenu > li {	
	margin-left: 23px;
    font-size: 16px;
}
}*/
/* css precedentemente inserito redazionalmente*/
.singola-news-content ul {
    list-style-type: disc;
	padding-left: 40px;
}

.cardType.cardTypeF.noImg.animateEl {
    visibility: visible;
}
/*
[lang="de-DE"] .supertop .mainMenu > li, [lang="es-ES"] .supertop .mainMenu > li {
    margin-left: 38px;
}

[lang="es-ES"] .supertop .mainMenu > li {
    font-size: 18px;
	margin-left: 29px;
}
*/
[data-confezione="420"],[data-confezione="443"],[data-confezione="1049"],[data-confezione="1051"],[data-confezione="1215"],[data-confezione="1221"],[data-confezione="1447"],[data-confezione="1453"],[data-confezione="1655"],[data-confezione="1661"] {
    pointer-events: none;
}

.cardType.cardTypeD [href=""] {
    pointer-events: none;
}

@media only screen and (min-width: 0) and (max-width: 1850px) {

/*[lang="de-DE"] .supertop .mainMenu > li {
    margin-left: 25px;
    font-size: 18px;
}
[lang="es-ES"] .supertop .mainMenu > li {	
	margin-left: 23px;
    font-size: 16px;
}*/
}

@media only screen and (min-width: 0) and (max-width: 1040px) {
.section.widthSwiper .mainSwiper .swiper-slide.cardTypeImg {
    /*max-width: 100% !important;*/
		max-width: none !important;
}
}

/*@media only screen and (min-width: 780px) and (max-width: 1040px) {
.swiper-slide.cardType.cardTypeImg img {
    max-height: 490px;
    width: auto;
}
}

@media only screen and (min-width: 420px) and (max-width: 779px) {
.swiper-slide.cardType.cardTypeImg img {
    max-height: 300px;
    width: auto;
}
}

@media only screen and (min-width: 0px) and (max-width: 419px) {
.swiper-slide.cardType.cardTypeImg img {
    max-height: 220px;
    width: auto;
}
}*/

/* FEASR */
.feasr .rowMin.section {
    margin-top: 40px;
}
.feasr .textArea.maxWText {
    max-width: 100%;
}
.feasr .section.cardContent.elenco_badge_v2, .feasr h2.mainTitle.animateEl.fadeInUp.animated {
    display: none;
}

.feasr .wp-block-image {
    display: block;
    text-align: center;
}

/* fix header in spagnolo */

@media screen and (min-width:1281px) and (max-width:1480px){
  

  .lang_es .supertop .mainMenu li a,
  .lang_es .submenuBlock span {
      font-size:15px;
  }
  .lang_es .supertop .mainLogo{width:140px}

}
@media screen and (min-width:1481px) and (max-width:1909px){
  

  .lang_es .supertop .mainMenu li a,
  .lang_es .submenuBlock span {
      font-size:16px;
  }
  .lang_es .supertop .mainLogo{width:140px}

}

@media screen and (min-width:1910px){
  
  .lang_es .supertop .mainMenu li{
    margin-left:40px;
  }
   
  .switchLang li {
    margin-left:0!important;
  }
  .lang_es .supertop .mainMenu li a,
  .lang_es .submenuBlock span {
      font-size:18px;
  }
  
}

/*fix header in tedesco */
@media screen and (min-width:1850px){
  .lang_de .supertop .mainMenu li a, .submenuBlock span{font-size:18px;}
}

@media screen and (min-width:1600px) and (max-width:1621px){
  
  .lang_de .supertop .mainMenu li a, .submenuBlock span{font-size:16px;}

}
@media screen and (max-width:1515px) and (min-width:1481px){
  
  .lang_de .supertop .mainMenu li a, .submenuBlock span{font-size:16px;}
  .lang_de  .supertop .mainLogo{width:140px}

}
@media screen and (max-width:1370px) and (min-width:1281px){
  
  .lang_de .supertop .mainMenu li a, .submenuBlock span{font-size:16px;}
  .lang_de  .supertop .mainLogo{width:140px}
  .lang_de .supertop .mainMenu li {margin-left: 30px;}
}

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

/*banner*/
.banner24wrap{position: fixed;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0.7);
        z-index: 2147483630;
    width: 500px;
    padding: 20px;}

.banner24wrap img {display:block; width:400px; max-width:90%; height:auto;}

.banner24wrap img.chiudi_banner{position:absolute; right:20px; top:20px; width:15px; }

@media screen and (max-width: 510px){

	.banner24wrap{left:0; width:100%;}
	.banner24wrap img.chiudi_banner{right:10px; top:10px; }

}

.section.button-only-section+.wp-block-spacer{display:none;}

@media screen and (max-width:800px){
	.top.top_con_video{height:auto;}
	.top.top_con_video .topImgWrap {
        height: 100%;
        padding-bottom: 36%;
    }
	
}


/** Mic ottobre 2024 **/

#hidden-box-dev {
    display: none!important;
}

.blocco-card-numerate .textArea{
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}
.blocco-card-numerate .card_area_container{
	display:flex;
	gap:20px;
	justify-content:center;
	flex-wrap:wrap;
	
}

.blocco-card-numerate .mainTitle.arancione{color: var(--colorB);}
.blocco-card-numerate.mainTitle.grigio{color:var(--mainTextColor);}

.blocco-card-numerate .mainText.arancione{color: var(--colorB);}
.blocco-card-numerate .mainText.blu{color: var(--specialTextColor);}

.card_numerata{width:300px; box-shadow:0px 0px 10px 4px rgba(0, 0, 0, 0.07); padding:40px 20px 20px 20px; border-radius:10px; max-width:calc(100% - 40px)}
.card_numerata .imgArea img {object-fit:contain; object-position:center center;width:100%; height:100%;}
.card_numerata .imgArea  {display:block; margin-left:auto; margin-right:auto;width:100px; height:100px; margin-bottom:30px;}
.card_numerata .numero{color: var(--colorB); text-align:center; margin-bottom:20px; font-size: var(--bigFontSize); font-weight: var(--midFontWeight);}
.card_numerata .numero.blu{color: var(--specialTextColor);}
.card_numerata .numero.grigio{color:var(--mainTextColor);}
.card_numerata .titolo{color: var(--specialTextColor); text-align:center; font-size: var(--mainFontSize); font-weight: var(--midFontWeight); margin-bottom:20px; line-height:1.2}
.card_numerata .titolo.arancione{color: var(--colorB);}
.card_numerata .titolo.grigio{color:var(--mainTextColor);}
.card_numerata .testo .note{font-size:80%}

.card_numerata .testo.arancione{color: var(--colorB);}
.card_numerata .testo.blu{color: var(--specialTextColor);}

.blocco-grafico-editabile .chartArea{max-width:100%}
.blockImgTextSquare .squareRow.reversed{flex-direction: row-reverse;}


.singola-news-content .section .mainTitle{font-size:24px; line-height:1.2; color: var(--specialTextColor);}


.scope-pie-table {
    font-size: 12px;
    line-height: normal;
}
.scope-pie-table thead tr {
    background-color: #04417B;
    color: #fff;
}
.scope-pie-table thead tr th{
    border-right: 1px solid #fff;
}
.scope-pie-table thead tr th:last-child {
    border: none;
}
.scope-pie-table tbody tr {
    border-bottom: 1px solid #ddd;
}
.blockImgTextSquare.pie-scope-section .squareRow {
    flex-direction: row;
} 
.blockImgTextSquare.pie-scope-section .squareRow .squareEl .textArea {
    width: 100%;
}
@media screen and (min-width:1040px) and (max-width:1200px){
	.blockImgTextSquare.pie-scope-section .squareRow .squareEl .textArea {
        padding-left: 0;
        padding-right: 0;
    }	
}

@media screen and (max-width:1040px) {
	.blockImgTextSquare.pie-scope-section .squareRow .squareEl .textArea {
        padding-top: 20px;
        padding-bottom: 20px;
    }	
}
@media screen and (max-width:480px) {
	.blockImgTextSquare.pie-scope-section .squareRow .squareEl .textArea {
        padding: 0;
    }	
}

.blockImgTextSquare .squareEl .textArea p.pie-table-footer {
    font-size: 14px;
    padding: 8px;
}

.lista-container .wp-block-list {
    list-style: unset;
    padding-inline-start: 20px;
    margin-block-start: 1em;
    margin-block-end: 1em;
}
.lista-container .wp-block-list li {
    margin-bottom: 10px;
}

.twitter-share-button svg{width:auto; height:20px;filter: invert(41%) sepia(90%) saturate(922%) hue-rotate(347deg) brightness(97%) contrast(95%);transform: translatey(3px);}