@import url("https://use.typekit.net/hmi0kae.css");
@import url("https://use.typekit.net/hmi0kae.css");
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css');


h1, h2, h3, h4, h5 {
	font-family: degular, sans-serif;
	font-weight: 400; /* Definisce lo spessore 'normale' */
	font-style: normal; /* Definisce lo stile 'regolare' */
}

.h2_bridge h2 {
	color: #064787 !important;
	font-size: 40px !important;
	letter-spacing: 2px;
	font-weight: 600 !important;
}

.h1_bridge h1 {
	color: #064787 !important;
	font-size: 40px !important;
	letter-spacing: 2px;
	font-weight: 600 !important;
	text-transform: none !important;
	font-family: degular, sans-serif !important;
}

.h1.category-title {
	color: #064787 !important;
	font-size: 40px !important;
	letter-spacing: 2px;
	font-weight: 600 !important;
	text-transform: none !important;
}

.h2_bridge_white h2 {
	color: #ffffff !important;
	font-size: 40px !important;
	letter-spacing: 2px;
	font-weight: 600;
}

.h3_bridge_white h2 {
	color: #ffffff !important;
	font-size: 22px !important;
	font-weight: 600;
	letter-spacing: 1px;
}

html, body, div, p, span {
	font-family: "helvetica-neue-lt-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.elementor-cart__toggle .elementor-button-icon[data-counter]:before {
	top: -18px !important;
	right: 0 !important;
	font-size: 14px !important;
}

.btn-primary-bridge {
	background: #ffdd06 !important;
	border-radius: 30px !important;
	color: #064787 !important;
	font-size: 15px !important;
	margin: auto !important;
	text-align: center !important;
	padding: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 1px !important;
	text-transform: none !important;
	width: 100% !important;
	font-family: 'helvetica-neue-lt-pro', sans-serif !important;
}

.btn-primary-bridge:hover {
	background: #064787 !important;
	color: #ffffff !important;
}

.btn-primary-bridge {
	display: inline-flex; /* flexbox sul bottone */
	align-items: center; /* centra verticalmente */
	justify-content: center; /* opzionale: centra orizzontalmente il contenuto */
	gap: 6px; /* spazio tra icona e testo */
}

/* dimensione e allineamento dell’icona */
.btn-primary-bridge img {
	width: 23px;
	height: auto;
	display: block; /* evita spazi strani inline */
	transition: none !important;
}

/* Quando sei in hover → cambia icona */
.btn-primary-bridge:hover img {
	content: url("/img/icon-cart-button-hover.png");
}

.text-medium {
	font-size: 20px;
}

.txt-successo {
	font-size: 18px;
	color: black;
	letter-spacing: 2px;
	font-family: degular, serif;
}

.btn-bridge {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 10px 15px;
	border: 2px solid #000;
	border-radius: 20px;
	text-decoration: none;
	color: #000;
	font-weight: 500;
	transition: color 0.3s ease;
	width: 100%;
	font-size: 18px;
}

.btn-bridge .icon-circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	transition: background 0.3s ease, color 0.3s ease;
	border: none;
}

.btn-bridge .icon-circle i {
	color: #064787; /* freccia bianca */
	font-size: 14px;
	transition: color 0.3s ease;
	border: none;
}

/* Hover / rollover */
.btn-bridge:hover {
	color: #fff;
	background: #064787;
}

.btn-bridge:hover .icon-circle i {
	color: #fff; /* la freccia diventa bianca */
}


.btn-bridge-negative {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 10px 15px;
	border: 1px solid #fff;
	border-radius: 20px;
	text-decoration: none;
	color: #fff !important;
	font-weight: 500;
	transition: color 0.3s ease;
	width: 100%;
	font-size: 18px;
}

.btn-bridge-negative .icon-circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	transition: background 0.3s ease, color 0.3s ease;
	border: none;
}

.btn-bridge-negative .icon-circle i {
	color: #fff; /* freccia bianca */
	font-size: 14px;
	transition: color 0.3s ease;
	border: none;
}

/* Hover / rollover */
.btn-bridge-negative:hover {
	color: #fff;
	background: #064787;
	border: 1px solid #064787;
}

.btn-bridge-negative:hover .icon-circle i {
	color: #fff; /* la freccia diventa bianca */
}


.btn-bridge-white {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 10px 35px;
	border-radius: 20px;
	text-decoration: none;
	color: #064787;
	background: white;
	font-weight: 600;
	margin: auto;
	transition: color 0.3s ease;
	width: 100%;
	font-size: 18px;
}

