/*
Theme Name: Neve Child
Theme URI: https://themeisle.com/themes/neve/
Template: neve
Author: ThemeIsle
Author URI: https://themeisle.com
Description: Neve is a super fast, easily customizable, multi-purpose theme. It’s perfect for blogs, small business, startups, agencies, firms, e-commerce shops (WooCommerce storefront) as well as personal portfolio sites and most types of projects. A fully AMP optimized and responsive theme, Neve will load in mere seconds and adapt perfectly on any viewing device. While it is lightweight and has a minimalist design, the theme is highly extendable, it has a highly SEO optimized code, resulting in top rankings in Google search results. Neve works perfectly with Gutenberg and the most popular page builders (Elementor, Brizy, Beaver Builder, Visual Composer, SiteOrigin, Divi). Neve is also WooCommerce ready, responsive, RTL &amp; translation ready. Look no further. Neve is the perfect theme for you!
Tags: blog,custom-logo,e-commerce,rtl-language-support,grid-layout,one-column,two-columns,custom-background,custom-colors,custom-header,custom-menu,featured-image-header,featured-images,flexible-header,full-width-template,sticky-post,theme-options,threaded-comments,translation-ready,accessibility-ready,wide-blocks,block-styles,footer-widgets,portfolio,left-sidebar,right-sidebar
Version: 3.8.0.1713275757
Updated: 2024-04-16 09:55:57

*/

/* =========================================================================
   TrustyTime - restyling nero e oro (ottobre 2026)

   Stessa impostazione del restyling di JTime, su fondo scuro:
   - colori e tipografia di base: variabili qui sotto (sovrascrivono la
     palette di Neve, che conteneva ancora un azzurro di un vecchio tema);
   - poi rifiniture dei componenti: header, ricerca, schede prodotto,
     pagina prodotto, pagine informative, carrello/checkout, footer.
   - !important solo dove un plugin usa a sua volta !important o stili
     inline; ogni caso e' indicato con "plugin:".

   Forme: controlli (pulsanti, campi, ricerca) 8px; superfici 12px.
   Movimento: solo feedback di interazione, 150-200ms; disattivato con
   prefers-reduced-motion.
   ========================================================================= */

:root {
	--tt-bg: #0b0b0c;          /* fondo pagina */
	--tt-surface: #141416;     /* riquadri, footer */
	--tt-surface-2: #1c1c1f;   /* campi, hover */
	--tt-line: #2a2a2e;
	--tt-line-2: #3a3a40;
	--tt-text: #ecebe8;        /* testo principale: 16:1 sul fondo */
	--tt-text-2: #c4c2bd;
	--tt-muted: #9a9892;       /* testo secondario: 6,8:1 sul fondo */
	/* oro del marchio (stesso #ad8f5b dei pulsanti originali). Sui pulsanti
	   il testo e' scuro: 6,7:1 invece del 2,9:1 del bianco. */
	--tt-gold: #ad8f5b;
	--tt-gold-hover: #c4a46c;
	--tt-gold-light: #e2c48e;  /* oro per testo e prezzi su fondo scuro: 10:1 */
	--tt-on-gold: #0b0b0c;
	--tt-r-control: 8px;
	--tt-r-surface: 12px;
	--tt-measure: 720px;
	--tt-ease-out: cubic-bezier(.23, 1, .32, 1);

	/* palette di Neve: via l'azzurro rimasto da un vecchio tema */
	--nv-primary-accent: var(--tt-gold-light);
	--nv-secondary-accent: var(--tt-gold);
	--nv-site-bg: var(--tt-bg);
	--nv-light-bg: var(--tt-surface);
	--nv-dark-bg: var(--tt-surface);
	--nv-text-color: var(--tt-text);

	/* tipografia: caratteri di sistema, nessun font da scaricare */
	--bodyfontfamily: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--headingsfontfamily: var(--bodyfontfamily);

	/* campi modulo di Neve */
	--formfieldborderwidth: 1px;
	--formfieldborderradius: var(--tt-r-control);
	--formfieldbordercolor: var(--tt-line-2);
	--formfieldbgcolor: var(--tt-surface-2);
	--formfieldcolor: var(--tt-text);
	--formfieldpadding: 10px 14px;
}

