/*
Theme Name: EUknow
Author: StudioMA
Description: EUknow custom Theme
Version: 0.0.1
Template: hello-elementor
*/


/* HELPERS */

.fl{float: left;}
.fr{float: right;}
.no_display{display:none!important;}
.hidden{width: 0px;height: 0px;visibility: hidden;opacity: 0;overflow: hidden;}
.muto{line-height: 0px;margin: 0px;padding: 0px;text-indent: -999px;font-size: 0px;}
.clear{clear: both;}
a.active{border: none;outline:0;}
*:focus {
/*     outline: none!important;border: none!important;outline:0!important;outline-style: none!important; */
}

.wow {
   visibility: hidden;
}
body.blocked{overflow: hidden!important;padding-right: 20px;}
@media all and (min-width: 768px){ 
	.align_right{text-align: right;}
	.align_left{text-align: left;}
}
.align_center{
	text-align: center
}
body, html{
	-webkit-font-smoothing: antialiased; 
}
body{
	overflow-x: hidden
}
.trans{  
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; 
}

.hyphens_text{
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.text_big{
	font-size: 1.2em;
}
.full-width{
	width: 100%;
	max-width: 100%;
}

body.logged-in .no-log-only{
	display: none;
}
body:not(.logged-in) .log-only{
	display: none;
}

img{
	backface-visibility: hidden;
	max-width: 100%;
	height: auto;
}
table{
	width: 100%;
}
iframe{
	width: 100%
}
a:focus, button:focus{
	outline: none!important;
}

@media (min-width: 768px){
	.picsout_right{
		margin-right: -30px;
	}
	.picsout_left{
		margin-left: -30px;
	}
	.picsout_right_big{
		margin-right: -25%;
	}
	.picsout_left_big{
		margin-left: -25%;
	}
}

.black_overlay:before{
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	background: #000;
	opacity: .33;
}
.white_overlay:before{
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	background: #FFF;
	opacity: .33;
}



/* TYPOGRAPHY */

body {
	--font-body: 'OT L22', sans-serif; 
	--font-serif: 'OT L22', serif;
	--font-sans:'OT L22', sans-serif;
	color: var(--color-black);
	background-color: var(--color-white);
	font-family: var(--font-serif);
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	--color-black: #101720;
	--color-grey: #707070;
	--color-white: #fff;
	--color-blue: #0072DA;
	--color-yellow: #DDAC31;
	--color-cyan: #0693E3;
	--color-violet: #6D4477;
	--color-rose: #BF4F4F;
	--color-green: #3B7A51;
	--color-green-bis: #D5DDD0;
	--color-petrol: #008699;
	--color-darkpetrol: #5C747C;
	--color-orange: #CC7236;	
	
	--color-newpetrol: #4C6A72;
	--color-newpetrol-bis: #CACFCC;
	
	--arancione-scuro:#FF6727;
	--arancione-medio:#FF8204;
	--arancione-chiaro: #FF9E25;
	--verde-scuro:#309C00;
	--verde-medio:#31B700;
	--verde-chiaro:#8EDF6D;
	--verde-100:#DFFFC4;
	--viola-50: #F1F2FC;
	--viola-scuro:#6557B8;
	--viola-medio:#8A75DB;
	--viola-chiaro:#A8A4EE;
	--blu-chiaro:#44B8F3;
	--blu-800:#0072DA;
	--blu-50:#ECFBFF;
	--blu-100:#DAF5FF;
}

html {font-size: 112.5%;} /*18px*/

body {
  line-height: 1.1;
  font-size: 20px;
}

p {margin-bottom: 1.15rem;}

h1, h2, h3, h4, h5 {
  margin: 2.75rem 0 1.05rem;
  font-family: var(--font-serif);
  font-weight: 400;
  line-height: 1.1;
}

/* Type scale 1.2 - Minor Third */
h1 {
  margin-top: 0;
  font-size: 2.488rem;
}

h2 {font-size: 2.074rem;}

h3 {font-size: 1.728rem;}

h4 {font-size: 1.44rem;}

h5 {font-size: 1.2rem;}

small, .text_small {font-size: 0.833rem;}
.text_label {font-size: 0.6em;}

.font-sans{
	font-family: var(--font-sans);
}
.font-serif{
	font-family: var(--font-serif);
}

a {
	text-decoration: none;
	color: var(--color-blue);
	outline: none;
	transition: all .3s linear
}

a:hover,
a:focus {
	color: var(--color-blue);
/*
	outline: none;
	opacity: .8
*/
}


.logo,
img,
svg {
    max-width: 100%;
}
img.custom-logo {
    max-height: 90px;
    width: auto;
}

/*  custom titles */
h4.widgettitle {
    font-family: var(--font-sans);
    font-size: 1.2em;
    text-transform: uppercase;
    font-weight: bold;
    margin-top: 0; 
}

/* colors */

.bg-black{
	background: var(--color-black);
}
.bg-grey{
	background: var(--color-grey);
}
.bg-white{
	background: var(--color-white);
}
.bg-blue{
	background: var(--color-blue);
}
.bg-yellow{
	background: var(--color-yellow);
}
.bg-cyan{
	background: var(--color-cyan);
}
.bg-violet{
	background: var(--color-violet);
}
.bg-rose{
	background: var(--color-rose);
}
.bg-green{
	background: var(--color-green);
}
.bg-petrol{
	background: var(--color-petrol);
}
.bg-darkpetrol{
	background: var(--color-darkpetrol);
}
.bg-orange{
	background: var(--color-orange);
}



/* header  */

#mainHead {
    width: 100%;
    max-width: 100vw;
    position: sticky;
    z-index: 310;
    background: var(--color-white);
    left:0px;
    top:0px;
    padding: 1em;
}
.left-open #mainHead {
    z-index: 200;
}
.right-open #mainHead {
    background: none;
}
.header-spacer{
	height: 86px;
}
header.site-header .container{
	margin: 0 auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: min(100%, 1600px);
    padding: 0 0em;
    position: relative;
    z-index: 22;
}
header.site-header ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-flex;
	align-items: center;
}


header.site-header .container .site-branding {
/*     width: 50%; */
    justify-content: flex-end;
    align-items: center;
}

header.site-header .container .header-left {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
     width: 25%;
}
.header-left ul li{
	margin-right: 30px;
}
.header-right ul li{
	margin-left: 15px;
}
header.site-header .container .header-center {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
     width: 50%;
}
header.site-header .container .header-right {
    text-align: right;
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
    width: 25%;
    align-items: center;
}
.header-right ul {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}
header .menu-item a{
    margin: 0 10px;
    color: var(--color-blue);
    font-size: 22px;
}
#menu-top-menu {
    gap: 30px;
}

.icoLabel {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer
}
.icoLabel span{
	font-size: small;
	color: var(--color-blue);
	margin-top:5px
}
.icoLabel:hover {
	opacity: .8
}

header [class^="icon-"]{
	color: var(--color-blue);
	font-size: 30px;
}

header .icoLabel [class^="icon-"]{
	font-size: 20px;
}

#ham {
	display: flex;
	flex-direction: column;
	cursor: pointer
}
#ham span{
	width: 41px;
	height: 5px;
	background: var(--color-blue);
	border-radius: 5px 0 0 5px;
	position: relative;
	transition: all .3s ease-out
}
#ham span:nth-child(2){
	margin: 8px 0;
}

.right-open #ham span{
    background:#fff;
}
.right-open #ham span:nth-child(1) {
    transform: rotate(45deg);
    top: 4px;
}
.right-open #ham span:nth-child(2) {
    opacity: 0;
    margin: 0
}
.right-open #ham span:nth-child(3) {
    transform: rotate(-45deg);
    top: -5px;
	z-index:2;
	mix-blend-mode:multiply
}

body.right-open,
body.left-open{
	overflow: hidden;
}
body.right-open #right-panel{
/*     overflow-y: auto; */
}

