/* =========================
   "Unsere Einsatzorte" at the end of the homepages: closed by default,
   opened with the arrow. A link to #einsatzorte opens it (small inline
   script next to the section).
   ========================= */
.ort-toggle > summary {
  list-style: none;
  cursor: pointer;
  display: flex; align-items: center; gap: 16px;
  padding: 18px 22px;
  background: #fff;
  border: 1px solid var(--border, #e5e7eb);
  border-radius: 14px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.ort-toggle > summary::-webkit-details-marker { display: none; }
.ort-toggle > summary:hover,
.ort-toggle[open] > summary { border-color: rgba(207, 31, 40, .35); }
.ort-toggle > summary:hover { box-shadow: 0 10px 24px rgba(20, 21, 23, .08); }
.ort-toggle > summary:focus-visible { outline: 3px solid var(--brand, #cf1f28); outline-offset: 3px; }
.ort-toggle > summary h2 { margin: 0 !important; }

.ort-toggle__hint {
  margin-left: auto;
  font-size: 13px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  color: var(--brand, #cf1f28);
}
.ort-toggle__hint .is-open { display: none; }
.ort-toggle[open] .ort-toggle__hint .is-open { display: inline; }
.ort-toggle[open] .ort-toggle__hint .is-closed { display: none; }

.ort-toggle__icon {
  width: 38px; height: 38px; flex: none;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  border: 1.5px solid var(--brand, #cf1f28);
  color: var(--brand, #cf1f28);
  transition: transform .25s cubic-bezier(.16, 1, .3, 1), background .2s ease, color .2s ease;
}
.ort-toggle__icon svg { width: 18px; height: 18px; }
.ort-toggle > summary:hover .ort-toggle__icon,
.ort-toggle[open] .ort-toggle__icon { background: var(--brand, #cf1f28); color: #fff; }
.ort-toggle[open] .ort-toggle__icon { transform: rotate(180deg); }

.ort-toggle > p:first-of-type { margin-top: 20px; }

@media (max-width: 560px) {
  .ort-toggle > summary { padding: 16px 16px; gap: 12px; }
  .ort-toggle__hint { display: none; }
  .ort-toggle__icon { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .ort-toggle__icon, .ort-toggle > summary { transition: none; }
}