body { background-color: var(--tt-bg); color: var(--tt-text); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { color: var(--tt-text); letter-spacing: -0.01em; }
a { color: var(--tt-gold-light); }
a:hover { color: var(--tt-gold-hover); }

::selection { background: var(--tt-gold); color: var(--tt-on-gold); }
:focus-visible { outline: 2px solid var(--tt-gold-light); outline-offset: 2px; }

/* campi */
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
select, textarea {
	background-color: var(--tt-surface-2);
	border-color: var(--tt-line-2);
	color: var(--tt-text);
}
input::placeholder, textarea::placeholder { color: var(--tt-muted); opacity: 1; }
input:focus, select:focus, textarea:focus { border-color: var(--tt-gold); }

/* ---------- Pulsanti: oro con testo scuro ---------- */
.button, button.button, input[type="submit"], .wp-block-button__link,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt {
	background-color: var(--tt-gold);
	border-color: var(--tt-gold);
	color: var(--tt-on-gold);
	border-radius: var(--tt-r-control);
	font-weight: 600;
}
.button:hover, button.button:hover, input[type="submit"]:hover, .wp-block-button__link:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover {
	background-color: var(--tt-gold-hover);
	border-color: var(--tt-gold-hover);
	color: var(--tt-on-gold);
}
.button, button, input[type="submit"], .wp-block-button__link, .elementor-button {
	transition: transform .15s var(--tt-ease-out), background-color .15s ease, border-color .15s ease, color .15s ease;
}
.button:active, button:active, input[type="submit"]:active, .elementor-button:active { transform: scale(.97); }

/* ---------- Top bar ---------- */
.header-top, .header-top .header--row-inner { background: #000; }
.header-top { font-size: 12px; letter-spacing: .01em; border-bottom: 1px solid #1a1a1c; }
.header-top .header--row-inner { padding-block: 4px; }
.header-top .nv-html-content p { margin: 0; line-height: 1.5; color: var(--tt-text-2); }
.header-top .nv-html-content strong { color: var(--tt-gold-light); font-weight: 600; }
.header-top .nav-ul a { font-size: 12px; color: var(--tt-muted); padding-block: 4px; }
.header-top .nav-ul a:hover { color: var(--tt-gold-light); }
@media (max-width: 959px) {
	.header-top .nv-html-content { font-size: 11px; line-height: 1.45; text-align: center; }
	.header-top .header--row-inner { padding-block: 6px; }
}

/* ---------- Header ---------- */
.header-main, .header-main .header--row-inner { background: #000; }
.header-main { border-bottom: 1px solid var(--tt-line); }
.header-main .header--row-inner { padding-block: 8px; }
.header-main .builder-item { margin-block: 0; }
.header-main .site-logo img { max-height: 52px; width: auto; }

.header-main .builder-item--primary-menu .nav-ul > li > .wrap > a,
.header-main .builder-item--primary-menu .nav-ul > li > a {
	position: relative;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .01em;
	color: var(--tt-text-2);
	padding-block: 8px;
}
.header-main .builder-item--primary-menu .nav-ul > li:hover > .wrap > a,
.header-main .builder-item--primary-menu .nav-ul > li:hover > a { color: var(--tt-text); }
.header-main .builder-item--primary-menu .nav-ul > li.current-menu-item > .wrap > a,
.header-main .builder-item--primary-menu .nav-ul > li.current-menu-item > a { color: var(--tt-gold-light); }
.header-main .builder-item--primary-menu .nav-ul > li > .wrap > a::after,
.header-main .builder-item--primary-menu .nav-ul > li > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	height: 1.5px;
	background: var(--tt-gold);
	transform: scaleX(0);
	transform-origin: left;
}
.header-main .builder-item--primary-menu .nav-ul > li.current-menu-item > .wrap > a::after,
.header-main .builder-item--primary-menu .nav-ul > li.current-menu-item > a::after { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) {
	.header-main .builder-item--primary-menu .nav-ul > li > .wrap > a::after,
	.header-main .builder-item--primary-menu .nav-ul > li > a::after { transition: transform .2s var(--tt-ease-out); }
	.header-main .builder-item--primary-menu .nav-ul > li:hover > .wrap > a::after,
	.header-main .builder-item--primary-menu .nav-ul > li:hover > a::after { transform: scaleX(1); }
}
.header-main .builder-item--primary-menu .caret svg { fill: currentColor; }

/* sottomenu */
.header-main .nav-ul .sub-menu {
	background: var(--tt-surface);
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	box-shadow: 0 18px 40px -16px rgba(0, 0, 0, .8);
	padding-block: 6px;
}
.header-main .nav-ul .sub-menu li > .wrap > a,
.header-main .nav-ul .sub-menu li > a { font-size: 14px; padding: 8px 18px; color: var(--tt-text-2); }
.header-main .nav-ul .sub-menu li:hover > .wrap > a,
.header-main .nav-ul .sub-menu li:hover > a { background: var(--tt-surface-2); color: var(--tt-gold-light); }

/* ricerca nell'header (ora sulla stessa riga del menu, a destra) */
.header .builder-item--header_search { min-width: 0; }
.header-main .builder-item--header_search .aws-container { width: clamp(180px, 15vw, 240px); }
/* 960-1599px: le voci non entrano accanto a logo e ricerca. Il menu passa
   su una seconda riga centrata, sempre completo e su una sola linea. */
@media (min-width: 960px) and (max-width: 1599px) {
	.header-main .row--wrapper { grid-template-columns: auto 1fr; }
	.header-main .hfg-slot.left { grid-column: 1; grid-row: 1; }
	.header-main .hfg-slot.right { grid-column: 2; grid-row: 1; justify-content: flex-end; }
	.header-main .hfg-slot.center {
		grid-column: 1 / -1;
		grid-row: 2;
		justify-content: center;
		border-top: 1px solid var(--tt-line);
	}
	.header-main .builder-item--primary-menu .nav-ul { flex-wrap: nowrap; }
}

/* carrello: area cliccabile ampia, contatore leggibile */
.header .builder-item--header_cart_icon .cart-icon-wrapper,
.header .builder-item--header_cart_icon > .item--inner > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	color: var(--tt-text-2);
}
.header .builder-item--header_cart_icon .cart-icon-wrapper:hover { color: var(--tt-gold-light); }
.header .builder-item--header_cart_icon .cart-count { background: var(--tt-gold); color: var(--tt-on-gold); font-weight: 700; }

/* riga sotto l'header: su desktop resta vuota e non occupa spazio */
@media (min-width: 960px) {
	.header-bottom:not(:has(.builder-item)) { display: none; }
}
/* mobile: riga 1 logo + menu + carrello, riga 2 ricerca a tutta larghezza */
@media (max-width: 959px) {
	.header-bottom, .header-bottom .header--row-inner { background: #000; }
	.header-bottom { border-bottom: 1px solid var(--tt-line); }
	.header-bottom .header--row-inner { padding-block: 0 10px; }
	.header-bottom .row--wrapper { grid-template-columns: 1fr; }
	.header-bottom .hfg-slot.right:empty { display: none; }
	.header-bottom .hfg-slot.left > .builder-item { flex: 1 1 auto; }
	.header-bottom .builder-item--header_search .aws-container { width: 100%; }
	.header-main { border-bottom: 0; }
	.header-main .site-logo img { max-height: 44px; }
	.header-main .navbar-toggle {
		min-width: 44px;
		min-height: 44px;
		border-radius: var(--tt-r-control);
		border-color: var(--tt-line-2);
		color: var(--tt-text);
	}
}

/* menu mobile a pannello */
.header-menu-sidebar, .header-menu-sidebar-bg, .header-menu-sidebar-inner { background: var(--tt-surface); }
.header-menu-sidebar .nav-ul li > .wrap > a,
.header-menu-sidebar .nav-ul li > a { font-size: 16px; padding-block: 12px; color: var(--tt-text); }
.header-menu-sidebar .nav-ul li { border-bottom: 1px solid var(--tt-line); }
.header-menu-sidebar .nav-ul .sub-menu li:last-child { border-bottom: 0; }

/* ---------- Ricerca (Advanced Woo Search) ---------- */
.aws-container .aws-search-form {
	height: 42px;
	border-radius: var(--tt-r-control);
	background: var(--tt-surface-2);
	border: 1px solid var(--tt-line-2);
	overflow: hidden;
	transition: border-color .15s ease;
}
.aws-container .aws-search-form:focus-within { border-color: var(--tt-gold); }
/* plugin: AWS imposta bordo, sfondo e colore del campo con !important */
.aws-container .aws-search-form .aws-search-field {
	background: transparent !important;
	border: 0 !important;
	color: var(--tt-text) !important;
	font-size: 14px;
	padding-left: 14px;
}
.aws-container .aws-search-form .aws-search-field::placeholder { color: var(--tt-muted); opacity: 1; }
.aws-container .aws-search-form .aws-form-btn { background: transparent !important; border: 0 !important; }
.aws-container .aws-search-form .aws-search-btn_icon { color: var(--tt-text-2) !important; }
.aws-search-result {
	background: var(--tt-surface) !important;
	border: 1px solid var(--tt-line) !important;
	border-radius: var(--tt-r-surface);
	box-shadow: 0 18px 40px -16px rgba(0, 0, 0, .8);
	overflow: hidden;
}
.aws-search-result .aws_result_item { border-color: var(--tt-line) !important; }
.aws-search-result .aws_result_item:hover, .aws-search-result .aws_result_item.hovered { background: var(--tt-surface-2) !important; }
.aws-search-result .aws_result_title { color: var(--tt-text) !important; }
.aws-search-result .aws_result_price, .aws-search-result .aws_result_excerpt { color: var(--tt-muted) !important; }

/* ---------- Home ---------- */
/* banner promozionali: angoli arrotondati e leggero stacco al passaggio */
.home .elementor-widget-image img { border-radius: var(--tt-r-surface); }
.home .elementor-widget-image a img { transition: transform .2s var(--tt-ease-out), filter .2s ease; }
@media (hover: hover) and (pointer: fine) {
	.home .elementor-widget-image a:hover img { transform: translateY(-2px); filter: brightness(1.06); }
}

/* ---------- Schede prodotto (home, catalogo, correlati) ---------- */
.woocommerce ul.products li.product .sp-product-image { margin-bottom: 12px; }
.woocommerce ul.products li.product .sp-product-image img,
.woocommerce ul.products li.product a img {
	border-radius: var(--tt-r-surface);
	transition: transform .25s var(--tt-ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.woocommerce ul.products li.product:hover .sp-product-image img,
	.woocommerce ul.products li.product:hover a img { transform: scale(1.02); }
}
.woocommerce ul.products li.product .sp-product-image,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { display: block; border-radius: var(--tt-r-surface); overflow: hidden; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.woocommerce-loop-product__link > h2.woocommerce-loop-product__title {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	color: var(--tt-text);
	margin: 0 0 6px;
	padding: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.9em;
}
.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title { color: var(--tt-gold-light); }
/* plugin: il widget Prodotti di Elementor (home) colora i titoli con un selettore per singolo elemento */
.elementor-wc-products ul.products li.product .woocommerce-loop-product__title { color: var(--tt-text) !important; }
.elementor-wc-products ul.products li.product a:hover .woocommerce-loop-product__title { color: var(--tt-gold-light) !important; }
.elementor-wc-products ul.products li.product .price,
.elementor-wc-products ul.products li.product .price ins,
.elementor-wc-products ul.products li.product .price ins .amount { color: var(--tt-gold-light) !important; }
.elementor-wc-products ul.products li.product .price del,
.elementor-wc-products ul.products li.product .price del .amount { color: var(--tt-muted) !important; }
.woocommerce ul.products li.product .star-rating { font-size: 11px; margin: 0 0 8px; }
.woocommerce .star-rating,
.woocommerce .star-rating span::before { color: var(--tt-gold-light); }
.woocommerce .star-rating::before { color: #4a4436; }

/* prezzo scontato in evidenza (oro), prezzo pieno barrato dopo */
.woocommerce ul.products li.product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 8px;
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--tt-gold-light);
}
.woocommerce ul.products li.product .price ins { order: -1; text-decoration: none; background: none; color: var(--tt-gold-light); }
.woocommerce ul.products li.product .price del { font-size: 13px; font-weight: 400; color: var(--tt-muted); opacity: 1; }
.woocommerce ul.products li.product .price del .amount { color: inherit; }
.woocommerce span.onsale { background: var(--tt-gold); color: var(--tt-on-gold); border-radius: 6px; font-weight: 700; }

/* barra risultati, ordinamento e paginazione */
.woocommerce-result-count, .nv-woo-filters { font-size: 13px; color: var(--tt-muted); }
.woocommerce .woocommerce-ordering select { height: 42px; font-size: 14px; padding-inline: 12px 32px; }
.woocommerce nav.woocommerce-pagination ul.page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; border: 0; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li { border: 0; float: none; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 10px;
	border: 1px solid var(--tt-line-2);
	border-radius: var(--tt-r-control);
	background: transparent;
	color: var(--tt-text);
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current { background: var(--tt-gold); border-color: var(--tt-gold); color: var(--tt-on-gold); }
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:hover { border-color: var(--tt-gold); color: var(--tt-gold-light); background: transparent; }

.woocommerce .neve-main .nv-shop { margin-top: 32px; }
@media (max-width: 959px) { .woocommerce .neve-main .nv-shop { margin-top: 20px; } }

/* breadcrumb */
.woocommerce .woocommerce-breadcrumb, .nv-breadcrumbs-wrap { font-size: 13px; color: var(--tt-muted); }
.woocommerce .woocommerce-breadcrumb a { color: var(--tt-muted); display: inline-block; padding-block: 4px; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--tt-gold-light); }

/* ---------- Pagina prodotto ---------- */
.woocommerce-product-gallery[style*="opacity: 0"] .woocommerce-product-gallery__image:nth-child(n+2) { display: none; }
.single-product div.product .woocommerce-product-gallery .flex-viewport,
.single-product div.product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper {
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	overflow: hidden;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	margin-top: 10px;
}
@media (max-width: 959px) {
	.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li { width: auto; margin: 0; padding: 0; float: none; }
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-control);
	opacity: .6;
	transition: opacity .15s ease, border-color .15s ease;
}
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--tt-gold); }
.woocommerce div.product .woocommerce-product-gallery__trigger { background: rgba(0, 0, 0, .7); }

.single-product div.product .summary .product_title { margin-bottom: 12px; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.2; font-weight: 600; }
.single-product div.product .summary .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 12px;
	margin: 0 0 22px;
	font-size: 28px;
	font-weight: 600;
	color: var(--tt-gold-light);
}
.single-product div.product .summary .price ins { order: -1; text-decoration: none; background: none; color: var(--tt-gold-light); }
.single-product div.product .summary .price del { font-size: 17px; font-weight: 400; color: var(--tt-muted); opacity: 1; }

.woocommerce.single-product div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 10px;
	padding-bottom: 22px;
	margin-bottom: 16px;
	border-bottom: 1px solid var(--tt-line);
}
.single-product div.product form.cart .quantity { margin: 0; }
.single-product div.product form.cart .quantity .qty { height: 48px; width: 72px; border-radius: var(--tt-r-control); }
.single-product div.product form.cart .single_add_to_cart_button { flex: 1; min-height: 48px; font-size: 15px; }
.single-product div.product .product_meta { font-size: 13px; color: var(--tt-muted); }
.single-product div.product .product_meta a { color: var(--tt-text-2); }

/* tab Descrizione / Recensioni */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 28px;
	padding: 0;
	margin: 0 0 24px;
	border-bottom: 1px solid var(--tt-line);
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: none; border: 0; margin: 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 12px 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--tt-muted);
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--tt-text); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--tt-text); border-bottom-color: var(--tt-gold); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 72ch; font-size: 14.5px; color: var(--tt-text-2); }
.woocommerce div.product .woocommerce-tabs .panel p { margin-bottom: .6em; }