#searchIcon{
    position: relative;
    padding: 16px 24px;
    border-bottom: 3px solid var(--color-blue);
    color: var(--color-blue);
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 24px;
}
.icon-search:before {
    content: '';
    background: url(inc/img/eu-search.svg) center center no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
    display: inline-block;
}
#searchPanel{
	display: none;
	position: absolute;
	z-index: 100;
    width: auto;
	right: 125px;
    margin-top: -3px;
}
#searchPanel form{
    display: flex;
}
#searchPanel button.icon-search {
    border: none;
    position: absolute;
    right: 13px;
    padding: 0;
    background: none;
    top: 5px;
    font-size: 30px;
}
#searchPanel.open button.icon-search{
    background:none;
    color:var(--color-blue);
}
#closeSearch {
    display: inline-block;
    position: absolute;
    left: -30px;
    top: 10px;
}
input.search-field,
input#search {
    width: 400px;
    background: var(--bis-color);
    border: none;
    font-family: var(--font-sans);
    font-size: smaller;
    line-height: 22px;
}
input.search-submit {
    background: var(--main-color);
    color: var(--main-color);
    border: none;
    margin-left: 0px;
    position: absolute;
    right: 0;
}

.accessibility{
/* 	visibility: hidden; */
	pointer-events: all;
}
/* accessibility fix plugin: One Click Accessibility */
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle {
    box-shadow: none!important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    background: none!important;
    box-shadow: none!important;
}

#pojo-a11y-toolbar.pojo-a11y-toolbar-open .pojo-a11y-toolbar-toggle a:before {
    content: 'x';
}

#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a svg {
    display: none!important;
}

#pojo-a11y-toolbar {
    font-family: var(--font-sans)!important;
}

/*  buttons */

.btnDefault .elementor-button-content-wrapper:before,
a.btnDefault:before {
    background: #44B8F3;
    content: '';
    position: absolute;
    width: 100%;
    height: 0%;
    bottom: 0%;
    left: 0;
    z-index: 0;
    transition: height .3s ease-out;
}
.btnDefault a .elementor-button-text,
.bntDefault .btnText,
.swiper-cards-wrapper .card-button span{
    z-index:2;
    position: relative;
}
.btnDefault a,
a.btnDefault{
    overflow: hidden;
    position: relative;
}
.btnDefault a:hover .elementor-button-content-wrapper:before,
a.btnDefault:hover:before{
    height: 100%;
}

.btnDefault.viola .elementor-button-content-wrapper:before,
a.btnDefault.viola:before{
	background: var(--viola-chiaro);
}
.btnDefault.verde .elementor-button-content-wrapper:before,
a.btnDefault.verde:before{
	background: var(--verde-chiaro);
}
.btnDefault.arancione .elementor-button-content-wrapper:before,
a.btnDefault.arancione:before{
	background: var(--arancione-chiaro);
}


/* header panels */

.side-panel {
    position: fixed;
    top: 0;
    z-index: 11;
    height: 100%;
    background: rgba(0, 114, 218, .7);
}
.side-panel ul{
	list-style: none;
	margin: 0;
	padding: 0
}
.left-panel{
	background: var(--main-color);
    left: 0;
    z-index: 310;
    width: 40px;
    overflow: hidden;
}
.left-panel.manuale{
/* 	background: var(--color-white); */
}
body.left-open .left-panel {
	left: 0;
	width: 420px;
	background: var(--color-white);
	
}
.right-panel {
    right:auto;
    left:-100%;
    width: 100vw;    
}

#right-panel a {
    color: var(--color-blue);
}

body.right-open .right-panel {
	left: 0;
	
}
.over-panel.black_overlay {
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
}
body.right-open .over-panel.black_overlay,
body.left-open .over-panel.black_overlay {
	opacity: 1;
	visibility: visible;
	z-index: 9
}
body.left-open .over-panel.black_overlay {
	z-index: 300
}
body.right-open .left-panel,
body.right-open #guidOpen{
	pointer-events: none!important
}


.left-panel .content {
/* 	background: var(--color-white); */
    width: 100%;
/*     background: #fff; */
    height: 100%;
    padding: 120px 10px 10px;
}

.right-panel .content{
    width: calc(100% - 80px);
    background: #fff;
    height: 100%;
    padding: 120px 10px 10px;
    border-radius: 0 24px 24px 0;
    max-width: calc(100% - 80px - ((100vw - 1650px) / 2));
}
#right-panel ul.menu,
#right-panel ul.sub-menu {
    display: block;
}

#guidOpen{
    text-transform: uppercase;
    color: #fff;
    font-family: var(--font-sans);
    font-weight: bold;
    transform: rotate(-90deg) translate(-50%, 10px);
    position: fixed;
    top: 50%;
    left: 0;
    transform-origin: top left;
    cursor: pointer;
    z-index: 200;
    width: 100vh;
    text-align: center;
    height: 40px;
}

.left-open .left-panel .content{
    position: absolute;
    max-width: 420px;
    padding-top: 100px;
    padding-right: 20px;
    height: 100vh;
    overflow-y: auto;
    padding-bottom: 40px;
    overflow-x: hidden;
}

/* buttons */

.elementor-button-link,
.btn,
button.facetwp-load-more {
    background: var(--main-color);
    font-family: var(--font-sans);
    font-weight:bold;
    border-radius:25px;
    font-size: 15px;
    padding: 12px 24px;
    color: white;
    border: none;
    line-height: 1;
}
.btn:hover, .btn:focus,
button.facetwp-load-more:hover, button.facetwp-load-more:focus{
	background: var(--bis-color);
	color:black	
}

.btn.btn-link {
    background: none;
    color: var(--main-color)!important;
    padding-left:0;
    display:flex;
    align-items: flex-end;
}
.btn.btn-link:after {
    content:'\2192';
    margin-left: 5px;
    line-height: 1;
}
button[type="submit"]:hover {background: var(--main-color);}

a.iubenda-cs-preferences-link.btn {
    background: var(--color-blue);
}
a.iubenda-cs-preferences-link.btn:hover {
    background: #dce9ef;
    color: var(--color-blue);
}

/* home & page */


/* content & section */

body{
	--container-w: 1320px;
	--container-out: calc( 100vw - var(--container-w) );
	--container-out-half: calc( var(--container-out) / 2);
	--container-cutoff: calc( 100vw - var(--container-out-half) );
	--container-cutoff-all: calc( 100vw - var(--container-out) );
}

.elementor-section{
	margin-bottom: 1rem
}
.main-container{
	max-width: 1140px;
	margin: 0 auto;
}
.left-cut:before,
.right-cut:before {
    content: '';
    position: absolute;
    height: 100%;
/*     width: var(--container-out-half); */
    top: 0;
    background: white;
}
.left-cut:before{
	left:0;
}

.single-guida .left-cut:before,
.single-post .left-cut:before{
	left:10px;
	width: var(--container-out-half);
}
.single-guida .right-cut:before,
.single-post .right-cut:before{
	right:0px;
	width: calc( var(--container-out-half) + 20px );
}

.right-cut:before {
    right: 0;
    left: auto;
}
.site-main.container-fluid{
	max-width: 100%!important;
	width: 100%;
}
.page-content {
    overflow: hidden;
}

.left-cut:after {
    content:'';
    background: inherit!important;
    border-radius: 10px 0 0 10px;
    width:var(--container-cutoff)!important;
    left:auto;
    right: 0px;
    position:absolute;
    top:0;
    height: 100%;
    z-index: 1;
}
.right-cut:after {
    content:'';
    background: inherit!important;
    border-radius: 0px 10px 10px 0px;
    width:var(--container-cutoff)!important;
    right:auto;
    left: 0px;
    position:absolute;
    top:0;
    height: 100%;
    z-index: 1;
}
.left-cut,
.right-cut {
    z-index: 0;
    position: relative
}
.left-cut > div,
.right-cut > div {
    z-index: 2;
    position: relative
}

/* tables */

table{
    font-size: smaller;
    font-family: var(--font-sans)
}
.tablepress tfoot th, .tablepress thead th {
    background-color: var(--bis-color);
}

