/*
Theme Name: 	MonkeysGod Redesign
Description: 	Redesign 2026. Design system monocromo + accento giallo, nav sticky con mega-menu, front-page in PHP. Tema separato da "MonkeysGod" per poter tornare indietro con uno switch. Text domain condiviso: le traduzioni sono le stesse.
Version:     	2.0
Author:     	Roberto Boero
Author URI:
Site:
Text Domain: 	monkeysgod
Domain Path: 	/languages
Tags:        	grid-layout, blog, custom-menu, featured-images, right-sidebar
License:    	GNU General Public License v3.0
License URI:	http://www.gnu.org/licenses/gpl-3.0.html

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

ATTENZIONE — le impostazioni del Customizer sono per-tema. Attivando questo
tema, `theme_mods_monkeysgod-redesign` parte VUOTO: niente logo (custom_logo),
niente CSS aggiuntivo (custom_css_post_id), nessun widget. Le posizioni dei menu
le rimappa WordPress da sole, perche' gli slug coincidono (header, footer,
footer-p). Il logo e i widget vanno riportati a mano, o copiati con WP-CLI:

  wp option get theme_mods_monkeysgod --format=json
  wp option update theme_mods_monkeysgod-redesign '<json>' --format=json

Il CSS aggiuntivo del tema vecchio (post 6332) e' in gran parte codice morto qui:
targhettizza .nav-header, ul.primary e .align-item-center, che non esistono piu'.
L'unica regola ancora viva e' l'evidenziazione della voce di menu `.hashy`, che
ora va scritta come `.nav-anchors a.hashy` (la classe custom della voce viene
propagata sull'ancora, vedi header.php).
*/

* {
  margin: 0;
  padding: 0;
}
body,
html {
  margin: 0;
  padding: 0;
  height: 100%;
}
body.admin-bar .navbar-fixed-top {
  position: fixed;
  top: 32px;
  z-index: 1000;
}

/* ------------------------------------------------------------------------- *
/* ! Base */
/* ------------------------------------------------------------------------- */

/* Typography */
body {
  font-size: 16px;
  line-height: 22px;
  font-family: "Roboto", "Arial", sans-serif;
  font-display: auto;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}

/* Title color */
h1,
h2,
h3,
h4,
h5,
h6 {
  color: #222;
  font-family: "Sorts Mill Goudy", Arial, serif;
}

/* Title size */
.title {
  font-size: 72px;
}
h1,
h2 {
  font-size: 45px;
}
h3 {
  font-size: 27px;
}
h4 {
  font-size: 18px;
  font-weight: bold;
}

.main-title {
  margin: 40px 0 10px;
}
.has-huge-font-size,
.has-larger-font-size {
  color: #862029;
}

/* Link color */
a {
  color: #c5976a;
  text-decoration: none;
}
a:focus,
a:hover {
  color: #3b240e;
}

img {
  height: auto;
}
#main {
  min-height: 50dvh;
}
.grid {
  margin-bottom: 0;
}
.home h1:first-child {
  display: none;
}

/* --------------------------------------------------------------------------------------------------------------------------- */
/* ! Header */
/* --------------------------------------------------------------------------------------------------------------------------- */

.site-claim {
  padding: 5px 20px;
  text-align: center;
  background: #862029;
  color: #fff;
  font-size: 14px;
}
.header .nav-wrap a {
  color: #333;
}
.header .nav-wrap a:hover {
  color: #3b240e;
  text-decoration: underline;
}
.header .nav-wrap .active a {
  color: #c5976a;
  font-weight: bold;
}

.nav-container {
  display: block;
  width: 100%;
  background: #fff;
  float: left;
  justify-content: space-between;
  border-bottom: 5px solid #c5976a;
  align-items: center;
  padding: 0 20px;
  flex-direction: column;
}
.nav-top {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.nav-bottom {
  margin: 1rem 0;
}
.nav-left {
  display: flex;
  align-items: center;
}
.header a.rivenditori {
  color: #c5976a;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 14px;
}

.header #in {
  display: inline-flex;
}
.header #out {
  display: none;
}

.dropdown .fas.fa-chevron-down {
  color: #7b7b7b;
  margin: 3px 0 0 5px;
  font-size: 12px;
}

.logo-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.logo img {
  height: 130px;
  margin-top: 0px;
}
.logo {
  margin: 5px;
  line-height: 1;
  padding: 0;
}
.header .tog {
  position: relative;
  right: 0px;
  top: 54px;
}

.header .search {
  display: flex;
}
.social {
  display: flex;
  align-items: center;
  margin-right: 10px;
}
.header .social a {
  font-size: 24px !important;
  color: #c5976a;
  padding: 5px 10px;
}

