/* ================================================================
   COATI – ZENTRALE CSS-DATEI (automatisch bereinigte Fassung)
   Stand: 28.08.2026
   Herkunft: WordPress Customizer -> "Zusätzliches CSS"
   Pfad: wp-content/themes/spectra-one-child/custom.css

   ÄNDERUNG GEGENÜBER VORHERIGER FASSUNG (18.08.2026):
   Automatisch mit "clean-css" bereinigt: Es wurden ausschließlich
   CSS-Eigenschaften entfernt, die durch eine SPÄTERE Regel mit
   demselben Selektor (inkl. !important-Overrides) garantiert
   überschrieben wurden und daher nie zur Anzeige kamen. Das
   sichtbare Ergebnis auf der Website bleibt dadurch unverändert.

   NICHT entfernt wurden:
   - Regeln mit unterschiedlichen Klassennamen (z.B. Alt-/Neu-
     Varianten wie .coati-ausstattung-item vs. .coati-ausstattung-card),
     da nicht mit Sicherheit feststellbar war, welche Variante die
     aktuell verwendeten Shortcodes tatsächlich ausgeben.
   - Regeln, die zwar ungenutzt wirken könnten, deren Löschung aber
     ohne Kenntnis der aktuellen Shortcode-Ausgabe riskant wäre.

   Für einen weiteren Performance-Gewinn (PageSpeed "nicht verwendetes
   CSS") wäre der nächste sinnvolle Schritt, diese Datei in mehrere
   kleinere, seitenspezifische Dateien aufzuteilen und nur bedingt
   zu laden (analog zum bestehenden is_singular()-Check beim
   GPX-Reisekarten-Skript).
   ================================================================ */