.tableBis tr:nth-child(1){
    background: var(--bis-color);
}
.tableBis table *{
    font-size: small!important;
}

.tableBis table td:nth-child(1),
.tableBis table td:nth-child(3){
    width:10%!important;
}
.tableBis table td:nth-child(2){
    width:18%!important;
}

@media(max-width:550px){
	#searchPanel {
    	right: 0;
		width: 90%;
		background: white
    }
	#closeSearch{
	    background: white;
	    width: 40px;
	    height: 40px;
	    top: 0;
	    left: -40px;
	    font-size: 2em;
	    padding: 0;
	}
	#closeSearch i{
	    position: relative;
	    top: -5px;
	    left: -5px;
	}
}

@media(max-width:768px){
	table{
		display: block;
		overflow-x: auto;
	}
	table *{
		font-size: 14px!important;
	}
}


/* GUIDA E COLORI */
	/* hero sections */
	.single-guida #hero, #hero{
		padding: 50px 30px;
		margin-bottom: 50px;
	}

	/* 	no cap */
	body:not([class*="cap-"]){
/*
		--main-color: var(--color-blue);
		--bis-color: #DCE9EF;
*/
	}
		
	/* 	cap 1 */
	[class*="cap-1-"],
	body.tax-manuale,
	body[class*="tax-manuale"]{
		--main-color: #FF9E25;
		--bis-color: #D0D5D2;
	}
		
	/* 	cap 2 */
	[class*="cap-2-"]{
		--main-color: #FF8204;
		--bis-color: #EAD6D6;
	}

	/* 	cap 3 */
	[class*="cap-3-"]{
		--main-color: var(--color-petrol);
		--bis-color: #DFE8E6;
	}
	
	/* 	cap 4 - Azzurro #0693E3 - #DCE9EF*/ 
	[class*="cap-4-"]{
		--main-color: #0693E3;
		--bis-color: #DCE9EF;
	}
	
	/* 	cap 4 PRIMA */
	[class*="cap-4-0"],
	body.tax-programmi,
	body[class*="tax-programmi"]{
		--main-color: var(--color-green);
		--bis-color: #D5DDD0;
	}	

	/* 	cap 5 */
	[class*="cap-5-"]{
		--main-color: #d96c21;
		--bis-color: #ecd8d1;
	}	

	/* 	cap 6 */
	[class*="cap-6-"]{
		--main-color: #74417A;
		--bis-color: #D8CADB;
	}	

	/* 	cap 7 */
	[class*="cap-7-"]{
		--main-color: var(--color-blue);
		--bis-color: #DCE9EF;
	}		
	
	/* 	cap 8 */
	[class*="cap-8-"]{
		--main-color: var(--color-blue);
		--bis-color: #DCE9EF;
	}		

		

	/*  TUTTI I CAPITOLI VAR	 */
	.single-guida #hero{
/* 	    background: var(--bis-color); */
	    background: linear-gradient(var(--bis-color) 65%, transparent 0%);
	}
	.single-guida .newsletterbox{
	    background: var(--bis-color);
	}
	.single-guida .page-content :is(h1, h2, h3, h4, h5, h6){
		color: var(--main-color);
	}
	.single-guida :is(.download-box){
		background: var(--main-color);
	}
	.single-guida :is(.download-box) *{
		color:white;
	}
	
	/*  CASI UNI NO CAP	 */
	body.single-guida:not([class*="cap-"]) #hero {
	    background: var(--color-blue);
	    color: #fff;
	}
	body.single-guida:not([class*="cap-"]) #hero :is(h1) {
	    color: #fff;
	}
	body.single-guida:not([class*="cap-"]) :is(.download-box){
		background: #DCE9EF;
	}
	body.single-guida:not([class*="cap-"]) :is(.download-box) *{
		color: var(--color-blue);
	}
	
	.color-main{
		color: var(--main-color);
	}
	.bg-main{
		background: var(--main-color);
	}	
	.color-bis{
		color: var(--bis-color);
	}
	.bg-bis{
		background: var(--bis-color);
	}		
	
	.color-link{
		color: var(--color-cyan)
	}

	/* Guida Navigation */
	
	body.left-open #guidOpen {
	    opacity: 0;
	    height: 40px;
	}
	body:not(.left-open) #guidaNav{
		opacity: 0
	}
	#guidaNav.show {
	    opacity: 1!important;
	}
	.left-panel.manuale{
/* 		width: 60px; */
	}
	#guidaNav li{
    	position:relative;
    	margin-left:0px;
    	display: flex;
	    font-size: smaller;
	    padding: 4px 0;
	}
	#guidaNav li .counter{
		color: var(--main-color);
		flex: 0 0 30px;
	    text-align: right;
	    padding-right: 0px;
	}
	#guidaNav li[class$="-0"]{
		font-family: var(--font-sans);
		font-weight: 600;
	    color: var(--main-color);
	    font-size: .9em;
	    margin-top: 20px;
	}
	#guidaNav li.current sep {
	    width: 10px;
	    border-radius: 0 2px 2px 0;
	}
	#guidaNav li sep{
	    width: 3px;
	    height: 100%;
	    background: var(--main-color);
	    display: inline-flex;
	    position: absolute;
	    left: 35px;
	    top: 0;
	}
	#guidaNav li a {
	    color: inherit;
	    margin-left: 55px;
	    position: relative;
	}
	body:not(.left-open) #guidaNav li a {
	    height: 20px;
	}
	#guidaNav :not(li[class$="-0"]) .counter{
	    font-size:12px;
	    
	}
	.left-open #guidaNav li {
	    flex-direction: row-reverse;
	}
	
	.left-open #guidaNav li .botbor{
		height: 0;
		flex: 1 1 auto;
	    margin: 0px 4px 4px;
	    align-self: flex-end;
	}
	.left-open #guidaNav li[class$="-0"] .botbor{
		background: var(--main-color);
		height: 1px;
	}
	
	.left-open #guidaNav li:not([class$="-0"]) .counter{
	    opacity:0
	}
	/* 	guida li no cap */
	#guidaNav li.cap- sep {
	    background: none;
	}
	
	.left-open #guidaNav li.level-2,
/*
	.left-open #guidaNav li[class*="cap-2-1-"],
	.left-open #guidaNav li[class*="cap-2-2-"],
*/
	.left-open #guidaNav li[class*="cap-5-1-"],
	.left-open #guidaNav li[class*="cap-5-2-"],
	.left-open #guidaNav li[class*="cap-6-1-"],
	.left-open #guidaNav li[class*="cap-6-2-"],
	.left-open #guidaNav li[class*="cap-6-3-"] {
	    padding-left: 10px!important;
	    font-size:small!important
	}
/*
	body:not(.left-open) :is([class*="cap-5-1-"],
	[class*="cap-5-2-"],
	[class*="cap-6-1-"],
	[class*="cap-6-2-"],
	[class*="cap-6-3-"]){
	    display:none!important;
	}
*/


/*  guida cap-4 provvisoria */
	
	li.cap-4-18{
	    padding-top:20px!important
	}
	li.cap-4-18:before {
	    content: '';
	    background: grey;
	    height: 1px;
	    width: 90%;
	    position: absolute;
	    top: 8px;
	    left:35px;
	    display:inline-block;
	}
	
	
/* 	 next chapter panel */
.next-panel {
    right: 0px;
    width: 40px;
    z-index: 200;
    transition: all .3s linear;
}
body.right-open .side-panel.next-panel {
    opacity: 0;
}
.next-panel a.next-chapter {
    color: #fff;
    line-height: 1;
    outline: none;
    opacity: 1;
}
.next-panel a.next-chapter:hover {
	color: #fff7;
}
.next-panel-link{
    text-transform: uppercase;
    color: #fff;
    font-family: var(--font-sans);
    font-weight: bold;
    transform: rotate(-90deg) translate(-50%, 0px);
    position: absolute;
    top: 50%;
    left: 0;
    transform-origin: top left;
    cursor: pointer;
    z-index: 200;
    width: 100vh;
    text-align: center;
    background: var(--main-color);
    padding: 10px 0
}

