/* =========================================================
   kurse.css — page specific only
   ========================================================= */

.kurse-grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 1.25rem;
  align-items:start;
}

.kurse-block{
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  padding: 1.35rem 1.25rem;
}

.kurse-block h3{
  margin-bottom: .65rem;
}

.kurse-meta{
  display:flex;
  flex-wrap:wrap;
  gap: .55rem .75rem;
  margin: .85rem 0 0;
  color: var(--muted);
  font-size: .95rem;
}

.kurse-buttons{
  margin-top: 1rem;
  display:flex;
  gap:.75rem;
  flex-wrap:wrap;
}

.kurse-list{
  display:grid;
  gap: 1rem;
}

/* Monats-Zooms Liste */
.zoom-list{
  display:grid;
  gap: .85rem;
}

.zoom-item{
  display:flex;
  gap: 1rem;
  align-items:flex-start;
  padding: 1rem 1rem;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
}

.zoom-date{
  flex: 0 0 160px;
  color: rgba(216,179,106,.95);
  font-weight: 700;
  letter-spacing: .2px;
}

.zoom-text p{color: var(--muted)}

/* Responsive */
@media (max-width: 980px){
  .kurse-grid{grid-template-columns: 1fr}
  .zoom-date{flex-basis: 140px}
}
@media (max-width: 640px){
  .zoom-item{flex-direction:column}
  .zoom-date{flex-basis:auto}
}

/* =========================================================
   Messen (kurse-messen.html) — scoped styles
   ========================================================= */

.messen-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.15rem;
  margin-top: 1rem;
}

.messe-card{
  display:flex;
  flex-direction:column;
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  text-decoration:none;
  color: inherit;
  overflow:hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.messe-card:hover{
  transform: translateY(-3px);
  border-color: rgba(216,179,106,.35);
  box-shadow: 0 16px 34px rgba(0,0,0,.28);
}

.messe-thumb{
  aspect-ratio: 4 / 5;
  background: rgba(255,255,255,.04);
  display:flex;
  align-items:center;
  justify-content:center;
}

.messe-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.messe-body{
  padding: 1.1rem 1.1rem 1.15rem;
}

.messe-body h3{
  margin: 0 0 .55rem;
}

.messe-date{
  margin: 0 0 .25rem;
  color: rgba(216,179,106,.95);
  font-weight: 700;
  letter-spacing: .2px;
}

.messe-meta{
  margin: 0 0 .75rem;
  color: var(--muted);
  font-size: .95rem;
}

.messe-text{
  margin: 0;
  color: var(--muted);
}

.messe-link{
  display:inline-block;
  margin-top: .85rem;
  font-weight: 700;
  color: var(--gold);
}

/* Responsive */
@media (max-width: 980px){
  .messen-grid{ grid-template-columns: 1fr; }
  .messe-thumb{ aspect-ratio: 16 / 9; }
}