/* Stile per search woocommerce */
.dgwt-wcas-search-wrapp {
  display: inline-flex;
  align-items: center;
  margin: 10px 5%;
  min-width: 150px;
  max-width: 250px !important;
}

/* Stile per search wordpress, non woocommerce */
.form-control,
.icon-search {
  display: block;
}
.icon-search {
  padding: 8px 12px;
  margin-left: -5px;
  background: none;
  border: 0px solid #33333310;
  font-size: 18px;
  border-radius: 5px;
  cursor: pointer;
}
.header input.form-control {
  width: 98%;
  margin-right: 10px;
  padding: 10px;
  border: 1px solid #33333310;
  background: none;
  -webkit-appearance: none;
  border-radius: 5px;
  font-size: 14px;
}
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea {
  min-width: 50px;
}

/* minicart */
.minicart {
  list-style-type: none;
  margin: 0px;
  width: 300px;
  overflow: hidden;
  position: fixed;
  z-index: 9998;
  top: 0px;
  right: -300px;
  background: #ffffff;
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.15);
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px 0;
}
.minicart__inside {
  padding: 20px;
  position: relative;
}
.minicart .widget {
  margin-bottom: 0;
}
.minicart .widget li {
  position: relative;
  margin-top: 5px !important;
}
.minicart .widget a {
  border: none;
  padding: 0px 0 0 0;
  color: #000;
}
.minicart .widget a.button {
  padding: 10px;
}
.minicart .widget_shopping_cart .total {
  border-top: 1px solid #dddddd;
  margin-top: 10px;
  padding-top: 20px;
}
.minicart .woocommerce-mini-cart__buttons {
  margin-bottom: 0;
}
.minicart .close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  padding: 20px;
  z-index: 9999;
}
.minicart .close:hover {
  text-decoration: underline;
}

/* minicart bottone*/
.woocommerce-cart .cart-icon,
.woocommerce-checkout .cart-icon {
  display: none;
} /* Nasconde il bottone nelle pagine carello e pagamento*/
.cart-icon {
  display: block;
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 9999;
}
.cart-icon .cart-contents {
  background: #ffffff;
  line-height: 40px;
  text-align: center;
  cursor: pointer;
  color: #333333;
  width: 50px;
  height: 50px;
  border-radius: 100px;
  font-size: 22px;
  line-height: 50px;
  position: relative;
  background: #eeeeee;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cart-icon .cart-contents__number {
  position: absolute;
  height: 20px;
  width: 20px;
  line-height: 22px;
  border-radius: 20px;
  text-align: center;
  font-size: 10px;
  right: -5px;
  bottom: -4px;
  font-weight: bold;
  background: #862029;
  color: #ffffff;
}

.cart--open {
  min-width: 50px;
  right: 0;
}
.woocommerce-mini-cart__buttons {
  margin-bottom: 0;
}

/* ------------------------------------------------------------------------- *
/* ! Modules */
/* ------------------------------------------------------------------------- */
/* ! -- Avviso */
.avviso {
  background: #862029;
  display: flex;
  flex-direction: column;
}
.avviso p {
  margin: 36px 20px 35px 20px;
  vertical-align: middle;
  color: white;
  justify-content: center;
}

/*Cover module style (inc/cover)*/
.cover {
  height: 100vh;
  margin-bottom: 0;
}
h1.has-text-align-center {
  text-align: center;
  padding: 0 20px;
}
div#n2-ss-2 .n2-style-f58d52632d016e4532dc73de3ceef8d2-simple {
  background: #fff !important;
  border-bottom: 1px solid #c5976a11 !important;
}

/* ! -- INTRO */
.side-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.side-intro p {
  margin-bottom: 0;
}

.intro .wp-block-group__inner-container {
  background: #c5976a;
  min-height: 200px;
  position: relative;
}
.intro .text {
  font-size: 18px;
  line-height: 24px;
  padding: 30px;
}
.more {
  display: block;
  position: absolute;
  bottom: 0;
  right: 0px;
  width: 100%;
  margin-bottom: 0;
}
.more a {
  clip-path: polygon(0 100%, 100% 0%, 100% 100%);
  padding: 15px 10px 8px;
  border: 1px solid #c5976a;
  transition: all 0.2s ease-out;
  color: #fff;
  font-weight: bold;
  text-decoration: underline;
  display: block;
}
.more a:hover {
  clip-path: polygon(0 100%, 100% 5%, 100% 100%);
  background: #fff;
  color: #c5976a;
}

/* 'Scopri i nostri protti' button */
.btn-cover {
  display: flex;
  justify-content: center;
}
.btn {
  transition: all 0.4s ease-out;
}
.btn:hover {
  color: #fff;
  background: #862029;
  border: none;
}

