/* Heidenheim.info Theme 0.1.241 – final CI normalization */
:root{
  --hi241-navy:#123148;
  --hi241-petrol:#0b7a75;
  --hi241-green:#126c31;
  --hi241-gold:#e3a72f;
  --hi241-border:#dbe5e8;
  --hi241-soft:#f4f7f8;
  --hi241-text:#1b2e39;
}

/* Family landing: compact jump navigation directly below the hero. */
body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav{
  width:min(1160px,calc(100% - 32px));
  margin:18px auto 8px!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:8px!important;
}
body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border:1px solid var(--hi241-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--hi241-navy)!important;
  font-size:.84rem!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-decoration:none!important;
  box-shadow:0 4px 14px rgba(18,49,72,.05)!important;
}
body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav a:hover,
body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav a:focus-visible{
  border-color:var(--hi241-petrol)!important;
  color:var(--hi241-petrol)!important;
  transform:translateY(-1px);
}

/* Keep the family modules close together and visually consistent. */
body:not(.home) .hi-topic-landing--family .hi-topic-landing__section{
  width:min(1160px,calc(100% - 32px))!important;
  margin:26px auto!important;
}
body:not(.home) .hi-topic-landing--family .hi-topic-landing__section-head{
  gap:14px!important;
  margin-bottom:14px!important;
}
body:not(.home) .hi-topic-landing--family .hi-topic-landing__section-head h2{
  margin-top:2px!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-grid--destination{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card{
  min-width:0!important;
  overflow:hidden!important;
  border:1px solid var(--hi241-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(18,49,72,.06)!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card__image{
  display:block!important;
  aspect-ratio:16/9!important;
  overflow:hidden!important;
  background:var(--hi241-soft)!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card__image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card__body{
  padding:14px!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card__body h3{
  margin:0 0 7px!important;
  font-size:1rem!important;
  line-height:1.25!important;
}
body:not(.home) .hi-topic-landing--family .hi-municipality-content-card__body p{
  margin:0 0 10px!important;
  font-size:.86rem!important;
  line-height:1.45!important;
}

/* Mixed family entries instead of another category-only row. */
body:not(.home) .hi-family-mixed-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
}
body:not(.home) .hi-family-mixed-card{
  margin:0!important;
  overflow:hidden!important;
  border:1px solid var(--hi241-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(18,49,72,.055)!important;
}
body:not(.home) .hi-family-mixed-card>a{
  display:flex!important;
  height:100%!important;
  flex-direction:column!important;
  color:var(--hi241-text)!important;
  text-decoration:none!important;
}
body:not(.home) .hi-family-mixed-card img{
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
}
body:not(.home) .hi-family-mixed-card>a>span{
  padding:11px 12px 0!important;
  color:var(--hi241-petrol)!important;
  font-size:.7rem!important;
  font-weight:850!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
body:not(.home) .hi-family-mixed-card>a>strong{
  padding:4px 12px 13px!important;
  font-size:.92rem!important;
  line-height:1.3!important;
}
body:not(.home) .hi-family-section-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:6px!important;
}
body:not(.home) .hi-family-section-links a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:6px 10px!important;
  border:1px solid var(--hi241-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--hi241-navy)!important;
  font-size:.75rem!important;
  font-weight:750!important;
  text-decoration:none!important;
}
body:not(.home) .hi-family-section-links a:hover,
body:not(.home) .hi-family-section-links a:focus-visible{
  border-color:var(--hi241-petrol)!important;
  color:var(--hi241-petrol)!important;
}

/* Gastronomy category tiles: CI cards immediately below the managed hero. */
body:not(.home) .hi-gastro-portal>.hi-gastro-type-grid{
  width:min(1160px,calc(100% - 32px))!important;
  margin:18px auto 24px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
body:not(.home) .hi-gastro-portal>.hi-gastro-type-grid>a{
  min-height:92px!important;
  padding:15px 16px!important;
  border-radius:15px!important;
}

/* Event hero filter gets an equal-height municipality selector. */
body:not(.home) .hi-event-directory .hi-event-range-search select{
  height:42px!important;
  min-height:42px!important;
  min-width:170px!important;
  margin:0!important;
  box-sizing:border-box!important;
  border:1px solid #d2dde0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--hi241-text)!important;
  padding:0 34px 0 11px!important;
  font:inherit!important;
  font-size:.82rem!important;
}
body:not(.home) .hi-event-directory .hi-event-range-search{
  flex-wrap:wrap!important;
}

/* Search pagination: real numbered pages, not only previous/next. */
body.search .hi-search-pagination .wp-block-query-pagination-numbers{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  flex:1 1 auto!important;
}
body.search .hi-search-pagination .page-numbers{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  height:38px!important;
  padding:0 9px!important;
  border:1px solid var(--hi241-border)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--hi241-navy)!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.search .hi-search-pagination .page-numbers.current{
  border-color:var(--hi241-petrol)!important;
  background:var(--hi241-petrol)!important;
  color:#fff!important;
}

@media(max-width:980px){
  body:not(.home) .hi-topic-landing--family .hi-municipality-content-grid--destination{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body:not(.home) .hi-family-mixed-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body:not(.home) .hi-gastro-portal>.hi-gastro-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:720px){
  body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px!important}
  body:not(.home) .hi-topic-landing--family .hi-topic-jump-nav a{flex:0 0 auto!important}
  body:not(.home) .hi-topic-landing--family .hi-topic-landing__section{width:min(100% - 24px,1160px)!important;margin:20px auto!important}
  body:not(.home) .hi-topic-landing--family .hi-municipality-content-grid--destination{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body:not(.home) .hi-family-mixed-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body:not(.home) .hi-family-section-links{justify-content:flex-start!important;width:100%!important}
  body:not(.home) .hi-gastro-portal>.hi-gastro-type-grid{width:min(100% - 24px,1160px)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body:not(.home) .hi-event-directory .hi-event-range-search select{width:100%!important;min-width:0!important}
  body.search .hi-search-pagination{gap:8px!important;flex-wrap:wrap!important}
  body.search .hi-search-pagination .wp-block-query-pagination-numbers{order:3;flex-basis:100%!important}
}
@media(max-width:460px){
  body:not(.home) .hi-topic-landing--family .hi-municipality-content-grid--destination,
  body:not(.home) .hi-family-mixed-grid,
  body:not(.home) .hi-gastro-portal>.hi-gastro-type-grid{grid-template-columns:1fr!important}
}
