/* Haupt-Container für Blog und Archivseiten */
.blog .main-content,
.archive .main-content,
.category .main-content,
.tag .main-content,
.author .main-content,
.blog .container.inner,
.archive .container.inner,
.category .container.inner,
.tag .container.inner,
.author .container.inner {
    max-width: 1100px;  /* maximale Breite */
    margin: 0 auto;     /* zentrieren */
    padding: 0 15px;    /* Innenabstand */
    box-sizing: border-box;
}

/* Einzelne Posts im Grid */
.blog .post.post-layout,
.archive .post.post-layout,
.category .post.post-layout,
.tag .post.post-layout,
.author .post.post-layout,
.blog .post-grid,
.archive .post-grid,
.category .post-grid,
.tag .post-grid,
.author .post-grid {
    max-width: 1100px;
    margin: 0 auto 30px auto; /* Abstand unten */
}

/* Titel der Posts */
.blog .post .entry-title a,
.archive .post .entry-title a,
.category .post .entry-title a,
.tag .post .entry-title a,
.author .post .entry-title a {
    display: block;
    text-align: left; /* oder center */
}

/* Optional: Post-Bilder skalieren */
.blog .post-thumbnail img,
.archive .post-thumbnail img,
.category .post-thumbnail img,
.tag .post-thumbnail img,
.author .post-thumbnail img {
    width: 100%;
    height: auto;
    border-radius: 8px; /* optional */
}
.single-post .content-inner {
    max-width: 1100px;  /* maximale Breite */
    margin: 0 auto;     /* zentrieren */
    padding: 0 15px;    /* optional: Abstand innen */
}

/* Optional: Header-Info im Blog */
.single-post .header-info-blog-inner {
    margin-top: 30px;
    max-width: 1100px;  /* jetzt gleich mit Haupt-Wrapper */
    margin-left: auto;
    margin-right: auto;
}

/* Post-Bild */
.single-post .post-thumbnail {
    text-align: center;
    max-width: 1100px; 
    margin: 0 auto;     
}
.single-post .post-thumbnail img {
    width: 100%;      
    height: auto;      
    border-radius: 8px;  
}
.postcode-grid {
    list-style: none;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.postcode-item {
    text-align: center;
    background: #f9f9f9;
    padding: 12px;
    border-radius: 8px;
    box-shadow: 0 0 4px rgba(0,0,0,0.1);
    transition: transform 0.2s;
    max-width: 160px;
}
.postcode-item:hover {
    transform: translateY(-4px);
}
.postcode-link {
    text-decoration: none;
    color: #000;
}
.postcode-link img {
    width: 80px;         
    height: auto;
    display: block;      
    margin: 0 auto 10px; 
    border-radius: 6px;
}
.postcode-link span {
    display: block;
    font-weight: bold;
    font-size: 18px;
}
.hidden-item {
    visibility: hidden;
    opacity: 0;
    height: 0;
    overflow: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease;
    padding: 0;
}
.hidden-item.visible {
    visibility: visible;
    opacity: 1;
    height: auto;
    pointer-events: auto;
    padding: 12px;
}
.show-more-btn {
    border: 0;
    padding: 0;
    background-color: transparent;
    cursor: pointer;
}
@media screen and (max-width: 768px) {
    .postcode-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .postcode-item {
        max-width: 100%;
    }
}
.list_data_2 > ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
@media screen and (max-width: 660px) {
    .list_data_2 > ul {
        grid-template-columns: repeat(1, 1fr);
    }
}
/* Styling für den gesamten Abschnitt */
.city-listing {
  width: 100%;
  max-width: 1200px; /* Begrenzt die maximale Breite für Lesbarkeit */
  margin: 2rem auto; /* Zentriert den Abschnitt mit etwas Abstand */
  padding: 0 1rem;   /* Etwas Innenabstand für mobile Ansicht */
  box-sizing: border-box;
}

/* Die Liste selbst */
.city-list-columns {
  /* Entfernt Standard-Listen-Styling */
  list-style-type: none;
  padding-left: 0;
  margin-top: 1.5rem; /* Abstand zum oberen Text */

  /* RESPONSIVE SPALTEN */
  
  /* 1. Mobile Ansicht (Standard): 2 Spalten */
  column-count: 2;
  column-gap: 1.5rem; /* Abstand zwischen den Spalten */

  /* 2. Tablet-Ansicht: 3 Spalten */
  @media (min-width: 768px) {
    column-count: 3;
  }

  /* 3. Desktop-Ansicht (Dein Wunsch): 4 Spalten */
  @media (min-width: 1024px) {
    column-count: 4;
  }
}