.related.products > h2, .upsells.products > h2 { margin: 48px 0 18px; font-size: 22px; font-weight: 600; }

/* ---------- Pagine informative ---------- */
.page:not(.woocommerce-page):not(.elementor-page) .nv-single-page-wrap .nv-page-title-wrap,
.page:not(.woocommerce-page):not(.elementor-page) .nv-single-page-wrap > .nv-content-wrap {
	max-width: var(--tt-measure);
	margin-inline: auto;
}
.page:not(.woocommerce-page):not(.elementor-page) .nv-content-wrap { padding-top: 8px; padding-bottom: 48px; }
.page:not(.woocommerce-page) .nv-page-title-wrap h1 { font-size: 32px; line-height: 1.2; font-weight: 600; }
.page:not(.woocommerce-page) .nv-content-wrap.entry-content { font-size: 16px; line-height: 1.7; color: var(--tt-text-2); }
@media (max-width: 767px) {
	.page:not(.woocommerce-page) .nv-content-wrap.entry-content { font-size: 15.5px; }
	.page:not(.woocommerce-page) .nv-page-title-wrap h1 { font-size: 27px; }
}
.nv-content-wrap.entry-content p { margin: 0 0 1em; }
.nv-content-wrap.entry-content strong { color: var(--tt-text); font-weight: 600; }
.nv-content-wrap.entry-content h2 {
	margin: 2.2em 0 .5em;
	padding-top: 1.1em;
	border-top: 1px solid var(--tt-line);
	font-size: 22px;
	line-height: 1.3;
}
.nv-content-wrap.entry-content > h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.nv-content-wrap.entry-content h3 { margin: 1.8em 0 .45em; font-size: 18px; line-height: 1.35; }
.nv-content-wrap.entry-content hr { border: 0; border-top: 1px solid var(--tt-line); margin: 2.4em 0 1.6em; opacity: 1; }
.nv-content-wrap.entry-content ul,
.nv-content-wrap.entry-content ol { padding-left: 1.25em; margin: .4em 0 1.2em; }
.nv-content-wrap.entry-content li { margin-bottom: .55em; padding-left: .25em; }
.nv-content-wrap.entry-content ul li::marker { color: var(--tt-gold); }
.nv-content-wrap.entry-content ol li::marker { color: var(--tt-gold-light); font-weight: 600; }
.nv-content-wrap.entry-content a:not(.button):not(.wp-block-button__link) {
	color: var(--tt-gold-light);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
.nv-content-wrap.entry-content a:not(.button):not(.wp-block-button__link):hover { text-decoration-thickness: 2px; }
.nv-content-wrap.entry-content .wp-block-quote {
	margin: 1.6em 0;
	padding: 18px 22px;
	border: 0;
	border-left: 3px solid var(--tt-gold);
	border-radius: 0 var(--tt-r-surface) var(--tt-r-surface) 0;
	background: var(--tt-surface);
	font-style: normal;
}
.nv-content-wrap.entry-content .wp-block-table table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	overflow: hidden;
	font-size: 14px;
}
.nv-content-wrap.entry-content .wp-block-table th,
.nv-content-wrap.entry-content .wp-block-table td { padding: 10px 14px; border: 0; border-bottom: 1px solid var(--tt-line); }
.nv-content-wrap.entry-content .wp-block-table th { background: var(--tt-surface); color: var(--tt-text); font-weight: 600; }
.nv-content-wrap.entry-content .wp-block-table tbody tr:last-child td { border-bottom: 0; }
.nv-content-wrap.entry-content img { border-radius: var(--tt-r-surface); }

/* ---------- Carrello e checkout ---------- */
.woocommerce table.shop_table {
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	border-collapse: separate;
	overflow: hidden;
	background: var(--tt-surface);
}
.woocommerce table.shop_table th { font-weight: 600; color: var(--tt-text); }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { border-color: var(--tt-line); }
/* Neve separa intestazione e totali con una linea del colore del testo: qui diventa la linea tenue */
.woocommerce table.shop_table :is(thead, tbody, tfoot, tr, th, td) { border-color: var(--tt-line) !important; }
.woocommerce table.shop_table td.product-name a { color: var(--tt-text); }
.woocommerce table.shop_table .amount { color: var(--tt-text); }
.woocommerce table.shop_table .order-total .amount { color: var(--tt-gold-light); font-size: 1.1em; }
.woocommerce a.remove { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; font-size: 20px; color: var(--tt-muted) !important; }
.woocommerce a.remove:hover { background: var(--tt-surface-2); color: #ff8a80 !important; }
.woocommerce ul#shipping_method li { margin-bottom: 8px; }
.woocommerce ul#shipping_method input[type="radio"],
.woocommerce-checkout #payment input[type="radio"],
.woocommerce form .form-row input[type="checkbox"],
.woocommerce-checkout input.woocommerce-form__input-checkbox { width: 18px; height: 18px; vertical-align: -3px; accent-color: var(--tt-gold); }
.woocommerce-checkout #payment { background: var(--tt-surface); border: 1px solid var(--tt-line); border-radius: var(--tt-r-surface); }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--tt-line); }
.woocommerce-checkout #payment div.payment_box { background: var(--tt-surface-2); color: var(--tt-text-2); border-radius: var(--tt-r-control); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--tt-surface-2); }
.woocommerce-checkout #payment ul.payment_methods li label { display: inline-block; padding-block: 6px; color: var(--tt-text); }
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error {
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	background: var(--tt-surface);
	color: var(--tt-text-2);
}
.woocommerce .woocommerce-info::before, .woocommerce .woocommerce-message::before { color: var(--tt-gold-light); }
.woocommerce .woocommerce-error::before { color: #ff8a80; }
.woocommerce form .form-row label { color: var(--tt-text-2); }
.woocommerce form .form-row .required { color: var(--tt-gold-light); }
/* Store Payments: scelta della moneta su fondo scuro */
.woocommerce-checkout #payment .dk-sp-asset__body { background: var(--tt-surface); border-color: var(--tt-line-2); }
.woocommerce-checkout #payment .dk-sp-asset__body strong { color: var(--tt-text); }
.woocommerce-checkout #payment .dk-sp-asset__body small { color: var(--tt-muted); }
.woocommerce-checkout #payment .dk-sp-asset input:checked + .dk-sp-asset__body {
	border-color: var(--tt-gold);
	background: rgba(173, 143, 91, .14);
	box-shadow: 0 0 0 1px var(--tt-gold);
}
/* Store Payments: riquadro bianco della pagina di conferma, accento oro scuro (5,6:1 sul bianco) */
.dk-sp-box { --dk-accent: #7a5f2e; --dk-accent-tint: #f6efe2; }
.woocommerce-order-overview { border: 1px solid var(--tt-line); border-radius: var(--tt-r-surface); padding: 16px; background: var(--tt-surface); }
/* select2 (paese / provincia) */
.select2-container--default .select2-selection--single { background: var(--tt-surface-2); border-color: var(--tt-line-2); border-radius: var(--tt-r-control); height: 44px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--tt-text); line-height: 42px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 42px; }
.select2-dropdown { background: var(--tt-surface); border-color: var(--tt-line-2); color: var(--tt-text); }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--tt-gold); color: var(--tt-on-gold); }
.select2-search--dropdown .select2-search__field { background: var(--tt-surface-2); color: var(--tt-text); }