.coati-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 18px
}
.coati-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 20px;
  border-radius: 8px;
  background: #2d6a4f;
  text-decoration: none;
  font-weight: 600;
  line-height: 1.2;
  transition: background-color .2s,transform .2s
}
.coati-button:focus,
.coati-button:hover {
  background: #1b4332;
  color: #fff;
  transform: translateY(-1px)
}
@media (max-width:600px) {
  .coati-actions {
    align-items: stretch
  }
  .coati-button {
    width: 100%
  }
  .coati-ausstattung-liste {
    grid-template-columns: 1fr
  }
}
.coati-ausstattung h2 {
  margin-bottom: 20px
}
.coati-ausstattung-item {
  display: flex;
  align-items: center;
  gap: 12px;
  transition: border-color .2s,box-shadow .2s,transform .2s
}
.coati-ausstattung-icon {
  display: inline-flex;
  flex: 0 0 38px;
  align-items: center;
  justify-content: center
}
.coati-ausstattung-item:hover {
  border-color: #b7d1c3;
  box-shadow: 0 4px 12px rgba(0,0,0,.06);
  transform: translateY(-1px)
}
.coati-highlights {
  margin: 40px 0
}
.coati-highlights h2 {
  margin: 0 0 20px
}
.coati-highlights-liste {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none
}
.coati-highlight {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 9px 16px 9px 10px;
  border: 1px solid #ecd9c8;
  border-radius: 999px;
  background: #f6eae0;
  color: #c17f4a;
  font-weight: 600;
  line-height: 1.25;
  transition: border-color .2s,box-shadow .2s,transform .2s
}
.coati-highlight:hover {
  border-color: #d9a876;
  box-shadow: 0 4px 12px rgba(0,0,0,.06);
  transform: translateY(-1px)
}
.coati-highlight-icon {
  display: flex;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #f0dcc9;
  color: #c17f4a
}
.coati-highlight-icon svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-highlight-text {
  white-space: nowrap
}
@media (max-width:600px) {
  .coati-highlights {
    margin: 20px 0
  }
  .coati-highlights-liste {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px
  }
  .coati-highlight {
    width: 100%;
    border-radius: 10px
  }
  .coati-highlight-text {
    white-space: normal
  }
}
.coati-beschreibung {
  margin: 48px 0;
  padding: 28px;
  border: 1px solid #e3e8e5;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.04)
}
.coati-beschreibung-kopf {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px
}
.coati-beschreibung-kopf h2 {
  margin: 0
}
.coati-beschreibung-symbol {
  display: flex;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #e8f2ec;
  color: #2d6a4f
}
.coati-beschreibung-symbol svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round
}
.coati-beschreibung-inhalt {
  max-width: 78ch;
  color: #374151;
  font-size: 1.05rem;
  line-height: 1.75
}
.coati-beschreibung-inhalt > :first-child {
  margin-top: 0
}
.coati-beschreibung-inhalt > :last-child {
  margin-bottom: 0
}
.coati-beschreibung-inhalt p {
  margin: 0 0 1.2em
}
.coati-beschreibung-inhalt h3,
.coati-beschreibung-inhalt h4 {
  margin-top: 1.6em;
  margin-bottom: .6em
}
.coati-beschreibung-inhalt ol,
.coati-beschreibung-inhalt ul {
  padding-left: 1.3em
}
@media (max-width:600px) {
  .coati-beschreibung {
    margin: 20px 0;
    padding: 20px;
    border-radius: 10px
  }
  .coati-beschreibung-inhalt {
    font-size: 1rem;
    line-height: 1.65
  }
}
.coati-galerie {
  margin: 48px 0
}
.coati-galerie-kopf {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px
}
.coati-galerie-kopf h2 {
  margin: 0
}
.coati-galerie-kopf span {
  color: #6b7280;
  font-size: .95rem
}
.coati-galerie-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px
}
.coati-galerie-element {
  position: relative;
  display: block;
  overflow: hidden;
  min-height: 180px;
  border-radius: 12px;
  background: #edf2ef;
  aspect-ratio: 4/3
}
.coati-galerie-element--gross {
  grid-column: span 2;
  grid-row: span 2;
  min-height: 372px
}
.coati-galerie-bild {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s
}
.coati-galerie-element::after {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.08);
  content: "";
  opacity: 0;
  transition: opacity .25s
}
.coati-galerie-element:hover .coati-galerie-bild {
  transform: scale(1.035)
}
.coati-galerie-element:hover::after {
  opacity: 1
}
@media (max-width:800px) {
  .coati-galerie-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
  .coati-galerie-element--gross {
    grid-column: span 2;
    grid-row: auto;
    min-height: 320px
  }
}
@media (max-width:520px) {
  .coati-galerie-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px
  }
  .coati-galerie-element,
  .coati-galerie-element--gross {
    grid-column: auto;
    min-height: 140px
  }
}
body.coati-lightbox-offen {
  overflow: hidden
}
.coati-lightbox {
  position: fixed;
  z-index: 999999;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 70px 80px 50px;
  background: rgba(8,15,12,.94)
}
.coati-lightbox.ist-offen {
  display: flex
}
.coati-lightbox-inhalt {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center
}
.coati-lightbox-bild {
  display: block;
  max-width: 100%;
  max-height: calc(100vh - 130px);
  width: auto;
  height: auto;
  border-radius: 8px;
  object-fit: contain;
  box-shadow: 0 15px 50px rgba(0,0,0,.45)
}
.coati-lightbox-nav,
.coati-lightbox-schliessen {
  position: absolute;
  z-index: 2;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.14);
  color: #fff;
  cursor: pointer;
  transition: background .2s,transform .2s
}
.coati-lightbox-nav:hover,
.coati-lightbox-schliessen:hover {
  background: rgba(255,255,255,.25);
  transform: scale(1.05)
}
.coati-lightbox-schliessen {
  top: 18px;
  right: 22px;
  width: 46px;
  height: 46px;
  font-size: 34px;
  line-height: 40px
}
.coati-lightbox-nav {
  top: 50%;
  width: 52px;
  height: 52px;
  margin-top: -26px;
  font-size: 44px;
  line-height: 44px
}
.coati-lightbox-zurueck {
  left: 18px
}
.coati-lightbox-weiter {
  right: 18px
}
.coati-lightbox-info {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  pointer-events: none
}
.coati-lightbox-zaehler {
  padding: 7px 13px;
  border-radius: 999px;
  background: rgba(0,0,0,.55);
  color: #fff;
  font-size: .92rem
}
@media (max-width:700px) {
  .coati-lightbox {
    padding: 62px 14px 55px
  }
  .coati-lightbox-bild {
    max-height: calc(100vh - 120px);
    border-radius: 5px
  }
  .coati-lightbox-nav {
    top: auto;
    bottom: 12px;
    width: 46px;
    height: 46px;
    margin: 0;
    background: rgba(255,255,255,.18)
  }
  .coati-lightbox-zurueck {
    left: 14px
  }
  .coati-lightbox-weiter {
    right: 14px
  }
  .coati-lightbox-schliessen {
    top: 10px;
    right: 12px
  }
  .coati-lightbox-info {
    bottom: 18px
  }
}
.coati-kontakt {
  margin: 48px 0;
  padding: 28px;
  border: 1px solid #dfe8e2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28,62,45,.08)
}
.coati-kontakt-kopf {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px
}
.coati-kontakt-kopf h2 {
  margin: 0
}
.coati-kontakt-icon,
.coati-kontakt-titelicon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-kontakt-titelicon {
  width: 44px;
  height: 44px
}
.coati-kontakt-icon {
  width: 40px;
  height: 40px
}
.coati-kontakt-icon svg,
.coati-kontakt-titelicon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-kontakt-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px
}
.coati-kontakt-element {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  min-width: 0;
  padding: 17px;
  border-radius: 13px;
  background: #f7faf8
}
.coati-kontakt-element strong {
  display: block;
  margin-bottom: 4px;
  color: #203b2b;
  font-size: .9rem
}
.coati-kontakt-element a {
  overflow-wrap: anywhere;
  color: #c17f4a;
  text-decoration: none
}
.coati-kontakt-element a:hover {
  text-decoration: underline
}
.coati-kontakt-zusatz {
  display: block;
  margin-top: 7px;
  font-size: .88rem;
  font-weight: 600
}
.coati-kontakt-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px
}
.coati-kontakt-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border: 2px solid #c17f4a;
  border-radius: 999px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: transform .2s,background .2s
}
.coati-kontakt-button:hover {
  transform: translateY(-2px)
}
.coati-kontakt-button--primaer {
  background: #c17f4a;
  color: #fff
}
.coati-kontakt-button--sekundaer {
  background: #fff;
  color: #c17f4a
}
@media (max-width:700px) {
  .coati-kontakt {
    margin: 20px 0;
    padding: 22px 18px
  }
  .coati-kontakt-grid {
    grid-template-columns: 1fr
  }
  .coati-kontakt-buttons {
    flex-direction: column
  }
  .coati-kontakt-button {
    width: 100%;
    box-sizing: border-box
  }
  .coati-situationsplan {
    margin: 20px 0
  }
}
.coati-preise {
  margin: 48px 0;
  padding: 28px;
  border: 1px solid #dfe8e2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28,62,45,.08)
}
.coati-preise-kopf {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px
}
.coati-preise-kopf h2 {
  margin: 0
}
.coati-preise-kopf p {
  margin: 4px 0 0;
  color: #68756d;
  font-size: .95rem
}
.coati-preise-icon,
.coati-preise-titelicon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-preise-titelicon {
  width: 46px;
  height: 46px
}
.coati-preise-icon {
  width: 44px;
  height: 44px
}
.coati-preise-icon svg,
.coati-preise-titelicon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-preise-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px
}
.coati-preise-karte {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
  padding: 20px;
  border-radius: 14px;
  background: #f7faf8
}
.coati-preise-text {
  min-width: 0
}
.coati-preise-label {
  display: block;
  margin-bottom: 4px;
  color: #68756d;
  font-size: .88rem
}
.coati-preise-text strong {
  display: block;
  color: #203b2b;
  font-size: 1.1rem;
  line-height: 1.35;
  overflow-wrap: anywhere
}
.coati-preise-hinweis {
  margin: 20px 0 0;
  padding-top: 16px;
  border-top: 1px solid #e5ece7;
  color: #6b756f;
  font-size: .86rem;
  line-height: 1.5
}
@media (max-width:700px) {
  .coati-preise {
    margin: 20px 0;
    padding: 18px 14px;
    border-radius: 12px
  }
  .coati-preise-kopf {
    gap: 10px;
    margin-bottom: 16px
  }
  .coati-preise-titelicon {
    width: 38px;
    height: 38px
  }
  .coati-preise-titelicon svg {
    width: 19px;
    height: 19px
  }
  .coati-preise-grid {
    grid-template-columns: 1fr;
    gap: 10px
  }
  .coati-preise-karte {
    gap: 10px;
    padding: 13px 12px;
    border-radius: 10px
  }
  .coati-preise-icon {
    width: 36px;
    height: 36px
  }
  .coati-preise-icon svg {
    width: 19px;
    height: 19px
  }
  .coati-preise-label {
    margin-bottom: 2px;
    font-size: .82rem
  }
  .coati-preise-text strong {
    font-size: 1rem
  }
  .coati-preise-hinweis {
    margin-top: 14px;
    padding-top: 12px;
    font-size: .82rem
  }
}
.coati-bewertung {
  margin: 48px 0;
  padding: 30px;
  border: 1px solid #dfe8e2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28,62,45,.08)
}
.coati-bewertung-titel {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 26px
}
.coati-bewertung-titel h2 {
  margin: 0
}
.coati-bewertung-titel p {
  margin: 4px 0 0;
  color: #68756d;
  font-size: .95rem
}
.coati-bewertung-infoicon,
.coati-bewertung-titelicon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-bewertung-titelicon {
  width: 48px;
  height: 48px
}
.coati-bewertung-infoicon {
  width: 42px;
  height: 42px
}
.coati-bewertung-infoicon svg,
.coati-bewertung-titelicon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-bewertung-gesamt {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
  padding: 22px;
  border-radius: 15px;
  background: #f4f8f5
}
.coati-bewertung-zahl {
  display: flex;
  width: 82px;
  height: 82px;
  flex: 0 0 82px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #c17f4a;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 800
}
.coati-bewertung-sterne {
  display: flex;
  gap: 3px;
  line-height: 1
}
.coati-stern {
  color: #d6ddd8;
  font-size: 1.65rem
}
.coati-stern--aktiv {
  color: #e5a927
}
.coati-bewertung-gesamt p {
  margin: 7px 0 0;
  color: #5f6d64;
  font-weight: 600
}
.coati-bewertung-infos {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin-bottom: 26px
}
.coati-bewertung-info {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
  padding: 17px;
  border-radius: 13px;
  background: #f7faf8
}
.coati-bewertung-info--positiv {
  background: #edf7ef
}
.coati-bewertung-info--neutral {
  background: #f5f5f3
}
.coati-bewertung-info span:not(.coati-bewertung-infoicon) {
  display: block;
  margin-bottom: 3px;
  color: #68756d;
  font-size: .86rem
}
.coati-bewertung-info strong {
  display: block;
  color: #203b2b;
  overflow-wrap: anywhere
}
.coati-bewertung-kategorien {
  padding-top: 23px;
  border-top: 1px solid #e4ebe6
}
.coati-bewertung-kategorien h3 {
  margin: 0 0 20px;
  font-size: 1.15rem
}
.coati-bewertung-kategorie {
  margin-bottom: 17px
}
.coati-bewertung-kategorie:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0
}
.coati-bewertung-kategorie-kopf {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 7px;
  font-size: .94rem
}
.coati-bewertung-kategorie-kopf span {
  color: #35483c
}
.coati-bewertung-kategorie-kopf strong {
  color: #c17f4a
}
@media (max-width:700px) {
  .coati-bewertung {
    padding: 22px 18px
  }
  .coati-bewertung-infos {
    grid-template-columns: 1fr
  }
  .coati-bewertung-gesamt {
    align-items: flex-start;
    padding: 18px
  }
  .coati-bewertung-zahl {
    width: 68px;
    height: 68px;
    flex-basis: 68px;
    font-size: 1.5rem
  }
  .coati-stern {
    font-size: 1.35rem
  }
}
.coati-bewertung-detailsterne {
  display: flex;
  gap: 4px;
  margin-top: 4px;
  line-height: 1
}
.coati-bewertung-detailsterne .coati-stern {
  font-size: 1.35rem
}
.coati-bewertung-kategorie {
  padding: 13px 0;
  border-bottom: 1px solid #e7ede9
}
.coati-bewertung-kategorie:first-of-type {
  padding-top: 0
}
.coati-bewertung-notizen {
  margin-top: 26px;
  padding-top: 24px;
  border-top: 1px solid #e4ebe6
}
.coati-bewertung-notizen h3 {
  margin: 0 0 14px;
  font-size: 1.15rem
}
.coati-bewertung-notizen div {
  color: #35483c;
  line-height: 1.7
}
.coati-bewertung-notizen p {
  margin: 0 0 1em
}
.coati-bewertung-notizen p:last-child {
  margin-bottom: 0
}
.coati-schnellinfos {
  display: block!important;
  width: 100%;
  margin: 16px 0 48px
}
.coati-schnellinfos-kopf {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px
}
.coati-schnellinfos-kopf h2 {
  margin: 0
}
.coati-schnellinfos-kopf p {
  margin: 4px 0 0;
  color: #68756d;
  font-size: .95rem
}
.coati-schnellinfos-titelicon {
  display: inline-flex;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-schnellinfos-titelicon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-info-content {
  display: flex;
  align-items: center;
  gap: 14px
}
.coati-info-icon {
  display: inline-flex;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center
}
.coati-info-note {
  margin-top: 16px;
  color: #7b8880;
  font-size: .78rem;
  line-height: 1.35
}
.coati-info-card {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  box-sizing: border-box
}
.coati-info-icon {
  display: flex;
  flex: 0 0 46px;
  align-items: center;
  justify-content: center
}
.coati-info-icon svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-info-content {
  display: flex;
  min-width: 0;
  flex-direction: column
}
.coati-info-label {
  line-height: 1.2
}
.coati-info-value {
  overflow-wrap: anywhere
}
@media (max-width:900px) {
  .coati-schnellinfos-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
}
@media (max-width:520px) {
  .coati-schnellinfos-kopf {
    align-items: flex-start
  }
  .coati-schnellinfos-grid {
    grid-template-columns: 1fr;
    gap: 10px
  }
  .coati-info-card {
    min-height: auto;
    padding: 14px
  }
}
.coati-ausstattung-liste {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none
}
.coati-ausstattung-item {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 72px;
  align-items: center;
  justify-content: flex-start;
  gap: 14px;
  margin: 0;
  padding: 14px 18px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box
}
.coati-ausstattung-icon {
  position: static;
  display: inline-flex;
  flex: 0 0 40px;
  order: 1;
  align-items: center;
  justify-content: center;
  color: #2d6a4f
}
.coati-ausstattung-icon .coati-svg-icon {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  display: block;
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-ausstattung-label {
  position: static;
  display: block;
  min-width: 0;
  order: 2;
  color: #1f2937;
  font-weight: 600;
  line-height: 1.35;
  overflow-wrap: anywhere
}
@media (max-width:600px) {
  .coati-ausstattung-liste {
    grid-template-columns: 1fr;
    gap: 8px
  }
  .coati-ausstattung-item {
    min-height: 56px;
    gap: 10px;
    padding: 10px 14px
  }
  .coati-ausstattung-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px
  }
  .coati-ausstattung-icon .coati-svg-icon {
    width: 18px;
    height: 18px
  }
}
.coati-archivkarte {
  overflow: hidden;
  border: 1px solid #dfe8e2;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28,62,45,.08);
  transition: transform .2s,box-shadow .2s;
  display: flex;
  flex-direction: column
}
.coati-archivkarte:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 34px rgba(28,62,45,.13)
}
.coati-archivkarte-bildlink {
  display: block;
  overflow: hidden;
  aspect-ratio: 16/10;
  background: #edf2ef
}
.coati-archivkarte-bild {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s
}
.coati-archivkarte:hover .coati-archivkarte-bild {
  transform: scale(1.035)
}
.coati-archivkarte-platzhalter {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: #c17f4a
}
.coati-archivkarte-platzhalter .coati-svg-icon {
  width: 56px;
  height: 56px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5
}
.coati-archivkarte-inhalt {
  padding: 22px;
  display: flex;
  flex: 1;
  flex-direction: column
}
.coati-archivkarte-kopf {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: start
}
.coati-archivkarte-kopf h2 {
  font-size: 1.35rem;
  line-height: 1.25
}
.coati-archivkarte-kopf h2 a {
  color: #1f2937;
  text-decoration: none;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden
}
.coati-archivkarte-kopf h2 a:hover {
  color: #2d6a4f
}
.coati-archivkarte-bewertung {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px
}
.coati-archivkarte-sterne {
  display: flex;
  gap: 1px
}
.coati-archiv-stern {
  color: #d6ddd8;
  font-size: 1rem;
  line-height: 1
}
.coati-archiv-stern--aktiv {
  color: #e5a927
}
.coati-archivkarte-bewertung strong {
  color: #c17f4a;
  font-size: .95rem
}
.coati-archivkarte-standort {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #68756d;
  font-size: .93rem
}
.coati-archivkarte-standort .coati-svg-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8
}
.coati-archivkarte-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center
}
.coati-archivkarte-merkmale {
  display: flex;
  flex-wrap: wrap;
  gap: 9px
}
.coati-archiv-merkmal {
  display: inline-flex;
  align-items: center
}
.coati-archiv-merkmal .coati-svg-icon {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8
}
.coati-archivkarte-button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: #c17f4a;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  align-self: flex-start
}
.coati-archivkarte-button:hover {
  background: #f6eae0;
  color: #c17f4a
}
@media (max-width:520px) {
  .coati-archivkarte-kopf {
    display: block
  }
  .coati-archivkarte-bewertung {
    margin-top: 10px
  }
  .coati-archivkarte-inhalt {
    padding: 18px
  }
}
.coati-archiv {
  width: 100%;
  margin: 28px auto 48px
}
.coati-archiv-kopf {
  display: flex;
  align-items: center;
  gap: 14px
}
.coati-archiv-kopficon {
  display: inline-flex;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center
}
.coati-archiv-kopficon .coati-svg-icon {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-archiv-ergebnis {
  margin: 0 28px 20px 94px;
  color: #68756d;
  font-size: .92rem
}
.coati-archiv-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 24px
}
.coati-archiv-pagination {
  margin-top: 40px
}
.coati-archiv-pagination .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none
}
.coati-archiv-pagination .page-numbers li {
  margin: 0
}
.coati-archiv-pagination a,
.coati-archiv-pagination span {
  display: inline-flex;
  min-width: 42px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 8px 13px;
  border: 1px solid #d8e4dc;
  border-radius: 999px;
  background: #fff;
  color: #c17f4a;
  font-weight: 700;
  text-decoration: none
}
.coati-archiv-pagination .current,
.coati-archiv-pagination a:hover {
  border-color: #c17f4a;
  background: #c17f4a;
  color: #fff
}
.coati-archiv-leer {
  padding: 36px;
  border: 1px solid #dfe8e2;
  border-radius: 18px;
  background: #f7faf8;
  text-align: center
}
.coati-archiv-leer h2 {
  margin-top: 0
}
@media (max-width:1100px) {
  .coati-archiv-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
}
@media (max-width:700px) {
  .coati-archiv {
    margin: 24px auto 36px
  }
  .coati-archiv-kopf {
    align-items: flex-start;
    gap: 10px
  }
  .coati-archiv-kopficon {
    width: 38px;
    height: 38px;
    flex-basis: 38px
  }
  .coati-archiv-kopficon .coati-svg-icon {
    width: 19px;
    height: 19px
  }
  .coati-archiv-ergebnis {
    margin-left: 48px
  }
  .coati-archiv-grid {
    grid-template-columns: 1fr;
    gap: 18px
  }
}
.coati-filterbereich {
  margin: 30px 0;
  padding: 26px;
  border: 1px solid #dfe8e2;
  border-radius: 20px;
  background: #f7faf8
}
.coati-filterformular label,
.coati-filterformular legend {
  color: #203b2b;
  font-weight: 700
}
.coati-filter-suche label {
  display: block;
  margin-bottom: 8px
}
.coati-filter-suchfeld {
  position: relative
}
.coati-filter-suchicon {
  position: absolute;
  top: 50%;
  left: 15px;
  display: flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  color: #68756d;
  transform: translateY(-50%);
  pointer-events: none
}
.coati-filter-suchicon .coati-svg-icon {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8
}
.coati-filter-suchfeld input {
  width: 100%;
  min-height: 52px;
  padding: 11px 15px 11px 48px;
  border: 1px solid #cfdcd3;
  border-radius: 12px;
  background: #fff;
  color: #1f2937;
  font-size: 1rem
}
.coati-filter-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr))
}
.coati-filter-feld label {
  font-size: .9rem
}
.coati-filter-feld select {
  min-height: 48px;
  padding: 9px 38px 9px 12px;
  border: 1px solid #cfdcd3;
  border-radius: 12px;
  background-color: #fff;
  color: #26352c;
  font-size: .95rem
}
.coati-filter-feld select:focus,
.coati-filter-suchfeld input:focus {
  border-color: #c17f4a;
  outline: rgba(49,95,67,.12) solid 3px
}
.coati-filter-merkmale {
  display: flex;
  flex-wrap: wrap;
  margin: 22px 0 0;
  padding: 0;
  border: 0
}
.coati-filter-merkmale legend {
  font-size: .9rem
}
.coati-filter-checkbox {
  display: inline-flex;
  align-items: center;
  cursor: pointer
}
.coati-filter-checkbox:hover {
  border-color: #86a792
}
.coati-filter-checkbox input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #c17f4a
}
.coati-filter-aktionen {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-top: 24px
}
.coati-filter-button,
.coati-filter-zuruecksetzen {
  min-height: 46px;
  padding: 10px 19px;
  border-radius: 999px;
  font-weight: 700;
  cursor: pointer
}
.coati-filter-button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border: 0;
  border-radius: 999px;
  background: #c17f4a;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color .2s,transform .2s
}
.coati-filter-button:focus,
.coati-filter-button:hover {
  background: #244d36;
  color: #fff;
  transform: translateY(-1px)
}
.coati-filter-zuruecksetzen {
  border: 1px solid #cbd9cf;
  background: 0 0;
  color: #c17f4a
}
.coati-filter-zuruecksetzen:hover {
  background: #eaf2ed
}
@media (max-width:1000px) {
  .coati-filter-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
}
@media (max-width:600px) {
  .coati-filterbereich {
    padding: 18px
  }
  .coati-filter-grid {
    grid-template-columns: 1fr
  }
  .coati-filter-merkmale {
    display: grid;
    grid-template-columns: 1fr 1fr
  }
  .coati-filter-aktionen {
    display: grid
  }
  .coati-filter-button,
  .coati-filter-zuruecksetzen {
    width: 100%
  }
}
.coati-archiv-reset,
.coati-filter-zuruecksetzen {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none
}
.coati-archiv-reset {
  min-height: 44px;
  margin-top: 12px;
  padding: 9px 17px;
  border: 1px solid #c17f4a;
  border-radius: 999px;
  color: #c17f4a;
  font-weight: 700
}
.coati-archiv-reset:hover {
  background: #c17f4a;
  color: #fff
}
.coati-header-wrap {
  position: sticky;
  top: 12px;
  z-index: 999;
  margin-left: auto;
  margin-right: auto
}
.coati-header {
  width: min(1400px,calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
  margin-top: 0!important;
  background: 0 0;
  border: none!important;
  box-shadow: none!important
}
.coati-header .current-menu-ancestor > .wp-block-navigation-item__content,
.coati-header .current-menu-item > .wp-block-navigation-item__content {
  color: #c17f4a;
  font-weight: 700
}
.coati-header .wp-block-image img {
  width: 180px;
  height: auto
}
@media (max-width:782px) {
  .coati-header-wrap {
    top: 8px
  }
  .coati-header {
    width: calc(100% - 20px);
    border-radius: 14px
  }
  .coati-header .wp-block-image img {
    width: 145px
  }
}
.admin-bar .coati-header-wrap {
  top: 44px
}
@media screen and (max-width:782px) {
  .admin-bar .coati-header-wrap {
    top: 54px
  }
}
.coati-archiv-filter-position {
  position: relative;
  z-index: 20;
  max-width: 1200px;
  margin: -200px auto 70px;
  padding: 0 30px
}
.coati-archiv-filter-position > * {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 12px 35px rgba(0,0,0,.12)
}
.wp-site-blocks > header.wp-block-template-part {
  position: absolute!important;
  top: 0!important;
  left: 0!important;
  right: 0!important;
  width: 100%!important;
  z-index: 1000!important;
  background: 0 0!important
}
.wp-site-blocks > header.wp-block-template-part > .wp-block-group,
.wp-site-blocks > header.wp-block-template-part > .wp-block-group > .wp-block-group {
  background-color: transparent!important;
  background-image: none!important
}
.wp-site-blocks>header.wp-block-template-part .wp-block-navigation-item__content,
.wp-site-blocks>header.wp-block-template-part .wp-block-navigation__responsive-container-close,
.wp-site-blocks>header.wp-block-template-part .wp-block-navigation__responsive-container-open {
  color: #fff!important
}
.coati-archivkarte-merkmale {
  display: flex;
  flex-wrap: wrap;
  align-items: center
}
.coati-archivkarte-merkmale p {
  display: contents;
  margin: 0;
  padding: 0
}
.coati-archivkarte-merkmale br {
  display: none
}
.coati-archiv-merkmal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px
}
.coati-archivkarte-inhalt {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 320px
}
.coati-archivkarte-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px
}
.coati-archivkarte-preis {
  color: #203b2b;
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.3
}
.coati-archivkarte-bewertung {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap
}
.coati-archivkarte-bewertung .coati-sterne {
  color: #e3a008;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 1px
}
.coati-archivkarte-bewertung .coati-bewertung-zahl {
  color: #c17f4a;
  font-size: .82rem;
  font-weight: 700
}
.coati-google-map {
  width: 100%;
  margin: 0
}
.coati-google-map iframe {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(0,0,0,.15)
}
.coati-google-map-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px
}
.coati-google-map-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 20px;
  border-radius: 8px;
  background: #c17f4a;
  color: #fff;
  font-weight: 600;
  text-decoration: none
}
.coati-google-map-button:hover {
  color: #fff;
  text-decoration: none;
  opacity: .9
}
@media (max-width:768px) {
  .coati-google-map iframe {
    height: 420px;
    border-radius: 10px
  }
  .coati-google-map-actions {
    justify-content: stretch
  }
  .coati-google-map-button {
    width: 100%
  }
}
.coati-wetter {
  background: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,.08)
}
.coati-wetter-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px
}
.coati-wetter-kicker {
  color: #6b7280;
  margin: 0
}
.coati-wetter-title {
  margin: 3px 0 0;
  line-height: 1.2
}
.coati-wetter-current {
  display: flex;
  align-items: center;
  gap: 10px
}
.coati-wetter-temperature {
  line-height: 1;
  font-weight: 700;
  color: #1f2937
}
.coati-wetter-details {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px
}
.coati-wetter-detail {
  background: #f8fafc;
  text-align: center
}
.coati-wetter-detail span {
  display: block;
  color: #6b7280
}
.coati-wetter-forecast {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 10px
}
.coati-wetter-day {
  background: #f8fafc;
  text-align: center
}
.coati-wetter-day-name {
  display: block;
  font-weight: 600
}
.coati-wetter-day-icon {
  display: block
}
.coati-wetter-day-temperature {
  display: block
}
.coati-wetter-day-temperature strong {
  margin-right: 4px
}
.coati-wetter-day-rain {
  color: #475569
}
.coati-wetter-source {
  margin: 14px 0 0;
  text-align: right;
  color: #6b7280
}
@media(max-width:768px) {
  .coati-wetter {
    padding: 16px
  }
  .coati-wetter-header {
    align-items: flex-start
  }
  .coati-wetter-title {
    font-size: 1.3rem
  }
  .coati-wetter-icon,
  .coati-wetter-temperature {
    font-size: 2rem
  }
  .coati-wetter-details {
    grid-template-columns: repeat(3,1fr);
    gap: 8px
  }
  .coati-wetter-detail {
    padding: 10px 6px
  }
  .coati-wetter-forecast {
    display: flex;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 6px;
    scroll-snap-type: x mandatory
  }
  .coati-wetter-day {
    flex: 0 0 125px;
    scroll-snap-align: start
  }
}
@media(max-width:480px) {
  .coati-wetter-header {
    flex-direction: column
  }
  .coati-wetter-details {
    grid-template-columns: 1fr
  }
}
.coati-wetter {
  padding: 18px;
  border-radius: 14px;
  margin: 22px 0
}
.coati-wetter-header {
  margin-bottom: 12px
}
.coati-wetter-kicker {
  font-size: .78rem
}
.coati-wetter-title {
  font-size: 1.35rem
}
.coati-wetter-current {
  gap: 8px
}
.coati-wetter-icon {
  font-size: 2rem
}
.coati-wetter-temperature {
  font-size: 2.2rem
}
.coati-wetter-camping-info {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 10px;
  margin: 12px 0
}
.coati-wetter-ampel,
.coati-wetter-empfehlung {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 54px;
  padding: 9px 12px;
  border-radius: 10px;
  background: #f8fafc
}
.coati-wetter-ampel > span,
.coati-wetter-empfehlung > span {
  font-size: 1.35rem
}
.coati-wetter-ampel small,
.coati-wetter-empfehlung small {
  display: block;
  font-size: .7rem;
  color: #64748b
}
.coati-wetter-ampel strong,
.coati-wetter-empfehlung strong {
  display: block;
  font-size: .9rem;
  line-height: 1.25
}
.coati-wetter-details {
  grid-template-columns: repeat(6,1fr);
  gap: 8px;
  margin: 12px 0
}
.coati-wetter-detail {
  padding: 9px 6px;
  border-radius: 9px
}
.coati-wetter-detail span {
  font-size: .7rem;
  margin-bottom: 3px
}
.coati-wetter-detail strong {
  display: block;
  font-size: .9rem
}
.coati-wetter-detail small {
  display: block;
  margin-top: 2px;
  font-size: .66rem;
  color: #64748b
}
.coati-wind-arrow {
  display: inline-block
}
.coati-wetter-details-box {
  margin-top: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  overflow: hidden
}
.coati-wetter-details-box summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 13px;
  cursor: pointer;
  font-size: .9rem;
  font-weight: 600;
  list-style: none;
  background: #f8fafc
}
.coati-wetter-details-box summary::-webkit-details-marker {
  display: none
}
.coati-wetter-summary-hinweis {
  color: #64748b;
  font-size: .72rem;
  font-weight: 400
}
.coati-wetter-details-box[open] .coati-wetter-summary-hinweis {
  font-size: 0
}
.coati-wetter-details-box[open] .coati-wetter-summary-hinweis::after {
  content: "schließen";
  font-size: .72rem
}
.coati-wetter-hourly {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 10px;
  scroll-snap-type: x mandatory
}
.coati-wetter-hour {
  flex: 0 0 82px;
  padding: 8px 5px;
  border-radius: 8px;
  background: #f8fafc;
  text-align: center;
  scroll-snap-align: start
}
.coati-wetter-hour small,
.coati-wetter-hour span,
.coati-wetter-hour strong {
  display: block
}
.coati-wetter-hour strong {
  font-size: .76rem
}
.coati-wetter-hour-icon {
  margin: 4px 0;
  font-size: 1.35rem
}
.coati-wetter-hour small {
  font-size: .65rem
}
.coati-wetter-forecast {
  gap: 7px;
  margin: 0;
  padding: 10px
}
.coati-wetter-day {
  padding: 9px 5px;
  border-radius: 8px
}
.coati-wetter-day-name {
  font-size: .78rem;
  margin-bottom: 4px
}
.coati-wetter-day-icon {
  font-size: 1.4rem;
  margin-bottom: 4px
}
.coati-wetter-day-temperature {
  font-size: .78rem;
  margin-bottom: 3px
}
.coati-wetter-day-rain {
  font-size: .66rem
}
.coati-wetter-source {
  margin-top: 10px;
  font-size: .68rem
}
@media (max-width:900px) {
  .coati-wetter-details {
    grid-template-columns: repeat(3,1fr)
  }
}
@media (max-width:600px) {
  .coati-wetter {
    padding: 13px
  }
  .coati-wetter-header {
    align-items: flex-start
  }
  .coati-wetter-title {
    font-size: 1.15rem
  }
  .coati-wetter-temperature {
    font-size: 1.8rem
  }
  .coati-wetter-icon {
    font-size: 1.7rem
  }
  .coati-wetter-camping-info {
    grid-template-columns: 1fr
  }
  .coati-wetter-details {
    grid-template-columns: repeat(2,1fr)
  }
  .coati-wetter-forecast {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory
  }
  .coati-wetter-day {
    flex: 0 0 105px;
    scroll-snap-align: start
  }
}
.coati-ausstattung {
  width: 100%;
  margin: 32px 0
}
.coati-ausstattung-titel {
  margin: 0 0 20px;
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.2
}
.coati-ausstattung-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none
}
.coati-ausstattung-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 96px;
  padding: 16px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  box-shadow: 0 5px 18px rgba(15,23,42,.06);
  transition: transform .2s,box-shadow .2s,border-color .2s
}
.coati-ausstattung-card::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 5px;
  content: "";
  background: #d99a3d
}
.coati-ausstattung-card:hover {
  transform: translateY(-3px);
  border-color: #d99a3d;
  box-shadow: 0 10px 26px rgba(15,23,42,.11)
}
.coati-ausstattung-icon {
  display: flex;
  flex: 0 0 48px;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  font-size: 1.65rem;
  line-height: 1;
  background: #fff7e8;
  border-radius: 12px
}
.coati-ausstattung-text {
  display: flex;
  flex-direction: column;
  min-width: 0
}
.coati-ausstattung-text strong {
  color: #1f2937;
  font-size: .98rem;
  line-height: 1.3
}
.coati-ausstattung-text small {
  margin-top: 4px;
  color: #6b7280;
  font-size: .78rem;
  line-height: 1.35
}
@media (max-width:1000px) {
  .coati-ausstattung-grid {
    grid-template-columns: repeat(3,minmax(0,1fr))
  }
}
@media (max-width:760px) {
  .coati-ausstattung-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
}
@media (max-width:480px) {
  .coati-ausstattung-grid {
    grid-template-columns: 1fr
  }
  .coati-ausstattung-card {
    min-height: 82px;
    padding: 13px 14px
  }
  .coati-ausstattung-icon {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
    font-size: 1.45rem
  }
}
.coati-rating__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px
}
.coati-rating__kicker {
  margin: 0 0 4px;
  color: #6b7280;
  font-size: .82rem
}
.coati-rating__title {
  margin: 0;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.2
}
.coati-rating__overall {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  column-gap: 10px
}
.coati-rating__stars {
  position: relative;
  grid-row: 1/3;
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 2px;
  white-space: nowrap
}
.coati-rating__stars-base {
  color: #e5e7eb
}
.coati-rating__stars-fill {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: #d99a3d;
  white-space: nowrap
}
.coati-rating__number {
  color: #1f2937;
  font-size: 1.8rem;
  line-height: 1
}
.coati-rating__maximum {
  color: #6b7280;
  font-size: .75rem
}
.coati-rating__list {
  display: grid;
  gap: 16px
}
.coati-rating__row {
  display: grid;
  grid-template-columns: minmax(140px,180px) 1fr 40px;
  align-items: center;
  gap: 16px
}
.coati-rating__label {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: .94rem;
  font-weight: 600
}
.coati-rating__bar {
  height: 12px;
  overflow: hidden;
  background: #edf0f3;
  border-radius: 999px
}
.coati-rating__bar-fill {
  display: block;
  height: 100%;
  background: linear-gradient(90deg,#e4af5e,#d68d28);
  border-radius: inherit
}
.coati-rating__value {
  text-align: right;
  font-size: .92rem
}
@media (max-width:650px) {
  .coati-rating {
    padding: 18px
  }
  .coati-rating__header {
    align-items: flex-start;
    flex-direction: column
  }
  .coati-rating__row {
    grid-template-columns: 1fr 38px;
    gap: 8px
  }
  .coati-rating__label {
    grid-column: 1/3
  }
  .coati-rating__bar {
    grid-column: 1
  }
  .coati-rating__value {
    grid-column: 2
  }
}
@media (max-width:480px) {
  .coati-rating {
    gap: 9px;
    padding: 9px 12px
  }
  .coati-rating-stars {
    font-size: 23px;
    letter-spacing: 2px
  }
  .coati-rating-value {
    font-size: 16px
  }
}
.coati-rating {
  width: 100%;
  box-shadow: 0 8px 24px rgba(15,23,42,.07);
  display: inline-flex!important;
  width: fit-content!important;
  max-width: 100%!important;
  min-height: 0!important;
  align-items: center!important;
  justify-content: flex-start!important;
  gap: 10px!important;
  padding: 7px 11px!important;
  margin: 0!important;
  background: rgba(255,255,255,.38)!important;
  border: 1px solid rgba(229,169,0,.35)!important;
  border-radius: 9px!important;
  line-height: 1!important;
  box-sizing: border-box!important
}
.coati-rating-stars {
  display: inline-block!important;
  flex: 0 0 auto!important;
  font-family: Arial,sans-serif!important;
  font-size: 21px!important;
  font-weight: 700!important;
  line-height: 1!important;
  letter-spacing: 2px!important;
  white-space: nowrap!important;
  color: transparent!important;
  background: linear-gradient(90deg,#e5a900 0,#e5a900 var(--coati-rating-fill),#d7dce0 var(--coati-rating-fill),#d7dce0 100%)!important;
  background-clip: text!important;
  -webkit-background-clip: text!important;
  -webkit-text-fill-color: transparent!important
}
.coati-rating-value {
  display: inline-block!important;
  color: #26352f!important;
  font-size: 15px!important;
  font-weight: 700!important;
  line-height: 1!important;
  white-space: nowrap!important
}
.coati-rating-value small {
  color: #68746f!important;
  font-size: 12px!important;
  font-weight: 500!important
}
@media (max-width:480px) {
  .coati-rating {
    gap: 8px!important;
    padding: 6px 9px!important
  }
  .coati-rating-stars {
    font-size: 18px!important;
    letter-spacing: 1px!important
  }
  .coati-rating-value {
    font-size: 14px!important
  }
}
.coati-hero-rating {
  display: inline-flex!important;
  width: auto!important;
  min-width: 0!important;
  min-height: 0!important;
  height: auto!important;
  align-items: center!important;
  gap: 7px!important;
  margin: 0!important;
  padding: 3px 8px!important;
  background: rgba(255,255,255,.38)!important;
  border: 1px solid rgba(229,169,0,.4)!important;
  border-radius: 7px!important;
  box-shadow: none!important;
  line-height: 1!important;
  box-sizing: border-box!important
}
.coati-hero-rating-stars {
  display: inline-block!important;
  flex: 0 0 auto!important;
  margin: 0!important;
  padding: 0!important;
  font-family: Arial,sans-serif!important;
  font-size: 17px!important;
  font-weight: 700!important;
  line-height: 1!important;
  letter-spacing: 1px!important;
  white-space: nowrap!important;
  color: transparent!important;
  background: linear-gradient(90deg,#e5a900 0,#e5a900 var(--coati-rating-fill),#d7dce0 var(--coati-rating-fill),#d7dce0 100%)!important;
  background-clip: text!important;
  -webkit-background-clip: text!important;
  -webkit-text-fill-color: transparent!important
}
.coati-hero-rating-value {
  display: inline-block!important;
  margin: 0!important;
  color: #26352f!important;
  font-size: 14px!important;
  font-weight: 700!important;
  line-height: 1!important;
  white-space: nowrap!important
}
.coati-hero-rating-value small {
  color: #68746f!important;
  font-size: 11px!important;
  font-weight: 500!important
}
.coati-situationsplan {
  margin: 48px 0
}
.coati-situationsplan-kopf {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px
}
.coati-situationsplan-kopf h2 {
  margin: 0;
  color: #1f2937
}
.coati-situationsplan-kopf p {
  margin: 3px 0 0;
  color: #6b7280;
  font-size: .95rem
}
.coati-situationsplan-icon {
  display: inline-flex;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-situationsplan-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-google-map-frame {
  position: relative;
  overflow: hidden;
  width: 100%;
  background: #e8ebe9;
  border-radius: 12px
}
.coati-google-map-frame iframe {
  display: block;
  width: 100%;
  height: 100%
}
.coati-google-map-cover {
  position: absolute;
  z-index: 2;
  inset: 0;
  overflow: hidden;
  background: #e8ebe9;
  opacity: 1;
  visibility: visible;
  pointer-events: none;
  transition: opacity .5s,visibility .5s
}
.coati-google-map-cover img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.coati-google-map-loading {
  position: absolute;
  right: 14px;
  bottom: 14px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(31,41,55,.75);
  color: #fff;
  font-size: 12px;
  line-height: 1
}
.coati-google-map-frame.coati-map-loaded .coati-google-map-cover {
  opacity: 0;
  visibility: hidden
}
.coati-preise-besuchsdatum {
  display: block;
  margin-top: 6px;
  font-size: .82rem;
  font-weight: 400;
  line-height: 1.35;
  opacity: .75;
  color: #6b756f
}
.coati-info-zusatz {
  font-weight: 400;
  opacity: .75
}
.coati-google-vorschau {
  width: 100%;
  overflow: hidden;
  border-radius: 14px
}
.coati-google-vorschaubild {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover
}
body.single-campingplatz .wp-site-blocks {
  padding-top: 0!important
}
body.single-campingplatz header.wp-block-template-part {
  margin-top: 0!important;
  margin-bottom: 0!important
}
body.single-campingplatz header.wp-block-template-part > .wp-block-group {
  padding-top: 20px!important;
  padding-bottom: 10px!important;
  align-items: center!important
}
body.single-campingplatz header .wp-block-navigation {
  align-self: center!important;
  margin-top: 25px!important
}
.coati-archivkarte-inhalt {
  display: flex!important;
  height: 100%!important;
  flex: 1 1 auto!important;
  flex-direction: column!important
}
.coati-archivkarte-inhalt > .coati-archivkarte-button {
  align-self: flex-start!important;
  margin-top: auto!important;
  margin-block-start: auto!important
}
.coati-archivkarte-merkmale {
  align-content: flex-start;
  display: grid!important;
  grid-template-columns: repeat(3,minmax(0,1fr));
  width: 100%
}
.coati-archiv-merkmal {
  display: flex!important;
  width: 100%!important;
  min-width: 0;
  min-height: 38px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 6px 4px;
  border-radius: 999px;
  background: #f6eae0;
  color: #c17f4a;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden
}
@media (max-width:600px) {
  .coati-google-vorschau {
    width: 100%;
    height: 280px;
    overflow: hidden;
    border-radius: 12px
  }
  .coati-google-vorschaubild {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
  }
  .coati-footer-bottom {
    display: flex!important;
    flex-direction: column!important;
    align-items: center!important;
    justify-content: center!important;
    gap: 3px!important;
    text-align: center!important
  }
  .coati-footer-bottom > * {
    margin: 0!important;
    text-align: center!important
  }
}
.coati-bereich-kopf {
  display: flex;
  align-items: center;
  gap: 14px
}
.coati-bereich-kopf h2 {
  margin: 0
}
.coati-bereich-icon {
  display: inline-flex;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-bereich-icon svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}
.coati-hero-infobox {
  display: inline-block!important;
  width: auto!important;
  max-width: 720px;
  background: rgba(79,117,70,.55);
  padding: 22px 28px;
  border-radius: 12px;
  margin-bottom: 18px
}
.coati-hero-infobox,
.coati-hero-infobox h1,
.coati-hero-infobox h2,
.coati-hero-infobox h3,
.coati-hero-infobox p {
  color: #fff!important
}
@media (max-width:900px) {
  .coati-hero-infobox {
    max-width: 80%;
    padding: 18px 22px
  }
}
@media (max-width:520px) {
  .coati-hero-infobox {
    max-width: 100%;
    padding: 15px 18px;
    border-radius: 10px
  }
}
.coati-button,
.coati-button-booking,
.coati-button-route,
.coati-button-website {
  background-color: #c17f4a!important;
  border-color: #c17f4a!important;
  color: #fff!important
}
.coati-header .wp-block-navigation__container {
  gap: 0!important
}
.coati-header .wp-block-navigation-item__content {
  display: block!important;
  margin: 0!important;
  font-size: 19px!important;
  font-weight: 600!important;
  text-decoration: none!important
}
.coati-button-booking:hover,
.coati-button-route:hover,
.coati-button-website:hover,
.coati-button:hover,
.coati-header .wp-block-navigation-item:hover {
  background-color: #c17f4a!important;
  border-color: #c17f4a!important;
  color: #fff!important
}
.coati-archiv-grid {
  align-items: stretch!important
}
.coati-archivkarte {
  display: flex!important;
  height: 100%!important;
  flex-direction: column!important
}
.coati-archivkarte-inhalt {
  display: grid!important;
  flex: 1 1 auto!important;
  grid-template-rows: 74px 54px 64px 46px auto;
  align-content: start;
  row-gap: 0
}
.coati-archivkarte-kopf {
  display: grid!important;
  grid-template-columns: minmax(0,1fr) auto!important;
  gap: 10px!important;
  align-items: start!important;
  margin: 0!important;
  min-height: 0!important
}
.coati-archivkarte-kopf h2 {
  height: auto!important;
  min-height: 0!important;
  margin: 0!important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden
}
.coati-archivkarte-bewertung {
  align-self: start!important;
  margin: 0!important
}
.coati-archivkarte-meta,
.coati-archivkarte-standort {
  min-height: 0!important;
  margin: 0!important;
  display: flex!important;
  align-items: center!important
}
.coati-archivkarte-merkmale {
  min-height: 0!important;
  margin: 0!important;
  display: grid!important;
  grid-template-columns: repeat(3,minmax(0,1fr))!important;
  gap: 8px!important;
  align-items: center!important
}
.coati-archivkarte-button {
  align-self: start!important;
  margin-top: 10px!important
}
.coati-archiv-kopf {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 22px 28px 10px;
  margin: 0
}
.coati-archiv-kopficon {
  position: relative;
  display: inline-flex;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a
}
.coati-archiv-kopficon::before {
  content: "";
  width: 15px;
  height: 15px;
  border: 2px solid #c17f4a;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg)
}
.coati-archiv-kopficon::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #c17f4a;
  top: 22px;
  left: 22px
}
.coati-archiv-kopftext {
  min-width: 0
}
.coati-archiv-kopf h1 {
  margin: 0;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.05
}
.coati-archiv-kopf p {
  margin: 6px 0 0;
  color: #68756d;
  font-size: 1rem;
  line-height: 1.4
}
.coati-filter-grid > p {
  display: none
}
.coati-filter-feld > p {
  margin: 0;
  padding: 0
}
.coati-filter-feld br {
  display: none
}
.coati-filter-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
  margin-top: 20px
}
.coati-filter-feld {
  min-width: 0
}
.coati-filter-feld label {
  display: block;
  margin-bottom: 7px
}
.coati-filter-feld select {
  display: block;
  width: 100%
}
.coati-filter-merkmale > p {
  display: inline-flex;
  margin: 0;
  padding: 0
}
.coati-filter-merkmale br,
.coati-filter-merkmale>p:empty {
  display: none
}
.coati-filter-merkmale {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px
}
.coati-filter-merkmale legend {
  width: 100%;
  margin-bottom: 2px
}
.coati-filter-checkbox {
  display: inline-flex;
  align-items: center
}
.coati-filter-checkbox input[type=checkbox] {
  accent-color: #c17f4a;
  position: static!important;
  width: 17px!important;
  height: 17px!important;
  min-width: 17px!important;
  min-height: 17px!important;
  margin: 0!important;
  padding: 0!important;
  transform: none!important;
  accent-color: #c17f4a
}
@media (max-width:900px) {
  .coati-filter-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
}
@media (max-width:600px) {
  .coati-filter-grid {
    grid-template-columns: 1fr
  }
  .coati-filter-merkmale {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
  .coati-filter-merkmale legend {
    grid-column: 1/-1
  }
}
@media (max-width:400px) {
  .coati-filter-merkmale {
    grid-template-columns: 1fr
  }
}
.coati-filter-checkbox {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 14px;
  border: 1px solid #d5e2d9;
  border-radius: 999px;
  background: #fff
}
.coati-filter-checkbox::after,
.coati-filter-checkbox::before {
  display: none!important;
  content: none!important
}
.coati-filter-checkbox span {
  margin: 0!important;
  padding: 0!important;
  color: #c17f4a;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.2
}
.coati-schnellinfos-grid {
  display: grid!important;
  grid-template-columns: repeat(3,minmax(0,1fr))!important;
  gap: 18px!important;
  align-items: stretch!important
}
.coati-info-card {
  height: 220px!important;
  min-height: 220px!important;
  padding: 24px!important;
  box-sizing: border-box!important;
  display: grid!important;
  grid-template-rows: 32px 1fr 42px!important;
  align-items: center!important
}
.coati-info-card .coati-info-label {
  margin: 0!important;
  align-self: start!important
}
.coati-schnellinfos-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: stretch
}
.coati-info-card {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  align-items: center;
  column-gap: 16px;
  box-sizing: border-box;
  border: 1px solid #dfe8e2;
  border-radius: 14px;
  background: #fff
}
.coati-info-icon {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f6eae0;
  color: #c17f4a;
  grid-column: 1;
  grid-row: 1
}
.coati-info-icon svg {
  width: 23px;
  height: 23px
}
.coati-info-content {
  display: grid;
  grid-template-rows: 32px 1fr 2px;
  height: 100%;
  align-items: center;
  grid-column: 2;
  grid-row: 1
}
.coati-info-label {
  display: block;
  margin: 0;
  color: #68756d;
  font-size: .9rem;
  font-weight: 500;
  align-self: start
}
.coati-info-value {
  display: block;
  margin: 0;
  color: #203b2b;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
  align-self: center
}
.coati-info-zusatz {
  display: block;
  min-height: 32px;
  margin: 8px 0 0;
  color: #7b8880;
  font-size: .78rem;
  line-height: 1.35;
  align-self: start
}
@media (max-width:900px) {
  .coati-schnellinfos-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))
  }
  .coati-info-card {
    height: 210px;
    min-height: 210px
  }
}
@media (max-width:520px) {
  .coati-schnellinfos-grid {
    grid-template-columns: 1fr;
    gap: 12px
  }
  .coati-info-card {
    height: auto;
    min-height: 150px;
    grid-template-columns: 48px minmax(0,1fr);
    padding: 18px
  }
  .coati-info-content {
    grid-template-rows: auto auto auto;
    gap: 8px
  }
  .coati-info-zusatz {
    min-height: 0
  }
}
@media (max-width:900px) {
  .coati-schnellinfos-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))!important
  }
}
@media (max-width:520px) {
  .coati-schnellinfos-grid {
    grid-template-columns: 1fr!important
  }
  .coati-info-card {
    height: auto!important;
    min-height: 170px!important
  }
}
.coati-archivkarte-entfernung {
  display: inline-block;
  font-size: .85em;
  color: #2f6f4f;
  background: #eaf4ee;
  padding: 2px 10px;
  border-radius: 999px;
  margin-top: 4px
}
.coati-header .wp-block-navigation-item {
  margin: 0!important;
  padding: 0!important;
  background-color: transparent!important;
  border-color: transparent!important;
  border-radius: 8px!important;
  overflow: hidden
}
.coati-header .wp-block-navigation-item__content {
  background: 0 0!important;
  color: #30252a!important;
  padding: 8px 14px!important;
  border-bottom: 1px solid transparent!important;
  border-radius: 8px!important;
  transition: background-color .2s,border-color .2s,color .2s
}
.coati-header .wp-block-navigation-item__content:hover {
  background: rgba(193,127,74,.06)!important;
  color: #c17f4a!important;
  border-radius: 8px!important
}
.coati-header .current-menu-ancestor,
.coati-header .current-menu-item {
  background-color: transparent!important;
  border-radius: 8px!important
}
.coati-header .current-menu-ancestor > .wp-block-navigation-item__content,
.coati-header .current-menu-item > .wp-block-navigation-item__content {
  background-color: rgba(193,127,74,.16)!important;
  border-bottom-color: #c17f4a!important;
  border-radius: 8px!important
}
.coati-reisekopf-box {
  box-sizing: border-box;
  width: 560px!important;
  max-width: calc(100% - 40px)!important;
  padding: 24px 30px!important;
  background-color: rgba(193,127,74,.48)!important;
  border-radius: 18px
}
.coati-reisekopf-box .wp-block-post-title {
  margin: 0 0 10px!important;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  font-size: clamp(38px, 4vw, 60px)!important;
  line-height: 1.1
}
.coati-reisekopf-box .wp-block-shortcode {
  margin-top: 0!important
}
@media (max-width:600px) {
  .coati-reisekopf-box {
    width: calc(100% - 24px)!important;
    max-width: none!important;
    padding: 20px!important
  }
  .coati-reisekopf-box .wp-block-post-title {
    white-space: normal;
    font-size: 34px!important
  }
}
.coati-reisekopf-info {
  display: flex!important;
  flex-direction: column;
  gap: 10px
}
.coati-reisekopf-route {
  margin: 0!important;
  white-space: nowrap!important
}
.coati-reisekopf-meta {
  margin: 0!important
}
.coati-reise-archiv-grid {
  display: grid!important;
  grid-template-columns: repeat(2,minmax(0,1fr))!important;
  gap: 26px!important;
  align-items: stretch!important;
  grid-auto-rows: 1fr
}
.coati-reise-archiv-grid .coati-reise-karte {
  display: block!important;
  width: auto!important;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e7e1dc;
  border-radius: 16px;
  box-shadow: 0 5px 20px rgba(60,35,20,.1);
  display: flex!important;
  flex-direction: column!important;
  height: 100%!important;
  position: relative!important;
  padding-bottom: 100px!important
}
.coati-reise-karte-bildlink {
  position: relative!important;
  display: block!important
}
.coati-reise-karte-bild {
  display: block!important;
  width: 100%!important;
  height: 260px!important;
  object-fit: cover!important
}
.coati-reise-status {
  position: absolute!important;
  top: 14px!important;
  right: 14px!important;
  z-index: 2;
  display: inline-block!important;
  width: auto!important;
  padding: 6px 12px!important;
  color: #fff!important;
  background: #c17f4a!important;
  border-radius: 20px!important;
  font-size: 13px!important;
  font-weight: 600!important;
  text-decoration: none!important
}
.coati-reise-status.coati-status-unterwegs {
  background: #2d7b4f!important
}
.coati-reise-status.coati-status-abgeschlossen {
  background: #5f6570!important
}
.coati-reise-karte-inhalt {
  padding: 22px!important
}
.coati-reise-karte-inhalt h3 {
  margin: 0 0 12px!important;
  font-size: 26px!important
}
.coati-reise-karte-inhalt h3 a {
  color: #271a15!important;
  text-decoration: none!important
}
.coati-reise-karte-route {
  color: #4f433d!important
}
.coati-reise-karte-zeit {
  display: block!important;
  margin: 7px 0!important;
  color: #4f433d!important
}
.coati-reise-karte-text {
  margin: 15px 0 20px!important;
  color: #666!important;
  line-height: 1.6!important
}
.coati-reise-karte-button {
  display: inline-block!important;
  width: auto!important;
  padding: 10px 17px!important;
  color: #fff!important;
  background: #c17f4a!important;
  border-radius: 9px!important;
  text-decoration: none!important;
  font-weight: 600!important
}
.coati-reise-karte-button:hover {
  color: #fff!important;
  background: #a96735!important
}
@media (max-width:760px) {
  .coati-reise-archiv-grid {
    grid-template-columns: 1fr!important
  }
  .coati-reise-karte-bild {
    height: 230px!important
  }
}
.coati-reise-archiv-kopf {
  position: relative;
  margin: 0 0 30px!important;
  padding: 4px 0 4px 24px;
  border-left: 6px solid #c17f4a
}
.coati-reise-archiv-kopf h2 {
  margin: 0 0 8px!important;
  color: #271a15;
  font-size: clamp(32px, 3vw, 44px);
  line-height: 1.15
}
.coati-reise-archiv-kopf p {
  max-width: 720px;
  margin: 0!important;
  color: #62564f!important;
  font-size: 18px;
  line-height: 1.55
}
.coati-reise-karte-bildlink {
  flex: 0 0 auto
}
.coati-reise-karte-inhalt {
  display: flex!important;
  flex: 1 1 auto!important;
  flex-direction: column!important;
  align-items: flex-start
}
.coati-reise-karte-route {
  display: block!important;
  width: 100%!important;
  margin: 7px 0!important;
  white-space: nowrap!important
}
.coati-reise-karte-button {
  align-self: flex-start;
  margin-top: auto!important
}
.coati-reise-archiv-grid .coati-reise-karte-button {
  position: absolute!important;
  bottom: 28px!important;
  left: 22px!important;
  margin: 0!important
}
.coati-zurueck-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 12px 0 0;
  color: #c17f4a;
  font-weight: 600;
  font-size: .95rem;
  text-decoration: none;
  transition: gap .2s,color .2s
}
.coati-zurueck-link:hover {
  gap: 12px;
  color: #a96735
}
/* =========================================================
   COATI – TIPPS & TRICKS
   KOMPLETTES SINGLE-TIPP DESIGN
   ========================================================= */