/* hero guida */

#hero.capitolo{
	border-top:10px solid #fff;
	margin-bottom: 0;
}
#hero.capitolo .bottom-section{
    margin-bottom: 0;
    padding-bottom: 30px!important;
}

.cap-ribbon{
    top:-10px;
    position:relative;
    z-index:0
}
.cap-ribbon ul li.elementor-icon-list-item{
    position:relative;
    display:flex;
    align-items:center;
    justify-content: center;
}
.cap-ribbon span.elementor-icon-list-icon {
    position: absolute;
    z-index: 0;
}
.cap-ribbon span.elementor-icon-list-icon svg{
/*     width:160px!important; */
}
.cap-ribbon span.elementor-icon-list-icon svg path{
    fill:var(--main-color);
}

.cap-ribbon .elementor-icon-list-text{
    position:relative;
    z-index:100;
    color:white;
    top:-5px;
}

.cap-ribbon span.elementor-icon-list-text.elementor-post-info__item.elementor-post-info__item--type-terms {
    flex-direction: column;
    display: flex;
    font-family: var(--font-sans);
    font-weight: 900;
}

#hero .hero-cover {
    background: var(--main-color);
    padding: 8px;
    border-radius:15px
}

#hero-sub {
    margin-bottom: 0px;
}

/* downloads widget */
.download-box {
    background: #DCE9EF;
    padding: 20px;
    border-radius: 8px;
}
.download-box *{
	color: var(--color-blue);
}
ul.download-list {
    list-style: none;
    padding: 0;
    font-family: var(--font-sans);
}
ul.download-list li:first-child:before{
	content: none;
}
ul.download-list li:before {
	content: '';
	width: 100%;
	height: 1px;
	background: var(--color-blue);
	opacity: .5;
	display: block;
    margin: 20px 0;
}

body[class*="cap-"] ul.download-list li:before{
	background: #fff5;
}

ul.download-list li {

}
ul.download-list a{
	display: flex;
	align-items: center;
}
.download-list i {
    font-size: 2.5em;
    margin-right: 15px;
}


.euro-blockquote {
    border-left: 5px solid var(--bis-color);
    padding-left: 32px;
}

/* image carousel */
#euro-carousel .swiper-container{
	overflow: visible;
}
#euro-carousel .swiper-container:before {
    content: '';
    position: absolute;
    right: 100%;
    top: 0;
    height: 100%;
    width: 200%;
    background: white;
    z-index: 100;
}
#euro-carousel .swiper-slide {
    padding-right: 20px;
}

#euro-carousel .elementor-swiper-button{
    color: var(--main-color);
    z-index: 100;
}
.elementor-swiper-button-prev {
    left: -60px;
}
.elementor-swiper-button-next {
    right: -60px;
}
/*
.elementor-162 .elementor-element.elementor-element-dd35c60 {
    margin-left: calc( ((100vw - 1320px) / 2) + (1320px * 16.6 / 100) + 20px );
}
*/

/* single navigation */
.navigation a{
	color:var(--main-color)
}
.navigation > div {
    padding: 0 20px;
}

[class*="cap-4-"] .capName,
[class*="cap-5-"] .capName,
[class*="cap-6-"] .capName{
    display:none;
}

/*  news box */


.newsCard {
    padding: 10px;
/*     width: 33%; */
}
.newsCard .thumb {
/*
    background: gray;
    min-height: 240px;
*/
    margin:10px 0 20px;
}
.newsCard a{
	text-decoration: none
}

#newsBox,
#newsLoop {
    color: var(--color-black);
    --main-color: var(--color-yellow);
}
#newsBox .cat span,
#newsLoop .cat span{
    font-family: var(--font-sans);
    font-weight:900;
    text-transform:uppercase;
    font-size:smaller;
    margin:0 10px 5px 0;
}
/*
#newsBox .cat span:after {content: ',';}
#newsBox .cat span:last-child:after {content: '';}
*/

#newsBox .data,
#newsLoop .data{
    color:var(--color-grey);
    font-family: var(--font-sans);
    font-size:small;
}
#newsBox h4,
#newsLoop h4{
    color: var(--color-black);
    margin:0px 0;
    font-size:1.1em;
    width: 100%;
    max-width: 100%;
}

#newsBox .tags,
#newsLoop .tags {
    margin: 25px 0;
    font-family: var(--font-sans);
}
#newsBox .tags span,
#newsLoop .tags span{
    margin:0 10px 5px 0;
    background:var(--main-color);
    color:#F9F2DE;
    font-size:small;
    font-weight:bold;
    padding:5px 10px 5px 5px;
    display:inline-flex;
    border-radius:5px;
    align-items:center;
}
#newsBox .tags span:before,
#newsLoop .tags span:before{
    content:'';
    height:7px;
    width:7px;
    border-radius:50%;
    background:#f9f2de;
    margin:0 5px;
}
#newsBox .titoletto,
#newsLoop .titoletto {
    font-weight: bold;
    border-bottom:2px solid
}


#newsLoop.approfondimenti {
    --main-color: var(--color-blue)!important;
    --bis-color: #DCE9EF;
}
#newsLoop.approfondimenti h4 {
    color:var(--link-color);
}	
#newsLoop.approfondimenti .read_more{
    color: var( --color-grey );
    font-family: var(--font-sans);
    font-weight: bold;
}


/* formazione */

body.page-formazione,
body.single-formazione {
    --main-color: var(--color-yellow);
    --bis-color: #F9F2DE;
}
body.page-formazione #guidOpen {
    color: var(--main-color);
}

.ecs-post-loop.formazione.argomento-podcast .elementor-widget-theme-post-content {
    display: none;
}


/* home */

#homeIconBox{
    padding-top: 1rem;
    padding-bottom: 1rem
}
#homeIconBox:before{
    border-radius: 10px;
    left:-20px;
}
#homeIconBox:before,
#homeIconBox:after,
.bg-extend-right:after{
    content: '';
    position:absolute;
    height: 100%;
    width: 100%;
    right:-100%;
    background: var(--bis-color);
    top:0px;
}
.bg-extend-right{
	position: relative
}

#newsHome #hero {
    padding: 0;
}

#newsHome #hero h2 {
    margin-top: 0;
    color: black;
}
#newsHome #hero .content{
	padding-left: 22px
}

#newsHome #hero.news .cover{
    top:0;
}
#newsHome #hero a{
    color: var(--color-yellow)!important;
}

/* concierge */
#concierge.tags a {
    background: var(--bis-color);
    padding: 5px 12px;
    font-size: smaller;
    border-radius: 20px;
    color: var(--main-color);
    font-family: var(--font-sans);
    font-weight: bold;
    margin: 0 5px 10px 0;
    display: inline-block;
}

/*  news */

.single-post,
.page-news,
.archive.category,
.archive.tag,
.page-approfondimenti,
.page-glossario
.tax-approfondimenti,
body[class*="tax-approfondimenti"]{
	--main-color: var(--color-yellow)!important;
	--bis-color: #F9F2DE!important
	
}
body.page-news #hero,
body.archive #hero,
body.single-post #hero,
body.page-news .newsletterbox,
body.single-post .newsletterbox,
.newsletterbox,
body:is(.page-id-20057) #hero,
body:is(.page-id-20057) .newsletterbox{
	background: var(--bis-color)
}
body:is(.page-id-20057, .page-news) #hero :is(h1,h2,h3),
.page-approfondimenti :is(h1,h2,h3),
.page.tax-approfondimenti :is(h1,h2,h3),
.page[class*="tax-approfondimenti"] :is(h1, h2, h3),
/* body:is(.page-id-20057, .page-news) #guidOpen, */
/* body.single-post #guidOpen, */
.page-manuale :is(h1,h2,h3),
.page.tax-manuale :is(h1,h2,h3),
.page-programmi :is(h1,h2,h3),
.page.tax-programmi :is(h1,h2,h3),
.page[class*="tax-manuale"] :is(h1, h2, h3),
.page[class*="tax-programmi"] :is(h1, h2, h3){
	color: var(--main-color)
}
body:is(.page-id-20057, .page-news) #hero,
body.single-post #hero{
    margin-bottom:100px;
    color:#000;
}
body.single-post #hero .cover{
/* 	margin-bottom: -50% */
}
#hero.news .cover {
    width: 48%;
    right: -10px;
    position: absolute;
    top: 35%;
    border-radius: 10px;
    overflow: hidden;
}
#hero.news .data {
    color: var(--color-grey);
    font-family:var(--font-sans);
    font-weight:bold;
    font-size: smaller;
    margin:10px 0
}