/* ! -- Card prodotti widget */
.wc-block-grid__products {
  margin: 0;
}
.wc-block-grid__product {
  border: none;
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 25px;
}
/* ! ____media */
.wc-block-grid__products .wc-block-grid__product-image img {
  width: 100%;
  height: 100%;
}
.wp-block-media-text__media img,
.wp-block-media-text__media video {
  width: 100%;
  height: 100%;
}

/* ! ____title */
.wc-block-grid__product-title {
  font-size: 18px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
/* ! ____price */
.wc-block-grid__product .wc-block-grid__product-onsale {
  color: #fff;
  background-color: #862029;
  border: none;
  line-height: 20px;
  border-radius: 5px;
  padding: 0 20px;
}
.wc-block-grid__product .wc-block-grid__product-price del {
  color: #777;
  font-weight: lighter;
  margin-right: 5px;
  font-size: 14px;
}
.wc-block-grid__product .wc-block-grid__product-price ins {
  font-weight: bold;
  color: #333;
}
.wc-block-grid__product .wc-block-grid__product-price {
  font-size: 16px;
  font-weight: bold;
  color: #333;
  margin: 5px 0 20px 0;
}

/* ! ____button */
.wp-block-button__link,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link {
  background-color: #ffffff00;
  font-size: 16px;
  color: #862029;
  border: 1px solid #862029;
  border-radius: 0px;
  transition: all 0.4s ease-out;
}
.wp-block-button__link:hover,
.wc-block-grid__product-add-to-cart.wp-block-button
  .wp-block-button__link:hover {
  background-color: #862029;
  font-size: 16px;
  color: #fff;
  border: 1px solid #862029;
}
.wp-block-button__link:active,
.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:visited {
  color: #862029;
}

/* ! -- Block-cover */
.wp-block-cover .wp-block-button__link {
  background: #862029;
  color: #fff;
  font-weight: bold;
  padding: 15px 30px;
  border: none;
  border-radius: 3px;
}
.wp-block-cover .wp-block-button__link:hover {
  background: #fff;
  color: #862029;
}
.wp-block-cover h2 {
  font-size: 18px;
  font-family: "Roboto", Arial;
}

.brands .blocks-gallery-grid figcaption.blocks-gallery-item__caption {
  background: none;
  opacity: 0;
  position: absolute;
  bottom: -15px;
  overflow: hidden;
}
.brands .blocks-gallery-grid figcaption.blocks-gallery-item__caption a {
}

/* ! -- Our Story */
.our-story strong {
  color: #862029;
}

/* ! -- Instructions*/
.instructions {
  background: #862029;
  padding: 40px 20px;
}
.instructions .instruction {
  padding: 40px 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #fff;
}
.instructions .instruction h3 {
  color: #fff;
  font-weight: bold;
}
.instructions .instruction .fa,
.instructions .instruction .fas {
  font-size: 45px;
}

/* ! -- Reviews*/
.reviews h5 {
  font-size: 16px;
  margin-bottom: 0;
}
.reviews p.subtitle {
  font-size: 14px;
  font-weight: lighter;
}
.reviews .review {
  padding: 20px;
}
.reviews .vote {
  text-align: center;
}
.reviews .vote .fa {
  color: #f25c05;
}

/* ! -- Brands*/
.brands .wp-block-gallery {
  justify-content: center;
}
.brands .blocks-gallery-grid .blocks-gallery-image figure,
.brands .blocks-gallery-grid .blocks-gallery-item figure,
.brands .wp-block-gallery .blocks-gallery-image figure,
.brands .wp-block-gallery .blocks-gallery-item figure {
  align-items: center;
  margin: 0 auto;
}
.brands .blocks-gallery-grid .blocks-gallery-image img,
.brands .blocks-gallery-grid .blocks-gallery-item img,
.brands .wp-block-gallery .blocks-gallery-image img,
.brands .wp-block-gallery .blocks-gallery-item img {
  padding: 20px;
  max-height: 200px;
  margin: 0 auto;
}

/* ------------------------------------------------------------------------- *
/* ! WooCommerce */
/* ------------------------------------------------------------------------- */

.woocommerce-page .woocommerce {
  width: 100%;
}
.woocommerce a.remove {
  color: #862029 !important;
}
.woocommerce a.remove:hover {
  background: #862029 !important;
}

/* ! -- botton*/
.shop .woocommerce ul.products li.product .button {
  padding: 10px 15px;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  font-size: 16px;
  margin: 0;
  line-height: 1;
  cursor: pointer;
  position: relative;
  text-decoration: none;
  overflow: visible;
  padding: 20px;
  font-weight: 700;
  border-radius: 0px;
  left: auto;
  color: #862029;
  background-color: #fff;
  border: 1px solid #862029;
  background-image: none;
  box-shadow: none;
  text-shadow: none;
  transition: all 0.4s ease-out;
  /* text-align: center; */
}
.wp-block-button__link:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #862029;
  text-decoration: none;
  background-image: none;
  color: #fff;
}

