/* BASIC STYLING */
html, body {
	overflow-x: hidden !important;
}
.cursor-pointer {
  cursor: pointer !important;
}

p {
	margin-bottom: 0 !important;
}

.d-none {
	display: none !important;
}
.d-block {
	display: block !important;
}

#wp-admin-bar-root-default > li:not(#wp-admin-bar-site-name):not(#wp-admin-bar-delete-cache) {
	display: none;
}

/* INIZIO STYLING CSS */
/* INIZIO STYLING CSS */
/* INIZIO STYLING CSS */
.testo-500 {
	font-weight: 500;
}
.testo-600 {
	font-weight: 600;
}
.blu {
	color: #1551C3 !important;
}
.arrow-btn .elementor-button-icon {
	transform: scale(1.5);
}


/* HEADER -- HEADER */
.menu-header > nav > button.e-n-menu-toggle {
	background: none !important;
}
.menu-header > nav > .e-n-menu-wrapper {
	
}
/* LOOP CATEGORIE CATALOGHI HEADER */
.popup-offcanvas-menu .cat-specops .singolo-catalogo,
.menu-header .cat-specops .singolo-catalogo {
	background-color: #181A1C !important;
}
.popup-offcanvas-menu .cat-diving .singolo-catalogo,
.menu-header .cat-diving .singolo-catalogo {
	background-color: #1551C3 !important;
}
.popup-offcanvas-menu .cat-industrial .singolo-catalogo,
.menu-header .cat-industrial .singolo-catalogo {
	background-color: #f5f5f5 !important;
}
.popup-offcanvas-menu .cat-industrial .singolo-catalogo h2 a,
.menu-header .cat-industrial .singolo-catalogo h2 a,
.popup-offcanvas-menu .cat-industrial .singolo-catalogo h2 a:hover,
.menu-header .cat-industrial .singolo-catalogo h2 a:hover {
	color: #181A1C !important;
}
.popup-offcanvas-menu .cat-medical .singolo-catalogo,
.menu-header .cat-medical .singolo-catalogo {
	background-color: #ffffff !important;
	border: solid 1px #565c6180 !important;
}
.popup-offcanvas-menu .cat-medical .singolo-catalogo h2 a,
.menu-header .cat-medical .singolo-catalogo h2 a {
	color: #181A1C !important;
}
.popup-offcanvas-menu .cat-medical .singolo-catalogo .elementor-button-link,
.menu-header .cat-medical .singolo-catalogo .elementor-button-link {
	background-color: #1551C3 !important;
}
.popup-offcanvas-menu .cat-medical .singolo-catalogo .elementor-button-link svg path,
.menu-header .cat-medical .singolo-catalogo .elementor-button-link svg path {
	stroke: #fff !important
}


/* FORM CONTATTO */
.formcontatto select {
	font-size: 16px !important;
	color: #9a9da0 !important;
}
/* Label Privacy */
.formcontatto .elementor-field-group-privacylabel  > .elementor-field-subgroup > .elementor-field-option {
	display: flex;
    flex-direction: row;
    gap: 12px;
}
.formcontatto #form-field-privacylabel {
	height: 18px;
    width: 18px;
    min-width: 18px;
}
.formcontatto #form-field-privacylabel + label {
	font-size: 12px;
    line-height: 16px;
    display: inline-block;
}
.formcontatto .elementor-field-type-select .elementor-field {
  	-webkit-appearance: none !important; /* Chrome, Safari, Edge */
  	-moz-appearance: none !important;    /* Firefox */
  	appearance: none !important;
}
.formcontatto .elementor-field-type-select .elementor-field .select-caret-down-wrapper {
	display: none;
}
.formcontatto .elementor-field-type-select .elementor-field::after {
	background-image: url("https://www.sanosub.com/wp-content/uploads/arrow-down.svg");
    background-repeat: no-repeat;
    background-position: center center;
	background-size: 100%;
	content: "";
	width: 20px;
    height: 20px;
    right: 14px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: auto;
    position: absolute;
}
.formcontatto .elementor-field-type-html {
	padding: 24px;
    background: #fff;
    border-radius: 24px;
    max-width: calc(100% - 24px);
    position: relative;
    left: 12px;
	display: none;
}




/*AREA DOWNLOAD*/
#downloads-filters #downloads-search {
	margin-bottom: 32px;
}
#downloads-filters .filter-wrappers {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}
#downloads-filters .filter-wrappers .cpt-filters,
#downloads-filters .filter-wrappers .lang-filters {
	flex-direction: row;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 8px;
}
#downloads-filters .filter-wrappers .lang-filters {
	justify-content: end;
}
#downloads-filters .filter-btn,
#downloads-filters .lang-btn {
	display: flex;
	gap: 8px;
	border: solid 1px #565C61B2;
	background: transparent;
	color: #1551c3;
	transition: .3s;
}
#downloads-filters .filter-btn.active,
#downloads-filters .lang-btn.active,
#downloads-filters .filter-btn:hover,
#downloads-filters .lang-btn:hover {
	background: #fff;
	border: solid 1px #1551c3;
}
#downloads-filters .filter-btn img {
	width: 24px;
	height: 24px;
}

