/* ========================================
   HEADER
   ======================================== */
@media (min-width: 981px) {

  /* Blocco superiore: tutto centrato in colonna */
  .header-top{
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 22px 20px 12px;
  }

  .brand{
    flex-direction: column;     /* logo sopra, testi sotto */
    align-items: center;
    gap: 6px;
  }

  .logo{
    width: 72px;
    height: 72px;
    border-radius: 50%;
    /* background:#bdbdbd; border:2px solid #e8e8e8; */
  }

  .titles{
    align-items: center;
    text-align: center;
    line-height: 1.1;
  }

  /* Linee a sinistra/destra del nome */
  .site-name{
    position: relative;
    display: inline-block;
    padding: 0 16px;
    font-weight: 700;
    font-size: 1.25rem;
    color: #1e1e1e;
  }
  .site-name::before,
  .site-name::after{
    content:"";
    position:absolute;
    top:50%;
    width:160px;                /* regola la lunghezza delle linee */
    height:1px;
    background:#9c9c9c;
  }
  .site-name::before{ right:100%; margin-right:12px; }
  .site-name::after { left:100%;  margin-left:12px; }

  /* Puntino sotto il titolo */
  .titles::after{
    content:"";
    display:block;
    width:6px; height:6px;
    background:#3b3b3b;
    border-radius:50%;
    margin:8px auto 0;
  }

  /* Riga di navigazione: menu centrato + utility a destra */
  nav.main-nav{
    display:flex !important;
    justify-content:center;
    align-items:center;
    gap:0;                      /* i separatori li gestiamo sotto */
    position:relative;
    width:100%;
    background:transparent;
    border:0;
    box-shadow:none;
    padding: 6px 20px 12px;
  }

  /* Link menu con separatore “ - ” (solo figli diretti, NON la .nav-topbar) */
  nav.main-nav > a + a{ position:relative; }
  nav.main-nav > a + a::before{
    content:" - ";
    color:#6b6b6b;
    margin:0 8px;
  }

  /* “Carrello | Login” a destra sfruttando .nav-topbar esistente */
  .nav-topbar{
    display:flex !important;
    flex-direction: row;          /* una sola riga */
    align-items: center;
    gap:0;
    white-space: nowrap;          /* evita a capo */
    min-width: max-content;       /* previene wrap forzato */
    line-height: 1;

    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    font-weight:600;
    color:#1e1e1e;
  }
  .nav-topbar a{
    color:inherit;
    text-decoration:none;
    padding:4px 0;
  }
  /* Separatore a “|” tra Carrello e Login */
  nav.main-nav .nav-topbar a + a::before{
    content:" | " !important;
    color:#6b6b6b;
    margin:0 6px;
  }
}

/* ===== Mobile: mantieni hamburger e mostra topbar dentro il menu ===== */
@media (max-width: 980px){
  .nav-toggle{ display:block; }

  .nav-topbar{
    display:flex;
    position: static;
    transform: none;
    right: auto; top: auto;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    white-space: normal;
    margin-top: 12px;
  }
  /* niente separatore in mobile */
  nav.main-nav .nav-topbar a + a::before{ content: none !important; }
}