/* Hover / rollover */
.btn-bridge-white:hover {
	background: #ffdd06;
}

.text-black p {
	color: black !important;
}

.overflow-hidden {
	overflow: hidden;
}

.radius-l-b-20 img {
	border-radius: 0 0 0 20px !important;
}

.bg-europe {
	height: 100vh; /* o l’altezza che preferisci */
	max-height: 500px; /* limite massimo */
	background-image: url('/img/cms/europe.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center 50%; /* lo sfondo parte dal 50% dell’altezza */
}

.div-gradient-border {
	border-radius: 20px;
	border: 4px solid transparent; /* serve solo come area del bordo */
	background: /* sfondo interno (colore di riempimento) */ linear-gradient(#ffffff, #ffffff) padding-box,
		/* bordo con gradiente */ linear-gradient(
			90deg,
			#064787 0%,
			#064787 40%,
			#fbba00 100%
	) border-box;
}

.box-punti-forza {
	padding: 25px !important;
}

#checklist-home .checklist {
	list-style: none;
	margin: 0;
	padding: 0;
}

#checklist-home .checklist li {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	font-size: 18px;
	line-height: 1.4;
	margin-bottom: 18px;
}

#checklist-home .checklist li:last-child {
	margin-bottom: 0;
}

#checklist-home .checklist .icon {
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
}

#footer-block a:not(:hover), #footer-block p {
	color: white !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	margin-bottom: 10px !important;
}


.swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background: rgba(0, 0, 0, 0.2);
}

.swiper-pagination-bullet-active {
	background: rgba(0, 0, 0, 0.35);
}

#cosa-stai-cercando .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background: rgba(255, 255, 255, 0.4);
}

#cosa-stai-cercando .swiper-pagination-bullet-active {
	background: rgba(255, 221, 6, 0.7);
}

#cosa-stai-cercando .tematiche-carousel-widget {
	width: 100%;
	overflow: hidden;
}

#cosa-stai-cercando .tematica-card {
	display: block;
	text-decoration: none;
}

#cosa-stai-cercando .tematica-card-inner {
	padding: 10px 20px;
}

#cosa-stai-cercando .tematica-title {
	margin: 0 0 5px;
}

#cosa-stai-cercando .tematica-count {
	font-size: 0.9em;
	opacity: 0.7;
}

#cosa-stai-cercando .area-tematica {
	border: 4px solid #ffdd06;
	border-radius: 20px;
	background: white;
}

#cosa-stai-cercando .area-tematica-inner {
	width: calc(100% - 50px);
	margin: auto;
	margin-top: 25px;
	margin-bottom: 25px;
}

#cosa-stai-cercando .area-tematica h3 {
	color: #064787 !important;
	font-size: 24px !important;
	letter-spacing: 1px;
	font-weight: 600;
}

#cosa-stai-cercando .tematiche-carousel-widget .swiper-pagination {
	position: relative;
	margin-top: 45px;
	margin-bottom: 20px;
}

#cosa-stai-cercando .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background: rgba(255, 255, 255, 0.4);
}

#cosa-stai-cercando .swiper-pagination-bullet-active {
	background: rgba(255, 221, 6, 0.7);
}

#block-top-right #menu-preferiti .user-select {
	margin: auto;
}

#block-top-right #menu-utente .user-select {
	margin: auto;
}

#newsletter-footer .elementor-field-group {
	border-radius: 10px;
	overflow: hidden;
}

#newsletter-footer button {
	border-radius: 10px;
	margin-left: -10px;
	background: #e6edf3;
	color: #074787;
	text-transform: uppercase;
	letter-spacing: 1px;
	border: none;
	height: 49px;
}

#header-categoria img {
	width: fit-content !important;
}

nav.breadcrumb {
	display: none;
}

.product-price-and-shipping {
	position: relative !important;
	width: 100% !important;
	text-align: center !important;
}

h2#product-list-header {
	display: none !important;
}

.div_description_category {
	border: 1px solid #e0e0e0;
	padding: 15px;
	border-radius: 15px;
	margin-top: 15px;
}

.tematica-pill {
	display: inline-block;
	border-radius: 20px;
	padding: 8px 14px;
	font-weight: 500;
	min-width: 250px;
	/* colore del testo uguale alla tematica */
	color: var(--tematica-color);
	/* sfondo: stesso colore ma “diluito” al 10% */
	background-color: color-mix(in srgb, var(--tematica-color) 10%, transparent);
}