/* ! -- immagine prodotto */
.woocommerce ul.products li.product a img {
  width: 100%;
  object-fit: cover;
  display: block;
  margin: 0 0 1em;
  box-shadow: none;
}

/* ! -- price */
.woocommerce ul.products li.product .price {
  color: black;
  font-size: 16px;
  font-weight: 400;
}
.wc-block-grid__product .wc-block-grid__product-add-to-cart,
.wc-block-grid__product .wc-block-grid__product-rating,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: #333;
  font-size: 1.25em;
}

/* ! -- product-disclaimer*/
.woocommerce .product .disclaimer {
  text-align: center;
  font-weight: bold;
  color: #862029;
  margin: 0 10px 35px 10px;
}

/* ! -- title*/
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  font-size: 16px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.woocommerce div.product div.summary {
}
.woocommerce .quantity .qty {
  width: 56px;
  height: 56px;
  padding: 7px;
  text-align: center;
  font-size: 16px;
  /* line-height: 13px; */
}

.woocommerce .product_meta .posted_in {
  display: block;
  width: 100%;
  margin-bottom: 8px;
}

.woocommerce-tabs.wc-tabs-wrapper {
  margin-top: 70px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before {
  border-bottom: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  margin-bottom: 15px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: 1px solid #c5976a;
  background-color: #862029;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: #fff;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: #bbb;
}
.woocommerce div.product .woocommerce-tabs .panel {
  margin: 0 10px 2em;
  padding: 0;
}
.woocommerce div.product .woocommerce-tabs .panel h2 {
  font-size: 27px;
}

/*AG£ VERIFICATION*/
.woocommerce #min-age-woo-ask-dob {
  padding: 20px;
}

.woocommerce li.wc_payment_method label {
  display: inline !important;
}

/* ! -- review*/
.woocommerce #review_form #respond p {
  margin: 0px 0 14px;
}

.woocommerce-Reviews .comment-form-cookies-consent {
  margin-top: 8px !important;
  clear: both;
}
.woocommerce-Reviews .comment-form-cookies-consent label {
  display: inline;
}
.woocommerce-Reviews .mc4wp-checkbox.mc4wp-checkbox-wp-comment-form {
  clear: both;
}
.mc4wp-checkbox.mc4wp-checkbox-wp-comment-form span {
  margin-left: 5px;
}

.related.products {
  margin-top: 55px;
}

/* ! -- carrello*/
.woocommerce-page table.cart td.actions .coupon .input-text,
.woocommerce-page table.cart td.actions .coupon input,
.woocommerce table.cart td.actions .coupon .button {
  width: 100%;
  margin-bottom: 10px;
}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals,
.woocommerce table.shop_table {
  width: 100%;
  padding: 20px;
}
/* ------------------------------------------------------------------------- *
/* ! Index */
/* ------------------------------------------------------------------------- */

/* Home Title */
.home-title {
  position: absolute;
  top: -9999px;
  color: #fff;
  font-size: 12px;
}

/* ------------------------------------------------------------------------- *
/* ! Sidebar */
/* ------------------------------------------------------------------------- */
.widget_search {
  margin-bottom: 50px;
}

/* ------------------------------------------------------------------------- *
/* ! Newsletter */
/* ------------------------------------------------------------------------- */
.newsletter {
  padding: 50px 20px;
  background: #eee;
}
.newsletter label {
  width: 100%;
  line-height: 2;
}

.newsletter p.submit {
  max-width: 500px;
  display: block;
  margin-bottom: 8px;
}

/* ------------------------------------------------------------------------- *
/* ! Footer */
/* ------------------------------------------------------------------------- */
.footer {
  background-color: #c5976a;
}
.footer .inner-footer {
  padding: 40px 0px;
}
.footer h4 {
  margin: 5px 0 5px 0;
  text-transform: full-width;
}
.footer .inner-footer p {
  color: #fff;
  padding: 14px 0;
}
.footer a {
  color: #fff;
  text-decoration: underline;
  font-weight: bold;
}
.footer a:hover,
.footer .sub-footer a:hover {
  color: #3b240e;
  text-decoration: underline;
}

.footer .footer__logo .logo img {
  margin: 0;
}
.footer .contatti {
  display: inline-block;
}