.category-panel .toggle {
    color: black;
}
.category-panel .toggle span{
    border-bottom: 2px solid;
    margin-right:5px
}
#categoryList ul{
   padding: 20px 0 30px;
   margin: 0px 0;
}

#categoryList ul li {
    list-style: none;
    padding: 0;
    margin: 0 20px 10px 0;
    display: inline-block;
    font-family:var(--font-sans);
    font-weight:700;
}
#categoryList ul li a{
    color:var(--main-color);
    text-transform:uppercase;
}

body.archive #hero *,
body.single-post #hero h1{
	color: #000
}
body.archive #hero .counter{
	color: var(--main-color);
	font-style: italic;
	font-size: 2em
}
.coverHero{
	position: relative;
}
.coverHero:after{
	content: '';
	position: absolute;
	top:0;
	right:-15px;
	background: var(--main-color);
	height:100%;
	width: 1px;
}
.archive div#newsBox.newspage {
    padding: 0 5px;
}

@media(min-width: 1024px){
	:is(.single-post,.single-approfondimenti) .page-content :is(p,h2,h3,h4,h5,h6,figure,blockquote, .dataTables_wrapper),
	:is(.single-post,.single-approfondimenti) .page-content > :is(ul,ol){
		max-width: 50%;
		margin-left:auto;
		margin-right:auto;
	}

	:is(.single-post,.single-approfondimenti) .page-content :is(blockquote){
/* 		margin-left: 33%; */ 
	}
	:is(.single-post,.single-approfondimenti) .page-content blockquote p{
		max-width: 100%;
	}
}
.single-post .page-content :is(h2,h3,h4,h5,h6,blockquote){
	color:var(--main-color);
}
.single-post .page-content a{
	color:var(--color-blue);
}
blockquote{
	font-size: 1.2em;
    padding-left: 1.2rem;
    border-left: 3px solid var(--bis-color);
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}
.entry-content.page-content li {
    margin-bottom: 1rem;
}

/* pagination */
.pagination{
	display: flex;
	justify-content: center;
	margin: 1rem auto;
	font-family: var(--font-sans);
	font-weight: bolder;
}
.pagination > *{
	color: var(--color-grey);
	margin: 0 10px;
}
.pagination .page-numbers.current {
    color: var(--main-color);
}
.pagination a:hover{
	color:var(--main-color)
}

/* guide approfondimento */
/*
.page-guide-di-approfondimento,
.single-post.single-approfondimenti{
	--main-color:var(--color-blue)!important;
	--bis-color:#DCE9EF!important;
}

.single-post.single-approfondimenti :is(h1,h2,h3,h4,h5){
	color:var(--main-color)
}
.single-post.single-approfondimenti :is(blockquote){
	color:var(--color-cyan);
	border-color:var(--color-cyan);
}
.single-approfondimenti header#hero.appro {
    background: none;
}
.single-approfondimenti header#hero h1{
	color:var(--color-blue)
}

.category.single-approfondimenti,
.category.single-approfondimenti #newsBox,
.single-post.single-approfondimenti #newsBox{
    --main-color: var(--color-blue)!important;
    --bis-color: #DCE9EF!important;
}
.category.single-approfondimenti header#hero {
    background: var(--bis-color);
}
*/

/* note panel */
#note{
    position: fixed;
    top: 0;
    z-index: 10;
    height: 100vh;
    width: 420px;
    right: -420px;
    z-index: 300;
    background: white;
    overflow-y: auto;
    font-size: smaller;
    max-width: 100%;
}   
sup.nota {
    color: var(--color-cyan);
    font-family: var(--font-sans);
}
.note-open #note {
    right: 0;
}
body.note-open{
	overflow: hidden
}
body.note-open .over-panel {
    z-index: 220!important;
    opacity: 1;
	visibility: visible;
} 

#close{
	position: fixed;
    right: -100px;
    top: 20px;
    background: #ffffff;
    color: var(--color-blue);
    height: 30px;
    width: 30px;
    border-radius: 50%;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
body.note-open #close{
	right: 10px;
}
/* faq */

.faq{
    counter-reset:faq
}
.faq .elementor-accordion-item{
    border-top:1px solid #D2D2D2!important;
    padding: 5px 0 5px;
    margin-top:0px;
}
.faq .elementor-accordion-item h5{
    position:relative;
    font-weight:400!important;
    padding: 15px 0;
}
.faq .elementor-accordion-item h5:before {
    counter-increment: faq;
/*     content: counter(faq); */
    position:absolute;
    top:0;
    left:0px;
    height:100%;
    display:flex;
    align-items:center;
    color:var(--color-blue);
}
.faq .elementor-accordion-item h5 a{
	display: block;
}
.faq .elementor-accordion-item h5 a,
.faq .elementor-accordion-item .elementor-tab-content{
/*     max-width:700px; */
    margin:0 auto;
}
.faq .elementor-accordion-item .elementor-tab-content{
    padding-left:0;
}
.faq i {
    font-size: 1.1em;
}
    
/* footer */

.containerCutOff{
	 width: var(--container-cutoff-all);
	 margin-left: auto;
}

.newsletterbox {
    border-radius: 10px;
    padding: 2rem 1rem;
    background: #DCE9EF;
    max-width: var(--container-cutoff-all);
    margin: 0 auto
}
.newsletterbox :is(h1, h2, h3, h4, h5, h6){
	color: var(--color-black)!important;
}
footer .bottom-footer *:not(i){
	font-size: small;
	font-family: var(--font-sans);
    color: var(--color-black);
    font-weight: 600;
}
.bottom-footer nav ul li a {
    padding: 2px 0!important;
}
.bottom-footer h4 {
    margin-bottom: 0px;
}

