/*
 * Plain CSS overrides loaded after dist/css/app.min.css (no build step needed).
 */

/* Multi column text – "locations" card variant (Kontakt page).
   Enable with the "locations" class in Advanced → Additional CSS class(es). */
.block.multi-column-text.locations .heading .title {
  margin-bottom: 32px;
}
.block.multi-column-text.locations .text-columns {
  row-gap: 24px;
  align-items: stretch;
}
.block.multi-column-text.locations .text-columns > .row__col {
  display: flex;
}
.block.multi-column-text.locations .editor-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 32px 28px;
  background: #FFFFFF;
  border: 1px solid #C1CFDA;
  border-top: 4px solid #21557A;
  border-radius: 8px;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.block.multi-column-text.locations .editor-content:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(26, 67, 98, 0.12);
}
.block.multi-column-text.locations .editor-content p {
  margin-bottom: 0;
  color: #4F4D55;
  line-height: 1.6;
}
.block.multi-column-text.locations .editor-content .pre-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #E9EEF2;
  font-family: "DM Serif Display", serif;
  font-size: 26px;
  font-weight: 400;
  letter-spacing: 0;
  color: #21557A;
}
.block.multi-column-text.locations .editor-content a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  color: #2C2C30;
  font-weight: 500;
  text-decoration: none;
}
.block.multi-column-text.locations .editor-content a:hover {
  color: #21557A;
  text-decoration: underline;
}

/* Icons: pin before city name, phone/envelope before tel:/mailto: links */
.block.multi-column-text.locations .editor-content .pre-title::before,
.block.multi-column-text.locations .editor-content a[href^="tel:"]::before,
.block.multi-column-text.locations .editor-content a[href^="mailto:"]::before {
  content: "";
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  background-color: #21557A;
  -webkit-mask: var(--icon) no-repeat center / contain;
  mask: var(--icon) no-repeat center / contain;
}
.block.multi-column-text.locations .editor-content .pre-title::before {
  width: 22px;
  height: 22px;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E");
}
.block.multi-column-text.locations .editor-content a[href^="tel:"]::before {
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.57 3.57a1 1 0 0 1-.25 1z'/%3E%3C/svg%3E");
}
.block.multi-column-text.locations .editor-content a[href^="mailto:"]::before {
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5-8-5V6l8 5 8-5z'/%3E%3C/svg%3E");
}

@media only screen and (max-width: 766px) {
  .block.multi-column-text.locations .editor-content {
    padding: 24px 20px;
  }
  .block.multi-column-text.locations .editor-content:hover {
    transform: none;
  }
  .block.multi-column-text.locations .editor-content .pre-title {
    font-size: 22px;
  }
}