.footer__menu {
  list-style-type: none;
  padding: 10px 0;
  display: flex;
  flex-direction: column;
}
.footer__menu li {
  display: inline-block;
}
.footer__menu li a {
  padding: 10px 0;
}
.footer .paysped_section p {
  margin-bottom: 0px;
}
.footer img.paysped {
  max-width: 250px;
  margin-top: 10px;
  width: 90%;
  height: auto;
}

.footer .sub-footer {
  flex-wrap: wrap;
  display: flex;
  justify-content: space-between;
  color: #fff;
  padding: 20px 10px;
  border-top: 1px solid #fff;
}
.footer .sub-footer a {
  color: #fff;
  font-weight: bold;
  text-decoration: underline;
}
.footer .sub-footer .copyright {
}
.footer .sub-footer p.copyright {
  margin-bottom: 0;
  margin: 0px auto;
  padding: 10px 15px 15px 15px;
  font-size: 12px;
  text-align: center;
}
.iubenda-ibadge {
  margin-bottom: -7px;
  margin-right: -10px;
}
.footer .sub-footer .social {
  margin: 0 auto;
}
.footer .fa {
  padding: 15px;
  font-size: 24px;
}

.btn-whatsapp {
  display: block;
  position: fixed;
  left: 20px;
  bottom: 30px;
  z-index: 9997;
  background: none;
}
.btn-whatsapp .fa-whatsapp {
  display: block;
  font-size: 50px;
  color: #6d1a21;
  padding: 0px 4px 0px 5px;
  margin: 0px auto;
  text-align: center;
  vertical-align: middle;
}
/* --------------------------------------------------------------------------------------------------------------------------- */
/* ! Responsive */
/* --------------------------------------------------------------------------------------------------------------------------- */

/* ----------------------------- */
/* ! -- Desktop */
/* ----------------------------- */
@media (min-width: 768px) {
  .header .nav-wrap a {
    font-size: 14px;
  }
  ul.primary li a {
    padding: 4px 6px;
  }
  .cart-icon {
    right: 30px;
  }

  .nav-right,
  .nav-left {
    display: flex;
    flex-wrap: wrap;
    flex-basis: 45%;
  }
  .nav-right {
    justify-content: flex-end;
  }
  .alux-arrow {
    top: 18px;
    right: 4px;
    background-size: 18px 18px;
  }
  .nav-container {
    display: flex;
  }
  .header ul.primary {
    flex-wrap: wrap;
    display: flex;
    align-items: center;
  }
  .header .social .fa {
    padding: 16px 5px;
    font-size: 22px;
  }

  .side-intro {
    margin-left: -60px !important;
    position: relative;
    margin-right: 40px;
  }
  .side-intro .wp-block-group {
    display: flex;
  }
  .intro .wp-block-group__inner-container {
  }

  .intro {
  }
  .more {
  }
  .footer .sub-footer p.copyright {
    line-height: 24px;
    padding: 15px;
  }

  .woocommerce div.product .woocommerce-tabs .panel h2 {
    font-size: 32px;
  }
}

/* ----------------------------- */
/* ! -- Smarthphone */
/* ----------------------------- */

@media (max-width: 767px) {
  body.admin-bar .navbar-fixed-top {
    top: 42px;
  }

  /* Title color */
  h1,
  h2 {
    font-size: 45px;
  }
  h3 {
    font-size: 27px;
  }
  h4 {
    font-size: 18px;
  }
  h5 {
    font-size: 14px;
    font-weight: bold;
  }

  .nav-wrap .dropdown-menu.open,
  .nav-wrap .nav-container.open {
    max-height: calc(100vh - 200px);
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    display: block;
  }
  .header #in {
    display: none;
  }
  .header #out {
    display: inline-block;
  }
  .header .tog {
    position: relative;
    right: 0px;
    top: 26px;
  }

  .header .logo img {
    height: 100px;
  }
  .header .logo {
    margin: 5px 20px;
  }
  .nav-header {
    float: none;
    display: ;
  }
  .nav-wrap {
    align-items: center;
  }
  .nav-right a {
    text-transform: uppercase;
  }
  ul.primary li a {
    padding: 20px 0;
  }

  .social {
    justify-content: center;
    margin: 10px 0;
  }

  .wp-block-media-text__content {
    text-align: center;
    margin-top: 20px;
  }
  .wc-block-grid__product-title {
    white-space: normal;
  }
  .home
    .wc-block-grid__product-add-to-cart.wp-block-button
    .wp-block-button__link {
    font-size: 0.9em;
    padding: calc(0.5em + 2px) calc(0.5em + 2px);
  }
  .edit-post-visual-editor
    .editor-block-list__block
    .wc-block-grid__product-title,
  .editor-styles-wrapper .wc-block-grid__product-title,
  .wc-block-grid__product-title {
    font-size: 18px;
  }
  .footer__logo {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
  }
  .dgwt-wcas-search-wrapp {
    display: flex;
    justify-content: center;
    margin: 10px 0;
  }
}