/* media queries */
@page {
    size: auto;   /* auto is the initial value */
    margin: 5% 0;  /* this affects the margin in the printer settings */
}
@media print{
	*{
		-webkit-print-color-adjust: exact;
	}
	header.site-header{
		position: absolute!important;
	}
    .side-panel,
    .header-left, .header-right,
    .nav-parent,
    .single-guida #newsSection,
    footer {
        display:none;
    }
    body{
	    font-size:14px;
    }

	a.custom-logo-link:after,
	a.elementor-icon:after,
	a:after {
		content: none!important;
	}
	header.site-header .container {
	    justify-content: center;
	}
	div.elementor-element, p, li, img {
		break-inside: avoid;
	}
	
	h1, h2, h3, h4, h5 {
	    hyphens: auto;
	}
		
	body{
	    display: flex;
	    flex-direction: column;
	}
	#note {
	    position: relative;
	    width: 100%;
	    max-width: calc(100% - 100px);
	    margin:0 auto;
	    left: 0;
	    top: 0;
	    right: 0;
	    height: auto;
	    order: 2;
	}
	sup.nota:before{content: '(';}
	sup.nota:after{content: ')';}
	main {
	    order: 1;
	}
	.single-guida #hero, #hero {
    	padding: 50px 30px 0;
    }
    #hero.capitolo .bottom-section {
	    margin-bottom: 0;
	    padding-bottom: 0px!important;
	}
	.cap-ribbon{
		top: -25px;
		width: 50px!important;
	}
	.cap-ribbon span.elementor-icon-list-icon svg {
	    width: 60px!important;
	}

	
}
@media (max-width:1200px){
	html{
		overflow-x: hidden
	}
/*
	.container {
	    max-width: calc(100% - 100px);
	}
*/
	.elementor-section.elementor-section-boxed > .elementor-container,
	.elementor-element.e-con-boxed > .e-con-inner,
	.main-container {
	    max-width: calc(100vw - 100px);
	}
	.single-guida #hero, #hero{
		padding: 50px 0;
	}
}
@media (max-width:991px){ /* small devices < lg */
	html {
	    font-size: 100%;
	    width: 100%;
	}
	#hero > div > div > div{
		padding: 0px 10px 0px 10px;
	}
	body.page-news #hero,
	body.single-post #hero {
	    padding-left: 20px;
	}
	body.single-post #hero {
	    margin-bottom: 50px!important;
	}
	body.single-post #hero .cover {
	    margin-bottom: 30px!important;
	}
	
	.right-panel .content{
		overflow-y: auto;
	}
	#hero-sub {
	    margin-bottom: 0px;
	    padding: 20px 35px 20px 50px;
	}
}
@media (max-width:767px){
	#hero.news .cover{
		width: 100%;
	    right: 0;
	    position: relative;
	    margin-top: 20px;
	    
	}
	.page-news #hero.news .cover{
		margin-bottom: -50px;
	}
	
	#note{
		max-width: 100%;
		z-index: 4000;
	}
}
@media (max-width:575px){ /* small devices < md */
	html {
	    font-size: 80%;
	}
	body{
		width: 100%;
		font-size: 16px;
		line-height: 1.5;
	}
	#mainHead{
		z-index: 400;
	}
	header.site-header .container {
	    max-width: calc(100% - 0px);
	    padding:0 5px;
	}
	header.site-header .container > div {
	    width: auto;
	}
	.header-right ul li,
	.header-left ul li {
	    margin-left: 5px;
	}
	header .icoLabel {
    	display: none;
    }
    .site-branding img {
	    max-height: 35px;
	    width: auto;
	}
	
	body.left-open .left-panel,
	.right-panel{
		width: 92%
	}
	.right-panel{
		right: -100%;
	}
	.elementor-section.elementor-section-boxed > .elementor-container,
	.elementor-element.e-con-boxed > .e-con-inner,
	.main-container {
    	max-width: calc(100vw);
    }
    .single-guida main, 
    .single-guida footer{
		padding: 0 0px 0 50px;
    }
    .single-guida footer{
	    padding-bottom: 60px;
    }
    .single-post #article {
	    padding: 0 1em;
	}
    body:not([class*=elementor-page-]) .site-main,
    main, 
    footer,
    .elementor-location-single > .elementor-section-wrap{
		padding: 0 0px 0 40px;
    }
    body.home :is(.site-main, 
    main, 
    footer,
    .elementor-location-single > .elementor-section-wrap){
	    padding: 0 10px 0 10px!important;
    }
    .elementor-section.elementor-section-stretched {
		position: relative;
		width: 100%;
		left: 0px!important;
		max-width: 100%!important;
	}
    
	h1, h2, h3, h4, h5{
		hyphens: auto;
		-webkit-hyphens:auto;
	}

	.single-guida .left-panel {
	    width: 40px;
	}
	.left-panel .content {
	    padding-left: 5px;
	    width: 100%;
	    padding-top: 80px;
	}
	#guidaNav li *{
		font-size:.8em!important
	}
	.next-panel {
    	width: 30px;
    	display: none!important
    }
    .next-panel-link{
	    padding: 5px 0
    }
    
    .cap-ribbon{
	    top: -32px;
	    transform: translateX(-40%);
	    font-size: small;
    }
    .cap-ribbon .elementor-icon-list-icon{
	    width: 50px!important;
    }
    .navigation > div {
	    padding: 0 10px;
	    width: 100%;
	    margin-bottom: 30px;
	}
	#hero.capitolo {
    	border-top: 0px solid #fff;
  	}
  	.single-guida #hero, #hero {
	padding: 50px 10px;
	}

}

@media (max-width:320px){
	header.site-header .container{
		padding: 0
	}
	.site-branding{
		max-width: 160px;
	}
}

/* fixing */
.elementor-nav-menu--dropdown .elementor-item.elementor-item-active, .elementor-nav-menu--dropdown .elementor-item.highlighted, .elementor-nav-menu--dropdown .elementor-item:focus, .elementor-nav-menu--dropdown .elementor-item:hover, .elementor-sub-item.elementor-item-active, .elementor-sub-item.highlighted, .elementor-sub-item:focus, .elementor-sub-item:hover {
    background-color: #ffffff;
    text-decoration: underline;
}
.swiper-pagination{
	z-index: 9
}


/* stycky section & widgets */
.sticky-section {
    position: absolute;
    z-index: 8;
    top:250px
}
body:not(.single-guida, .single-post) .sticky-section,
body.single-guida:not([class*="cap-"]) .sticky-section{
	display: none!important;	
}

.sticky-section.sshare {
    max-width: 100px;
    left: calc( (100vw - 1140px) / 2 + 65px);
}

.sticky-section.scta {
    max-width: 250px;
    right: calc( (100vw - 1140px) / 2 );
}
body:is(.cap-1-0, .cap-2-0, .cap-3-0, .cap-4-0, .cap-5-0, .cap-6-0) .sticky-section{
	top:700px; 
}
body:is(.cap-1-0, .cap-2-0, .cap-3-0, .cap-4-0, .cap-5-0, .cap-6-0) .sshare,
body:is(.cap-1-0-en, .cap-2-0-en, .cap-3-0-en, .cap-4-0-en, .cap-5-0-en, .cap-6-0-en) .sshare,
body:is(.cap-1-0-de, .cap-2-0-de, .cap-3-0-de, .cap-4-0-de, .cap-5-0-de, .cap-6-0-de) .sshare,
body:is(.cap-1-0-fr, .cap-2-0-fr, .cap-3-0-fr, .cap-4-0-fr, .cap-5-0-fr, .cap-6-0-fr) .sshare{
	top:450px; 
}
.single-post .sticky-section{
	top:540px; 
}
.single-post .sshare {
    left: calc( (100vw - 1140px) / 2 + 165px);
}
.sticky-section.scta .close {
		display: none;
}

@media (max-width:1200px){
	.sticky-section.sshare {
	    max-width: 100px;
	    left: 10vw;
	}
	.sticky-section.scta {
	    max-width: 20%;
	    right: 45px;
	}
}
@media (max-width:768px){
	.sticky-section.sshare {
		display: none!important;
	    position: fixed;
	    bottom: -100px;
	    top: auto;
	    background: white;
	    max-width: 100vw;
	    left: 0;
	    width: 100vw;
	    padding: 8px 20px;
	    opacity: 0;
	}
	.sticky-section.sshare.active {
		opacity: 1;
		bottom: 0px;
	}
	
	.sticky-section.sshare .elementor-widget-container {
	    margin: 0!important;
	}
	.sticky-section.sshare .elementor-widget-container > div {
	    justify-content: center;
	    display: flex;
	}
	
	.sticky-section.scta {
		display: none!important;
	    max-width: calc(100% - 100px);
	    position: fixed;
	    bottom: 65px;
	    top: auto!important;
	    right: -300px
	}
	.sticky-section.scta.active {
		right: 45px;
	}
	
	.sticky-section.scta .close {
		display: block;
	    position: absolute;
	    top: 10px;
	    right: 10px;
	    z-index: 20;
	    background: white;
	    border-radius: 50%;
	    font-family: var(--font-sans);
	    height: 20px;
	    width: 20px;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    font-weight: bold;
	    pointer-events: all;
	    cursor: pointer;
	}
}
@media (max-width: 375px){
	.sticky-section.scta.active {
	    right: 35px;
	    max-width: calc(100% - 85px);
	}
}