/* ---------- Footer ---------- */
/* le righe del footer di Neve sono larghe quanto il contenitore: lo sfondo va sull'intero footer */
.site-footer { background: var(--tt-surface); border-top: 1px solid var(--tt-line); }
.site-footer .footer--row, .site-footer .footer--row-inner { background: transparent; }
.site-footer .footer-top .footer--row-inner { padding-block: 44px 32px; }
.site-footer .footer-top :is(.widget-title, h1, h2, h3, h4, h5, h6) {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.4;
	text-transform: uppercase;
	color: var(--tt-gold-light);
}
.site-footer .footer-top :is(p, li) { font-size: 14px; color: var(--tt-text-2); }
.site-footer .footer-top ul { list-style: none; padding-left: 0; margin: 0; }
.site-footer .footer-top li { margin: 0; }
.site-footer .footer-top li a { display: inline-block; padding-block: 5px; color: var(--tt-text-2); }
.site-footer .footer-top a:hover { color: var(--tt-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.site-footer .footer-top strong { color: var(--tt-text); font-weight: 500; }
.site-footer .footer-top :is(h1, h2, h3, h4, h5, h6) strong { color: inherit; font-weight: inherit; }
.site-footer .footer-bottom { border-top: 1px solid var(--tt-line); }
.site-footer .footer-bottom .footer--row-inner { padding-block: 14px; font-size: 12.5px; color: var(--tt-muted); }

/* ---------- Contatto flottante (Chaty) ---------- */
.chaty-widget .chaty-link:focus-visible { outline: 2px solid var(--tt-gold-light); outline-offset: 3px; border-radius: 50%; }
@media (max-width: 1599px) {
	/* plugin: Chaty mostra l'etichetta con stili inline; fino a 1599px resta solo l'icona (l'etichetta coprirebbe le schede) */
	.chaty-widget .on-hover-text { display: none !important; }
}
@media (max-width: 767px) {
	.chaty-widget .chaty-channel .chaty-icon,
	.chaty-widget .chaty-channel .chaty-svg { width: 48px; height: 48px; }
	.footer-bottom .footer--row-inner { padding-bottom: 76px; }
}

/* pulsante "torna su" di Neve: sopra l'icona di Chaty invece che sotto */
#scroll-to-top.scroll-to-top { bottom: 96px; }

/* ---------- Movimento ridotto ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: 1ms !important; animation-duration: 1ms !important; }
	.button:active, button:active, input[type="submit"]:active, .elementor-button:active { transform: none; }
	.woocommerce ul.products li.product:hover img, .home .elementor-widget-image a:hover img { transform: none; }
}

/* ---------- Pagamenti e spedizioni (stessa impostazione di JTime) ---------- */
/* Se il contenuto apre con un proprio H1, il titolo della pagina sarebbe un doppione. */
.nv-single-page-wrap:has(> .nv-content-wrap > h1:first-child) > .nv-page-title-wrap { display: none; }
.nv-single-page-wrap:has(> .nv-content-wrap > h1:first-child) > .nv-content-wrap { padding-top: 40px; }
.page:not(.woocommerce-page) .nv-content-wrap.entry-content h1 { margin-bottom: .45em; font-size: 32px; line-height: 1.2; font-weight: 600; }
.nv-content-wrap.entry-content h1 + p { font-size: 1.08em; color: var(--tt-text-2); }
@media (max-width: 767px) { .page:not(.woocommerce-page) .nv-content-wrap.entry-content h1 { font-size: 27px; } }

/* indice della pagina: link su una riga, tra due linee sottili */
.nv-content-wrap.entry-content .jt-toc {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 22px;
	margin: 1.4em 0 .4em;
	padding: 14px 0;
	border-block: 1px solid var(--tt-line);
	font-size: 14px;
}
.nv-content-wrap.entry-content .jt-toc a:not(.button) { color: var(--tt-text-2); text-decoration: none; padding-block: 4px; }
.nv-content-wrap.entry-content .jt-toc a:not(.button):hover { color: var(--tt-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.nv-content-wrap.entry-content :is(.jt-toc, .jt-facts, .jt-options) + h2 { border-top: 0; padding-top: 0; }
.nv-content-wrap.entry-content h2[id] { scroll-margin-top: 90px; }

/* dettagli: etichetta a sinistra, testo a destra, righe divise da una linea */
.nv-content-wrap.entry-content .jt-facts { margin: 1em 0 .4em; padding: 0; }
.jt-facts > div {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 4px 24px;
	padding: 13px 0;
	border-top: 1px solid var(--tt-line);
}
.jt-facts > div:last-child { border-bottom: 1px solid var(--tt-line); }
.jt-facts dt { margin: 0; font-weight: 600; color: var(--tt-gold-light); }
.jt-facts dd, .nv-content-wrap.entry-content .jt-facts dd { margin: 0; color: var(--tt-text-2); }
@media (max-width: 599px) { .jt-facts > div { grid-template-columns: 1fr; } }

/* opzioni di spedizione affiancate */
.jt-options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 1.2em 0 .6em;
}
.jt-options__item { padding: 20px; border: 1px solid var(--tt-line); border-radius: var(--tt-r-surface); background: var(--tt-surface); }
.jt-options__time {
	display: inline-block;
	margin-bottom: 10px;
	padding: 3px 10px;
	border-radius: 999px;
	background: rgba(173, 143, 91, .16);
	font-size: 13px;
	font-weight: 600;
	color: var(--tt-gold-light);
}
.nv-content-wrap.entry-content .jt-options__item h3 { margin: 0 0 .35em; font-size: 16px; line-height: 1.35; }
.nv-content-wrap.entry-content .jt-options__item p { margin: 0; font-size: 14.5px; line-height: 1.6; }
@media (max-width: 767px) { .jt-options { grid-template-columns: 1fr; } }

/* passaggi dopo il pagamento */
.nv-content-wrap.entry-content .jt-steps { list-style: none; counter-reset: jt-step; margin: 1em 0 0; padding: 0; }
.nv-content-wrap.entry-content .jt-steps li { counter-increment: jt-step; position: relative; margin: 0; padding: 0 0 22px 46px; }
.jt-steps li::before {
	content: counter(jt-step);
	position: absolute;
	left: 0;
	top: 0;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--tt-gold);
	font-size: 13px;
	font-weight: 700;
	color: var(--tt-on-gold);
}
.jt-steps li:not(:last-child)::after { content: ""; position: absolute; left: 15px; top: 34px; bottom: 4px; width: 1px; background: var(--tt-line-2); }
.jt-steps__time { display: block; font-size: 13px; color: var(--tt-muted); }
.jt-steps strong { display: block; margin: 1px 0 2px; color: var(--tt-text); }
.nv-content-wrap.entry-content .jt-steps p { margin: 0; }

/* nota */
.nv-content-wrap.entry-content .jt-note {
	margin: 1.2em 0;
	padding: 14px 18px;
	border-left: 3px solid var(--tt-gold);
	border-radius: 0 var(--tt-r-control) var(--tt-r-control) 0;
	background: var(--tt-surface);
	font-size: 15px;
	color: var(--tt-text-2);
}

/* riquadro di aiuto in fondo alla pagina */
.jt-help {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	margin: 2.6em 0 0;
	padding: 24px 26px;
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	background: var(--tt-surface);
}
.jt-help > div:first-child { flex: 1 1 320px; }
.nv-content-wrap.entry-content .jt-help h3 { margin: 0 0 .3em; font-size: 18px; border: 0; padding: 0; }
.nv-content-wrap.entry-content .jt-help p { margin: 0; font-size: 15px; }
.jt-help__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; }
.nv-content-wrap.entry-content .jt-help .jt-help__primary {
	display: inline-flex;
	align-items: center;
	min-height: 46px;
	padding: 0 22px;
	text-decoration: none;
}
.nv-content-wrap.entry-content .jt-help .jt-help__link { font-weight: 500; }
@media (max-width: 599px) {
	.jt-help__actions, .nv-content-wrap.entry-content .jt-help .jt-help__primary { width: 100%; justify-content: center; }
}

/* ---------- Badge nella barra in alto ---------- */
.header-top .nav-ul .tt-top-badge {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	font-size: 12px;
	color: var(--tt-text-2);
}
.header-top .nav-ul .tt-top-badge + .tt-top-badge::before { content: "·"; margin-inline: 12px; color: var(--tt-muted); }
.header-top .tt-top-badge__icon { width: 16px; height: 16px; flex: 0 0 16px; margin-right: 6px; color: var(--tt-gold-light); }

/* domande apribili (FAQ) */
.jt-faq { margin: .6em 0 0; border-top: 1px solid var(--tt-line); }
.jt-faq details { border-bottom: 1px solid var(--tt-line); }
.jt-faq summary {
	position: relative;
	display: block;
	padding: 15px 36px 15px 0;
	font-weight: 500;
	color: var(--tt-text);
	cursor: pointer;
	list-style: none;
}
.jt-faq summary::-webkit-details-marker { display: none; }
.jt-faq summary::after {
	content: "";
	position: absolute;
	right: 6px;
	top: 50%;
	width: 8px;
	height: 8px;
	margin-top: -6px;
	border-right: 1.5px solid var(--tt-gold-light);
	border-bottom: 1.5px solid var(--tt-gold-light);
	transform: rotate(45deg);
	transition: transform .2s var(--tt-ease-out);
}
.jt-faq details[open] summary::after { transform: rotate(-135deg); margin-top: -2px; }
.jt-faq summary:hover, .jt-faq details[open] summary { color: var(--tt-gold-light); }
.nv-content-wrap.entry-content .jt-faq details > p { margin: 0 0 .8em; color: var(--tt-text-2); }
.nv-content-wrap.entry-content .jt-faq details > p:last-child { margin-bottom: 18px; }

/* About us: frase in evidenza e firma */
.nv-content-wrap.entry-content .jt-pull {
	margin: 1.4em 0 1.6em;
	padding: 4px 0 4px 20px;
	border-left: 3px solid var(--tt-gold);
	font-size: 19px;
	line-height: 1.55;
	color: var(--tt-text);
}
.nv-content-wrap.entry-content .jt-signoff { margin-top: 2.4em; padding-top: 1.2em; border-top: 1px solid var(--tt-line); }
.nv-content-wrap.entry-content .jt-signoff p { margin: 0 0 .3em; }
.nv-content-wrap.entry-content .jt-signoff p:last-child { color: var(--tt-gold-light); font-weight: 600; }
.nv-content-wrap.entry-content .jt-closing { margin-top: 2em; padding-top: 1em; border-top: 1px solid var(--tt-line); font-size: 14.5px; color: var(--tt-muted); }

/* tabella Water resistance: prima colonna a sinistra, valori centrati */
.nv-content-wrap.entry-content .wp-block-table { overflow-x: auto; }
.nv-content-wrap.entry-content .wp-block-table :is(th, td):not(:first-child) { text-align: center; }
.nv-content-wrap.entry-content .wp-block-table td:first-child { color: var(--tt-text); font-weight: 500; }

/* ---------- Contatti (Elementor, pagina 476) ---------- */
.jt-contact-sec > .elementor-container,
.jt-contact-mail-sec > .elementor-container,
.jt-reviews-head > .elementor-container,
.jt-reviews-cta > .elementor-container { max-width: 960px; }
.jt-contact { padding-top: 40px; color: var(--tt-text-2); }
.jt-contact .jt-contact__title { margin: 0 0 .35em; font-size: 32px; line-height: 1.2; font-weight: 600; color: var(--tt-text); }
.jt-contact__lead { max-width: 62ch; margin: 0; font-size: 17px; line-height: 1.6; }
.jt-contact__main {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	margin-top: 30px;
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	overflow: hidden;
}
.jt-contact__tg { padding: 30px 32px; background: var(--tt-surface); border-right: 1px solid var(--tt-line); }
.jt-contact__tips { padding: 30px 32px; }
.jt-contact h2 { margin: 0 0 .45em; font-size: 19px; line-height: 1.3; color: var(--tt-text); }
.jt-contact__main p { margin: 0 0 1em; }
.jt-contact .jt-help__primary { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; text-decoration: none; }
.jt-contact__handle { margin: 12px 0 0 !important; font-size: 14px; color: var(--tt-muted); }
.jt-contact__tips a { font-size: 17px; font-weight: 600; color: var(--tt-gold-light); }
.jt-contact__tips ul { margin: 0; padding-left: 1.2em; }
.jt-contact__tips li { margin-bottom: .45em; font-size: 15px; }
.jt-contact__tips li::marker { color: var(--tt-gold); }
.jt-contact__safety { margin: 18px 0 0; padding: 14px 0; border-bottom: 1px solid var(--tt-line); font-size: 14.5px; }
.jt-contact__safety a { color: var(--tt-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.jt-contact .jt-contact__h2 { margin: 36px 0 6px; font-size: 21px; }
.jt-contact__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; margin: 0; padding: 0; list-style: none; }
.jt-contact__links li { padding: 13px 0; border-bottom: 1px solid var(--tt-line); }
.jt-contact__links a { display: inline-block; font-weight: 600; color: var(--tt-text); text-decoration: none; }
.jt-contact__links a:hover { color: var(--tt-gold-light); }
.jt-contact__links span { display: block; font-size: 14px; color: var(--tt-muted); }
.jt-contact-mail-sec { margin-top: 44px; padding-bottom: 56px; }
.jt-contact-mail-sec .elementor-text-editor h2,
.jt-contact-mail-sec .elementor-widget-text-editor h2 { margin: 0 0 .4em; font-size: 21px; color: var(--tt-text); }
.jt-contact-mail-sec .elementor-widget-text-editor { color: var(--tt-text-2); }
.jt-contact-mail-sec .elementor-field-group .elementor-field-label { color: var(--tt-text-2); }
.jt-contact-mail-sec .elementor-field-group .elementor-field-textual {
	background: var(--tt-surface-2);
	border: 1px solid var(--tt-line-2);
	border-radius: var(--tt-r-control);
	color: var(--tt-text);
}
.jt-contact-mail-sec .elementor-field-group .elementor-field-textual:focus { border-color: var(--tt-gold); box-shadow: none; }
.jt-contact-mail-sec .elementor-button {
	min-height: 46px;
	padding-inline: 30px;
	border-radius: var(--tt-r-control);
	background-color: var(--tt-gold);
	color: var(--tt-on-gold);
	font-weight: 600;
}
.jt-contact-mail-sec .elementor-button:hover { background-color: var(--tt-gold-hover); color: var(--tt-on-gold); }
@media (max-width: 767px) {
	.jt-contact { padding-top: 24px; }
	.jt-contact .jt-contact__title { font-size: 27px; }
	.jt-contact__main { grid-template-columns: 1fr; }
	.jt-contact__tg { border-right: 0; border-bottom: 1px solid var(--tt-line); }
	.jt-contact__tg, .jt-contact__tips { padding: 24px 20px; }
	.jt-contact__links { grid-template-columns: 1fr; }
	.jt-contact-mail-sec { margin-top: 28px; }
}

/* ---------- Recensioni (Elementor, pagina 37156) ---------- */
.jt-reviews-head { padding-top: 40px; }
.jt-reviews-head .elementor-heading-title { font-size: 32px; line-height: 1.2; font-weight: 600; color: var(--tt-text); }
.jt-reviews__lead { max-width: 62ch; margin: 10px 0 8px; font-size: 17px; line-height: 1.6; color: var(--tt-text-2); }
.jt-reviews-cta { padding-bottom: 56px; }
.jt-reviews-cta .jt-help h3 { margin: 0 0 .3em; font-size: 18px; color: var(--tt-text); }
.jt-reviews-cta .jt-help p { margin: 0; font-size: 15px; color: var(--tt-text-2); }
.jt-reviews-cta .jt-help__primary { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; text-decoration: none; }
.jt-reviews-cta .jt-help__link, .jt-help .jt-help__link { color: var(--tt-gold-light); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) { .jt-reviews-head { padding-top: 24px; } .jt-reviews-head .elementor-heading-title { font-size: 27px; } }
/* plugin: Elementor colora campi e pulsante del modulo con un selettore per singolo elemento */
.jt-contact-mail-sec .elementor-form .elementor-field-group .elementor-field-textual {
	background-color: var(--tt-surface-2) !important;
	border-color: var(--tt-line-2) !important;
	color: var(--tt-text) !important;
}
.jt-contact-mail-sec .elementor-form .elementor-field-textual::placeholder { color: var(--tt-muted) !important; opacity: 1; }
.jt-contact-mail-sec .elementor-form .elementor-field-textual:focus { border-color: var(--tt-gold) !important; }
.jt-contact-mail-sec .elementor-form .elementor-button {
	background-color: var(--tt-gold) !important;
	color: var(--tt-on-gold) !important;
}
.jt-contact-mail-sec .elementor-form .elementor-button:hover { background-color: var(--tt-gold-hover) !important; }
.jt-contact-mail-sec .elementor-form .elementor-field-label { color: var(--tt-text-2) !important; }
.jt-contact-mail-sec .elementor-form .elementor-mark-required .elementor-field-label::after { color: var(--tt-gold-light); }

/* ---------- Pagina prodotto: "Add to cart" (oro) e "Buy now" (bordo oro) ---------- */
.woocommerce.single-product div.product form.cart .jt-buy-now {
	flex: 1;
	min-height: 48px;
	font-size: 15px;
	background: transparent;
	border: 1.5px solid var(--tt-gold);
	color: var(--tt-gold-light);
	border-radius: var(--tt-r-control);
}
.woocommerce.single-product div.product form.cart .jt-buy-now:hover { background: var(--tt-gold); color: var(--tt-on-gold); }
@media (max-width: 599px) {
	.woocommerce.single-product div.product form.cart .single_add_to_cart_button,
	.woocommerce.single-product div.product form.cart .jt-buy-now { flex-basis: 100%; }
	.woocommerce.single-product div.product form.cart .quantity + .single_add_to_cart_button { flex-basis: calc(100% - 82px); }
}
/* prezzo nella pagina prodotto: l'importo ha un colore proprio nel tema */
.single-product div.product .summary .price > .amount,
.single-product div.product .summary .price ins .amount { color: var(--tt-gold-light); }
.single-product div.product .summary .price del .amount { color: var(--tt-muted); }

/* ---------- Home: brand e "Find us on" dopo la griglia prodotti ---------- */
.jt-home-brands { max-width: var(--container, 1170px); margin: 48px auto 16px; padding: 0 15px; }
.jt-home-brands__title,
.jt-community__label .elementor-heading-title {
	margin: 0 0 14px;
	font-family: inherit;
	font-size: 12px;
	line-height: 1.4;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--tt-gold-light);
}
.jt-home-brands__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.jt-home-brands__grid li { margin: 0; padding: 0; min-width: 0; }
.jt-home-brands__link {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 96px;
	padding: 18px;
	border: 1px solid var(--tt-line);
	border-radius: var(--tt-r-surface);
	background: var(--tt-surface);
	transition: border-color .18s ease, background-color .18s ease, transform .18s var(--tt-ease-out);
}
/* loghi monocromi chiari sul fondo scuro (i file originali sono a colori) */
.jt-home-brands__link img {
	display: block;
	width: 100%;
	max-width: 140px;
	height: 48px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: .82;
	transition: opacity .18s ease;
}
.jt-home-brands__link--rolex img { max-width: 104px; }
.jt-home-brands__link--patek-philippe img { max-width: 112px; }
.jt-home-brands__link:hover { border-color: var(--tt-gold); background: var(--tt-surface-2); transform: translateY(-2px); }
.jt-home-brands__link:hover img { opacity: 1; }

.elementor-section.jt-community { margin: 28px 0 24px; padding: 0 15px; }
.elementor-section.jt-community > .elementor-container {
	max-width: calc(var(--container, 1170px) - 30px); /* stessa larghezza della griglia brand */
	margin: 0 auto;
	padding: 20px 26px;
	border: 1px solid var(--tt-line);
	border-radius: 16px;
	background: var(--tt-surface);
}
.jt-community .elementor-column > .elementor-widget-wrap { display: flex; flex-wrap: nowrap; align-items: center; gap: 28px; padding: 0 !important; }
.jt-community .elementor-widget { margin: 0 !important; }
.jt-community__label { flex: none; width: auto !important; }
.jt-community__label .elementor-heading-title { margin: 0; white-space: nowrap; }
.jt-community__logos { flex: 1 1 auto; min-width: 0; }
/* plugin: la galleria di WordPress/Elementor imposta larghezze e margini inline */
.jt-community__logos .gallery { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin: 0 !important; }
.jt-community__logos .gallery::before, .jt-community__logos .gallery::after, .jt-community__logos .gallery br { display: none !important; }
.jt-community__logos .gallery-item { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.jt-community__logos .gallery-icon { line-height: 0; }
.jt-community__logos .gallery-item img {
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 632 / 229;
	object-fit: cover;
	border: 0 !important;
	border-radius: 8px !important;
	transition: transform .2s var(--tt-ease-out);
}
.jt-community__logos .gallery-item:hover img { transform: translateY(-2px); }
@media (max-width: 1024px) {
	.jt-community .elementor-column > .elementor-widget-wrap { flex-wrap: wrap; gap: 14px; }
	.jt-community__label, .jt-community__logos { width: 100% !important; flex-basis: 100%; }
	.jt-community__logos .gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.jt-home-brands { margin: 32px auto 12px; padding: 0 12px; }
	.jt-home-brands__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
	.jt-home-brands__link { height: 72px; padding: 12px; border-radius: 10px; }
	.jt-home-brands__link img { height: 38px; }
	.elementor-section.jt-community { padding: 0 12px; margin-top: 20px; }
	.elementor-section.jt-community > .elementor-container { padding: 16px; border-radius: 12px; }
	.jt-community__logos .gallery { gap: 8px; }
}
@media (prefers-reduced-motion: reduce) {
	.jt-home-brands__link:hover, .jt-community__logos .gallery-item:hover img { transform: none; }
}
/* brand sotto i banner: la sezione spaziatrice di Elementor da' gia' aria sopra */
.jt-home-brands { margin: 0 auto 44px; }
@media (max-width: 767px) { .jt-home-brands { margin: 0 auto 28px; } }
/* stessi margini laterali di banner e griglia prodotti (Elementor: 10px di spaziatura colonne) */
@media (min-width: 768px) {
	.jt-home-brands { padding-inline: 25px; }
	.elementor-section.jt-community > .elementor-container { max-width: calc(var(--container, 1170px) - 50px); }
}

/* =========================================================================
   Rifinitura premium (revisione di design, ottobre 2026)
   Solo CSS: si annulla cancellando da qui alla fine del file.
   ========================================================================= */

/* 1. Pagina prodotto: prezzo oro come nelle schede (il tema colora il <bdi> interno) */
.single-product div.product .summary .price bdi { color: inherit; }
.single-product div.product .summary .price del,
.single-product div.product .summary .price del bdi { color: var(--tt-muted); }

/* 2. Catalogo (shop e categorie): via la colonna vuota, griglia a tutta larghezza.
      Il contenuto era limitato al 70% e centrato: ora usa tutto il contenitore. */
.woocommerce.archive .neve-main .nv-shop,
.post-type-archive-product .neve-main .nv-shop { max-width: 100%; flex-basis: 100%; margin-left: 0; margin-right: 0; }
.woocommerce.archive ul.products,
.post-type-archive-product ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 36px 24px;
	margin: 0;
}
.woocommerce.archive ul.products::before, .woocommerce.archive ul.products::after,
.post-type-archive-product ul.products::before, .post-type-archive-product ul.products::after { display: none; }
.woocommerce.archive ul.products li.product,
.post-type-archive-product ul.products li.product { width: auto; margin: 0; float: none; }
@media (max-width: 1099px) {
	.woocommerce.archive ul.products, .post-type-archive-product ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.woocommerce.archive ul.products, .post-type-archive-product ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 14px; }
}