/* =========================================================
   1. SCHNELLINFOS
   Kategorie | Dauer | Schwierigkeit
   ========================================================= */

.coati-tipp-schnellinfos {
    width: 100%;
    margin: 24px 0 34px;
}

.coati-tipp-schnellinfos-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.coati-tipp-info-card {
    display: flex;
    align-items: center;
    gap: 14px;

    min-height: 92px;
    padding: 18px 20px;

    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 14px;

    box-sizing: border-box;
}

.coati-tipp-info-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 42px;

    width: 42px;
    height: 42px;

    font-size: 22px;
}

.coati-tipp-info-content {
    display: flex;
    flex-direction: column;
    gap: 3px;

    min-width: 0;
}

.coati-tipp-info-label {
    font-size: 14px;
    line-height: 1.2;
    opacity: 0.65;
}

.coati-tipp-info-content strong {
    font-size: 17px;
    line-height: 1.3;
}


/* =========================================================
   2. GEMEINSAME KARTEN
   ========================================================= */

.coati-tipp-intro,
.coati-tipp-material,
.coati-tipp-anleitung,
.coati-tipp-box,
.coati-tipp-hinweis {
    width: 100%;
    box-sizing: border-box;
    border-radius: 16px;
}


/* =========================================================
   3. KURZBESCHREIBUNG / INFO
   ========================================================= */

