.elementor-20434 .elementor-element.elementor-element-2d8694e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20434 .elementor-element.elementor-element-fc5521f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20434 .elementor-element.elementor-element-6059e3f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-20434 .elementor-element.elementor-element-33e86d6 .elementor-search-form{text-align:center;}.elementor-20434 .elementor-element.elementor-element-33e86d6 .elementor-search-form__toggle{--e-search-form-toggle-size:33px;}.elementor-20434 .elementor-element.elementor-element-33e86d6:not(.elementor-search-form--skin-full_screen) .elementor-search-form__container{border-radius:3px;}.elementor-20434 .elementor-element.elementor-element-33e86d6.elementor-search-form--skin-full_screen input[type="search"].elementor-search-form__input{border-radius:3px;}.elementor-20434 .elementor-element.elementor-element-488d6af{--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--cart-border-style:none;--cart-footer-layout:1fr;--products-max-height-sidecart:calc(100vh - 300px);--products-max-height-minicart:calc(100vh - 450px);}.elementor-20434 .elementor-element.elementor-element-488d6af .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-20434 .elementor-element.elementor-element-df94c74 .elementor-icon-wrapper{text-align:center;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS */.elementor-20434 .tdp-header { position: relative; z-index: 100; height: 90px; padding: 0 5% !important; box-sizing: border-box; }
.elementor-20434 .tdp-header__bar { background: #FCE8BD; border: 1px solid transparent; border-top: 0; border-radius: 0 0 30px 30px; height: 90px; padding: 0 30px !important; gap: 24px !important; flex-wrap: nowrap !important; box-sizing: border-box; transition: height .25s ease, box-shadow .25s ease; }
.elementor-20434 .tdp-header.is-sticky .tdp-header__bar { position: fixed; top: 0; left: 5%; right: 5%; width: auto !important; --width: auto; height: 76px; border-color: #164725; box-shadow: 0 8px 24px rgba(0, 0, 0, .08); animation: tdpHeaderDown .35s ease; z-index: 1000; }
body.admin-bar .elementor-20434 .tdp-header.is-sticky .tdp-header__bar { top: 32px; }
@keyframes tdpHeaderDown { from { transform: translateY(-110%); } to { transform: none; } }
.elementor-20434 .tdp-header__js { display: none; }
.elementor-20434 .tdp-header__logo { flex: 0 0 auto; width: auto !important; }
.elementor-20434 .tdp-header__logo img { height: 86px; width: auto; max-width: none; display: block; transition: height .25s ease; }
.elementor-20434 .tdp-header.is-sticky .tdp-header__logo img { height: 66px; }

/* menu principale */
.elementor-20434 .tdp-nav { flex: 1 1 auto; width: auto !important; }
.elementor-20434 .tdp-nav ul { list-style: none; margin: 0; padding: 0; }
.elementor-20434 .tdp-nav ul.menu { display: flex; justify-content: center; align-items: center; gap: 2px; }
.elementor-20434 .tdp-nav ul.menu > li { position: relative; }
.elementor-20434 .tdp-nav ul.menu > li > a { display: block; padding: 32px 12px; font-family: Averta, sans-serif; font-size: 18px; font-weight: 600; line-height: 26px; color: #1D1D1F; white-space: nowrap; transition: color .2s; }
.elementor-20434 .tdp-header.is-sticky .tdp-nav ul.menu > li > a { padding-top: 25px; padding-bottom: 25px; }
.elementor-20434 .tdp-nav ul.menu > li > a:hover, .elementor-20434 .tdp-nav ul.menu > li.current-menu-item > a, .elementor-20434 .tdp-nav ul.menu > li.current-menu-ancestor > a { color: #164725; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 7px; }
.elementor-20434 .tdp-nav .qodef-menu-item-arrow, .elementor-20434 .tdp-side-nav .qodef-menu-item-arrow { display: none !important; }
.elementor-20434 .tdp-nav ul.menu > li.menu-item-has-children > a::after { content: ""; display: inline-block; width: 6px; height: 6px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin: 0 0 4px 8px; }
.elementor-20434 .tdp-nav .sub-menu { position: absolute; top: calc(100% - 14px); left: 50%; transform: translate(-50%, 10px); min-width: 250px; padding: 16px 0; background: #fff; border: 1px solid rgba(22, 71, 37, .12); border-radius: 18px; box-shadow: 0 16px 40px rgba(0, 0, 0, .12); opacity: 0; visibility: hidden; transition: opacity .2s ease, transform .2s ease, visibility .2s; z-index: 20; }
.elementor-20434 .tdp-nav ul.menu > li:hover > .sub-menu, .elementor-20434 .tdp-nav ul.menu > li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.elementor-20434 .tdp-nav .sub-menu a { display: block; padding: 6px 24px; font-family: Averta, sans-serif; font-size: 15px; font-weight: 400; line-height: 21px; color: #1D1D1F; transition: color .15s, background .15s; }
.elementor-20434 .tdp-nav .sub-menu a:hover, .elementor-20434 .tdp-nav .sub-menu li.current-menu-item > a { color: #164725; background: #FCE8BD; }
/* gruppi (2° livello con figli): titolo verde in grassetto e voci di 3° livello sempre visibili, niente sottomenu a cascata */
.elementor-20434 .tdp-nav .sub-menu li.menu-item-has-children { break-inside: avoid; padding-bottom: 8px; }
.elementor-20434 .tdp-nav .sub-menu li.menu-item-has-children > a { font-weight: 700; color: #164725; }
.elementor-20434 .tdp-nav .sub-menu .sub-menu { position: static; left: auto; transform: none; opacity: 1; visibility: inherit; min-width: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: none; }
.elementor-20434 .tdp-nav .sub-menu .sub-menu a { padding: 4px 24px 4px 36px; font-size: 14px; }
/* menu con molti gruppi (Taralli): pannello largo a 3 colonne; le voci con classe tdp-col-break (dal menu WP) aprono una colonna */
.elementor-20434 .tdp-nav ul.menu > li:has(> .sub-menu > li:nth-child(6)):has(> .sub-menu > li > .sub-menu) > .sub-menu { width: min(780px, 88vw); columns: 3; column-gap: 8px; padding: 22px 8px; }
.elementor-20434 .tdp-nav .sub-menu > li.tdp-col-break { break-before: column; }
.elementor-20434 .tdp-nav ul.menu > li:has(> .sub-menu > li:nth-child(6)):has(> .sub-menu > li > .sub-menu) > .sub-menu > li { break-inside: avoid; padding-bottom: 8px; }
.elementor-20434 .tdp-nav ul.menu > li:has(> .sub-menu > li:nth-child(6)):has(> .sub-menu > li > .sub-menu) > .sub-menu > li > a { font-weight: 700; color: #164725; }

/* azioni */
.elementor-20434 .tdp-header__actions { flex: 0 0 auto; width: auto !important; gap: 18px !important; flex-wrap: nowrap !important; }
.elementor-20434 .tdp-header__actions > .elementor-element { width: auto !important; margin: 0 !important; }
.elementor-20434 .tdp-search .elementor-search-form__toggle { --e-search-form-toggle-size: 34px; --e-search-form-toggle-color: #1D1D1F; --e-search-form-toggle-background-color: transparent; --e-search-form-toggle-icon-size: 20px; }
.elementor-20434 .tdp-search .elementor-search-form__toggle:hover { --e-search-form-toggle-color: #164725; }
.elementor-20434 .tdp-cart .elementor-menu-cart__toggle .elementor-button { background: transparent; border: 0; padding: 4px; color: #1D1D1F; }
.elementor-20434 .tdp-cart .elementor-menu-cart__toggle .elementor-button:hover { color: #164725; }
.elementor-20434 .tdp-cart .elementor-menu-cart__toggle .elementor-button-icon { font-size: 22px; }
.elementor-20434 .tdp-cart .elementor-menu-cart__toggle .elementor-button-text { display: none; }
.elementor-20434 .tdp-cart .elementor-menu-cart__toggle .elementor-button-icon-qty { background: #164725 !important; color: #FCE8BD !important; font-size: 10px; font-weight: 700; min-width: 17px; height: 17px; line-height: 17px; }
/* pulsanti del carrello laterale: uno sotto l'altro, stile dei pulsanti del sito */
.elementor-20434 .tdp-cart .elementor-menu-cart__footer-buttons { display: grid; grid-template-columns: 1fr; gap: 12px; }
.elementor-20434 .tdp-cart .elementor-menu-cart__footer-buttons .elementor-button { background: #164725 !important; color: #FCE8BD !important; border: 3px solid #164725 !important; border-radius: 60px !important; padding: 15px 30px !important; font-family: Averta, sans-serif; font-size: 16px; font-weight: 800; line-height: 1.2; text-align: center; transition: background .3s, color .3s; }
.elementor-20434 .tdp-cart .elementor-menu-cart__footer-buttons .elementor-button:hover { background: #FCE8BD !important; color: #164725 !important; }
.elementor-20434 .tdp-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart { background: transparent !important; color: #164725 !important; }
.elementor-20434 .tdp-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover { background: #164725 !important; color: #FCE8BD !important; }
.elementor-20434 .tdp-lang .wpml-ls { padding: 0 !important; margin: 0; border: 0; background: none; line-height: 1; }
.elementor-20434 .tdp-lang ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 8px; }
.elementor-20434 .tdp-lang li { padding: 0 !important; margin: 0 !important; }
.elementor-20434 .tdp-lang .wpml-ls-current-language { display: none !important; }
.elementor-20434 .tdp-lang a { display: block; padding: 4px 0 !important; }
.elementor-20434 .tdp-lang img { width: 20px !important; height: 14px !important; padding: 0 !important; object-fit: cover; display: block; }
.elementor-20434 .tdp-burger .elementor-icon { font-size: 24px; color: #1D1D1F; display: block; line-height: 1; }
.elementor-20434 .tdp-burger .elementor-icon:hover { color: #164725; }

/* "header sopra il contenuto" senza Webon: classe body tdp-header-overlay dal mu-plugin tdp-theme-bridge.php, solo desktop */
@media (min-width: 1025px) { body.tdp-header-overlay .elementor-20434 .tdp-header { margin-bottom: -90px; } }
/* menu laterale solo su tablet e mobile */
@media (min-width: 1025px) { .elementor-20434 .tdp-burger { display: none !important; } }
/* schermi desktop piccoli: tutto più compatto per non sovrapporre voci e icone */
@media (min-width: 1025px) and (max-width: 1279px) {
	.elementor-20434 .tdp-header { padding: 0 2% !important; }
	.elementor-20434 .tdp-header__bar { padding: 0 20px !important; gap: 16px !important; }
	.elementor-20434 .tdp-header.is-sticky .tdp-header__bar { left: 2%; right: 2%; }
	.elementor-20434 .tdp-header__logo img { height: 70px; }
	.elementor-20434 .tdp-header.is-sticky .tdp-header__logo img { height: 58px; }
	.elementor-20434 .tdp-nav ul.menu > li > a { font-size: 16px; padding-left: 8px; padding-right: 8px; }
	.elementor-20434 .tdp-nav ul.menu > li.menu-item-has-children > a::after { margin-left: 6px; }
	.elementor-20434 .tdp-header__actions { gap: 14px !important; }
}
@media (max-width: 1024px) {
	.elementor-20434 .tdp-header { height: 80px; padding: 0 !important; }
	.elementor-20434 .tdp-header__bar { height: 80px; padding: 0 20px !important; border-radius: 0; border: 0; }
	.elementor-20434 .tdp-header.is-sticky .tdp-header__bar { left: 0; right: 0; height: 68px; border-bottom: 1px solid #164725; }
	.elementor-20434 .tdp-header__logo img { height: 68px; }
	.elementor-20434 .tdp-header.is-sticky .tdp-header__logo img { height: 56px; }
	.elementor-20434 .tdp-nav { display: none; }
	.elementor-20434 .tdp-header__actions { gap: 14px !important; }
}
@media (max-width: 782px) { body.admin-bar .elementor-20434 .tdp-header.is-sticky .tdp-header__bar { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .elementor-20434 .tdp-header.is-sticky .tdp-header__bar { top: 0; } }/* End custom CSS */