/* 9. Categorie: titolo H1 discreto e barra risultati/ordinamento su una riga */
.woocommerce-products-header { margin: 0 0 18px; }
.woocommerce-products-header__title.page-title {
	margin: 0;
	font-size: clamp(24px, 2.2vw, 30px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.015em;
	color: var(--tt-text);
}
.woocommerce .term-description { max-width: 72ch; margin-top: 6px; color: var(--tt-text-2); }
.woocommerce .neve-main .nv-shop { display: flex; flex-wrap: wrap; align-items: center; column-gap: 16px; }
.woocommerce .neve-main .nv-shop > * { flex: 1 1 100%; }
.woocommerce .neve-main .nv-shop > .nv-bc-count-wrap { order: 1; }
.woocommerce .neve-main .nv-shop > .woocommerce-products-header { order: 2; }
.woocommerce .neve-main .nv-shop > .nv-woo-filters { order: 3; flex: 0 1 auto; margin: 0 0 24px; }
.woocommerce .neve-main .nv-shop > .woocommerce-notices-wrapper,
.woocommerce .neve-main .nv-shop > ul.products,
.woocommerce .neve-main .nv-shop > nav.woocommerce-pagination { order: 4; }
.woocommerce .nv-bc-count-wrap { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 16px; margin-bottom: 12px; }
.woocommerce .nv-bc-count-wrap .woocommerce-result-count { margin: 0; }
.woocommerce .woocommerce-ordering { margin: 0; }
@media (max-width: 767px) {
	.woocommerce .nv-bc-count-wrap { margin-bottom: 8px; }
	.woocommerce-products-header { margin-bottom: 12px; }
	.woocommerce .neve-main .nv-shop > .nv-woo-filters { margin-bottom: 18px; }
	.woocommerce .woocommerce-ordering select { height: 40px; }
}

/* 3. Pulsanti flottanti: Telegram resta azzurro ma senza alone; su mobile piu' piccolo e
      piu' in basso, cosi' non copre contenuti; "torna su" scuro, freccia oro, stesso asse. */
.chaty-widget .chaty-svg { box-shadow: 0 4px 12px rgba(0, 0, 0, .35); }
#scroll-to-top.scroll-to-top {
	right: 24px;
	bottom: 96px;
	width: 40px;
	height: 40px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--tt-surface-2);
	color: var(--tt-gold-light);
	border: 1px solid var(--tt-line-2);
	border-radius: 50%;
}
#scroll-to-top.scroll-to-top svg { fill: currentColor; }
#scroll-to-top.scroll-to-top:hover { border-color: var(--tt-gold); background: var(--tt-surface); }
@media (max-width: 767px) {
	/* plugin: Chaty fissa 54px con stili propri */
	.chaty-widget .chaty-channel,
	.chaty-widget .chaty-channel .chaty-icon,
	.chaty-widget .chaty-channel .chaty-svg,
	.chaty-widget .chaty-channel svg,
	.chaty-widget .chaty-i-trigger .chaty-channel { width: 44px !important; height: 44px !important; }
	.chaty-widget { bottom: 14px !important; right: 12px !important; }
	#scroll-to-top.scroll-to-top { right: 14px; bottom: 70px; width: 40px; height: 40px; }
	/* spazio in fondo cosi' l'ultima riga di testo non finisce sotto i pulsanti */
	body { padding-bottom: 0; }
	.site-footer .footer-bottom .footer--row-inner { padding-bottom: 72px; }
}

