/* FCV Verein – neutrale Basis. Das Design kommt aus dem Theme. */
.fcv-liga { font-weight: 700; letter-spacing: .08em; text-transform: uppercase; opacity: .75; }
.fcv-section { margin-top: 3rem; }
.fcv-empty { opacity: .75; }

.fcv-training { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.fcv-training li { display: flex; flex-wrap: wrap; gap: .25rem 1rem; padding: 1rem 1.25rem; border-radius: 16px; background: rgba(6, 81, 148, .08); }
.fcv-day { font-weight: 700; min-width: 7rem; }
.fcv-time { font-weight: 700; }
.fcv-addr { opacity: .7; font-size: .9em; }

.fcv-trainer-list { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.fcv-trainer { flex: 0 1 220px; }
.fcv-trainer-photo img { width: 100%; height: auto; border-radius: 16px; display: block; }
.fcv-trainer-name { margin-top: .5rem; font-weight: 700; }

.fcv-teams { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.fcv-team-card { display: flex; align-items: flex-end; min-height: 120px; padding: 1.25rem; border-radius: 20px; background: #065194; color: #fff; text-decoration: none; }
.fcv-team-name { font-weight: 800; font-size: 1.25rem; }

.fcv-plan h3 { margin: 2rem 0 .75rem; }

.fcv-widget { max-width: 100%; overflow-x: auto; }
.fcv-widget iframe { max-width: 100%; }