@media (max-width: 480px) {
  .logo-container .social {
    display: none;
  }

  .wc-block-grid.has-4-columns .wc-block-grid__products {
    display: flex;
  }
  .wc-block-grid.has-4-columns .wc-block-grid__product {
    margin-left: auto;
    margin-right: auto;
    flex: 1 0 50%;
    max-width: 50%;
    padding: 10px 5px;
  }
  .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link {
    padding: 0.5em;
  }
  .woocommerce #respond input#submit,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit.alt,
  .woocommerce a.button.alt,
  .woocommerce button.button.alt,
  .woocommerce input.button.alt {
    font-size: 14px;
    padding: 10px 15px;
  }
}

/* --------------------------------------------------------------------------------------------------------------------------- */
/* WordPress Default Styles */
/* --------------------------------------------------------------------------------------------------------------------------- */

/* Pagination */
.pagination {
  margin: 40px 0 40px 0;
  padding: 0;
  width: 100%;
}
.pagination span,
.pagination a {
  float: left;
  margin: 0 10px 10px 0;
  padding: 14px 19px;
  border: 1px solid #ddd;
}

/* Gallery */
.gallery {
  float: left;
  margin: 20px 0 20px 0;
  width: 103.55%;
}
.gallery-item {
  float: left;
  width: 33.333333%;
  text-align: center;
}
.gallery img {
  margin: 0 10% 0 0;
  width: 90%;
  height: auto;
  border: none !important;
}
.gallery-caption {
  width: 90%;
  margin: 10px 0 0 0;
}

/* Image */
.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 10px;
  max-width: 97%;
  height: auto;
}
.alignright {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
  max-width: 97%;
  height: auto;
}
.aligncenter {
  display: block;
  margin: 0 auto;
  max-width: 97%;
  height: auto;
}
.alignnone {
  max-width: 97%;
  height: auto;
}

/* img responsive */
.img-res {
  width: 100%;
  height: auto;
}

/* video responsive */
.video-container {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Table */
table {
  border-collapse: collapse;
  margin: 40px 0;
  width: 100%;
}
table,
th,
td {
  border: 1px solid #ddd;
  padding: 10px;
  font-size: 18px;
  text-transform: capitalize;
}
table tr:first-child td {
  font-weight: 900;
  text-transform: uppercase;
  background: #eee;
  padding: 12px 8px;
}

/* Image Caption */
.wp-caption {
  margin-top: 1.5rem;
  margin-bottom: 0px;
  padding: 10px;
  max-width: 97%;
  border: 1px solid #ddd;
  text-align: center;
}
.wp-caption img {
  margin: 0;
  padding: 0;
  width: 100% !important;
  height: auto;
  border: 0 none;
}
.wp-caption p.wp-caption-text {
  margin: 0;
  padding: 8px;
  font-size: 1em;
  line-height: 17px;
}

/* Stiky */
.sticky {
  border-right: 3px solid #eee;
  border-bottom: 3px solid #ddd;
}

/* Search */
.search-form {
  background: #eee;
}
.search-form input[type="text"] {
  width: 80%;
  color: #333;
}
.search-form button {
  float: right;
  padding: 10px 15px 0 0;
  border: none;
  background: none;
  padding: 11px;
}

/* Contact Form 7 */
.wpcf7 label {
  width: 100%;
}

/* Comments */
.comment-form-author,
.comment-form-email,
.comment-form-url {
  float: left;
  margin-top: 20px;
  margin-right: 3%;
  width: 50%;
}
.comment-form-author input,
.comment-form-email input,
.comment-form-url input {
  width: 100%;
}

ol.commentlist {
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
  text-indent: 0;
}
ol.commentlist li.comment {
  padding: 1em;
  border-top: 1px solid #eee;
}
ol.commentlist li.comment div.vcard cite.fn {
  text-transform: uppercase;
  font-size: 14px;
}
ol.commentlist li.comment div.vcard img.avatar {
  float: left;
  margin: 6px 1em 1em 0;
  border-radius: 50px;
}
ol.commentlist li.comment div.comment-meta {
  font-size: 12px;
}
ol.commentlist li.comment ul {
  margin: 0 0 1em 2em;
}
ol.commentlist li.comment div.reply {
  margin-left: 80px;
  font-size: 11px;
}
ol.commentlist li.comment div.reply a {
  font-weight: bold;
}
ol.commentlist li.comment ul.children {
  margin: 1em 0 0;
  list-style: none;
  text-indent: 0;
}
ol.commentlist li.comment ul.children li.depth-2 {
  margin: 0 0 0.25em 0.25em;
  border-left: 1px solid #eee;
}
ol.commentlist li.comment ul.children li.depth-3 {
  margin: 0 0 0.25em 0.25em;
  border-left: 1px solid #eee;
}
ol.commentlist li.comment ul.children li.depth-4 {
  margin: 0 0 0.25em 0.25em;
  border-left: 1px solid #eee;
}
ol.commentlist li.even {
  background: #fff;
}
ol.commentlist li.odd {
  /* background: #f9f9f9; */
}
ol.commentlist li.parent {
  border-left: 1px solid #eee;
}
ol.commentlist li.bypostauthor .fn {
  font-weight: bold;
}
ol.commentlist li img {
  max-width: 97%;
}

input[type="text"],
input[type="email"] {
  width: 98%;
  margin-right: 10px;
  padding: 10px;
  border: none;
  background: #eee;
  -webkit-appearance: none;
  border-radius: 0;
  font-size: 14px;
}
textarea {
  padding: 10px;
  width: 98%;
  border: none;
  background: #eee;
  -webkit-appearance: none;
  border-radius: 0;
  font-size: 14px;
}
input[type="submit"] {
  margin-top: 10px;
  padding: 15px 20px;
  color: #fff;
  text-transform: uppercase;
  background: #333;
  border: none;
  font-size: 14px;
}
#comments {
  width: 100%;
}