/* 4. Schede prodotto: prezzi allineati anche quando un prodotto non ha stelline */
.woocommerce ul.products li.product .woocommerce-loop-product__link:not(:has(.star-rating)) .price { margin-top: 19px; }

/* 5. Pagina prodotto: galleria piu' ordinata */
.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs { margin-inline: 0; }
@media (min-width: 960px) {
	/* prezzo e pulsanti restano a vista mentre si scorrono le foto */
	.single-product div.product .summary.entry-summary { position: sticky; top: 24px; }
}
@media (max-width: 959px) {
	/* miniature su una sola riga scorrevole: il pulsante d'acquisto sale di centinaia di px */
	.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
		display: grid;
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: calc((100% - 3 * 8px) / 4.5);
		gap: 8px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		padding-bottom: 2px;
	}
	.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar { display: none; }
	.woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li { scroll-snap-align: start; }
	.single-product div.product .summary .product_title { font-size: 24px; }
	.single-product div.product .summary .price { margin-bottom: 16px; font-size: 26px; }
}
.single-product div.product form.cart .quantity { margin: 0; }
.woocommerce.single-product div.product form.cart .quantity .qty { height: 52px; margin: 0; }
.woocommerce.single-product div.product form.cart :is(.single_add_to_cart_button, .jt-buy-now) { min-height: 52px; }

/* 6. Pagine informative: niente rientro del tema sotto le etichette */
.nv-content-wrap.entry-content .jt-facts dd { padding-left: 0; }

/* 7. Header: badge del carrello sull'icona; mobile piu' compatto */
.header .builder-item--header_cart_icon .cart-icon-wrapper { position: relative; }
.header .builder-item--header_cart_icon .cart-count {
	position: absolute;
	top: 3px;
	right: -2px;
	left: auto;
	bottom: auto;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 9px;
	font-size: 11px;
	line-height: 18px;
	text-align: center;
}
@media (max-width: 959px) {
	.header-top .nv-html-content { font-size: 10.5px; line-height: 1.4; }
	.header-top .header--row-inner { padding-block: 5px; }
	.header-main .header--row-inner { padding-block: 4px; }
	.header-main .site-logo img { max-height: 38px; }
	.header-main .navbar-toggle { border-color: transparent; }
	.header-bottom .header--row-inner { padding-block: 0 8px; }
	.header-bottom .aws-container .aws-search-form { height: 40px; }
}

/* 8. Carrello e checkout */
.woocommerce :is(#shipping_method, #payment) input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	flex: none;
	width: 18px;
	height: 18px;
	margin: 0 8px 0 0;
	border: 1.5px solid var(--tt-line-2);
	border-radius: 50%;
	background: var(--tt-surface-2);
	vertical-align: -3px;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease;
}
.woocommerce :is(#shipping_method, #payment) input[type="radio"]:checked {
	border-color: var(--tt-gold);
	background: var(--tt-gold);
	box-shadow: inset 0 0 0 4px var(--tt-surface-2);
}
.woocommerce :is(#shipping_method, #payment) input[type="radio"]:focus-visible { outline: 2px solid var(--tt-gold-light); outline-offset: 2px; }
.woocommerce ul#shipping_method li label { color: var(--tt-text-2); }
/* pulsanti secondari bordati: un solo stile, come "Buy now" */
.woocommerce :is(button[name="apply_coupon"], .woocommerce-info .button, .woocommerce-info a.showcoupon, .woocommerce-info a.showlogin) {
	border: 1.5px solid var(--tt-gold);
	border-radius: var(--tt-r-control);
	background: transparent;
	color: var(--tt-gold-light);
}
.woocommerce button[name="apply_coupon"]:hover { background: var(--tt-gold); color: var(--tt-on-gold); }
.woocommerce .woocommerce-info :is(a.showcoupon, a.showlogin) { padding: 6px 12px; text-decoration: none; }
.woocommerce .woocommerce-info :is(a.showcoupon, a.showlogin):hover { background: var(--tt-gold); color: var(--tt-on-gold); }
/* "Update cart" disattivato: discreto invece di una barra oro opaca */
.woocommerce button[name="update_cart"]:disabled,
.woocommerce button[name="update_cart"][disabled] {
	background: transparent;
	border: 1px solid var(--tt-line-2);
	color: var(--tt-muted);
	opacity: 1;
	cursor: default;
}
/* tabella del carrello: intestazioni piccole e nomi prodotto senza sottolineatura */
.woocommerce table.shop_table thead th {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--tt-muted);
}
.woocommerce table.shop_table td.product-name a { text-decoration: none; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--tt-gold-light); }
@media (max-width: 767px) {
	.wc-proceed-to-checkout .checkout-button { display: flex; justify-content: center; width: 100%; }
	.woocommerce-checkout #place_order { width: 100%; min-height: 52px; }
	/* checkout: le spedizioni su righe intere, leggibili, invece che su tre righe strette */
	.woocommerce-checkout-review-order-table .woocommerce-shipping-totals :is(th, td) { display: block; width: 100%; text-align: left; }
	.woocommerce-checkout-review-order-table .woocommerce-shipping-totals th { padding-bottom: 4px; border-bottom: 0; }
	.woocommerce ul#shipping_method { margin: 0; }
	.woocommerce ul#shipping_method li { display: flex; align-items: center; text-align: left; }
	.woocommerce-checkout #payment ul.payment_methods li { padding-block: 2px; }
	.woocommerce-checkout #payment div.payment_box { margin-block: 8px 12px; }
}