.coati-tipp-intro {
    display: flex;
    align-items: center;
    gap: 22px;

    margin: 32px 0;
    padding: 22px 26px;

    background: #f3f7fb;
    border: 1px solid #d8e4ef;
}

.coati-tipp-intro-text {
    flex: 1;
    min-width: 0;
}

.coati-tipp-intro-text p {
    margin: 0;
    line-height: 1.65;
}


/* =========================================================
   4. GEMEINSAME GROSSE ICONS
   ========================================================= */

.coati-tipp-icon,
.coati-tipp-anleitung-icon {
    flex: 0 0 54px;

    width: 54px;
    height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    font-size: 27px;
    font-weight: 700;
}

.coati-icon-info {
    background: #e5eef6;
    color: #627d98;
}

.coati-icon-material {
    background: #eef0ed;
    font-size: 25px;
}


/* =========================================================
   5. DAS BRAUCHST DU
   ========================================================= */

.coati-tipp-material {
    display: flex;
    align-items: flex-start;
    gap: 24px;

    margin: 32px 0;
    padding: 28px;

    background: #f8f8f5;
    border: 1px solid #e2e2dc;
}

.coati-tipp-material-content {
    flex: 1;
    min-width: 0;
}

.coati-tipp-material h2 {
    margin: 0 0 12px;

    font-size: 28px;
    line-height: 1.2;
}