#downloads-list {
	display: flex;
    flex-direction: row;
    align-items: start;
    justify-content: start;
    gap: 16px;
	flex-wrap: wrap;
}
#downloads-list .elemento-download {
	padding: 32px;
    display: flex;
    background: #fff;
    border-radius: 24px;
    width: calc(25% - 12px);
    flex-direction: column;
    min-height: 240px;
    justify-content: space-between;
}
#downloads-list .elemento-download .doc-titolo {
	color: #1551c3;
    line-height: 32px;
    font-size: 24px;
    font-weight: 500;
}
#downloads-list .elemento-download .doc-button {
	display: flex;
    flex-direction: row;
    justify-content: end;
    background: #1551c3;
    align-self: flex-end;
    padding: 10px;
    border-radius: 100px;
}
#downloads-loadmore {
	border: solid 1px #565C61B2;
	background: transparent;
	color: #1551c3;
	transition: .3s;
	margin-top: 32px;
	
}
#downloads-loadmore:hover {
	background: #fff;
	border: solid 1px #1551c3;
}

/* Animazioni */
/* Nasconde di default Load More */
#downloads-loadmore {
  display: none;
}

/* Messaggio “no results” */
#downloads-list .no-results {
  text-align: center;
  font-size: 1.1rem;
  color: #666;
  padding: 2rem 0;
}

/* Animazioni */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0);    }
}
@keyframes fadeOutDown {
  from { opacity: 1; transform: translateY(0);    }
  to   { opacity: 0; transform: translateY(20px); }
}

.fade-in-up    { animation: fadeInUp    0.5s forwards; }
.fade-out-down { animation: fadeOutDown 0.4s forwards; }


/* FOOTER */
.selettore-lingua .cpel-switcher__icon {
	display:none !important;
}
.elementor-location-header .cpel-switcher__toggle,
.elementor-location-footer .cpel-switcher__toggle {
	padding-right: 34px;
    position: relative;
}
.elementor-location-header .selettore-lingua .cpel-switcher__toggle::before,
.elementor-location-footer .selettore-lingua .cpel-switcher__toggle::before {
	content: "";
    width: 24px;
    right: 0;
    top: 0;
    position: absolute;
    bottom: 0;
    margin: auto;
    height: 24px;
    background-image: url(https://www.sanosub.com/wp-content/uploads/arrow-down-white.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
	transition: .3s;
}
.elementor-location-header .selettore-lingua .cpel-switcher__toggle::before {
	background-image: url(https://www.sanosub.com/wp-content/uploads/arrow-down.png);
}
.elementor-location-header .selettore-lingua .cpel-switcher__toggle.cpel-switcher__toggle--on::before,
.elementor-location-footer .selettore-lingua .cpel-switcher__toggle.cpel-switcher__toggle--on::before,
.elementor-location-header .selettore-lingua .cpel-switcher__toggle:hover::before,
.elementor-location-footer .selettore-lingua .cpel-switcher__toggle:hover::before {
	transform: rotate(-180deg);
}

@media(max-width: 1023px){
	#downloads-filters .filter-wrappers {
		flex-direction: column-reverse;
		gap: 24px;
		align-items: flex-start;
	}
	#downloads-filters .filter-wrappers > .cpt-filters {
		flex-wrap: wrap;
	}
	#downloads-filters .filter-wrappers > .cpt-filters > button {
		padding: 6px 8px !important;
		gap: 4px;
	}
	#downloads-filters .lang-btn {
		padding: 8px 16px !important;
	}
	
	#downloads-list .elemento-download {
		padding: 16px;
        min-height: 180px;
        width: calc(33% - 10px);
	}
}
@media(max-width: 767px){
	#downloads-filters {
		display: flex;
    	flex-direction: column;
	}
	#downloads-filters #downloads-search {
		margin-bottom: 0;
   	 	order: 1;
	}
	#downloads-filters .filter-wrappers {
		margin-bottom: 24px;
		order: 0;
		gap: 24px;
		flex-direction: column;
	}
	#downloads-filters .filter-wrappers .lang-filters {
		flex-wrap: wrap;
    	justify-content: start;
	}
	#downloads-filters .filter-wrappers .lang-filters .lang-label {
		display: block;
		width: 100%;
		font-size: 16px;
		line-height: 24px;
	}
	#downloads-list .elemento-download {
		width: calc(50% - 8px);
		min-height: 150px;
	}
	#downloads-list .elemento-download .doc-titolo {
		font-size: 18px;
		line-height: 22px;
	}
}




/* PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO */
/* PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO */
/* PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO -- PRODOTTO */

/* 1) Griglia prodotti */
.prodotti-list {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 1.5rem;
}

/* 2) Comparatore fisso (slider) */
.confrontatore-fixed {
  	position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    padding: 32px;
    box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.05);
    transition: transform .3s;
    border-radius: 24px 24px 0 0;
	z-index: 99999999;
	
}
.confrontatore-fixed.empty {
  transform: translateY(100%);
}