/* 10. Contatti: modulo nella stessa larghezza del resto, pulsante allineato a sinistra */
.jt-contact-mail-sec > .elementor-container { max-width: 960px; }
.jt-contact-mail-sec .elementor-field-type-submit { justify-content: flex-start; }

/* Dettagli: separatori dei badge in alto con spazi uguali */
.header-top .nav-ul .tt-top-badge + .tt-top-badge::before { margin-inline: 0 14px; }
.header-top .builder-item--secondary-menu .nav-ul { gap: 0 14px; }
.site-footer .footer-top .footer--row-inner { padding-block: 36px 28px; }
/* titolo a sinistra e ordinamento a destra sulla stessa riga */
.woocommerce .neve-main .nv-shop > .woocommerce-products-header { flex: 1 1 auto; margin: 0 0 24px; }
.woocommerce .neve-main .nv-shop > .nv-woo-filters { flex: 0 0 auto; margin: 0 0 24px; }
@media (max-width: 767px) {
	.woocommerce .neve-main .nv-shop > .woocommerce-products-header,
	.woocommerce .neve-main .nv-shop > .nv-woo-filters { margin-bottom: 18px; }
}
/* il tema limita il catalogo al 70% con questo selettore: stesso selettore, tutta la larghezza */
@media (min-width: 960px) {
	.archive.woocommerce .neve-main > .shop-container .nv-shop.col { max-width: 100%; }
}
.woocommerce .nv-bc-count-wrap { align-items: center; }
.woocommerce .neve-main .nv-shop > nav.woocommerce-pagination { margin-top: 48px; }
.woocommerce ul.products li.product .woocommerce-loop-product__link:not(:has(.star-rating)) .price { margin-top: 25px; }
/* schede prodotto: foto nitide (600px) con lo stesso taglio quadrato delle vecchie miniature */
.woocommerce ul.products li.product .sp-product-image img,
.elementor-wc-products ul.products li.product .sp-product-image img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
/* mobile: quantita' e "Add to cart" sulla stessa riga, "Buy now" sotto a tutta larghezza */
.woocommerce.single-product div.product form.cart .quantity { position: static; left: auto; transform: none; flex: 0 0 72px; }
@media (max-width: 599px) {
	.woocommerce.single-product div.product form.cart .quantity + .single_add_to_cart_button { flex: 1 1 0; min-width: 0; }
	.woocommerce.single-product div.product form.cart .jt-buy-now { flex: 1 1 100%; }
}
/* il clearfix di WooCommerce dentro la fila flessibile creava un rientro di 10px prima della quantita' */
.woocommerce.single-product div.product form.cart::before,
.woocommerce.single-product div.product form.cart::after { display: none; }
/* carrello: stessi stili, con la specificita' necessaria a superare quelli del tema */
.woocommerce-cart .woocommerce-cart-form button.button[name="update_cart"]:disabled,
.woocommerce-cart .woocommerce-cart-form button.button[name="update_cart"][disabled] {
	background: transparent;
	border: 1px solid var(--tt-line-2);
	color: var(--tt-muted);
	opacity: 1;
	box-shadow: none;
}
.woocommerce-cart .woocommerce-cart-form .coupon button.button[name="apply_coupon"] {
	background: transparent;
	border: 1.5px solid var(--tt-gold);
	color: var(--tt-gold-light);
	border-radius: var(--tt-r-control);
}
.woocommerce-cart .woocommerce-cart-form .coupon button.button[name="apply_coupon"]:hover { background: var(--tt-gold); color: var(--tt-on-gold); }
/* pulsanti secondari di Neve (bordati): stesso bordo e raggio di "Buy now" in tutto il sito */
body { --secondarybtnborderwidth: 1.5px; --secondarybtnborderradius: var(--tt-r-control); --secondarybtncolor: var(--tt-gold-light); --secondarybtnhovercolor: var(--tt-gold-hover); }
.woocommerce-cart .woocommerce table.shop_table.cart thead th,
.woocommerce-cart .woocommerce-cart-form table.shop_table thead th { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--tt-muted); }
.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-name a { color: var(--tt-text); text-decoration: none; }
.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-name a:hover { color: var(--tt-gold-light); }
.woocommerce-cart .woocommerce-cart-form td.actions button[name="update_cart"] { min-height: 46px; }
/* caselle di spunta del checkout: scure, oro quando spuntate (come i pallini di scelta) */
.woocommerce form input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	flex: none;
	width: 18px;
	height: 18px;
	margin: 0 8px 0 0;
	border: 1.5px solid var(--tt-line-2);
	border-radius: 4px;
	background: var(--tt-surface-2) center / 12px no-repeat;
	vertical-align: -3px;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease;
}
.woocommerce form input[type="checkbox"]:checked {
	border-color: var(--tt-gold);
	background-color: var(--tt-gold);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b0b0c' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E");
}
.woocommerce form input[type="checkbox"]:focus-visible { outline: 2px solid var(--tt-gold-light); outline-offset: 2px; }