#visti-di-recente h2 span {
	color: #064787 !important;
	font-size: 40px !important;
	letter-spacing: 0;
	font-weight: 600 !important;
	text-transform: none !important;
	font-family: degular, sans-serif !important;
}

h1.h1, h2, .authentication-page h2, .page-header h1 {
	color: #064787 !important;
	font-size: 40px !important;
	letter-spacing: 2px;
	font-weight: 600 !important;
	text-transform: none !important;
	font-family: degular, sans-serif !important;
}

.btn-primary, a.btn-big {
	background: #ffdd06 !important;
	border-radius: 30px !important;
	color: #064787 !important;
	font-size: 15px !important;
	text-align: center !important;
	padding: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 1px !important;
	text-transform: none !important;
	font-family: 'helvetica-neue-lt-pro', sans-serif !important;
	min-width: 100px;
}

.btn-primary:hover, a.btn-big:hover {
	background: #064787 !important;
	color: #ffffff !important;
}

.pm-actions {
	display: none !important;
}

.div_description_category h2 {
	font-family: "helvetica-neue-lt-pro", sans-serif !important;
	font-weight: 400 !important;
	font-style: normal !important;
	font-size: 18px !important;
	letter-spacing: 0 !important;
}

aside#notifications {
	display: none !important;
}

.btn.add-to-cart,
.btn.add-to-cart:active,
.btn.add-to-cart:focus,
.btn-primary-bridge.add-to-cart, button, button:focus, button:active {
	transform: none !important;
	transition: none !important;
}

.listing_view.flex-container {
	display: none !important;
}

.js-remove-comp {
	background-color: #fafafa !important;
	border: 1px solid #cccccc !important;
	border-radius: 10px;
}

.js-remove-comp:hover {
	background-color: #cccccc !important;
	border: 1px solid #000000 !important;
}

#bankwire-modal {
	display: none !important;
}

.product-price-and-shipping {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px; /* spazio tra prezzo e testo */
}

.product-price-and-shipping .price {
	font-size: 22px !important;
	text-align: center !important;
	color: #064787 !important;
	font-weight: 600 !important;
	margin: auto;
}

.box-punti-forza-mobile {
	padding: 15px !important;
}

.box-punti-forza-mobile span{
	font-size: 16px !important;
}

.warning_acquisto_starter_kit a {
	display: block;
	margin-top: 8px;
}

#messagge_obbligo_acquisto_starter_kit {
	border: 1px solid #e0e0e0;
	border-radius: 10px;
	padding: 15px;
}

#messagge_obbligo_acquisto_starter_kit li {
	list-style: none;
	padding-left: 0;
	font-size: 16px !important;
}

.p-l-r-15 {
	padding-left: 15px !important;
	padding-right: 15px !important;
	width: fit-content !important;
}

#div_firstOrderIboNotAlreadyCompleted {
	text-align: center;
	height: 36px;
	padding-top: 6px;
	color: white;
	background: #054787;
}

#div_firstOrderIboNotAlreadyCompleted a {
	background: #ecf6fa !important;
	border-radius: 0 0 20px 20px;
	color: #064787 !important;
	font-size: 15px !important;
	text-align: center !important;
	padding: 12px !important;
	letter-spacing: 1;
}

#div_firstOrderIboNotAlreadyCompleted a:hover {
	background: #ffdd06 !important;
}

.product-price-and-shipping .price {
	margin: auto !important;
}

.render-pc {
	border-radius: 10px;
	color: #064787;
	background-color: rgba(6, 71, 135, 0.1);
	text-align: right;
	padding: 5px;
	width: 100%;
	font-size: 14px;
}

.render-cv {
	border-radius: 10px;
	color: #870620;
	background-color: rgba(135, 6, 32, 0.1);
	text-align: right;
	padding: 5px;
	width: 100%;
	font-size: 14px;
	margin-top: 5px;
}

/* mette PC e CV in colonna dentro la TD */
.td_render_pc_cv .render-pc-cv {
	display: flex;
	flex-direction: column;
	align-items: flex-end; /* opzionale: allinea a destra */
	gap: 2px; /* distanza tra PC e CV */
}

.td_render_pc_cv .render-pc-cv > span {
	display: block; /* uno sotto l’altro */
	white-space: nowrap;
}