.coati-tipp-material-inhalt {
    font-size: 17px;
    line-height: 1.6;
}

.coati-tipp-material-inhalt p {
    margin: 3px 0;
}


/* =========================================================
   6. SO GEHT'S – GROSSE KARTE
   ========================================================= */

.coati-tipp-anleitung {
    display: flex;
    align-items: flex-start;
    gap: 24px;

    margin: 32px 0;
    padding: 28px;

    background: #f4f8f2;
    border: 1px solid #d5e1d1;
}

.coati-tipp-anleitung-icon {
    background: #e5f1e2;
    color: #649760;

    border: 2px solid #75a871;

    font-size: 30px;
}

.coati-tipp-anleitung-content {
    flex: 1;
    min-width: 0;
}

.coati-tipp-anleitung h2 {
    margin: 0 0 20px;

    font-size: 30px;
    line-height: 1.2;
}


/* Nummerierte Schritt-Liste */

.coati-tipp-anleitung ol {
    list-style: none;
    counter-reset: coati-schritt;

    margin: 0;
    padding: 0;

    display: grid;
    gap: 10px;
}


/* Einzelne Schrittkarte */

.coati-tipp-anleitung ol > li {
    counter-increment: coati-schritt;

    position: relative;

    margin: 0;
    padding: 15px 18px 15px 62px;

    min-height: 58px;

    background: #ffffff;

    border: 1px solid #dde3da;
    border-radius: 11px;

    line-height: 1.5;

    box-sizing: border-box;
}