/* TrustyTime: rifinitura visiva 9 ottobre 2026. Struttura e palette esistenti. */
.header-main .header--row-inner > .container,
.header-top .header--row-inner > .container { max-width: 1320px; margin-inline: auto; }
.header-main .site-logo img { filter: none; }
.header-main .builder-item--primary-menu .nav-ul > li > .wrap > a { font-weight: 600; }
.aws-container .aws-search-form:focus-within { border-color: var(--tt-gold); box-shadow: 0 0 0 3px rgb(173 143 91 / 12%); }
.home .elementor-widget-image a { display: block; border-radius: var(--tt-r-surface); overflow: hidden; outline: 1px solid rgb(226 196 142 / 10%); outline-offset: -1px; }
.home .elementor-widget-image a img { display: block; width: 100%; }
.jt-home-brands { margin-top: 32px; margin-bottom: 24px; }
.jt-home-brands__title { display: flex; align-items: center; gap: 18px; margin-bottom: 18px; }
.jt-home-brands__title::after { content: ''; flex: 1; height: 1px; background: var(--tt-line); }
.jt-home-brands__link { background: #111113; height: 88px; border-color: #303034; }
.home .elementor-wc-products ul.products { column-gap: 22px; row-gap: 32px; }
.home .elementor-wc-products ul.products li.product { padding: 10px 10px 16px; border: 1px solid var(--tt-line); border-radius: 14px; background: #111113; transition: border-color .18s ease; }
.home .elementor-wc-products ul.products li.product .woocommerce-loop-product__title { font-size: 14px; line-height: 1.5; min-height: 3em; margin: 14px 2px 8px; font-weight: 500; }
.home .elementor-wc-products ul.products li.product .price { margin-inline: 2px; font-size: 18px; line-height: 1.4; }
.home .elementor-wc-products ul.products li.product .price del { font-size: 12px; }
.home .elementor-wc-products ul.products li.product .star-rating { margin-left: 2px; }
.home .elementor-element-c6ba02c .elementor-heading-title { max-width: 680px; margin-inline: auto; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.35; font-weight: 500; letter-spacing: -.025em; }
.site-footer { border-top: 1px solid var(--tt-line); }
.site-footer .widget-title { letter-spacing: .1em; font-size: 12px; }
@media (hover:hover) and (pointer:fine) {
 .home .elementor-wc-products ul.products li.product:hover { border-color: var(--tt-gold); }
}
@media (max-width: 767px) {
 .jt-home-brands { margin-top: 24px; margin-bottom: 18px; }
 .jt-home-brands__link { height: 76px; padding: 12px; }
 .home .elementor-wc-products ul.products { column-gap: 12px; row-gap: 18px; }
 .home .elementor-wc-products ul.products li.product { padding: 7px 7px 12px; border-radius: 10px; }
 .home .elementor-wc-products ul.products li.product .woocommerce-loop-product__title { font-size: 12px; margin-top: 10px; }
 .home .elementor-wc-products ul.products li.product .price { font-size: 16px; gap: 2px 5px; }
 .home .elementor-wc-products ul.products li.product .price del { font-size: 11px; }
 .header-top .header--row-inner { padding-block: 3px; }
}
@media (prefers-reduced-motion: reduce) {
 .home .elementor-wc-products ul.products li.product { transition: none; }
}
/* Elementor imposta raggi e titoli per widget: override circoscritti. */
.home .elementor-wc-products ul.products li.product { border-radius: 14px !important; }
.home .elementor-section:has(h3.elementor-heading-title) h3.elementor-heading-title { max-width: 680px; margin-inline: auto; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.35; font-weight: 500; letter-spacing: -.025em; }
@media (max-width:767px) { .home .elementor-wc-products ul.products li.product { border-radius: 10px !important; } }

/* Barra promozionale compatta; lingue a destra, promozione al centro. */
.header-top .header--row-inner { padding-block: 0; }
.header-top .row--wrapper { position: relative; min-height: 40px; }
.header-top .nv-html-content { display:flex; align-items:center; gap:16px; }
.header-top .tt-promotion { position:absolute; left:50%; transform:translateX(-50%); white-space:nowrap; font-size:11px; }
.header-top .dk-lang { margin:0; }
.header-top .builder-item { margin-block:0; }
.header-main .site-logo img { width:180px; height:54px; object-fit:contain; }
@media (min-width:960px) {
 .header-main .nav-ul > .tt-catalog-menu { position:relative; }
 .header-main .nav-ul > .tt-catalog-menu > .sub-menu { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:760px; max-width:calc(100vw - 48px); padding:16px; gap:4px 10px; max-height:calc(100vh - 180px); overflow-y:auto; }
 .header-main .nav-ul > .tt-catalog-menu > .sub-menu > li { width:auto; min-width:0; }
 .header-main .nav-ul > .tt-catalog-menu > .sub-menu > li > .wrap > a { padding:12px; font-size:14px; border-radius:6px; white-space:normal; line-height:1.4; }
}
@media (max-width:959px) {
 .header-top .row--wrapper { min-height:58px; }
 .header-top .nv-html-content { flex-direction:column; gap:3px; padding-block:5px; }
 .header-top .tt-promotion { position:static; transform:none; white-space:normal; font-size:10px; line-height:1.4; }
 .header-main .site-logo img { width:160px; height:48px; max-height:48px; }
 .header-menu-sidebar .tt-catalog-menu > .sub-menu { grid-template-columns:repeat(2,minmax(0,1fr)); padding:8px 0; gap:4px; }
 .header-menu-sidebar .tt-catalog-menu.dropdown-open > .sub-menu { display:grid; }
 .header-menu-sidebar .tt-catalog-menu > .sub-menu li { min-width:0; }
 .header-menu-sidebar .tt-catalog-menu > .sub-menu li a { font-size:13px; padding:10px; line-height:1.4; }
}
@media (min-width:960px) {
 .header-top .hfg-slot.right { position:absolute; inset:0; display:flex; justify-content:center; pointer-events:none; }
 .header-top .hfg-slot.right .builder-item, .header-top .hfg-slot.right .item--inner { width:100%; margin:0; position:static; }
 .header-top .nv-html-content { position:static; width:100%; height:40px; justify-content:center; }
 .header-top .tt-promotion { position:static; transform:none; }
 .header-top .dk-lang { position:absolute; right:15px; pointer-events:auto; }
}
.home :is(.elementor-element-c6ba02c,.elementor-element-f71a4fb,.elementor-element-57b7088) { display:none; }
@media (max-width:959px) {
 .header-menu-sidebar .tt-catalog-menu > .sub-menu.dropdown-open { display:grid; }
 .header-menu-sidebar .tt-catalog-menu > .sub-menu.dropdown-open > li { width:auto; }
}

/* Descrizioni prodotto: specifiche leggibili sulla palette scura. */
.woocommerce.single-product #tab-description { max-width:960px; width:100%; margin:0 auto 40px; padding:28px 0; color:var(--tt-text-2); font-size:15px; line-height:1.7; }
.woocommerce.single-product #tab-description > p { max-width:780px; margin:0 0 12px; }
.woocommerce.single-product #tab-description > p:first-child { font-size:clamp(20px,2vw,26px); line-height:1.4; font-weight:600; letter-spacing:-.02em; color:var(--tt-text); margin-bottom:8px; }
.woocommerce.single-product #tab-description .dk-specs { max-width:none; margin:24px 0 0; border:1px solid var(--tt-line); border-radius:12px; overflow:hidden; background:var(--tt-surface); font-size:15px; line-height:1.65; }
.woocommerce.single-product #tab-description .dk-spec { display:grid; grid-template-columns:200px minmax(0,1fr); border-top:1px solid var(--tt-line); background:var(--tt-surface); }
.woocommerce.single-product #tab-description .dk-spec:first-child { border-top:0; }
.woocommerce.single-product #tab-description .dk-spec:nth-child(even) { background:#18181a; }
.woocommerce.single-product #tab-description .dk-spec-k { padding:18px 22px; border-right:0; color:var(--tt-gold-light); font-size:11px; font-weight:600; letter-spacing:.08em; line-height:1.7; }
.woocommerce.single-product #tab-description .dk-spec-v { min-width:0; padding:16px 24px 16px 10px; color:var(--tt-text-2); overflow-wrap:anywhere; }
.woocommerce.single-product #tab-description .dk-spec-note { display:block; padding:16px 22px; color:var(--tt-text-2); background:var(--tt-surface-2); }
.woocommerce.single-product #tab-description :is(table,table tbody,table tr,table td,table th) { border-color:var(--tt-line); background:var(--tt-surface); color:var(--tt-text-2); }
.woocommerce.single-product #tab-description table { width:100%; margin-top:24px; font-size:15px; }
.woocommerce.single-product #tab-description :is(td,th) { padding:16px 20px; line-height:1.65; }
.woocommerce.single-product #tab-description :is(td,th):first-child { color:var(--tt-gold-light); }
@media (max-width:600px) {
 .woocommerce.single-product #tab-description { padding:18px 0; font-size:14px; }
 .woocommerce.single-product #tab-description .dk-spec { grid-template-columns:1fr; }
 .woocommerce.single-product #tab-description .dk-spec-k { padding:14px 16px 4px; font-size:10px; }
 .woocommerce.single-product #tab-description .dk-spec-v { padding:0 16px 16px; font-size:14px; line-height:1.65; }
 .woocommerce.single-product #tab-description .dk-spec-note { padding:14px 16px; font-size:14px; }
 .woocommerce.single-product #tab-description :is(td,th) { padding:12px; font-size:13px; }
}

/* Claim mobile: uno ogni quattro secondi, lingue a destra e promo sotto. */
.tt-mobile-claims { display:none; }
@media (max-width:959px) {
 .header-top .nv-html-content { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 8px; padding-block:6px; width:100%; }
 .header-top .hfg-slot.center, .header-top .hfg-slot.center > .builder-item { width:100%; min-width:0; }
 .header-top .tt-mobile-claims { display:block; position:relative; grid-column:1; grid-row:1; height:22px; margin:0; padding:0; list-style:none; min-width:0; text-align:left; }
 .tt-mobile-claims li { position:absolute; inset:0; display:flex; align-items:center; gap:6px; margin:0; font-size:10px; line-height:1.3; color:var(--tt-text-2); visibility:hidden; animation:tt-claim-rotate 12s steps(1,end) infinite; }
 .tt-mobile-claims li:nth-child(2) { animation-delay:-8s; }
 .tt-mobile-claims li:nth-child(3) { animation-delay:-4s; }
 .tt-mobile-claims svg { width:14px; height:14px; flex:none; color:var(--tt-gold-light); }
 .header-top .dk-lang { grid-column:2; grid-row:1; gap:1px; }
 .header-top .dk-lang a { font-size:10px; padding:3px 4px; }
 .header-top .tt-promotion { grid-column:1 / -1; grid-row:2; text-align:center; }
}
@keyframes tt-claim-rotate { 0%,32.99% { visibility:visible; } 33.33%,100% { visibility:hidden; } }
@media (max-width:959px) and (prefers-reduced-motion:reduce) {
 .header-top .tt-mobile-claims { height:auto; display:flex; flex-wrap:wrap; gap:4px 12px; }
 .tt-mobile-claims li { animation:none; position:static; visibility:visible; }
}

/* Footer contatti: icone email e Telegram. */
.tt-foot-contact { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; color: var(--tt-text-2); }
.tt-foot-contact a { color: var(--tt-text); text-decoration: none; }
.tt-foot-contact a:hover { color: var(--tt-gold-light); }
.tt-foot-ic { position: relative; flex: none; width: 34px; height: 34px; border-radius: 50%; }
.tt-foot-ic::before { content: ""; position: absolute; inset: 0; margin: auto; width: 18px; height: 18px; background: currentColor; -webkit-mask: var(--tt-ic) center / contain no-repeat; mask: var(--tt-ic) center / contain no-repeat; }
.tt-foot-contact--mail .tt-foot-ic { background: linear-gradient(145deg, var(--tt-gold-light), var(--tt-gold)); color: var(--tt-on-gold, #141416); --tt-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2.5'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E"); }
.tt-foot-contact--tg .tt-foot-ic { background: #2aabee; color: #fff; --tt-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.6 3.6 2.9 10.8c-1.3.5-1.3 1.2-.2 1.6l4.8 1.5 1.8 5.6c.2.6.4.8.9.8.4 0 .6-.2.9-.4l2.3-2.2 4.7 3.5c.9.5 1.5.2 1.7-.8l3.1-14.6c.3-1.3-.5-1.9-1.3-1.5zM9.5 14.3l8.6-5.4c.4-.3.8-.1.5.2l-7.1 6.4-.3 3.1-1.7-4.3z'/%3E%3C/svg%3E"); }
.tt-foot-ic::before { width: 17px; height: 17px; }
.tt-foot-contact--tg .tt-foot-ic::before { transform: translateX(-1px); }

/* Footer compatto: niente spazio vuoto sotto i widget, copyright più piccolo. */
.site-footer .footer-top .footer--row-inner { padding-block: 28px 12px; }
.site-footer .nv-footer-content { min-height: 0; }
.site-footer .footer-top .widget:last-child { margin-bottom: 0; }
.site-footer .footer-bottom .builder-item { margin-block: 0; }
.site-footer .footer-top .builder-item > .item--inner { padding-top: 0; }
.site-footer .footer-top .widget { margin-bottom: 16px; }
.site-footer object[data*="load-selzy"] { height: 160px !important; }
.site-footer .footer-bottom .footer--row-inner { padding-block: 12px; }
.site-footer .footer-bottom :is(.widget, .textwidget, p) { font-size: 12.5px; line-height: 1.5; margin: 0; }
@media (max-width: 959px) {
	.site-footer .footer-top .footer--row-inner { padding-block: 24px 8px; }
	.site-footer .footer-bottom .footer--row-inner { padding-block: 10px 72px; }
}

/* Recensioni: il modulo per lasciarne di nuove non si vede (matrice 12/10). */
.woocommerce-Reviews #review_form_wrapper { display: none; }
/* Store Setup → Telegram: al posto di "@username" può esserci un link. */
.dk-contact .dk-contact__tg-handle a { color: inherit !important; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* JT Rocket (13/10/2026): lo stile usato viene prima dello stile inline di Neve, quindi lo stesso selettore non basta più
   e il catalogo restava al 70% fino al primo gesto. Con "body" davanti vince sempre. */
@media (min-width: 960px) {
	body.archive.woocommerce .neve-main > .shop-container .nv-shop.col { max-width: 100%; }
}