body#product .render-pc-cv {
	margin-top: 15px;
}

body#product .render-pc-cv .render-pc, body#product .render-pc-cv .render-cv {
	padding: 10px;
}

#div_accedi_virtual_office {
	text-align: center;
	height: 36px;
	padding-top: 6px;
	color: white;
	background: #054787;
}

@media (max-width: 576px) {
	#div_accedi_virtual_office {
		height: 45px;
	}
}

#div_accedi_virtual_office a {
	background: #ecf6fa !important;
	border-radius: 0 0 20px 20px;
	color: #064787 !important;
	font-size: 15px !important;
	text-align: center !important;
	padding: 12px !important;
	letter-spacing: 1;
}

@media (max-width: 576px) {
	#div_accedi_virtual_office {
		height: 45px;
	}
}

#div_accedi_virtual_office a:hover {
	background: #ffdd06 !important;
}

#div_diventa_ibo {
	text-align: center;
	height: 36px;
	padding-top: 6px;
	color: white;
	background: #054787;
}

#div_diventa_ibo a {
	background: #ecf6fa !important;
	border-radius: 0 0 20px 20px;
	color: #064787 !important;
	font-size: 15px !important;
	text-align: center !important;
	padding: 12px !important;
	letter-spacing: 1;
}

#div_diventa_ibo a:hover {
	background: #ffdd06 !important;
}

.product-price-and-shipping .price {
	margin: auto !important;
}

.render-pc {
	border-radius: 10px;
	color: #064787;
	background-color: rgba(6, 71, 135, 0.1);
	text-align: right;
	padding: 5px;
	width: 100%;
	font-size: 14px;
}

.render-cv {
	border-radius: 10px;
	color: #870620;
	background-color: rgba(135, 6, 32, 0.1);
	text-align: right;
	padding: 5px;
	width: 100%;
	font-size: 14px;
	margin-top: 5px;
}

/* mette PC e CV in colonna dentro la TD */
.td_render_pc_cv .render-pc-cv {
	display: flex;
	flex-direction: column;
	align-items: flex-end; /* opzionale: allinea a destra */
	gap: 2px; /* distanza tra PC e CV */
}

.td_render_pc_cv .render-pc-cv > span {
	display: block; /* uno sotto l’altro */
	white-space: nowrap;
}

body#product .render-pc-cv {
	margin-top: 25px;
}

body#product .render-pc-cv .render-pc, body#product .render-pc-cv .render-cv {
	padding: 10px;
}

#blockcart-modal .product-card .render-pc-cv {
	display: none;
}

#lang-selector {
	width: auto !important;
	z-index: 10;
}

#lang-selector .elementor-item {
	color: white;
	opacity: 0.7;
}

#cms #wrapper {
	max-width: 1450px !important;
}

#cms #content-wrapper {
	margin-top: 30px !important;
}

.message_personalizza_kit {
	text-align: center;
	width: 100%;
}

.menu-item-account-0 img {
	width: 25px !important;
	height: auto !important;
	max-width: none !important;
	margin-top: -3px !important;
	margin-left: -3px !important;
}

#product-availability {
	display: none;
}

#checkout .product-title {
	font-family: inherit !important;
	font-size: 14px !important;
	line-height: 19px !important;
	color: #444 !important;
	margin-bottom: 10px !important;
	margin-right: 35px !important;
}

#checkout .cart-summary-products .price {
	font-size: 15px !important;
	text-align: left !important;
	margin-left: 0 !important;
}

.modal-body .message_personalizza_kit, .order-confirmation-table .message_personalizza_kit {
	display: none !important;
}

#logo-mobile {
	width: 150px !important;
}

#menu-mobile-left {
	width: 40%;
}

#menu-mobile-right {
	width: 60%;
}

#menu-ham-mobile {
	width: auto !important;
}

#menu-carrello-mobile {
	width: auto !important;
}

#menu-mobile-icons {
	position: absolute !important;
	right: 0;
	width: 50%;
	top: 0;
}

#menu-mobile-icons .elementor-inner-column {
	width: 33%;
}


#menu-mobile-user div {
	margin-left: -5px;
}

#cart-counter-mobile {
	position: absolute !important;
}

#menu-mobile-icons .elementor-cart__toggle {
	width: fit-content !important;
}

#menu-mobile-icons .elementor-widget-shopping-cart {
	width: fit-content !important;
}