/* 3) Swiper base */
.swiper-container { position: relative; }
.swiper-wrapper   { display: flex; }
.swiper-slide     { width: auto; }

/* 4) Mini schede */
.confr-item {
  background: #f5f5f5;
    border-radius: 24px;
    padding: 24px;
	display: flex !important;
    align-items: start;
    gap: 16px;
}
.confr-item .mini-img {
	width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 16px;
	background: #fff;
}
.confr-item .mini-title {
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}
.confr-item .mini-info-wrapper {
	display: flex ;
    flex-direction: column;
    max-width: calc(100% - 110px);
	gap: 8px;
}
.confr-item .mini-info-wrapper .mini-cats-container {
	display: flex;
    flex-direction: row;
    gap: 6px;
    flex-wrap: wrap;
    overflow-x: visible;
    max-width: 100%;
    align-items: start;
    justify-content: flex-start;
}
.confr-item .categoria-prodotto-comparatore {
	font-size: 12px;
    line-height: 14px;
    border-radius: 5px;
    border: solid 1px #565C61;
    padding: 8px;
    font-weight: 600;
    color: #1551C3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
	display: none;
}
.confr-item .categoria-prodotto-comparatore:first-child, .confr-item .categoria-prodotto-comparatore:nth-child(2), .confr-item .categoria-prodotto-comparatore:nth-child(3) {
	display: block;
}
.confr-item .mini-remove {
	background: none !important;
	padding: 0 !important;
	border: none !important;
	width: 20px;
	height: 20px;
}

/* 5) Nascondi box fisso in Contatti (slug) */
body.elementor-page-contatti #confrontatore,
body.elementor-page-contact-us #confrontatore {
  display: none !important;
}

/* 6) Slider dentro il form Contatti */
#confrontatore_form {
  width: 100%;
  margin-bottom: 32px;
  overflow: hidden;
}
#confrontatore_form + .swiper-pagination {
  text-align: center;
  margin-top: .5rem;
}



#prodotti-list {
	display: flex;
    flex-direction: row;
/*  align-items: start; */
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 16px;
}
#prodotti-list .singolo-prodotto {
	width: calc(33% - 8px);
    padding: 16px;
    background: #fff;
    border-radius: 24px;
	border: solid 2px #fff;
	transition: .3s;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
#prodotti-list .singolo-prodotto.selezionato {
	border: solid 2px #1551C3;
}
#prodotti-list .singolo-prodotto img {
	height: 300px;
    object-fit: contain;
    border-radius: 24px;
	width: 100%;
    background: #f5f5f5;
	padding: 10px;
}
#prodotti-list .singolo-prodotto .product-title {
	font-size: 24px;
	line-height: 32px;
	font-weight: 600;
	color: #181A1C;
	margin-bottom: 16px !important;
}
#prodotti-list .singolo-prodotto .product-desc, #prodotti-list .singolo-prodotto a {
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	color: #181A1C;
	display: block;
	margin-bottom: 16px !important;
}
#prodotti-list .singolo-prodotto a {
	color: #1551C3;
	text-decoration: underline;
	font-weight: 600;
}
#prodotti-list .singolo-prodotto .product-button {
	width: 100%;
    margin-top: 28px;
    border: solid 2px transparent;
    transition: .3s;
}
#prodotti-list .singolo-prodotto.selezionato .product-button {
	background: #DFE6FF;
    color: #1551C3;
}
#prodotti-list .singolo-prodotto.selezionato {
	position: relative;
}
#prodotti-list .singolo-prodotto.selezionato::before {
	position: absolute;
	content: "";
	width: 48px;
	height: 48px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url("https://www.sanosub.com/wp-content/uploads/Primary.png");
	left: 32px;
	top: 32px;
}

@media(max-width: 1023px){
	#prodotti-list .singolo-prodotto .product-title {
		font-size: 20px;
		line-height: 28px;
	}
}
@media(max-width: 767px){
	#prodotti-list .singolo-prodotto .product-desc, #prodotti-list .singolo-prodotto a {
		font-size: 14px;
		line-height: 20px;
	}
}

.confrontatore-header {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.confrontatore-toggle {
  transition: transform 0.3s ease;
	width: 24px;
	height: 24px;
}

.confr-item.fade-in-up {
  animation: fadeInUp 0.5s ease-out;
}

.confr-item.fade-out-down {
  animation: fadeOutDown 0.5s ease-out;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(20px);
  }
}

.confrontatore-navigation .swiper-button-prev,
.confrontatore-navigation .swiper-button-next {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 0 5px;
}
.confrontatore-navigation .swiper-button-prev svg path,
.confrontatore-navigation .swiper-button-next svg path {
	fill: transparent !important;
}

