/*
Theme Name: Uncode Child
Description: Child theme for Uncode theme
Author: Undsgn™
Author URI: http://www.undsgn.com
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/

/* montserrat-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100;
  src: url('fonts/montserrat-v31-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100;
  src: url('fonts/montserrat-v31-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/montserrat-v31-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 200;
  src: url('fonts/montserrat-v31-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/montserrat-v31-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  src: url('fonts/montserrat-v31-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/montserrat-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/montserrat-v31-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/montserrat-v31-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 500;
  src: url('fonts/montserrat-v31-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/montserrat-v31-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  src: url('fonts/montserrat-v31-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/montserrat-v31-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/montserrat-v31-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/montserrat-v31-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 800;
  src: url('fonts/montserrat-v31-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/montserrat-v31-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 900;
  src: url('fonts/montserrat-v31-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

.top-menu.top-menu-enhanced {
  border-bottom: 4px solid #2b2a29;
}

/* Auto-Links (E-Mail & Website) – überall */
a.auto-mail-link,
a.auto-web-link {
  color: #e31e24 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 2px;
  font-weight: inherit;
}

/* Falls Uncode Links im Grid/Details speziell überschreibt */
.data-field-value a.auto-mail-link,
.data-field-value a.auto-web-link,
.detail-value a.auto-mail-link,
.detail-value a.auto-web-link,
.t-entry-cf-detail-120832 a.auto-mail-link,
.t-entry-cf-detail-175647 a.auto-web-link {
  color: #e31e24 !important;
  text-decoration: underline !important;
}

/* Hover optional */
a.auto-mail-link:hover,
a.auto-web-link:hover {
  opacity: 0.85;
}

.w3eden .card h3 {
  font-family: 'Barlow';
  font-size: 14pt;
  font-weight: 400;
}
.w3eden .row > div[class*="col-"] {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}
.w3eden .card {border-radius: 0;}

/* WP Download Manager – fa-copy Fallback */
i.fas.fa-copy {
  display: none !important;
}

i.fas.fa-copy::before {
  content: "📄";
  font-style: normal;
  margin-right: 6px;
}

/* allgemeines */
/* NUR diese Media Gallery */
.equal-height-gallery .tmb {
  display: flex;
  align-items: center;
  justify-content: center;
}

.equal-height-gallery .t-entry-visual{
  height: 120px;              
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible !important;
}

.equal-height-gallery .t-entry-visual img{
  max-height: 100%;
  max-width: 100%;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
  display: block; /* verhindert Baseline-Verschiebung */
}
.equal-height-gallery .tmb,
.equal-height-gallery .t-entry-visual,
.equal-height-gallery .t-entry-visual-wrapper{
  overflow: visible !important;
}
/* Fallback: Bild absolut mittig im Visual-Container */
.equal-height-gallery .t-entry-visual{ position: relative !important; }

.equal-height-gallery .t-entry-visual img{
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}

/* Uncode CSS Grid: Button unten (nur Module mit .bottom-button) */
.bottom-button .tmb .t-inside{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}

.bottom-button .tmb .t-entry-text{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}

.bottom-button .tmb .t-entry-text-tc{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}

.bottom-button .tmb .t-entry{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0 !important;
}

.bottom-button .tmb p.t-entry-readmore{
  margin-top:auto !important;
}

.skin-links > .style-light .cf-content-block-button .tmb:hover .t-entry-title,
.skin-links > .style-light .cf-content-block-button .tmb:hover .tmb-title,
.skin-links > .style-light .cf-content-block-button .tmb:hover h3 {
  color: #e30613 !important;
}
.skin-links > .style-light .unmenu-block li:hover > a > span {
  color: #e30613 !important;
}

/* =========================
   Vereine Grid Styling
   ========================= */

.vereine-grid .t-entry div[class^="t-entry-cf-detail-"] {
  font-size: 14px;
}

.vereine-grid :not(.tmb-post):not(.tmb-title):not(.tmb-table).tmb .t-entry > :not(hr):not(.spacer) {
  margin: 5px 0px 0px 0px;
}