/* tablepress */
table.tablepress{
    z-index: 10;
    position: relative;
}
@media (max-width: 425px){
	table.tablepress{
	    overflow-x: scroll!important;
	    width: 100%!important;
	    display: block;
	    position: relative;
	    margin-top: 30px;
	}
	table.tablepress:before {
	    position: relative;
	    top: 0px;
	    left: 5px;
	    content:'scroll right →';
	    font-style:italic;
	    text-align: left;
	    display:block;
	    color: var(--main-color);
	    margin-bottom: 10px;
	}
/*
	table.tablepress:after {
	    content: '';
	    background: linear-gradient(270deg, rgb(255 255 255 / 80%), transparent);
	    height: 100%;
	    width: 40px;
	    position: fixed;
	    top: 0;
	    right: 0;
	}
*/
}


/* new cards on Guida cap. 1.4 */

body:not(.elementor-editor-active) .cardContainer {
    height: 0px;
    overflow: hidden;
    margin-bottom: 0;
}

.cardHeader {
    padding: 0 20px 0 40px;
    margin-bottom: 0
}

body {
  counter-reset: captoggle;          
}

.cardHeader .elementor-widget-heading:before {
	counter-increment: captoggle; 
    content:counter(captoggle);
    display:inline-block;
    position:absolute;
	top: 4px;
    left: -40px;
    font-size: 1.2em;
}
.cardHeader .elementor-widget-heading:after {
    content:'+';
	position: absolute;
    top: -2px;
    right: -25px;
    pointer-events: all;
    cursor: pointer;
    font-size: 1.6em;
    font-weight: bold;
    border: 2px solid;
    height: 35px;
    width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
.cardHeader .elementor-widget-heading:before,
.cardHeader .elementor-widget-heading:after {
	color: var(--main-color);
}
.cardHeader .elementor-widget-heading{
    padding-right: 20px;
}
.capToggle{
	margin-bottom: 0;
	transition: all .5s ease-in-out;
}
.capToggle.open .cardHeader .elementor-widget-heading:after {
    content:'-';
}
.capToggle.open{
	background: var(--bis-color);
}
.capToggle.open .cardContainer {
    height:auto;
}
.cardInfo {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 0 12px #d3d3d33d;
}
.cardInfo > div {
    padding: 15px 40px 1px 180px;
    background-color: #fff0;
    border-radius: 20px;
    font-size: smaller;
    z-index:1;
    position:relative;
    
    background-color: #ffffff00;
    background-position: 62px 51px;
    background-repeat: no-repeat;
    background-size: 33px auto;
    overflow: hidden;
}

.cardInfo .infoHref {
    position: absolute;
    bottom: 8px;
    right: 8px;
    font-size: small;
    border: 1px solid;
    height: 20px;
    width: 20px;
    text-align: center;
    border-radius: 50%;
    z-index: 7
}

.elementor-editor-active .cardInfo > .elementor-element-overlay:before {content: none;}

.cardInfo > div:before {
    content: '';
    width: 195px;
    height: 195px;
    border: 2px solid var(--bis-color);
    position: absolute;
    left: -25px;
    top: -25px;
    border-radius: 50%;
    opacity: .5;
}

.cardInfo:before {
    content: '';
    width: 70px;
    height: 70px;
    background: var(--main-color);
    position: absolute;
    left: 43px;
    top: 33px;
    border-radius: 50%;
    z-index: 0;
}
.cardInfo:after {
    content: attr(data-title);
    position: absolute;
    left: 25px;
    top: 115px;
    color: var(--main-color);
    z-index: 7;
    width: 110px;
    font-family: var( --font-sans);
    font-size: .6em;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
}

@media (max-width:768px){
	.cardHeader .elementor-widget-text-editor {
	    font-size: small;
	}
	.cardInfo > div {padding: 80px 10px 10px;font-size: small;background-size: 26px auto;background-position: 17px 17px;}
	
	.cardInfo:before {
	    width: 40px;
	    height: 40px;
	    top: 10px;
	    left: 10px;
	}
	.cardInfo > div:before {
	    width: 70px;
	    height: 70px;
	    top: -5px;
	    left: -5px;
	}
	.cardInfo:after {
	    left: 75px;
	    top: 25px;
	    text-align: left;
	}
}

@media(max-width:767px){
	.single-guida .page-content > div > section.elementor-top-section {
	    padding-left: 5px!important;
	    padding-right: 5px!important;
	}
	#hero.capitolo .bottom-section {
	    margin-bottom: 0!important;
	    padding-bottom: 0px!important;
	}
	.single-guida #hero {
	    padding: 50px 10px 0;
	    background: linear-gradient(var(--bis-color) 78%, transparent 0%);
	}
}

/*  glossario */

.gl-filters .facetwp-type-fselect .fs-option .fs-option-label {
    font-size: smaller;
}

.gl-filters .fs-label-wrap {
    border-radius: 3px;
}

.gl-filters .facetwp-alpha.selected {
    color: var(--main-color);
}


.gl-filters .facetwp-facet.facetwp-facet-alpha.facetwp-type-alpha {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    flex-wrap: wrap;
}

.gl-filters .fs-label-wrap .fs-label {
    padding: 12px 15px;
    font-size: .8em;
}

.gl-filters .facetwp-facet {
    margin-bottom: 20px;
}

.gl-filters .facetwp-facet-categorie_gl .fs-wrap.single {
    width: 300px;
    max-width: 100%;
}

.gl-filters .facetwp-facet-categorie_gl .fs-label-wrap {
    border: 1px solid var(--color-grey);
}

.gl-filters .facetwp-facet-search .facetwp-input-wrap{
	width: 300px;
    max-width: 100%;
}

.gl-filters input.facetwp-search {
    font-size: .8em;
    padding: 10px 15px;
}

.gl-filters .facetwp-facet.facetwp-facet-reset.facetwp-type-reset {
    text-align: center;
    font-style: italic;
}
.facetwp-facet.facetwp-facet-pagination.facetwp-type-pager {
    text-align: center;
}

button.facetwp-load-mo-re {
    border-radius: 50px;
    font-size: .9em;
    font-family: var(--font-sans);
    color: #fff;
    border-color: var(--main-color);
    background: var(--main-color);
    font-weight: 500;
}

/*  temporary fix wpml */
li.wpml-ls-slot-shortcode_actions.wpml-ls-item.wpml-ls-item-de.wpml-ls-last-item.wpml-ls-item-legacy-list-horizontal {
/*     display: none!important; */
}

/* lang alert */
div#lang-alert {
    display: block;
    position: fixed;
    bottom: 40px;
    width: 100%;
    max-width: 780px;
    border-radius: 8px;
    color: var(--main-color);
    left: 50%;
    transform: translateX(-50%);
    z-index: 9000;
    font-size: smaller;
    font-family: 'Public Sans';
    background: #fff;
    padding: 1em 2em 1em 1em;
    box-shadow: 0 0 20px #0000005e;
    border: 1px solid var(--main-color);
}
#lang-alert p{
    margin:0
}
#lang-alert:after{
    content:'x';
    position:absolute;
    right: 14px;
    top: 50%;
    cursor:pointer;
    font-size:1.2em;
    transform: translateY(-50%);
}
.right-panel .wpml-ls-legacy-list-horizontal {
    display: none;
}
.wpml-ls-legacy-dropdown a{
	background: none
}
.wpml-ls-legacy-dropdown a:hover,
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu{
	background: #fff
}
@media(max-width:768px){
	#lang-alert {
    	bottom: 0px;
    }
    .no-mobile{
	    display: none
    }
    .right-panel .wpml-ls-legacy-list-horizontal {
	    display: block;
	}

}

/*  left panel nuovo */
body:not(.single-guida, .page-id-29235, .page-id-29257) .left-panel{
/* 	display: none; */
}
.page-id-29235 .left-panel {
/*     width: 60px; */
}
.titleSide{
	display: none;
	padding-left: 35px;
}
.left-open .titleSide{
	display: block;
}

/* news layout fix */
ul.elementor-inline-items {
    list-style: none!important;
}