#confrontatore .confrontatore-header,
#confrontatore .confrontatore-content{
	max-width: 100%;
	width: 1440px;
	margin: auto;
}
#confrontatore.confrontatore-fixed .confrontatore-content {
	transition: .3s;
	height: 220px;
    min-height: 220px;
    overflow: visible;
    position: relative;
    z-index: 0;
	margin-top: 24px;
	overflow: hidden;
}
#confrontatore.confrontatore-fixed.closed .confrontatore-content {
	height: 0;
    z-index: -1;
	margin-top: 0;
	min-height: 0;
}

#confrontatore .last-row-wrap {
	display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
	margin-top: 24px;
}
#confrontatore-clear {
	padding: 12px 30px 12px 30px;
    font-family: var(--e-global-typography-a736bb0-font-family), Sans-serif;
    font-size: var(--e-global-typography-a736bb0-font-size);
    font-weight: var(--e-global-typography-a736bb0-font-weight);
    line-height: var(--e-global-typography-a736bb0-line-height);
    color: #1651c3;
    border-radius: 100px 100px 100px 100px;
}
#confrontatore-request {
	border: none !important;
}
.last-row-wrap .confrontatore-navigation {
	display: flex;
    flex-direction: row;
    gap: 16px;
}
.confrontatore-navigation .swiper-button-prev, .confrontatore-navigation .swiper-button-next {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    display: inline-block;
    width: 44px;
    height: 44px;
    margin: 0 5px;
    padding: 0;
    border: none !important;
}
.confrontatore-navigation .swiper-button-prev::after, .confrontatore-navigation .swiper-button-next::after {
	content: "";
    background-image: url(https://www.sanosub.com/wp-content/uploads/slider-dx.png);
    background-position: center;
    background-size: 24px;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
}
.confrontatore-navigation .swiper-button-prev::after {
	background-image: url(https://www.sanosub.com/wp-content/uploads/slider-sx.png);
}
.confrontatore-navigation .swiper-button-prev svg path,
.confrontatore-navigation .swiper-button-next svg path {
	fill: transparent !important;
}


@media(max-width: 767px){
	#confrontatore.confrontatore-fixed .confrontatore-content .last-row-wrap {
		flex-direction: column;
	}
	#confrontatore.confrontatore-fixed .confrontatore-content .last-row-wrap .confrontatore-navigation {
		width: 100%;
    	justify-content: space-between;
	}
	#confrontatore.confrontatore-fixed .confrontatore-content .last-row-wrap .confrontatore-actions {
		margin-top: 16px;
		display: flex;
		flex-direction: row;
		align-items: center;
		width: 100%;
		justify-content: space-between;
	}
	#confrontatore.confrontatore-fixed .confrontatore-content .last-row-wrap .confrontatore-actions #confrontatore-clear {
		padding: 10px;
	}
	
}

/* LISTA PRODOTTI */
@media(max-width: 1023px){
	#prodotti-list .singolo-prodotto {
		width: calc(50% - 8px);
	}
}
@media(max-width: 767px){
	#prodotti-list .singolo-prodotto {
		width: 100%;
	}
	#prodotti-list .singolo-prodotto .product-button {
		padding: 12px;
	}
	#confrontatore.confrontatore-fixed .confrontatore-content {
		height: 250px;
		min-height: 250px;
	}
	#confrontatore .confrontatore-content.mostra-nav {
		height: 290px;
		min-height: 290px;
	}
}

/* PAGINA CONTATTI */
.accordion-faqs > .e-n-accordion > details > summary {
	transition: .3s;
}
.accordion-faqs > .e-n-accordion > details > summary[aria-expanded="true"]{
	border-radius: 24px 24px 0 0 !important;
}
.accordion-faqs > .e-n-accordion > details > summary[aria-expanded="false"] + {
	border-radius: 24px 24px 0 0 !important;
}


.titolo-html-form-contatti {
	color: #565C61;
}

.formcontatto .form-confrontatore-title {
	margin-bottom: 24px !important;
}

