/* ==========================================================================
   ADM, organi collegiali (organi.php).
   ========================================================================== */

.organ-tabs { display: flex; flex-wrap: wrap; gap: 0; margin-top: 28px; border: 1.5px solid var(--ink); border-radius: 4px; width: max-content; max-width: 100%; overflow: hidden; background: #fff; }
.organ-tabs a { padding: 11px 18px; color: var(--ink); font-family: var(--f-display); font-weight: 600; text-decoration: none; white-space: nowrap; }
.organ-tabs a + a { border-left: 1.5px solid var(--ink); }
.organ-tabs a:hover { background: var(--paper); }
.organ-tabs a[aria-current="page"] { background: var(--ink); color: #fff; }

.organ-body { padding: 48px 0 24px; }
.organ-h2 { margin: 0 0 16px; padding-bottom: 8px; border-bottom: 1.5px solid var(--ink); font-size: 1.4rem; font-weight: 700; font-stretch: 88%; }
.organ-body section + section { margin-top: 48px; }
.organ-empty { color: var(--muted); }

.organ-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.organ-grid--lead { grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 16px; }
.organ-card {
  display: flex; gap: 16px; align-items: flex-start; height: 100%; padding: 14px; border: 1px solid var(--line); border-radius: 6px;
  background: #fff; color: inherit; text-decoration: none; transition: border-color .15s;
}
.organ-card:hover { border-color: var(--teal); color: inherit; }
.organ-photo { flex: none; display: block; width: 64px; height: 80px; overflow: hidden; border-radius: 3px; background: var(--paper); }
.organ-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.organ-photo.is-initials { display: grid; place-items: center; background: var(--teal-soft); color: var(--teal-dark); font-family: var(--f-display); font-size: 20px; font-weight: 700; }
.organ-card.is-lead { padding: 18px; border-color: var(--ink); }
.organ-card.is-lead .organ-photo { width: 104px; height: 130px; border: 1.5px solid var(--ink); border-radius: 0; }
.organ-card.is-lead .organ-photo.is-initials { font-size: 30px; }
.organ-text { min-width: 0; padding-top: 2px; }
.organ-role { display: block; margin-bottom: 4px; color: var(--teal-dark); font-family: var(--f-display); font-size: 14px; font-weight: 600; }
.organ-name { display: block; font-family: var(--f-display); font-size: 17px; line-height: 1.25; color: var(--ink); }
.organ-name b { font-weight: 700; }
.organ-card.is-lead .organ-name { font-size: 21px; font-stretch: 90%; }
.organ-card:hover .organ-name { color: var(--teal-dark); }
.organ-meta { display: block; margin-top: 3px; font-size: 14px; line-height: 1.35; color: var(--muted); }

.organ-related { margin-top: 48px; padding-top: 20px; border-top: 1px solid var(--line); }
.organ-related ul { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.organ-related-link {
  display: inline-flex; align-items: center; padding: 10px 16px; border: 1.5px solid var(--ink); border-radius: 4px;
  background: #fff; color: var(--ink); font-family: var(--f-display); font-size: 15px; font-weight: 600; text-decoration: none;
}
.organ-related-link:hover { background: var(--ink); color: #fff; }

@media (max-width: 575.98px) {
  .organ-tabs { width: 100%; }
  .organ-tabs a { flex: 1; padding: 10px 8px; text-align: center; font-size: 14px; white-space: normal; }
  .organ-grid, .organ-grid--lead { grid-template-columns: minmax(0, 1fr); }
  .organ-card.is-lead .organ-photo { width: 84px; height: 105px; }
}

/* Mandati precedenti: un riquadro apribile per mandato, il più recente aperto */
.organ-term { border-top: 1.5px solid var(--ink); }
.organ-term:last-of-type { border-bottom: 1px solid var(--line); }
.organ-term summary { display: flex; align-items: center; gap: 14px; padding: 16px 0; list-style: none; cursor: pointer; }
.organ-term summary::-webkit-details-marker { display: none; }
.organ-term-title { font-family: var(--f-display); font-size: 1.25rem; font-weight: 700; color: var(--ink); }
.organ-term-n { color: var(--muted); font-size: 14px; }
.organ-term summary .bi { margin-left: auto; transition: transform .15s; }
.organ-term[open] summary .bi { transform: rotate(180deg); }
.organ-term summary:hover .organ-term-title { color: var(--teal-dark); }
.organ-term .organ-grid { padding-bottom: 28px; }
div.organ-card:hover { border-color: var(--line); }