#cart-counter-mobile {
	position: absolute !important;
}

#menu-mobile-icons {
	position: absolute !important;
	right: 0;
	width: 50%;
	top: 0;
}

#menu-mobile-search {
	margin-top: 0 !important;
}

#menu-mobile-divisor {
	margin-top: -5px !important;
	margin-bottom: 5px !important;
}

#menu-mobile-divisor .elementor-divider {
	padding: 0 !important;
}

#menu-mobile-divisor .elementor-divider-separator {
	border-top: 1px solid #e0e0e0 !important;
}

.product-title-bridge {
	font-weight: 600;
	color: black;
	font-size: 20px;
}

.table-render-pc-cv {
	width: 100%;
	margin-bottom: 0;
	min-height: 55px;
}

.thumbnails-bridge {
	border: 1px solid #e0e0e0;
	border-radius: 10px;
	padding: 15px;
	padding-bottom: 30px;
}

.right-desk-left-mobile{
	float: right;
	width: max-content;
}

@media (max-width: 576px) {
	.h2_bridge h2, .h1_bridge h1, .h1.category-title, .h2_bridge_white h2, h1.h1, h2, .authentication-page h2, .page-header h1 {
		font-size: 26px !important;
		letter-spacing: unset;
	}

	.product-title-bridge {
		font-weight: 600;
		color: black;
		font-size: 14px;
		line-height: 16px;
	}

	.render-pc, .render-cv {
		padding: 3px;
		font-size: 12px;
	}

	.table-render-pc-cv tr {
		display: block;
	}

	.table-render-pc-cv td {
		display: block;
		width: 100% !important;
	}
	
	.td_render_pc_cv .render-pc-cv{
		flex-direction: unset;
	}
	
	.product-price-and-shipping .price{
		font-size: 18px !important;
	}
	
	.btn-primary, a.btn-big {
		font-size: 13px !important;
		padding: 5px !important;
	}
	
	.thumbnails-bridge {
	    padding-bottom: 10px;
    }
    
    .btn-bridge {
		padding: 5px;
		border: 1px solid #000;
		font-size: 14px;
	}
	
	.right-desk-left-mobile{
	    float: left;
    }
    
    .btn-bridge-negative {
		padding: 5px;
		font-size: 14px;
		color: white !important;
	}
	
	#titolo-cosa-stai-cercando .elementor-widget-container{
		margin: 20px 0 0 0;
	}
	
	#titolo-cosa-stai-cercando h2{
		margin-left: 10px;
	}
	
	.render-pc-cv{
		margin: auto;
		display: block !important;
	}
	
	.box-descrittivo h2{
		font-size:20px !important;
	}

	.box-descrittivo p, .box-descrittivo span{
		font-size:16px !important;
	}
	
	#footer-block a:not(:hover), #footer-block p{
	    font-size:12px !important;
	    line-height:12px !important;
	    margin-top:5px !important;
	    margin-bottom:5px !important; 
	}
	
}


footer a:hover {
	color: #ffdd06 !important;
}

footer .elementor-text-editor p{
	line-height: 1.2 !important;
}

.btn-add-component{
	padding: 10px !important;
	background-color: darkgray !important;
	border:none !important;
}

.btn-add-component:hover{
	background-color: black !important;
}

#menu-mobile-toggle nav{
    position: absolute;
    z-index: 999;
    margin-top: 35px;
    right: 15px;
    border: 1px solid #e0e0e0;
    min-width: 200px;
}

#menu-mobile-toggle nav li{
    border-bottom: 1px solid #e0e0e0;
}

#menu-carrello{
    cursor:pointer;
}

#menu-carrello .elementor-column-wrap:hover{
	border-bottom:3px solid #000000;
}

#checkout .block-promo{
	display: none !important;
}

#cart #payment-method-messaging-element{
    display: none !important;
}

span.value.font-weight-bold{
    text-align:right !important;
}
#maintenance-main{
    display: none !important;
}
#checkout-addresses-step{
    margin-top:15px !important;
}
#checkout-delivery-step{
    margin-top:15px !important;
}
#checkout-payment-step{
    margin-top:15px !important;
}
#registration .register-shell__title{
    display: none !important;
}
#registration .register-shell__panel {
    background: none !important;
    border: none !important;
    border-radius: none !important;
    padding: 0 !important;
    box-shadow:  none !important;
}
#registration .register-shell__intro{
   visibility: hidden !important; 
   height: 10px !important;
}