.formcontatto .wrapper-pagination-full {
	display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 4px);
    margin-bottom: 24px;
}
.formcontatto .form-confrontatore-navigation {
	display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
	z-index: 11;
}
.formcontatto .form-confrontatore-navigation > button {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    display: inline-block;
    width: 44px;
    height: 44px;
    margin: 0 5px;
    padding: 0;
    border: none !important;
}
.formcontatto .form-confrontatore-navigation button.swiper-button-prev::after,
.formcontatto .form-confrontatore-navigation button.swiper-button-next::after {
    content: "";
    background-image: url(https://www.sanosub.com/wp-content/uploads/slider-dx.png);
    background-position: center;
    background-size: 24px;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
}
.formcontatto .form-confrontatore-navigation button.swiper-button-prev::after {
	background-image: url(https://www.sanosub.com/wp-content/uploads/slider-sx.png);
}
.formcontatto .form-confrontatore-navigation button.swiper-button-prev svg path,
.formcontatto .form-confrontatore-navigation button.swiper-button-next svg path {
	fill: transparent !important;
}
.formcontatto .wrapper-pagination-dx > .swiper-pagination {
	bottom: 38px;
}
.formcontatto .wrapper-pagination-dx .form-confrontatore-clear {
	font-size: 16px;
	line-height: 24px;
	color: #1551C3;
	text-decoration: underline;
	font-weight: 600;
	z-index: 11;
    position: relative;
}


/* Hover card dei settori */
.elemento-hover, .elemento-hover .title-sector, .elemento-hover .desc-sector {
	transition: .3s;
}
.elemento-hover .title-sector,.elemento-hover .title-sector + div {
	z-index: 2;
}
/* Immagine di sfondo */
.elemento-hover::before {
	z-index: 0;
}
.elemento-hover:hover::before {
	opacity: 1;
}
.elemento-hover .wrap-descbtn-sector {
	height: 50px;
	overflow: hidden;
}
.elemento-hover.largebox .desc-sector {
	margin-top: 11px;
}


@media(min-width: 768px){
	.elemento-hover.largebox {
		min-height: 453px;
	}
	.elemento-hover:hover .title-sector {
		margin-bottom: 16px !important;
	}
	.elemento-hover .desc-sector {
		margin-top: 0;
	}
	.elemento-hover:hover .desc-sector {
		margin-top: -62px !important;
	}
	.elemento-hover.largebox:hover .desc-sector {
		margin-top: -39px !important;
	}
	.elemento-hover.light:hover .title-sector *{
		color: #fff !important;
	}
}

.elemento-hover::after {
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(180.1deg, rgba(20, 106, 215, 0) 66.47%, #146AD7 98.44%);
	transition: .3s;
	border-radius: 24px;
	opacity: 0;
	z-index: 1;
}
.elemento-hover:hover::after {
	opacity: 1;
}
@media(max-width: 767px){
	.elemento-hover::before, .elemento-hover::after {
		opacity: 0 !important;
	}
	.elemento-hover .wrap-descbtn-sector {
    	height: auto;
	}
	.elemento-hover .arrow-btn {
    	display: none !important;
	}
}
.elemento-hover.industrial {
	background-image: url(https://www.sanosub.com/wp-content/uploads/sfondo-largebox-big-home.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
}
.elemento-hover.industrial-small {
	background-image: url(https://www.sanosub.com/wp-content/uploads/sfondo-largebox-small.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
}
@media(max-width: 1024px){
	.elemento-hover.largebox .desc-sector {
		margin-top: 0;
	}
	.elemento-hover.largebox:hover .desc-sector {
        margin-top: -63px !important;
    }
}
@media(max-width: 767px){
	.elemento-hover.largebox:hover .desc-sector {
        margin-top: 0 !important;
    }
	.elemento-hover .btn-medicale .elementor-button {
		background-color: var(--e-global-color-secondary);
	}
}

/* ===== TIMELINE HISTORY === TIMELINE HISTORY ===== TIMELINE HISTORY ==== */
/* ===== TIMELINE HISTORY === TIMELINE HISTORY ===== TIMELINE HISTORY ==== */
/* ===== TIMELINE HISTORY === TIMELINE HISTORY ===== TIMELINE HISTORY ==== */
/* ===== Layout & Cards ===== */
.tl-wrap{
	--tl-blue:#1E63D9;
	--tl-radius:22px;
	--tl-gap:18px;
	--tl-card-bg:#fff;
	--tl-card-br:#e8e8ee;
	--tl-shadow:0 2px 10px rgba(16,24,40,.06);
	--tl-speed:450ms;
	display:grid;
	grid-template-columns: 1fr 1fr 1.5fr;
	gap:var(--tl-gap);
	align-items:start;
}
.tl-col {
	position:relative;
}
.tl-card{
	background:var(--tl-card-bg);
	border:1px solid var(--tl-card-br);
	border-radius:var(--tl-radius);
	box-shadow:var(--tl-shadow);
	overflow:hidden;
}
.tl-img img,
.tl-logo img {
	display:block;
	width:100%;
	height:auto;
}

.tl-img-left {
	margin-top:12px;
}
.tl-logo{
	padding:0; 
	display:flex; 
	align-items:center; 
	justify-content:center;
	object-fit: contain;
}
.tl-logo img{ 
	max-width: 85%;
    height: 85%;
    object-fit: contain;
    object-position: center center;
}

/* ===== Date block ===== */
.tl-date{
	background:var(--tl-blue);
	color:#fff;
	border-radius:var(--tl-radius);
	padding:22px 26px;
	font-size: clamp(40px, 5.8vw, 96px);
	line-height:1;
	font-weight:700;
	letter-spacing:1px;
}

.tl-date-roller{
	position:relative;
	overflow:hidden;
}
.tl-date-item{ display:block; }

/* ===== Colonna 3: nav + testo + dots ===== */
.tl-col-3{
	background: #fff;
	padding: 32px;
	border-radius: 24px;
	border: 1px solid #565c6180;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: 100%;
}

/* Nav in alto a destra */
.tl-nav{
	position:absolute;
	top:32px;
	right:32px;
	display:flex;
	gap: 16px;
	z-index:1;
}
.tl-arrow:disabled{ opacity:.45; cursor:default; }

.tl-nav > button {
	width:44px;
	height:44px;
	padding: 0 !important;
	position: relative;
	border: none !important;
}
.tl-nav > button::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url("https://www.sanosub.com/wp-content/uploads/slider-dx.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	width: 24px;
	height: 24px;
}
.tl-nav > button.tl-prev::before {
	transform: rotate(180deg);
}
/* Testi */
/*.tl-text-roller{ position:relative; overflow:hidden; min-height: 260px; padding-right:68px; }
.tl-text-block{ position:absolute; inset:0; opacity:0; }*/

/* Dots */
.tl-dots{ margin-top:18px; }
.tl-dots .swiper-pagination-bullet{
	width:8px; height:8px; background:#c9d3ef; opacity:1; margin:0 3px !important;
}
.tl-dots .swiper-pagination-bullet-active{ background:var(--tl-blue); }

/* ===== Animazioni di transizione ===== */
/* Date vertical swap */
.tl-vert-container{ position:relative; overflow:hidden; }
.tl-vert{ position:absolute; left:0; right:0; transition: transform var(--tl-speed) ease, opacity var(--tl-speed) ease; }
.tl-enter-top{ transform:translateY(-120%); opacity:0; }
.tl-enter-bottom{ transform:translateY(120%); opacity:0; }
.tl-exit-top{ transform:translateY(-120%); opacity:0; }
.tl-exit-bottom{ transform:translateY(120%); opacity:0; }
.tl-to-center{ transform:translateY(0); opacity:1; }

/* Text horizontal swap */
.tl-enter-left{ transform:translateX(-6%); opacity:0; }
.tl-enter-right{ transform:translateX(6%); opacity:0; }
.tl-exit-left{ transform:translateX(-6%); opacity:0; }
.tl-exit-right{ transform:translateX(6%); opacity:0; }
.tl-to-center-h{ transform:translateX(0); opacity:1; transition: transform var(--tl-speed) ease, opacity var(--tl-speed) ease; }

/* Images fade */
.tl-fade{ transition: opacity var(--tl-speed) ease; }
.tl-fade-hide{ opacity:0; }

/* ===== Animazione in apertura (fade-in-up in sequenza) ===== */
.tl-reveal{ opacity:0; transform: translateY(14px); }
.tl-reveal.in{ opacity:1; transform:none; transition: all 520ms cubic-bezier(.2,.65,.25,1); }

/* ===== Responsive ===== */
@media (max-width:1023px){
	.tl-wrap{
		grid-template-columns: 1fr;
	}
	.tl-col-3{ order:1; }
	.tl-col-1{ order:2; }
	.tl-col-2{ display:none; } /* nascosta su mobile come richiesto */

	/* immagine full visibile su mobile, split nascosto */
	.tl-img-left, .tl-img-right{ display:none; }
	.tl-img-full{ display:block; margin-top:12px; }
}

/* Desktop: l'immagine full è nascosta */
@media (min-width:1024px){
	.tl-img-full{ display:none; }
}

/* Media per controllare altezze immagine (modifica a piacere) */
.tl-img-left img, .tl-img-right img, .tl-img-full img{
	width:100%;
	height: 520px;
	object-fit: cover;
	border-radius: 24px;
	box-shadow: none !important;
	border: none !important;
}

/* == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO */
/* == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO */
/* == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO == == CUSTOM CSS MIO */

/* Box Data */
#timeline-story .tl-date, #timeline-story-it .tl-date {
	padding: 40px;
	border-radius: 24px !important;
	margin-bottom: 16px;
	height: 180px;
	background: #1551c3 !important;
	color: #fff;
	box-shadow: none !important;
	border: none !important;
	text-align: center;
    font-size: 112px;
    line-height: 88px;
    font-weight: 500;
}

/* Imgs */
#timeline-story-it .tl-img-left img,
#timeline-story .tl-img-left img {
	object-position: left center;
}
#timeline-story-it .tl-img-right img,
#timeline-story .tl-img-right img {
	object-position: right center;
}
#timeline-story-it .tl-img-left,
#timeline-story-it .tl-img-right,
#timeline-story-it .tl-img-full,
#timeline-story .tl-img-left,
#timeline-story .tl-img-right,
#timeline-story .tl-img-full {
	border-radius: 24px;
	box-shadow: none !important;
	border: none !important;
}
/* Box Logo */
#timeline-story-it .tl-logo,
#timeline-story .tl-logo {
	margin-top: 16px;
	height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	border-radius: 24px;
	box-shadow: none !important;
	border: 1px solid #565c6180;
}
/* Titolo e Testo */
#timeline-story-it .tl-title,
#timeline-story .tl-title {
	margin-bottom: 32px;
}
#timeline-story-it .tl-desc,
#timeline-story .tl-desc {
	font-size: var(--e-global-typography-a742f01-font-size);
	line-height: var(--e-global-typography-a742f01-line-height);
	font-weight: var(--e-global-typography-a742f01-font-weight);
}
#timeline-story-it .tl-text-block,
#timeline-story .tl-text-block {
	display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
}
#timeline-story-it .swiper-pagination-bullet,
#timeline-story .swiper-pagination-bullet {
	background: #fff;
    border: solid 1px #1551c3;
	border-radius: 100px;
	transition: .3s;
}
#timeline-story-it .swiper-pagination-bullet:hover,
#timeline-story .swiper-pagination-bullet:hover {
	background: #1551c3;
	border: solid 1px #1551c3;
}
#timeline-story-it .swiper-pagination-bullet.swiper-pagination-bullet-active,
#timeline-story .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #1551c3;
	border: solid 1px #1551c3;
	width: 20px;
}

