/* =========================================================
   Shop head — shared page-header band used across shop archive,
   single product, and cart. Lives in /components so it loads
   wherever any of those pages do (each context's CSS module
   gates separately, but the band itself is the same surface).
   ========================================================= */

/* Page head — title + breadcrumb */
.mz-shop-head {
  border-bottom: 1px solid var(--border);
  padding: var(--s-7) 0 var(--s-7);
}
/* Silent: la pagina è "shallow" (Home / X). Il leaf della breadcrumb porta
   l'identità del documento, l'H1 è in .screen-reader-text. La band collassa
   ad altezza-breadcrumb — il padding s-7 era dimensionato per accogliere
   anche un display H1 sotto. Applicato a cart, cart-empty, checkout,
   thankyou, e all'archivio bare /shop. */
.mz-shop-head--silent { padding: var(--s-4) 0 var(--s-4); }
/* Quando la silent band ospita il breadcrumb-as-header (.mz-bc-head), la regola
   la disegna il __bar interno (ink-1, larghezza container): la band non deve
   raddoppiarla col proprio border-bottom full-bleed. */
.mz-shop-head--bc { border-bottom: 0; }
/* Tutte le band breadcrumb-as-header condividono lo stesso ritmo verticale, così
   l'header sta alla stessa altezza su shop, carrello, checkout e thankyou (--cart
   metteva un top --s-5 che lo faceva sedere più in basso degli altri).
   - top --s-4: posizione header uniforme.
   - bottom 0: l'header finisce sulla sua regola; la sezione di contenuto che segue
     (.mz-shop / .mz-cart / .mz-checkout, top --s-7) porta già la spaziatura. Senza
     questo i due padding si sommavano, staccando troppo header e contenuto.
   Selettore compound (0,2,0) per battere i padding shorthand per-pagina. */
.mz-shop-head.mz-shop-head--bc {
  padding-top: var(--s-4);
  padding-bottom: 0;
}
.mz-shop-head__row {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--s-7);
  align-items: end;
  margin-top: var(--s-4);
}
@media (max-width: 800px) { .mz-shop-head__row { grid-template-columns: 1fr; } }
.mz-shop-head__title { display: flex; flex-direction: column; gap: var(--s-3); }
.mz-shop-head__title .mz-h1 { font-size: clamp(28px, 3.6vw, 40px); }
.mz-shop-head__desc { color: var(--ink-2); font-size: var(--t-base); }
.mz-shop-head__desc p { margin: 0 0 var(--s-2); }

/* Bottone "torna al padre/catalogo" — pinnato a destra, centrato verticalmente
   sull'altezza della shop-head (solo category archive). */
.mz-shop-head { position: relative; }
.mz-shop-head .mz-container { position: relative; }
.mz-shop-head__back-wrap {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 1;
}
.mz-shop-head__back { text-decoration: none; }
.mz-shop-head__back:hover .mz-shop-head__back-arrow { transform: translateX(-2px); }
.mz-shop-head__back-arrow {
  display: inline-block;
  transition: transform var(--d-1) var(--ease);
}
@media (max-width: 800px) {
  .mz-shop-head__back-wrap {
    position: static;
    transform: none;
    display: flex;
    justify-content: flex-end;
    margin-top: var(--s-3);
  }
}

/* Breadcrumb + .mz-page-bar styles sono in components/breadcrumb.css
   (modulo no-condition) così la trail è stilata anche dove shop-head
   non si carica (page-*.php, ricerche-semplificate, account, auth). */