/* Nummernkreis */

.coati-tipp-anleitung ol > li::before {
    content: counter(coati-schritt);

    position: absolute;

    left: 15px;
    top: 15px;

    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #8eae87;
    color: #ffffff;

    font-size: 15px;
    font-weight: 700;
}

.coati-tipp-anleitung li p {
    margin: 4px 0 0;
}


/* =========================================================
   7. COATI-TIPP
   Tatsächliche Klasse aus [coati_tipp_coati]
   ========================================================= */

.coati-tipp-box {
    position: relative;

    margin: 32px 0;
    padding: 24px 28px 24px 82px;

    background: #eef5eb;
    border: 1px solid #cfddca;
}

.coati-tipp-box::before {
    content: "🦝";

    position: absolute;

    left: 24px;
    top: 22px;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #dfead9;
    border-radius: 50%;

    font-size: 23px;
}

.coati-tipp-box-titel {
    margin: 0 0 10px;

    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
}

.coati-tipp-box-text {
    font-size: 17px;
    line-height: 1.65;
}

.coati-tipp-box-text p {
    margin: 0;
}


/* Falls das Emoji bereits vom PHP ausgegeben wird,
   Doppel-Icon im Titel vermeiden */

.coati-tipp-box-titel {
    display: block;
}


/* =========================================================
   8. WICHTIG / WARNHINWEIS
   Tatsächliche Klasse aus [coati_tipp_hinweis]
   ========================================================= */