/* Media Query */
@media (max-width:1023px){
	/* Box Data */
	#timeline-story-it .tl-date,
	#timeline-story .tl-date {
		padding: 24px;
		height: auto;
	}
	#timeline-story-it .tl-date .tl-date-item,
	#timeline-story .tl-date .tl-date-item {
		font-size: 112px;
		line-height: 88px;
	}
	/* Img Full*/
	.tl-img-full img{
		height: 330px;
	}
	/* Titolo e Testo */
	#timeline-story-it .tl-title,
	#timeline-story .tl-title {
		margin-bottom: 24px;
	}
	#timeline-story-it .tl-col-3,
	#timeline-story .tl-col-3 {
		padding: 24px;
		min-height: 260px;
	}
	#timeline-story-it .tl-col-3 .tl-nav,
	#timeline-story .tl-col-3 .tl-nav {
		top: auto;
		bottom: 12px;
		right: 24px;
	}
}
@media (max-width:767px){
	/* Box Data */
	#timeline-story-it .tl-date-roller,
	#timeline-story .tl-date-roller {
		font-size: 90px;
		line-height: 96px;
	}
	#timeline-story-it .tl-date .tl-date-item,
	#timeline-story .tl-date .tl-date-item {
		font-size: 90px;
		line-height: 96px;
	}
}