/* Calendar Widget */
#wp-calendar {
  width: 100%;
}
#wp-calendar a {
  padding: 0;
  border: none;
}
#wp-calendar caption,
.screen-reader-text {
  padding-bottom: 10px;
  color: #000;
  text-align: left;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 14px;
}
#wp-calendar thead {
  font-size: 10px;
}
#wp-calendar thead th {
  padding-bottom: 10px;
}
#wp-calendar tbody {
  color: #aaa;
}
#wp-calendar tbody td {
  padding: 8px;
  border: 1px solid #fff;
  background: #f5f5f5;
  text-align: center;
}
#wp-calendar tbody td:hover {
  background: #fff;
}
#wp-calendar tbody .pad {
  background: none;
}
#wp-calendar tfoot #next {
  text-align: right;
  text-transform: uppercase;
  font-size: 10px;
}
#wp-calendar tfoot #prev {
  padding-top: 10px;
  text-transform: uppercase;
  font-size: 10px;
}

/* ========================================================================= */
/* Mobile Dropdown Navigation Styles */
/* ========================================================================= */

/* Dropdown menu - nascosto di default */
.dropdown-menu {
  display: none;
  list-style: none;
  padding-left: 20px;
  margin: 0;
}

/* Dropdown aperto - IMPORTANTE per mobile */
.dropdown.open > .dropdown-menu {
  display: block !important;
}

/* Stile per la freccia dropdown */
.dropdown-caret {
  display: inline-block;
  margin-left: 5px;
  transition: transform 0.3s ease;
}

/* Ruota la freccia quando il dropdown è aperto */
.dropdown-caret.rotated {
  transform: rotate(180deg);
}

/* Icona freccia */
.dropdown-caret i {
  font-size: 0.8em;
}

/* Stile per i link dropdown */
.dropdown-toggle {
  position: relative;
  cursor: pointer;
}

/* Flex per allineare la freccia nei link primari */
ul.primary li a {
  display: flex;
  align-items: center;
}

/* La freccia deve essere cliccabile separatamente */
.dropdown-caret {
  cursor: pointer;
  padding: 6px 4px;
  margin-left: 2px;
  flex-shrink: 0;
}

