/* ==========================================================================
   CISL SIENA — CSS PAGINA: SEDI
   File: wp-content/mu-plugins/cisl-siena/pages/sedi/style.css
   Dipende da cisl-global, cisl-layout, cisl-pages.
   ========================================================================== */

.cisl-sedipage__list { display: grid; gap: clamp(20px, 3vw, 32px); }

.cisl-sedecard {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(24px, 4vw, 56px);
  padding: clamp(24px, 3.4vw, 44px);
  border: 1px solid var(--cisl-line);
  border-radius: var(--cisl-r-lg);
  background: var(--cisl-white);
}
.cisl-sedecard:nth-child(even) { background: var(--cisl-bg); }
.cisl-sedecard .cisl-h3 { margin-top: var(--cisl-sp-3); font-size: var(--cisl-fs-h2); text-transform: uppercase; }

.cisl-sedecard__info { display: grid; gap: var(--cisl-sp-3); margin: var(--cisl-sp-5) 0 0; padding: 0; list-style: none; }
.cisl-sedecard__info li { display: flex; align-items: flex-start; gap: var(--cisl-sp-3); color: var(--cisl-ink-2); }
.cisl-sedecard__info .cisl-icon { width: 22px; height: 22px; flex: 0 0 auto; color: var(--cisl-green); margin-top: 1px; }
.cisl-sedecard__info a { color: var(--cisl-green); font-weight: 700; text-decoration: none; }
.cisl-sedecard__info a:hover { text-decoration: underline; }

.cisl-sedecard__sub {
  display: flex;
  align-items: center;
  gap: var(--cisl-sp-2);
  margin: var(--cisl-sp-6) 0 var(--cisl-sp-3);
  font-size: var(--cisl-fs-xs);
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--cisl-muted);
}
.cisl-sedecard__side .cisl-sedecard__sub { margin-top: 0; }
.cisl-sedecard__sub .cisl-icon { width: 18px; height: 18px; color: var(--cisl-red); }
.cisl-sedecard__chips a { padding: 7px 12px; }

.cisl-sedecard__actions { display: flex; flex-wrap: wrap; gap: var(--cisl-sp-3); margin-top: var(--cisl-sp-6); }

/* Tabella orari */
.cisl-hours { width: 100%; border-collapse: collapse; font-size: var(--cisl-fs-sm); }
.cisl-hours th, .cisl-hours td { padding: 10px 0; border-bottom: 1px solid var(--cisl-line); text-align: left; }
.cisl-hours th { font-weight: 700; color: var(--cisl-ink); }
.cisl-hours td { text-align: right; color: var(--cisl-green); font-weight: 700; }
.cisl-hours .is-closed td { color: var(--cisl-muted); font-weight: 500; }
.cisl-hours-ask { margin: 0; padding: 10px 0; border-bottom: 1px solid var(--cisl-line); font-size: var(--cisl-fs-sm); color: var(--cisl-ink-2); }
.cisl-hours-ask a { color: var(--cisl-green); font-weight: 700; text-decoration: none; white-space: nowrap; }
.cisl-hours-ask a:hover { text-decoration: underline; }

/* Mappa su richiesta */
.cisl-map {
  display: grid;
  place-items: center;
  gap: var(--cisl-sp-2);
  margin-top: var(--cisl-sp-5);
  min-height: 180px;
  padding: var(--cisl-sp-5);
  border-radius: var(--cisl-r-md);
  background:
    repeating-linear-gradient(45deg, var(--cisl-green-soft) 0 12px, var(--cisl-bg-alt) 12px 24px);
  text-align: center;
}
.cisl-map.is-loaded { padding: 0; overflow: hidden; background: var(--cisl-bg); }
.cisl-map iframe { display: block; width: 100%; height: 280px; border: 0; }
.cisl-map__btn {
  display: inline-flex;
  align-items: center;
  gap: var(--cisl-sp-2);
  padding: 12px 20px;
  border: 0;
  border-radius: var(--cisl-r-pill);
  background: var(--cisl-white);
  box-shadow: var(--cisl-shadow-sm);
  font: 700 var(--cisl-fs-sm) / 1 var(--cisl-font-sans);
  color: var(--cisl-green-dark);
  cursor: pointer;
}
.cisl-map__btn .cisl-icon { width: 18px; height: 18px; color: var(--cisl-red); }
.cisl-map__btn:hover { background: var(--cisl-green); color: var(--cisl-white); }
.cisl-map__btn:focus-visible { outline: 3px solid var(--cisl-red); outline-offset: 3px; }
.cisl-map__note { margin: 0; font-size: var(--cisl-fs-xs); color: var(--cisl-ink-2); max-width: 36ch; }

.cisl-sedipage__helpbtns { display: flex; flex-wrap: wrap; gap: var(--cisl-sp-3); }

@media (max-width: 860px) {
  .cisl-sedecard { grid-template-columns: 1fr; }
}