.elementor-message {
	padding: 16px;
    border-radius: 16px;
    background: #fff;
    margin-top: 24px;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}
.elementor-message.elementor-message-success {
	color: #11912e;
}
.elementor-message.elementor-message-danger {
	background: #ffe5e5;
}
.elementor-message.elementor-message-danger.elementor-help-inline {
	position: absolute;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    z-index: 999;
    background: #ffe5e5;
    width: 50%;
    right: 12px;
    top: -20px;
}





:root { --oc-left: 270px; }

/* WRAP */
.popup-offcanvas-menu.elementor-popup-modal .oc-wrap{
	position: relative;
	display: flex;
	overflow: hidden;
}

/* COLONNA SINISTRA (LISTA) */
.popup-offcanvas-menu.elementor-popup-modal .oc-left{
	width: var(--oc-left);
	transform: translateX(0);
	transition: transform .35s ease, opacity .35s ease;
	z-index: 2; /* sopra la destra quando in lista */
	background: var(--e-global-color-background, #fff); /* evita trasparenze */
	width: 100%;
	height: calc(100vh - 160px);
}

/* COLONNA DESTRA (PANNELLI) - parte off-screen a destra */
.popup-offcanvas-menu.elementor-popup-modal .oc-right{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	overflow: auto;
	overflow-x: hidden;
	-ms-overflow-style: none;  /* Internet Explorer 10+ */
	scrollbar-width: none;  /* Firefox, Safari 18.2+, Chromium 121+ */
	transform: translateX(100%);
	transition: transform .35s ease;
	z-index: 1;
	background: var(--e-global-color-background, #fff);
}
.popup-offcanvas-menu.elementor-popup-modal .oc-right::-webkit-scrollbar {
	display: none;  /* Older Safari and Chromium */
	background: transparent;  /* Optional: just make scrollbar invisible */
	opacity: 0;
}

/* STATO DETTAGLIO: lista esce a sinistra, pannelli entrano da destra */
.popup-offcanvas-menu.elementor-popup-modal .oc-wrap.detail-mode .oc-left{
	transform: translateX(-100%);
}
.popup-offcanvas-menu.elementor-popup-modal .oc-wrap.detail-mode .oc-right{
	transform: translateX(0);
}

/* PANNELLI (switch interno) */
.popup-offcanvas-menu.elementor-popup-modal .panel{
	position: absolute;
	inset: 0;
	opacity: 0;
	/* transform: translateX(20%);*/
	pointer-events: none;
	transition: transform .35s ease, opacity .35s ease;
	z-index: 1;
}
.popup-offcanvas-menu.elementor-popup-modal .panel.active{
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto;
}
.popup-offcanvas-menu.elementor-popup-modal .panel.leaving{
	opacity: 0;
	transform: translateX(-12%);
}

/* BACK SEMPRE CLICCABILE SOPRA AI PANNELLI */
.popup-offcanvas-menu.elementor-popup-modal .oc-back{
	z-index: 9;
	margin-top: 15px;
}

/* Responsive fine */
/*@media (max-width: 767px){
	:root { --oc-left: 240px; }
} */

@media (max-width: 767px){
	.popup-offcanvas-menu.elementor-popup-modal .panel {
		inset: initial;
	}
	.popup-offcanvas-menu.elementor-popup-modal .panel:not(.active) {
		display: none;
	}
	.popup-offcanvas-menu .elementor-location-popup {
		height: 100%;
	}
	.popup-offcanvas-menu.elementor-popup-modal .oc-wrap {
		height: calc(100% - 44px);
	}
	.popup-offcanvas-menu.elementor-popup-modal .oc-left {
		height: auto;
	}
	.popup-offcanvas-menu.elementor-popup-modal .panel {
		padding-bottom: 128px;
	}
}



/* Animazione fade in up */
body:not(.elementor-editor-active) div[data-elementor-type="wp-page"] {
	opacity: 0;
	transition: opacity .3s;
}
body:not(.elementor-editor-active) div[data-elementor-type="wp-page"].mostra-body-fade {
	opacity: 1;
}


/* ---- WIDGET: stato iniziale */
body:not(.elementor-editor-active) .elementor-widget:not(.element-not-animated) {
  opacity: 0;
  transform: translateY(30px);
}

/* ---- WIDGET: stato animato */
body:not(.elementor-editor-active) .elementor-widget.in-view {
  animation: boxFadeInUp 0.8s ease forwards;
}

/* ---- Animazione widget (rinominata per evitare conflitti) */
@keyframes boxFadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ---- IMMAGINI: stato iniziale */
body:not(.elementor-editor-active) .box-img:not(.element-not-animated),
body:not(.elementor-editor-active) .elementor-element[data-element_type="container"][data-has-bg="true"]:not(.element-not-animated) {
  opacity: 0;
}

/* ---- IMMAGINI: stato animato */
body:not(.elementor-editor-active) .box-img.in-view,
body:not(.elementor-editor-active) .elementor-element[data-element_type="container"][data-has-bg="true"].in-view {
  animation: boxImgReveal 1s ease forwards;
}

/* ---- Animazione immagini (reveal) */
@keyframes boxImgReveal {
  from { opacity: 0; clip-path: inset(0 100% 0 0); } /* fallback da sinistra */
  to   { opacity: 1; clip-path: inset(0 0 0 0); }
}

/* Varianti direzione reveal; applicate via [data-direction] */
body:not(.elementor-editor-active) [data-direction="left"]   { clip-path: inset(0 100% 0 0); }
body:not(.elementor-editor-active) [data-direction="right"]  { clip-path: inset(0 0 0 100%); }
body:not(.elementor-editor-active) [data-direction="top"]    { clip-path: inset(100% 0 0 0); }
body:not(.elementor-editor-active) [data-direction="bottom"] { clip-path: inset(0 0 100% 0); }

/* (Opzionale) Accessibilità: riduci animazioni se preferito dal sistema */
@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active) .elementor-widget,
  body:not(.elementor-editor-active) .box-img,
  body:not(.elementor-editor-active) .elementor-element[data-element_type="container"][data-has-bg="true"] {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    clip-path: inset(0 0 0 0) !important;
  }
}