/* Thumbnail-Höhe */
.vereine-grid .t-entry .t-entry-visual img {
  max-height: 100px !important;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Thumbnail-Fläche fixieren */
.vereine-grid .tmb .t-entry-visual-cont,
.vereine-grid .tmb .t-entry-visual-cont .dummy {
  height: 100px !important;
}

/* Quadrat-Padding deaktivieren */
.vereine-grid .tmb .t-entry-visual-cont .dummy {
  padding-top: 0 !important;
}

/* Bild korrekt einpassen */
.vereine-grid .tmb .t-entry-visual-cont img {
  height: 100px !important;
  max-height: 100px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block;
  margin: 0 !important;
  padding-left: 18px;
}

/* Flex-Ausrichtung */
.vereine-grid .tmb .t-entry-visual-cont {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

/* Filter Active State */
.vereine-grid .isotope-nav-link.grid-nav-link.cursor-init.active {
  color: #fff !important;
  background-color: #df1c21;
  padding: 5px;
}

/* =========================================================
   TEC + Uncode – Termine Styling (bereinigt)
   ========================================================= */

/* ---------- 1) Termine Kopfbereich (Titel + Text + Filter) ---------- */
.termine-head{
  max-width: 1200px;
  margin: 12px auto 0 auto;
}

.termine-head h1{
  margin: 0;
  font-size: 42px;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.2px;
}

.termine-head p{
  margin: 10px 0 12px 0;
  font-size: 16px;
  line-height: 1.6;
  color: #6b6b6b;
  max-width: 62ch;
}

/* Filter: eine Zeile, kompakt, scrollt wenn zu lang */
.termine-filter{
  display:flex;
  flex-wrap: nowrap;
  gap: 12px;
  align-items:center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin: 0 0 26px 0; /* HIER Abstand vor “Heute – 18. April” */
  padding-bottom: 2px; /* damit Unterstreichung Platz hat */
}
.termine-filter::-webkit-scrollbar{ display:none; }

.termine-filter .tf{
  padding: 0;
  border: 0;
  background: transparent;
  border-radius: 0;
  font-weight: 500;
  color: #111;
  white-space: nowrap;
  text-decoration: none;
  line-height: 1.2;
}

.termine-filter .tf:hover{
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Active-State per body-Klasse (Liste + Kategorien) */
body.post-type-archive-tribe_events .termine-filter a[href$="/termine/"],
body.tax-tribe_events_cat.term-afcvbb .termine-filter a[href*="/kategorie/afcvbb/"],
body.tax-tribe_events_cat.term-big-east-flag .termine-filter a[href*="/kategorie/big-east-flag/"],
body.tax-tribe_events_cat.term-big-east-tackle .termine-filter a[href*="/kategorie/big-east-tackle/"],
body.tax-tribe_events_cat.term-cheerleading .termine-filter a[href*="/kategorie/cheerleading/"],
body.tax-tribe_events_cat.term-flag-football .termine-filter a[href*="/kategorie/flag-football/"],
body.tax-tribe_events_cat.term-schiedsrichter .termine-filter a[href*="/kategorie/schiedsrichter/"],
body.tax-tribe_events_cat.term-tackle-football .termine-filter a[href*="/kategorie/football/"],
body.tax-tribe_events_cat.term-trainer .termine-filter a[href*="/kategorie/trainer/"]{
  color:#e30613;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}

/* Mobile */
@media (max-width: 768px){
  .termine-head h1{ font-size: 34px; }
  .termine-filter{ gap: 14px; }
}

/* ---------- 2) Kategorie-Seiten “Kraut und Rüben” fixen ---------- */
/* Taxonomy Title + Breadcrumbs ausblenden, weil wir oben schon “Termine” haben */
body.tax-tribe_events_cat .tribe-events-page-title,
body.tax-tribe_events_cat .tribe-events-breadcrumbs,
body.tax-tribe_events_cat .tribe-common-breadcrumbs,
body.tax-tribe_events_cat .tribe-events-header{
  display: none !important;
}

/* ---------- 3) TEC Topbar / Datepicker Dropdown z-index ---------- */
.tribe-events .tribe-events-c-top-bar__datepicker,
.tribe-events .tribe-events-c-top-bar__datepicker-container,
.tribe-events .tribe-events-c-top-bar__datepicker-time,
.tribe-events .tribe-common .datepicker,
.tribe-events .tribe-common .tribe-events-c-top-bar__datepicker *{
  position: relative !important;
  z-index: 9999 !important;
}

.tribe-events .tribe-events-c-top-bar__datepicker-container,
.tribe-events .tribe-events-c-top-bar__datepicker{
  z-index: 99999 !important;
}

/* ---------- 4) Monats-Trenner / Überschrift (z.B. März 2026) ---------- */
.tribe-events .tribe-events-calendar-list__month-separator,
.tribe-events .tribe-events-calendar-list__month-separator-text,
.tribe-events .tribe-events-calendar-list__month-separator h2,
.tribe-events .tribe-events-calendar-list__month-separator time{
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: .2px !important;
}

.tribe-events .tribe-events-calendar-list__month-separator{
  margin: 26px 0 18px 0 !important;
  padding-top: 12px !important;
}

.tribe-events .tribe-events-calendar-list__month-separator::after{
  content: "" !important;
  display: block !important;
  height: 1px !important;
  margin-top: 12px !important;
  background: rgba(0,0,0,.08) !important;
}

/* ---------- 5) Event Cards (List View) ---------- */
.tribe-events .tribe-events-calendar-list__event-row{
  background: #fff !important;
  box-shadow: 0 10px 25px rgba(0,0,0,.08) !important;
  padding: 26px !important;
  margin: 0 0 26px 0 !important;

  display: flex !important;
  align-items: center !important;
  gap: 22px !important;

  position: relative !important;
  z-index: 1 !important; /* Datepicker bleibt drüber */
}

/* Innere “zweite Karte” neutralisieren */
.tribe-events .tribe-events-calendar-list__event-details,
.tribe-events .tribe-events-calendar-list__event-wrapper,
.tribe-events .tribe-events-calendar-list__event{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* Datumsbox */
.tribe-events .tribe-events-calendar-list__event-date-tag{
  background: #e30613 !important;
  width: 110px !important;
  min-width: 110px !important;
  height: 110px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 10px !important;
}

/* alles in der Datumsbox */
.tribe-events .tribe-events-calendar-list__event-date-tag,
.tribe-events .tribe-events-calendar-list__event-date-tag *{
  color: #fff !important;
  text-align: center !important;
}

/* Wochentag */
.tribe-events .tribe-events-calendar-list__event-date-tag-weekday{
  font-size: 16px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  opacity: .9 !important;
  margin: 0 0 6px 0 !important;
}

/* Tag groß */
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events .tribe-events-calendar-list__event-date-tag-daynumber,
.tribe-events .tribe-events-calendar-list__event-date-tag-day{
  font-size: 46px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* Inhalt */
.tribe-events .tribe-events-calendar-list__event-details,
.tribe-events .tribe-events-calendar-list__event-wrapper{
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* Meta */
.tribe-events .tribe-events-calendar-list__event-datetime{
  margin: 0 0 6px 0 !important;
  color: #666 !important;
}

/* Titel */
.tribe-events .tribe-events-calendar-list__event-title{
  font-size: 22px !important;
  font-weight: 800 !important;
  margin: 0 0 8px 0 !important;
}

/* Ort */
.tribe-events .tribe-events-calendar-list__event-venue{
  margin: 0 0 8px 0 !important;
  color: #666 !important;
}

/* Beschreibung */
.tribe-events .tribe-events-calendar-list__event-description{
  margin-top: 10px !important;
  color: #555 !important;
  line-height: 1.7 !important;
}

.tribe-events .tribe-events-calendar-list__event-description p{
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
}

/* ===== Single Event Layout schöner ===== */

/* Titel */
body.single-tribe_events .tribe-events-single-event-title{
  font-size: 44px !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  margin: 0 0 14px 0 !important;
}

/* "Alle Veranstaltungen" Link etwas dezenter */
body.single-tribe_events .tribe-events-back{
  margin: 6px 0 18px 0 !important;
  opacity: .75 !important;
}
body.single-tribe_events .tribe-events-back a{
  text-decoration: none !important;
  font-weight: 600 !important;
}
body.single-tribe_events .tribe-events-back a:hover{
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* Schedule Box (Datum/Zeit oben) als Card */
body.single-tribe_events .tribe-events-schedule{
  background: #fff !important;
  box-shadow: 0 10px 25px rgba(0,0,0,.08) !important;
  padding: 16px 18px !important;
  margin: 0 0 22px 0 !important;
  border: 1px solid rgba(0,0,0,.05) !important;
}

/* Beschreibung */
body.single-tribe_events .tribe-events-single-event-description{
  font-size: 16px !important;
  line-height: 1.85 !important;
  color: #333 !important;
  margin: 10px 0 18px 0 !important;
}

/* "Zum Kalender hinzufügen" Button: rot & cleaner */
body.single-tribe_events .tribe-events-cal-links a,
body.single-tribe_events a.tribe-events-gcal,
body.single-tribe_events a.tribe-events-ical{
  background: #e30613 !important;
  border-color: #e30613 !important;
  color: #fff !important;
  padding: 12px 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
body.single-tribe_events .tribe-events-cal-links a:hover{
  filter: brightness(.95);
}

/* Meta-Bereich (Details/Ort) als EIN Block, weniger Leerraum */
body.single-tribe_events .tribe-events-event-meta{
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 25px rgba(0,0,0,.08) !important;
  padding: 22px !important;
  margin: 22px 0 0 0 !important;
  border: 1px solid rgba(0,0,0,.05) !important;
}

/* Meta-Überschriften (DETAILS / VERANSTALTUNGSORT) kleiner & weniger “blockig” */
body.single-tribe_events .tribe-events-meta-group .tribe-events-single-section-title{
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  opacity: .65 !important;
  margin-bottom: 10px !important;
}

/* Meta Labels (Datum/Zeit) kompakter */
body.single-tribe_events .tribe-events-meta-group dt{
  font-weight: 700 !important;
  opacity: .75 !important;
}

/* Kategorie-Link nicht riesig blau */
body.single-tribe_events .tribe-events-event-meta a{
  font-weight: 700 !important;
  text-decoration: none !important;
}
body.single-tribe_events .tribe-events-event-meta a:hover{
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* ============ Abstand: Filter -> Topbar ============ */
.termine-filter{ 
  margin-bottom: 26px !important; /* Abstand VOR "Heute – 18. April" */
}

/* ============ Kategorie-Seiten aufräumen (Titel/Breadcrumbs weg) ============ */
/* TEC setzt auf Taxonomie-Seiten sehr oft diese Elemente – wir fassen breit an */
body.tax-tribe_events_cat h1.tribe-events-page-title,
body.tax-tribe_events_cat .tribe-events-page-title,
body.tax-tribe_events_cat .tribe-events-breadcrumbs,
body.tax-tribe_events_cat .tribe-common-breadcrumbs,
body.tax-tribe_events_cat .tribe-events-header,
body.tax-tribe_events_cat .tribe-events-header__top-bar,
body.tax-tribe_events_cat .tribe-events-header__breadcrumbs {
  display: none !important;
}

/* Sicherheit: falls der Taxonomie-Titel als "entry-title" kommt */
body.tax-tribe_events_cat .entry-title {
  display:none !important;
}

/* ============ Active-Styling nur per Klasse (setzt gleich JS) ============ */
.termine-filter .tf.is-active{
  color:#e30613 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 6px !important;
}

/* =========================================
   TEC Kategorie-Seiten aufräumen
   - große Kategorie-Headline (Flag Football)
   - Breadcrumbs (Veranstaltungen > …)
   ========================================= */

/* 1) Alles, was TEC als Titel/Breadcrumb oberhalb der Topbar ausgibt, ausblenden */
body.tax-tribe_events_cat .tribe-events-page-title,
body.tax-tribe_events_cat h1.tribe-events-page-title,
body.tax-tribe_events_cat .tribe-events-breadcrumbs,
body.tax-tribe_events_cat nav.tribe-events-breadcrumbs,
body.tax-tribe_events_cat .tribe-common-breadcrumbs,
body.tax-tribe_events_cat nav.tribe-common-breadcrumbs,
body.tax-tribe_events_cat .tribe-events-header__breadcrumbs,
body.tax-tribe_events_cat .tribe-events-header__title {
  display: none !important;
}

/* 2) Fallback: manche Themes geben Taxonomie-Titel als generische entry-title aus */
body.tax-tribe_events_cat .entry-header,
body.tax-tribe_events_cat .entry-title,
body.tax-tribe_events_cat header.entry-header {
  display: none !important;
}
/* Kategorie-Seiten: TEC Title + Breadcrumbs AUS, Topbar bleibt */
.tribe-events-header__title,
.tribe-events-header__breadcrumbs.tribe-events-c-breadcrumbs,
.tribe-events-c-breadcrumbs {
  display: none;
}

/* Falls der Titel zusätzlich als "content-title" auftaucht */
body.tax-tribe_events_cat .tribe-events-header__content-title{
  display: none !important;
}
/* Sicherheit: 'Alle' auf Kategorie-Seiten NICHT rot markieren */
body.tax-tribe_events_cat .termine-filter a[href$="/termine/"]{
  color:#111 !important;
  text-decoration: none !important;
}
/* Uncode/Theme "active/current" Klassen auf Kategorie-Seiten neutralisieren */
body.tax-tribe_events_cat .termine-filter a.tf-all.current,
body.tax-tribe_events_cat .termine-filter a.tf-all.active,
body.tax-tribe_events_cat .termine-filter a.tf-all.is-active,
body.tax-tribe_events_cat .termine-filter a.tf-all.current-menu-item,
body.tax-tribe_events_cat .termine-filter a.tf-all.current_page_item{
  color:#111 !important;
  text-decoration:none !important;
}
/* Single Event: eigenen Termine-Header ausblenden */
body.single-tribe_events .termine-head{
  display:none !important;
}
/* Focus-Outline bei den Filterlinks entfernen */
.termine-filter a,
.termine-filter a:focus,
.termine-filter a:active{
  outline: none !important;
  box-shadow: none !important;
}

/* =========================================
   Mobile Layout für Termine
   Kleiner quadratischer Datumsblock links
   ========================================= */
@media (max-width: 767px){

  /* Card kompakter */
  .tribe-events .tribe-events-calendar-list__event-row{
    display: grid !important;
    grid-template-columns: 72px 1fr !important;
    gap: 14px !important;
    align-items: start !important;
    padding: 16px !important;
  }

  /* Datumsbox wieder quadratisch */
  .tribe-events .tribe-events-calendar-list__event-date-tag{
    width: 72px !important;
    min-width: 72px !important;
    height: 72px !important;
    border-radius: 8px !important;
    padding: 6px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
  }

  /* Wochentag */
  .tribe-events .tribe-events-calendar-list__event-date-tag-weekday{
    font-size: 11px !important;
    line-height: 1 !important;
    margin: 0 !important;
    letter-spacing: .5px !important;
  }

  /* Tageszahl */
  .tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
  .tribe-events .tribe-events-calendar-list__event-date-tag-daynumber,
  .tribe-events .tribe-events-calendar-list__event-date-tag-day{
    font-size: 20px !important;
    line-height: 1 !important;
    margin: 0 !important;
  }

  /* Inhalt rechts */
  .tribe-events .tribe-events-calendar-list__event-details,
  .tribe-events .tribe-events-calendar-list__event-wrapper{
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Datum/Uhrzeit direkt oben rechts neben der Box */
  .tribe-events .tribe-events-calendar-list__event-datetime{
    font-size: 14px !important;
    line-height: 1.3 !important;
    margin: 0 0 6px 0 !important;
    color: #777 !important;
  }

  /* Titel */
  .tribe-events .tribe-events-calendar-list__event-title{
    font-size: 17px !important;
    line-height: 1.3 !important;
    margin: 0 0 6px 0 !important;
    font-weight: 800 !important;
  }

  /* Ort */
  .tribe-events .tribe-events-calendar-list__event-venue{
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 0 6px 0 !important;
    color: #666 !important;
  }

  /* Beschreibung auf Mobile kürzer und ruhiger */
  .tribe-events .tribe-events-calendar-list__event-description{
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-top: 6px !important;
  }

  /* Monatsüberschrift kompakter */
  .tribe-events .tribe-events-calendar-list__month-separator,
  .tribe-events .tribe-events-calendar-list__month-separator-text,
  .tribe-events .tribe-events-calendar-list__month-separator h2,
  .tribe-events .tribe-events-calendar-list__month-separator time{
    font-size: 18px !important;
  }
  .tribe-events .tribe-events-calendar-list__event-date-tag{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 4px !important;
  }

  .tribe-events .tribe-events-calendar-list__event-date-tag-weekday{
    margin: 0 0 4px 0 !important;
    font-size: 11px !important;
    line-height: 1 !important;
    letter-spacing: .6px !important;
    text-align: center !important;
  }

  .tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
  .tribe-events .tribe-events-calendar-list__event-date-tag-daynumber,
  .tribe-events .tribe-events-calendar-list__event-date-tag-day{
    font-size: 28px !important;
    line-height: 1 !important;
    margin: 0 !important;
    text-align: center !important;
  }
}
/* ===== Filter wieder normal umbrechen ===== */

.termine-filter{
  display:flex;
  flex-wrap: wrap;        /* WICHTIG: wieder umbrechen */
  gap: 14px 12px;         /* vertikal + horizontal Abstand */
  overflow: visible;      /* kein Scroll */
}

/* Links wie Text behandeln */
.termine-filter .tf{
  white-space: normal;
}