.coati-tipp-hinweis {
    position: relative;

    margin: 32px 0;
    padding: 24px 28px 24px 82px;

    background: #fff5e7;
    border: 1px solid #f1d4aa;
}

.coati-tipp-hinweis::before {
    content: "⚠";

    position: absolute;

    left: 24px;
    top: 22px;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffe7c4;
    color: #c87616;

    font-size: 24px;
    font-weight: 700;
}

.coati-tipp-hinweis-titel {
    margin: 0 0 10px;

    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
}

.coati-tipp-hinweis-text {
    font-size: 17px;
    line-height: 1.65;
}

.coati-tipp-hinweis-text p {
    margin: 0;
}


/* =========================================================
   9. RESPONSIVE – TABLET
   ========================================================= */

@media (max-width: 800px) {

    .coati-tipp-schnellinfos-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   10. RESPONSIVE – SMARTPHONE
   ========================================================= */

@media (max-width: 600px) {

    .coati-tipp-schnellinfos-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .coati-tipp-info-card {
        min-height: auto;
        padding: 14px 16px;
    }

    .coati-tipp-intro,
    .coati-tipp-material,
    .coati-tipp-anleitung {
        gap: 16px;
        padding: 20px;
    }

    .coati-tipp-icon,
    .coati-tipp-anleitung-icon {
        flex: 0 0 44px;

        width: 44px;
        height: 44px;

        font-size: 21px;
    }

    .coati-tipp-material h2,
    .coati-tipp-anleitung h2 {
        font-size: 25px;
    }

    .coati-tipp-anleitung ol > li {
        padding: 14px 14px 14px 55px;
    }

    .coati-tipp-anleitung ol > li::before {
        left: 12px;
        top: 14px;
    }

    .coati-tipp-box,
    .coati-tipp-hinweis {
        padding: 20px 20px 20px 70px;
    }

    .coati-tipp-box::before,
    .coati-tipp-hinweis::before {
        left: 16px;
        top: 18px;

        width: 40px;
        height: 40px;
    }
}

/* =========================================================
   COATI – TIPPS & TRICKS
   Kompakte vertikale Abstände
   ========================================================= */

.coati-tipp-schnellinfos {
    margin-top: 0px;
    margin-bottom: -40px;
}

.coati-tipp-intro {
    margin-top: 0px;
    margin-bottom: 10px;
}

.coati-tipp-material {
    margin-top: 10px;
    margin-bottom: 10px;
}

.coati-tipp-anleitung {
    margin-top: 10px;
    margin-bottom: 10px;
}

.coati-tipp-box {
    margin-top: 10px;
    margin-bottom: 10px;
}

.coati-tipp-hinweis {
    margin-top: 10px;
    margin-bottom: 10px;
}

function coati_tipps_archiv_shortcode() {

    $args = array(
        'post_type'      => 'tipp',
        'post_status'    => 'publish',
        'posts_per_page' => -1,
        'orderby'        => 'date',
        'order'          => 'DESC',
    );

    $query = new WP_Query($args);

    if (!$query->have_posts()) {
        return '<p>Aktuell sind noch keine Tipps vorhanden.</p>';
    }

    ob_start();

    echo '<section class="coati-tipps-archiv">';
    echo '<div class="coati-tipps-grid">';

    while ($query->have_posts()) {

        $query->the_post();

        $post_id   = get_the_ID();
        $permalink = get_permalink($post_id);
        $titel     = get_the_title($post_id);

        // Beitragsbild
        $bild = get_the_post_thumbnail_url(
            $post_id,
            'large'
        );

        // ACF-Daten
        $kurzbeschreibung = '';
        $dauer             = '';
        $schwierigkeit     = '';

        if (function_exists('get_field')) {

            $kurzbeschreibung = get_field(
                'kurzbeschreibung',
                $post_id
            );

            $dauer = get_field(
                'dauer',
                $post_id
            );

            $schwierigkeit = get_field(
                'schwierigkeit',
                $post_id
            );
        }

        // Dauer bereinigen
        $dauer = is_scalar($dauer)
            ? trim((string) $dauer)
            : '';

        if ($dauer !== '') {
            $dauer .= ' min';
        }

        // Schwierigkeit bereinigen
        if (is_array($schwierigkeit)) {
            $schwierigkeit = isset($schwierigkeit['label'])
                ? $schwierigkeit['label']
                : '';
        }

        $schwierigkeit = is_scalar($schwierigkeit)
            ? trim((string) $schwierigkeit)
            : '';

        // Kategorie
        $kategorien = get_the_terms(
            $post_id,
            'tipp-kategorie'
        );

        $kategorie = '';

        if (
            !is_wp_error($kategorien) &&
            !empty($kategorien)
        ) {
            $kategorie = $kategorien[0]->name;
        }

        echo '<article class="coati-tipp-archivkarte">';

        // Bild
        if ($bild) {

            echo '<a class="coati-tipp-archivbild" href="' .
                esc_url($permalink) .
                '">';

            echo '<img src="' .
                esc_url($bild) .
                '" alt="' .
                esc_attr($titel) .
                '">';

            echo '</a>';
        }

        echo '<div class="coati-tipp-archivinhalt">';

        // Kategorie
        if ($kategorie !== '') {
            echo '<div class="coati-tipp-archivkategorie">' .
                esc_html($kategorie) .
                '</div>';
        }

        // Titel
        echo '<h2 class="coati-tipp-archivtitel">';

        echo '<a href="' .
            esc_url($permalink) .
            '">';

        echo esc_html($titel);

        echo '</a>';
        echo '</h2>';

        // Kurzbeschreibung
        if (
            is_scalar($kurzbeschreibung) &&
            trim((string) $kurzbeschreibung) !== ''
        ) {

            echo '<p class="coati-tipp-archivtext">' .
                esc_html(
                    trim((string) $kurzbeschreibung)
                ) .
                '</p>';
        }

        // Metadaten
        if (
            $dauer !== '' ||
            $schwierigkeit !== ''
        ) {

            echo '<div class="coati-tipp-archivmeta">';

            if ($dauer !== '') {
                echo '<span>⏱ ' .
                    esc_html($dauer) .
                    '</span>';
            }

            if ($schwierigkeit !== '') {
                echo '<span>● ' .
                    esc_html($schwierigkeit) .
                    '</span>';
            }

            echo '</div>';
        }

        // Button
        echo '<a class="coati-tipp-archivbutton" href="' .
            esc_url($permalink) .
            '">Tipp ansehen</a>';

        echo '</div>';
        echo '</article>';
    }

    echo '</div>';
    echo '</section>';

    wp_reset_postdata();

    return ob_get_clean();
}

add_shortcode(
    'coati_tipps_archiv',
    'coati_tipps_archiv_shortcode'
);

/* =========================================================
   COATI TIPPS ARCHIV – LAYOUT KORREKTUR
   ========================================================= */

/* Gesamter Archivbereich */
.coati-tipps-archiv {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 30px auto !important;
    padding: 0 20px;
    box-sizing: border-box;
}


/* 2-spaltiges Raster */
.coati-tipps-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
}