/* edits online 26-09-25 */
.filter-btn[data-type="cad"]{
	display: none !important;
}
@media(max-width: 767px){
	#confrontatore.confrontatore-fixed {
		padding: 24px;
	}
}
@media(max-width: 767px){
	.ios-safari #confrontatore.confrontatore-fixed {
		bottom: 10px;
		transform: translatey(0px) !important;
		left: 10px;
		right: 10px;
		max-width: calc(100% - 20px);
		border-radius: 24px;
		box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.15)
	}
}
@media(max-width: 767px){
	.topheader-custom {
		z-index: 99;
	}
	.topheader-custom li.cpel-switcher__lang > a > span.cpel-switcher__code {
		padding-right: 20px;
		padding-bottom: 2px;
		background: #f5f5f5;
		border-radius: 20px;
	}
}


.videosplash video {
	height: 430px !important;
	object-fit: contain !important;
}

.iubenda-tp-btn.iubenda-cs-preferences-link[data-tp-icon="data-tp-icon"][data-tp-float="bottom-right"][data-iub-enabled="1"] {
	bottom: 80px !important;
	transform: scale(0.75) !important;
	right: -15px !important;
}

/* MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO */
/* MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO */
/* MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO -- MODIFICA LOGO */
/* 291025 */
.elementor-widget-theme-site-logo > a > img {
	transform: scale(1.45);
    transform-origin: left;
}

.elementor-g-recaptcha .grecaptcha-badge,
.elementor-g-recaptcha .grecaptcha-badge:hover,
.elementor-g-recaptcha .grecaptcha-badge *:hover {
	position: static !important;
    margin-bottom: 20px !important;
}
.elementor-field-type-recaptcha_v3 > .elementor-field {
	background-color: transparent !important;
}
.elementor-field-group.elementor-field-type-submit {
	justify-content: flex-start !important;
}