/* Flex anche per i link dei dropdown di secondo livello */
.dropdown-menu .dropdown-toggle {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Su mobile, assicuriamoci che i dropdown siano visibili */
@media (max-width: 991px) {
  /* Feedback visivo quando il dropdown è aperto (indica che si può cliccare di nuovo per navigare) */
  .dropdown.open > .dropdown-toggle {
    opacity: 0.8;
    font-weight: 500;
  }

  /* Rimuovi il background grigio dal dropdown-menu */
  .dropdown-menu {
    position: static !important;
    background: transparent !important;
    padding: 5px 0 5px 15px !important;
    margin-top: 5px;
    list-style: none !important;
  }

  /* Modifica padding dei link nei dropdown */
  ul.primary ul.dropdown-menu li a {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #eee;
    color: #666;
    padding: 8px 0px !important;
  }

  .dropdown-menu li {
    padding: 2px 0;
    list-style: none !important;
    display: block !important;
  }

  .dropdown-menu a {
    display: block !important;
    padding: 8px 15px;
    color: inherit;
    text-decoration: none;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Forza la visibilità dei dropdown aperti */
  .dropdown.open > .dropdown-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: 9999px !important;
    overflow: visible !important;
  }

  /* Override dello stile di alux.min.css */
  .nav-wrap .dropdown-menu.open {
    max-height: 9999px !important;
    overflow: visible !important;
  }

  /* Sottomenu di terzo livello (es. Grinder > Alluminio > 2 Parti) */
  .dropdown-menu .dropdown-menu {
    padding-left: 15px !important;
    background: transparent !important;
    margin-top: 5px;
  }

  /* Link nei sottomenu di secondo livello */
  .dropdown-menu .dropdown-menu li a {
    padding-left: 25px !important;
    font-size: 14px;
  }
}

/* Media query specifica per mobile piccolo (767px) */
@media (max-width: 767px) {
  /* Background bianco per i link nei dropdown su mobile */
  .nav-light.nav-wrap ul.primary ul.dropdown-menu li a {
    background: #ffffff !important;
  }
}

/* Su desktop, usa hover per i dropdown */
@media (min-width: 992px) {
  /* Mostra dropdown al hover */
  .dropdown:hover > .dropdown-menu {
    display: block;
    opacity: 1;
    visibility: visible;
  }

  /* Stile base dropdown menu */
  .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    background: #fff;
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    min-width: 200px;
    padding: 5px 0;
    display: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }

  .dropdown-menu li {
    list-style: none;
    position: relative;
  }

  .dropdown-menu a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 16px;
    color: #333;
    text-decoration: none;
    white-space: nowrap;
  }

  .dropdown-menu a:hover {
    background: #f5f5f5;
  }

  .dropdown {
    position: relative;
  }

  /* Sottomenu desktop (secondo e terzo livello) */
  .dropdown-menu .dropdown-menu {
    position: absolute;
    left: 100%;
    top: 0;
    margin-left: 0;
    margin-top: -10px;
  }

  /* Indicatore visivo per sottomenu su desktop */
  .dropdown-menu .dropdown > a .dropdown-caret {
    transform: rotate(-90deg);
  }

  .dropdown-menu .dropdown > a .dropdown-caret.rotated {
    transform: rotate(-90deg);
  }

  /* Nascondi la freccia di default su desktop per i menu principali */
  ul.primary > li > a .dropdown-caret {
    display: inline-block;
  }
}

/* -------------------------------------------------------------------------
   CLS fixes — reserve space for lazy-swapped logo and WooCommerce gallery
   Ref: WC issue #30893 (FlexSlider layout shift)
   ------------------------------------------------------------------------- */
.logo picture {
  display: inline-block;
  aspect-ratio: 305 / 300;
}
.logo img {
  aspect-ratio: 305 / 300;
}

/* WooCommerce Product Gallery — FlexSlider CLS fix
   DOM inspection (2026-04-13) revealed the root cause:

   .woocommerce-product-gallery__wrapper IS the FlexSlider filmstrip.
   FlexSlider moves it inside a new .flex-viewport and sets its width to
   N_slides × slide_width (e.g. 3 × 700 = 2100px). With aspect-ratio:1/1,
   that made the wrapper 2100×2100px. When flex-viewport is created without
   an explicit height it expanded to 2100px (shift 1), then FlexSlider set
   height:262.5px (shift 2). The images are 600×450 (4:3), not square.

   Fix:
   1. __wrapper: aspect-ratio 600/450 (4:3) + overflow:hidden → clips the N
      stacked images to one image height before FlexSlider runs.
   2. .flex-viewport: same 4:3 aspect-ratio → browser gives it the correct
      height (262.5px for 350px width) immediately on creation, matching the
      inline height FlexSlider will set via JS → delta = 0 → no shift.
   3. min-height on .woocommerce-product-gallery reserves viewport+thumbs
      height (262.5 + 88 ≈ 350px) before FlexSlider, so no content shifts.
   Ref: WC issue #30893 */
.woocommerce-product-gallery__wrapper {
  /* overflow:hidden clips the stacked-image pre-FlexSlider stack to one image;
     aspect-ratio removed: it clipped non-4:3 images and expanded filmstrip height */
  overflow: hidden;
}
.woocommerce-product-gallery .flex-viewport {
  overflow: hidden; /* required: FlexSlider hides off-screen slides */
  width: 100%; /* prevents aspect-ratio-driven horizontal expansion for non-4:3 images */
}