/* einzelne Karte */
.coati-tipp-archivkarte {
    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;
    min-width: 0 !important;

    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 16px;

    overflow: hidden;

    box-shadow: 0 4px 18px rgba(0,0,0,0.06);
}


/* Bildbereich */
.coati-tipp-archivbild {
    display: block !important;

    width: 100% !important;
    height: 260px !important;

    overflow: hidden;
}


/* Bild */
.coati-tipp-archivbild img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
}


/* Karteninhalt */
.coati-tipp-archivinhalt {
    display: flex !important;
    flex-direction: column !important;

    flex-grow: 1;

    padding: 22px !important;
}


/* Kategorie */
.coati-tipp-archivkategorie {
    margin-bottom: 8px;

    font-size: 14px;
    color: #687078;
}


/* Titel */
.coati-tipp-archivtitel {
    margin: 0 0 10px !important;

    font-size: 26px !important;
    line-height: 1.2 !important;
}

.coati-tipp-archivtitel a {
    color: #252b30 !important;
    text-decoration: none !important;
}


/* Beschreibung */
.coati-tipp-archivtext {
    margin: 0 0 16px !important;

    font-size: 16px;
    line-height: 1.5;
}


/* Dauer / Schwierigkeit */
.coati-tipp-archivmeta {
    display: flex !important;
    gap: 18px;

    margin-top: auto;
    margin-bottom: 18px;

    font-size: 14px;
}


/* Button */
.coati-tipp-archivbutton {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    align-self: flex-start;

    padding: 10px 20px !important;

    background: #d88b4a !important;
    color: #ffffff !important;

    border-radius: 999px !important;

    text-decoration: none !important;
    font-weight: 600;
}


/* Tablet / Smartphone */
@media (max-width: 700px) {

    .coati-tipps-grid {
        grid-template-columns: 1fr !important;
    }

    .coati-tipp-archivbild {
        height: 220px !important;
    }
}