/* ─────────────────────────────────────────────────────────────────────────────
   assets/site-info.css
   Stili per gli elementi alimentati dalla dashboard: logo, recapiti
   nell'header, blocco contatti e riga legale nel footer.

   File separato di proposito: stile.css e' il foglio del tema e non lo tocco.
   Va incluso DOPO stile.css (header.php lo fa gia').
   ───────────────────────────────────────────────────────────────────────────── */

/* ─── Logo ────────────────────────────────────────────────────────────────── */
/* Il contenitore del tema era pensato per del TESTO: puo' avere line-height,
   altezza fissa o overflow che schiacciano un'immagine. Qui lo riporto a un
   contenitore capace di ospitarla. */
.brand,
.brand span,
.brand a {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  overflow: visible;
}
.brand a { text-decoration: none; }

.brand-logo {
  /* ALTEZZA ESPLICITA, non max-height: un SVG privo di viewBox non ha
     dimensioni proprie e con width/height "auto" viene disegnato a zero —
     il file e' corretto, ma non si vede nulla. Fissando l'altezza e
     lasciando la larghezza automatica, le proporzioni restano giuste. */
  height: var(--brand-logo-h, 40px);   /* impostata inline dall'header, regolabile in dashboard */
  width: auto;
  min-width: 24px;      /* argine ai casi in cui la larghezza calcolata e' 0 */
  max-width: 240px;
  display: block;
  object-fit: contain;
  /* Se il logo e' bianco su header bianco resta invisibile pur essendoci:
     in quel caso serve una versione a colori o scura, non una regola CSS. */
}

@media (max-width: 900px) {
  .brand-logo { max-width: 160px; }
}
@media (max-width: 600px) {
  /* Sul telefono l'header e' stretto: il logo scende di un quinto. */
  .brand-logo { height: calc(var(--brand-logo-h, 40px) * .8); max-width: 130px; }
}

/* ─── Recapiti nell'header ────────────────────────────────────────────────── */
.header-contatto {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: inherit;
  padding: 4px 10px;
  border-radius: 8px;
  white-space: nowrap;
}
.header-contatto:hover { background: rgba(0, 0, 0, .04); }
.header-contatto i { font-size: 17px; opacity: .8; }
.header-contatto span { display: flex; flex-direction: column; line-height: 1.15; }
.header-contatto small { font-size: 10.5px; opacity: .65; }
.header-contatto strong { font-size: 13px; font-weight: 700; }

/* Sotto i 1100px l'header e' gia' affollato: resta la sola icona. */
@media (max-width: 1100px) {
  .header-contatto span { display: none; }
}
@media (max-width: 720px) {
  .header-contatto { display: none; }
}

/* ─── Recapiti nel footer ─────────────────────────────────────────────────── */
.footer-contatti {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 30px;
  margin: 26px 0 18px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.footer-contatto {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  text-decoration: none;
  color: inherit;
}
.footer-contatto:hover strong { text-decoration: underline; }
.footer-contatto i { font-size: 18px; opacity: .7; margin-top: 2px; }
.footer-contatto span { display: flex; flex-direction: column; line-height: 1.3; }
.footer-contatto small { font-size: 11px; opacity: .65; text-transform: uppercase; letter-spacing: .03em; }
.footer-contatto strong { font-size: 15px; font-weight: 700; }
.footer-contatto em { font-size: 11.5px; opacity: .65; font-style: normal; }
.footer-orari { cursor: default; }

/* ─── Riga legale ─────────────────────────────────────────────────────────── */
.footer-legale {
  margin: 22px 0 0;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  font-size: 12.5px;
  line-height: 1.6;
  opacity: .7;
}
