/* Sitiincontri — Navigazione v0.7.5
   Menu principale nella barra orizzontale, categorie nel menu hamburger. */


/* Nascondi VISIVAMENTE solo l'H1 della home, mantenendolo per accessibilità e SEO. */
body .home-intro h1 {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}
body .home-intro {
  padding-top:24px;
  padding-bottom:22px;
}


/* Prima riga: logo, ricerca e pulsante categorie. */
.complete-navigation .main-header-row {
  display:flex;
  align-items:center;
  gap:20px;
  min-height:76px;
  position:relative;
}
.complete-navigation .main-header-row .brand {
  flex:0 0 auto;
}
.complete-navigation .main-header-row .header-search {
  margin:0 0 0 auto;
  width:260px;
  max-width:280px;
  flex:0 1 260px;
}
.complete-navigation .primary-menu-button {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:9px;
  flex:0 0 auto;
  margin:0;
  min-height:42px;
  border:1px solid var(--line-strong);
  border-radius:999px;
  padding:9px 15px;
  color:var(--ink);
  background:var(--paper);
  font-family:var(--sans);
  font-weight:650;
  cursor:pointer;
}
.complete-navigation .primary-menu-button:hover,
.complete-navigation .primary-menu-button[aria-expanded="true"] {
  border-color:var(--wine);
  color:var(--wine);
  background:var(--wine-soft);
}
.complete-navigation .primary-menu-button:focus-visible {
  outline:2px solid var(--wine);
  outline-offset:3px;
}


/* Pannello a discesa delle categorie, da desktop e da cellulare. */
.complete-navigation .primary-nav {
  display:none !important;
  position:absolute;
  top:calc(100% - 1px);
  left:auto;
  right:0;
  z-index:150;
  width:min(390px,calc(100vw - 26px));
  max-width:calc(100vw - 26px);
  max-height:min(75dvh,680px);
  overflow-y:auto;
  overflow-x:hidden;
  flex:none;
  background:var(--paper);
  border:1px solid var(--line-strong);
  border-radius:0 0 14px 14px;
  padding:16px 20px 20px;
  box-shadow:0 18px 35px rgba(39,35,31,.16);
}
.complete-navigation .primary-nav.is-open {
  display:block !important;
}
.complete-navigation .category-drawer-title {
  color:var(--wine);
  font-family:var(--serif);
  font-size:21px;
  font-weight:650;
  padding:2px 0 10px;
  border-bottom:1px solid var(--line);
  margin-bottom:4px;
}
.complete-navigation .primary-nav .category-menu {
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:0 !important;
  list-style:none;
  margin:0;
  padding:0;
}
.complete-navigation .primary-nav .category-menu > .site-nav-group {
  display:block;
  width:100%;
  min-width:0;
  border-bottom:1px solid var(--line);
}
.complete-navigation .primary-nav .category-menu > .site-nav-group:last-child {
  border-bottom:0;
}
.complete-navigation .primary-nav .site-nav-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:44px;
}
.complete-navigation .primary-nav .site-nav-link {
  display:block;
  flex:1;
  min-width:0;
  white-space:normal;
  padding:11px 0;
  font-size:14px;
  line-height:1.45;
}
.complete-navigation .primary-nav .site-submenu-toggle {
  flex:0 0 40px;
  min-width:40px;
  width:40px;
  height:40px;
}
.complete-navigation .primary-nav .site-submenu {
  display:none;
  position:static !important;
  width:100%;
  max-width:none;
  min-width:0;
  box-shadow:none;
  background:transparent;
  border:0;
  border-left:2px solid var(--line-strong);
  border-radius:0;
  padding:0 0 0 9px;
  margin:0 0 9px 0;
}
.complete-navigation .primary-nav .site-nav-group.is-open > .site-submenu,
.complete-navigation .primary-nav:not(.menu-enhanced) .site-nav-group:hover > .site-submenu,
.complete-navigation .primary-nav:not(.menu-enhanced) .site-nav-group:focus-within > .site-submenu {
  display:block;
}
.complete-navigation .primary-nav .site-submenu a {
  font-size:13px;
  padding:9px 10px;
}


/* Seconda riga: il vero MENU PRINCIPALE, al posto delle categorie. */
.complete-navigation .main-nav-bar {
  border-top:1px solid var(--line);
  background:#f8f3ed;
}
.complete-navigation .main-bar-nav {
  display:block;
  position:relative;
}
.complete-navigation .main-bar-nav .primary-menu {
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:0 34px;
  list-style:none;
  margin:0;
  padding:0;
}
.complete-navigation .main-bar-nav .primary-menu > .site-nav-group {
  flex:0 0 auto;
}
.complete-navigation .main-bar-nav .site-nav-link {
  display:block;
  padding:13px 0;
  font-size:14px;
  font-weight:650;
  color:#514a44;
  white-space:nowrap;
}
.complete-navigation .main-bar-nav .site-nav-link:hover,
.complete-navigation .main-bar-nav .site-nav-link[aria-current="page"] {
  color:var(--wine);
}
.complete-navigation .main-bar-nav .site-submenu {
  position:absolute;
  top:100%;
  min-width:245px;
  max-width:min(320px,calc(100vw - 30px));
  z-index:160;
}


@media(max-width:900px) {
  .complete-navigation .main-bar-nav .primary-menu {gap:0 21px;}
  .complete-navigation .main-bar-nav .site-nav-link {font-size:13px;padding:11px 0;}
}
@media(max-width:700px) {
  .complete-navigation .main-header-row {
    min-height:68px;
    flex-wrap:wrap;
    gap:10px;
    padding:10px 0;
  }
  .complete-navigation .main-header-row .brand {order:1;}
  .complete-navigation .main-header-row .brand .site-brand-logo {width:185px;}
  .complete-navigation .main-header-row .primary-menu-button {
    order:2;
    margin-left:auto;
    padding:8px 12px;
  }
  .complete-navigation .main-header-row .header-search {
    order:3;
    flex:1 1 100%;
    width:100%;
    max-width:none;
    margin:0;
  }
  .complete-navigation .primary-nav {
    top:100%;
    right:0;
    left:auto;
    width:min(390px,100%);
  }
  .complete-navigation .main-bar-nav .primary-menu {
    flex-direction:row !important;
    flex-wrap:wrap !important;
    gap:0 15px;
    justify-content:center;
  }
  .complete-navigation .main-bar-nav .site-nav-heading {justify-content:initial;}
  .complete-navigation .main-bar-nav .site-nav-link {
    padding:10px 0;
    font-size:12px;
    white-space:normal;
  }
  .complete-navigation .main-bar-nav .site-submenu-toggle {
    min-width:27px;
    width:27px;
    height:36px;
  }
}
@media(max-width:400px) {
  .complete-navigation .main-header-row .brand .site-brand-logo {width:154px;}
  .complete-navigation .primary-menu-button {font-size:12px;gap:6px;}
  .complete-navigation .main-bar-nav .primary-menu {gap:0 11px;}
}