/*  nuovo menu panel */
.menu-manuale ul {
    justify-content: space-between;
    gap:20px;
}
.menu-manuale ul li{
    padding:0;
    text-align:left;
    justify-content: flex-start;
    align-items: flex-start;
    flex: 0;
}
.menu-manuale ul li a{
    margin:0;
    display: inline-block;
}

:is(.page-id-29235, .page-id-29257) #hero{
    padding-left: 100px;
}

@media(max-width:980px){
	#mainHead .header-left,
	#mainHead .header-right{
		width: 50%
	}
	:is(.page-id-29235, .page-id-29257) #hero {
	    padding-left: 30px;
	}
	:is(.page-id-29235, .page-id-29257) main,
	:is(.page-id-29235, .page-id-29257) footer {
	    padding-left: 50px;
	}
}

/*  news card */

.ecs-post-loop .elementor-icon-list-items .elementor-icon-list-item .elementor-icon-list-text a{
	display: inline-flex;
}

/*  nuove sezioni hero e left cut */
/*
section#hero.left-cut {
    background: white;
}

section#hero.left-cut:before {content: '';left: auto;right: 0;width: calc(100vw - var(--container-out-half)););border-radius: 8px;}
*/

/*  menu approfondimenti */
body.tax-approfondimenti{
	--main-color: var(--color-yellow);
	--bis-color: #F9F2DE;
}
#guidaNav ul#menu-approfondimenti {
    margin: 30px 0;
}
#guidaNav ul#menu-approfondimenti li{
    flex-direction:row;
    position:relative;
}

#guidaNav ul#menu-approfondimenti li a{
    font-family:var(--font-sans);
    font-weight:500;
    color:var(--main-color)
}
#guidaNav ul#menu-approfondimenti li:before{
    content:'';
    background:var(--main-color);
    position:absolute;
    top:0;
    left: 35px;
    width: 2px;
    height:100%;
}
#guidaNav ul#menu-approfondimenti li.current-menu-item:before{
    width: 6px;
    border-radius: 0 5px 5px 0;
}

/*  shortcode list category home */
div#categoryList.tags a {color: var(--color-yellow);font-size: .9em;background: #f9f2de;););padding: 4px 12px;border-radius: 20px;}

div#categoryList.tags li {
    margin: 0 5px 15px 0;
}


/*  wpml */
.wpmlSelect{
	margin-left: 0 !important;
}
.wpmlSelect > div {
    width: auto;
}
.wpmlSelect ul{
    display: inline-block!important;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
    border-width: 0 0px 0px;
    text-align: left;
    border: none;
}
.wpml-ls-legacy-dropdown a{
	border: none!important;
    text-transform: uppercase;
    font-family: var(--font-sans);
    font-weight: 400;
    font-size: 1.2em;
    color: var(--e-global-color-primary);
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after{
	border: none;
	content: '';
	width: 30px;
	height: 12px;
	background: url(inc/img/eu-angle-down.svg) no-repeat center center;
	background-size: contain;
}

body:not(.logged-in) .wpmlSelect {
/*     display:none; */
}


/*  menu manuale numebrs */
.menu-manuale ul {
  counter-reset: menu-counter; /* Inizializza il contatore */
  list-style: none; /* Rimuove i punti elenco */
  padding: 0;
}

.menu-manuale ul li {
  counter-increment: menu-counter; /* Incrementa il contatore */
}

.menu-manuale ul li a::before {
  content: counter(menu-counter) ". "; /* Mostra il contatore */
  opacity: 1!important;
  position: relative;
}

/*  fix temporary newsletter*/
.elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
    position: relative;
    display: inline-flex;
    z-index: 0;
}
@media(max-width:768px){
	.elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
	    margin-top: 0px;
	    width: 100%;
	    justify-content: center;
	}
}

.elementor-field-type-acceptance.elementor-field-group.elementor-column.elementor-field-group-field_5b38c3e.elementor-col-66.elementor-field-required {
    z-index: 10;
}


/*  swiper cards nuova home */

.swiper-cards-wrapper {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding: 0px;
    }

    .swiper-cards-wrapper .swiper {
        width: 100%;
        padding: 50px 0;
    }

    .swiper-cards-wrapper .swiper-slide {
        width: 90%;
        height: 600px;
        border-radius: 24px;
        position: relative;
        transition: all 0.3s ease;
            padding-bottom: 40px;
    }

    .swiper-cards-wrapper .card {
        width: 100%;
        height: 100%;
        border-radius: 24px;
        padding: 120px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        position: relative;
        overflow: visible;
        cursor: pointer;
        transition: transform 0.3s ease;
        color: rgba(0, 0, 0, 0.8);
    }

    .swiper-cards-wrapper .card:hover {
/*         transform: translateY(-5px); */
    }

    .swiper-cards-wrapper .card-arancione {
        background:var(--arancione-chiaro);
    }

    .swiper-cards-wrapper .card-verde {
        background:var(--verde-chiaro);
    }

    .swiper-cards-wrapper .card-viola {
        background:var(--viola-chiaro);
    }
    
    .swiper-cards-wrapper .card-arancione .card-button{
        border-color:var(--arancione-scuro);
    }

    .swiper-cards-wrapper .card-verde .card-button{
        border-color:var(--verde-scuro);
    }

    .swiper-cards-wrapper .card-viola .card-button{
        border-color:var(--viola-scuro);
    }



    .swiper-cards-wrapper .card-title {
        font-size: 48px;
        font-weight: 600;
        color: #101720;
        margin:0 0 60px;
    }

    .swiper-cards-wrapper .card-description {
        font-size: 32px;
        color: #101720;
        line-height: 1;
        margin-bottom: 20px;
    }
        
    .swiper-cards-wrapper .card-cont {
        width:40%
    }

    .swiper-cards-wrapper .card-icon {
        opacity: 1;
        width: 40%;
    }

    .swiper-cards-wrapper .card-icon img {
        width: 100%;
        height: 100%;
        opacity: .5;
        mix-blend-mode: hard-light;
    }

    .swiper-cards-wrapper .card-button {
        background: white;
        border-bottom: 3px solid;
        color:#101720;
        padding: 10px 20px;
        border-radius: 0px;
        font-size: 20px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        align-self: flex-start;
        text-decoration: none;
        display: inline-block;
        position: absolute;
        bottom: -20px;
        z-index: 200;
        left: 50%;
        transform: translateX(-50%);
        text-transform: uppercase
    }

    .swiper-cards-wrapper .card-button:hover {


    }

    .swiper-cards-wrapper .swiper-pagination {
        bottom: 0 !important;
    }

    .swiper-cards-wrapper .swiper-pagination-bullet {
        width: 16px;
        height: 16px;
        background: rgba(0, 0, 0, 0.3);
        opacity: 1;
    }

    .swiper-cards-wrapper .swiper-pagination-bullet-active {
        background: var(--color-blue);
        
    }


    .swiper-cards-wrapper .swiper-button-next,
    .swiper-cards-wrapper .swiper-button-prev {
        color: #333;
        width: 40px;
        height: 40px;
        background: rgba(255, 255, 255, 0.9);
        border-radius: 50%;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    }

    .swiper-cards-wrapper .swiper-button-next:after,
    .swiper-cards-wrapper .swiper-button-prev:after {
        font-size: 18px;
    }

    .swiper-cards-wrapper .header {
        text-align: center;
        margin-bottom: 50px;
    }

    .swiper-cards-wrapper .header h2 {
        font-size: 36px;
        margin-bottom: 10px;
        color: #333;
    }

    .swiper-cards-wrapper .header p {
        font-size: 18px;
        color: #666;
    }
    .swiper-creative .swiper-pagination {
	    width: 90%!important;
	}
	




    @media (max-width: 640px) {
        .swiper-cards-wrapper .swiper-slide {
            width: 280px;
            height: 180px;
        }

        .swiper-cards-wrapper .card {
            padding: 20px;
        }

        .swiper-cards-wrapper .card-title {
            font-size: 20px;
        }

        .swiper-cards-wrapper .header h2 {
            font-size: 28px;
        }
    }