/*
 * Heidenheim.info – Kachelsystem 0.1.190
 * Freigegebener Grafikstand: klare Kategorie-Kacheln + zwei Eintragsvarianten.
 * Layout-Milestone 0.1.188 bleibt unangetastet: Hero full-bleed, Inhalt max. 1320px.
 */
:root{
  --hi190-navy:#123148;
  --hi190-petrol:#0b7a75;
  --hi190-green:#16844a;
  --hi190-blue:#2563d9;
  --hi190-muted:#64757f;
  --hi190-line:#dbe5e8;
  --hi190-soft:#f5f8f9;
  --hi190-radius:16px;
  --hi190-shadow:0 6px 20px rgba(18,49,72,.065);
  --hi190-shadow-hover:0 11px 28px rgba(18,49,72,.105);
}

/* ---------- Kategorie-/Navigationskacheln ---------- */
body:not(.home) :is(.hi-place-type-grid,.hi-gastro-type-grid,.hi-service-topic-grid,.hi-municipality-grid,.hi-place-subcategory-grid){
  gap:14px!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
){
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 22px!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:2px!important;
  min-height:82px!important;
  padding:12px 14px!important;
  border:1px solid var(--hi190-line)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(18,49,72,.05)!important;
  color:var(--hi190-navy)!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
)::before{
  content:"•";
  grid-column:1!important;
  grid-row:1 / span 2!important;
  display:flex!important;
  width:38px!important;
  height:38px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#eaf4f3!important;
  color:var(--hi190-petrol)!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
)::after{
  content:"→"!important;
  position:static!important;
  grid-column:3!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  justify-self:end!important;
  color:var(--hi190-blue)!important;
  font-size:19px!important;
  font-weight:800!important;
}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-place-subcategory-grid>a)>strong,
body:not(.home) .hi-service-topic-grid>.hi-service-topic>.hi-service-topic__title{
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
  color:var(--hi190-navy)!important;
  font-size:.94rem!important;
  font-weight:850!important;
  line-height:1.18!important;
}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-place-subcategory-grid>a)>span,
body:not(.home) .hi-service-topic-grid>.hi-service-topic>.hi-service-topic__meta{
  grid-column:2!important;
  grid-row:2!important;
  margin:0!important;
  color:var(--hi190-muted)!important;
  font-size:.72rem!important;
  font-weight:650!important;
  line-height:1.2!important;
}
body:not(.home) .hi-service-topic-grid>.hi-service-topic>.hi-service-topic__copy{display:none!important}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-service-topic-grid>.hi-service-topic,.hi-place-subcategory-grid>a):hover{
  transform:translateY(-2px)!important;
  border-color:#b9d3d1!important;
  box-shadow:var(--hi190-shadow-hover)!important;
}

/* einfache, CI-konforme Piktogramme */
body:not(.home) :is([class*="--gesund"],[class*="--arzt"],[class*="--apothek"],[class*="--notfall"])::before{content:"+"!important;background:#fdebec!important;color:#c8323b!important}
body:not(.home) :is([class*="--park"],[class*="--kfz"],[class*="--auto"])::before{content:"P"!important;background:#e9f1ff!important;color:#2463c7!important}
body:not(.home) :is([class*="--mobil"],[class*="--oepnv"],[class*="--bahn"])::before{content:"↔"!important;background:#e8f6f7!important;color:#087b87!important}
body:not(.home) :is([class*="--famil"],[class*="--schule"],[class*="--kita"])::before{content:"●"!important;background:#eef0ff!important;color:#5a4fd1!important}
body:not(.home) :is([class*="--freizeit"],[class*="--natur"],[class*="--ausflug"],[class*="--spiel"])::before{content:"▲"!important;background:#eaf6ec!important;color:#2f8b45!important}
body:not(.home) :is([class*="--laden"],[class*="--energie"])::before{content:"⚡"!important;background:#eaf7ef!important;color:#16844a!important}
body:not(.home) :is([class*="--behoerd"],[class*="--oeffentlich"])::before{content:"▥"!important;background:#eef1f7!important;color:#536985!important}
body:not(.home) :is([class*="--einkauf"],[class*="--markt"])::before{content:"□"!important;background:#fff3e6!important;color:#bd6b1d!important}
body:not(.home) :is([class*="--finanz"],[class*="--bank"])::before{content:"€"!important;background:#eef5ff!important;color:#315f9c!important}
body:not(.home) :is([class*="--uebernacht"],[class*="--hotel"])::before{content:"⌂"!important;background:#f3eefc!important;color:#7250a4!important}
body:not(.home) :is([class*="--handwerk"])::before{content:"◆"!important;background:#fff0e7!important;color:#b55b24!important}

/* ---------- gemeinsame Eintragskarten ---------- */
body:not(.home) :is(.hi-card,.hi-place-card,.hi-gastro-card,.hi-service-directory-card){
  position:relative!important;
  height:100%!important;
  border:1px solid var(--hi190-line)!important;
  border-radius:var(--hi190-radius)!important;
  background:#fff!important;
  box-shadow:var(--hi190-shadow)!important;
  overflow:hidden!important;
}
body:not(.home) :is(.hi-card,.hi-place-card,.hi-gastro-card,.hi-service-directory-card):hover{
  transform:translateY(-2px)!important;
  border-color:#bfd5d3!important;
  box-shadow:var(--hi190-shadow-hover)!important;
}
body:not(.home) :is(.hi-place-card__body,.hi-gastro-card__body,.hi-service-directory-card){
  box-sizing:border-box!important;
}

/* Typ A: Information – Schulen, Branchen, Service, Infrastruktur */
body:not(.home) .hi-card--info{
  display:flex!important;
  flex-direction:column!important;
  min-height:214px!important;
}
body:not(.home) .hi-card--info>.hi-place-card__image{display:none!important}
body:not(.home) .hi-card--info>.hi-place-card__body,
body:not(.home) .hi-card--info.hi-service-directory-card{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  padding:18px 18px 16px!important;
}
body:not(.home) .hi-card--info :is(.hi-place-card__meta,.hi-service-directory-card__meta){
  margin:0 0 7px!important;
  color:var(--hi190-petrol)!important;
  font-size:.68rem!important;
  font-weight:850!important;
  letter-spacing:.045em!important;
  line-height:1.3!important;
  text-transform:uppercase!important;
}
body:not(.home) .hi-card--info h3{
  margin:0 0 9px!important;
  color:var(--hi190-navy)!important;
  font-size:1.08rem!important;
  font-weight:850!important;
  line-height:1.2!important;
}
body:not(.home) .hi-card--info h3 a{color:inherit!important;text-decoration:none!important}
body:not(.home) .hi-card--info .hi-place-card__excerpt{display:none!important}
body:not(.home) .hi-card--info :is(.hi-place-card__detail,.hi-service-directory-card__detail,.hi-service-directory-card__excerpt){
  margin:.2rem 0!important;
  color:var(--hi190-muted)!important;
  font-size:.79rem!important;
  line-height:1.42!important;
}
body:not(.home) .hi-card--info .hi-service-directory-card__excerpt{
  display:-webkit-box!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
body:not(.home) .hi-card--info :is(.hi-place-card__more,.hi-service-directory-card__more){
  margin-top:auto!important;
  padding-top:12px!important;
  align-self:flex-end!important;
  color:var(--hi190-blue)!important;
  font-size:.79rem!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body:not(.home) .hi-card--info .hi-service-directory-card__actions{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:auto!important;
  padding-top:12px!important;
}

/* Typ B: Entdecken – Ausflugsziele und Gastro bleiben bildorientiert */
body:not(.home) .hi-card--discover{
  display:flex!important;
  flex-direction:column!important;
  min-height:328px!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__image,.hi-gastro-card__image){
  display:block!important;
  flex:0 0 168px!important;
  height:168px!important;
  min-height:168px!important;
  overflow:hidden!important;
  background:#eaf0f2!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__image,.hi-gastro-card__image) img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__body,.hi-gastro-card__body){
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  padding:14px 16px 15px!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__meta,.hi-gastro-card__meta){
  margin:0 0 5px!important;
  color:var(--hi190-petrol)!important;
  font-size:.7rem!important;
  font-weight:750!important;
  line-height:1.25!important;
}
body:not(.home) .hi-card--discover h3{
  margin:0 0 6px!important;
  color:var(--hi190-navy)!important;
  font-size:1.05rem!important;
  font-weight:850!important;
  line-height:1.2!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__excerpt,.hi-gastro-card__excerpt){
  display:-webkit-box!important;
  overflow:hidden!important;
  margin:.15rem 0 .35rem!important;
  color:var(--hi190-muted)!important;
  font-size:.78rem!important;
  line-height:1.4!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
body:not(.home) .hi-card--discover .hi-place-card__detail,
body:not(.home) .hi-card--discover .hi-gastro-card__opening{
  margin:.15rem 0!important;
  color:var(--hi190-muted)!important;
  font-size:.75rem!important;
  line-height:1.35!important;
}
body:not(.home) .hi-card--discover :is(.hi-place-card__more,.hi-gastro-card__more){
  margin-top:auto!important;
  align-self:flex-end!important;
  color:var(--hi190-blue)!important;
  font-size:.79rem!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body:not(.home) .hi-card--discover .hi-gastro-card__actions{
  margin-top:auto!important;
  padding-top:10px!important;
}

/* Status-/Funktionschips kompakt */
body:not(.home) :is(.hi-gastro-card__status,.hi-gastro-card__daily-badge,.hi-daily-menu-card__badges span){
  border-radius:999px!important;
  padding:4px 8px!important;
  font-size:.66rem!important;
  font-weight:800!important;
  line-height:1.1!important;
}

/* gleichmäßige Rasterhöhen */
body:not(.home) :is(.hi-place-directory,.hi-gastro-directory,.hi-service-directory){align-items:stretch!important}
body:not(.home) :is(.hi-place-directory,.hi-gastro-directory,.hi-service-directory)>*{min-width:0!important}

@media(max-width:1050px){
  body:not(.home) :is(.hi-place-type-grid,.hi-gastro-type-grid,.hi-service-topic-grid,.hi-place-subcategory-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  body:not(.home) :is(.hi-place-type-grid,.hi-gastro-type-grid,.hi-service-topic-grid,.hi-place-subcategory-grid){grid-template-columns:1fr!important}
  body:not(.home) .hi-card--info{min-height:0!important}
  body:not(.home) .hi-card--discover{min-height:0!important}
}
@media(prefers-reduced-motion:reduce){
  body:not(.home) :is(.hi-category-card,.hi-place-card,.hi-gastro-card,.hi-service-directory-card){transition:none!important}
}

/* ========================================================================
 * Kachelsystem 0.1.192 – farbliche Themenkacheln + vollständige SVG-Symbole
 * ======================================================================== */
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
){
  --hi-cat-bg:#f1f7f7;
  --hi-cat-border:#d6e7e5;
  --hi-cat-icon-bg:#e1f1ef;
  --hi-cat-icon:url('../icons/categories/alltag.svg');
  background:var(--hi-cat-bg)!important;
  border-color:var(--hi-cat-border)!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
)::before{
  content:""!important;
  background-color:var(--hi-cat-icon-bg)!important;
  background-image:var(--hi-cat-icon)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:21px 21px!important;
  color:transparent!important;
}

/* Alltag & Versorgung */
body:not(.home) :is(.hi-category-card--alltag-versorgung,[class*="--alltag"],[class*="--versorgung"]){
  --hi-cat-bg:#eef8f5;--hi-cat-border:#d6ebe4;--hi-cat-icon-bg:#dff1eb;--hi-cat-icon:url('../icons/categories/alltag.svg');
}
/* Auto / KFZ / Parken */
body:not(.home) :is(.hi-category-card--auto-verkehr,[class*="--auto"],[class*="--kfz"]){
  --hi-cat-bg:#eef5ff;--hi-cat-border:#d5e4fa;--hi-cat-icon-bg:#e1ecfc;--hi-cat-icon:url('../icons/categories/auto.svg');
}
body:not(.home) :is(.hi-category-card--kfz-werkstaetten,[class*="--werkstatt"]){--hi-cat-icon:url('../icons/categories/kfz.svg')}
body:not(.home) :is(.hi-category-card--parken,[class*="--parken"]){
  --hi-cat-bg:#eef5ff;--hi-cat-border:#d5e4fa;--hi-cat-icon-bg:#e1ecfc;--hi-cat-icon:url('../icons/categories/parking.svg');
}
/* Banken / Finanzen */
body:not(.home) :is(.hi-category-card--banken,[class*="--bank"]){
  --hi-cat-bg:#f1f5fb;--hi-cat-border:#dce4f1;--hi-cat-icon-bg:#e5ecf7;--hi-cat-icon:url('../icons/categories/bank.svg');
}
body:not(.home) :is(.hi-category-card--finanzen-beratung,[class*="--finanz"]){
  --hi-cat-bg:#f1f5fb;--hi-cat-border:#dce4f1;--hi-cat-icon-bg:#e5ecf7;--hi-cat-icon:url('../icons/categories/finance.svg');
}
/* Clubs / Nachtleben */
body:not(.home) :is(.hi-category-card--clubs-nachtleben,[class*="--club"],[class*="--nacht"]){
  --hi-cat-bg:#f6f1fb;--hi-cat-border:#e6daf3;--hi-cat-icon-bg:#eee4f8;--hi-cat-icon:url('../icons/categories/night.svg');
}
/* Einkaufen / Märkte */
body:not(.home) :is(.hi-category-card--einkaufen,[class*="--einkauf"],[class*="--shopping"]){
  --hi-cat-bg:#fff6e9;--hi-cat-border:#f2e1c7;--hi-cat-icon-bg:#fcedd8;--hi-cat-icon:url('../icons/categories/shopping.svg');
}
body:not(.home) :is(.hi-service-topic--wochenmaerkte,[class*="--markt"]){
  --hi-cat-bg:#fff6e9;--hi-cat-border:#f2e1c7;--hi-cat-icon-bg:#fcedd8;--hi-cat-icon:url('../icons/categories/market.svg');
}
/* Freizeit / Vereine / Natur */
body:not(.home) :is(.hi-category-card--freizeit-vereine,[class*="--freizeit"],[class*="--verein"]){
  --hi-cat-bg:#eef8ee;--hi-cat-border:#d9ead9;--hi-cat-icon-bg:#e2f1e3;--hi-cat-icon:url('../icons/categories/leisure.svg');
}
body:not(.home) :is([class*="--natur"],[class*="--ausflug"],[class*="--spiel"]){
  --hi-cat-bg:#eef8ee;--hi-cat-border:#d9ead9;--hi-cat-icon-bg:#e2f1e3;--hi-cat-icon:url('../icons/categories/destination.svg');
}
/* Gesellschaft / Behörden / öffentliche Infrastruktur */
body:not(.home) :is(.hi-category-card--gesellschaft-politik,[class*="--gesellschaft"],[class*="--politik"]){
  --hi-cat-bg:#f2f5f8;--hi-cat-border:#dce4eb;--hi-cat-icon-bg:#e6ecf1;--hi-cat-icon:url('../icons/categories/society.svg');
}
body:not(.home) :is(.hi-category-card--oeffentliche-infrastruktur,[class*="--oeffentlich"],[class*="--behoerd"]){
  --hi-cat-bg:#f2f5f8;--hi-cat-border:#dce4eb;--hi-cat-icon-bg:#e6ecf1;--hi-cat-icon:url('../icons/categories/infra.svg');
}
body:not(.home) .hi-service-topic--behoerden{--hi-cat-icon:url('../icons/categories/society.svg')}
/* Gesundheit / Notfall */
body:not(.home) :is(.hi-category-card--gesundheit,[class*="--gesund"],[class*="--arzt"],[class*="--apothek"],[class*="--notfall"]){
  --hi-cat-bg:#fff0f1;--hi-cat-border:#f1d6d9;--hi-cat-icon-bg:#f9e1e4;--hi-cat-icon:url('../icons/categories/health.svg');
}
/* Handwerk */
body:not(.home) :is(.hi-category-card--handwerk,[class*="--handwerk"]){
  --hi-cat-bg:#fff3eb;--hi-cat-border:#f0ddcf;--hi-cat-icon-bg:#f8e6da;--hi-cat-icon:url('../icons/categories/handwerk.svg');
}
/* Kirchen */
body:not(.home) :is(.hi-category-card--kirchen,[class*="--kirche"]){
  --hi-cat-bg:#f6f1fb;--hi-cat-border:#e6daf3;--hi-cat-icon-bg:#eee4f8;--hi-cat-icon:url('../icons/categories/church.svg');
}
/* Mobilität */
body:not(.home) :is(.hi-category-card--mobilitaet-verkehr,.hi-service-topic--mobilitaet,[class*="--mobilitaet"]){
  --hi-cat-bg:#eaf7f8;--hi-cat-border:#cfe7e9;--hi-cat-icon-bg:#d9eef0;--hi-cat-icon:url('../icons/categories/mobility.svg');
}
body:not(.home) .hi-category-card--bus{--hi-cat-bg:#eaf7f8;--hi-cat-border:#cfe7e9;--hi-cat-icon-bg:#d9eef0;--hi-cat-icon:url('../icons/categories/bus.svg')}
body:not(.home) .hi-category-card--bahn{--hi-cat-bg:#eaf7f8;--hi-cat-border:#cfe7e9;--hi-cat-icon-bg:#d9eef0;--hi-cat-icon:url('../icons/categories/bahn.svg')}
body:not(.home) .hi-category-card--taxi{--hi-cat-bg:#eef5ff;--hi-cat-border:#d5e4fa;--hi-cat-icon-bg:#e1ecfc;--hi-cat-icon:url('../icons/categories/taxi.svg')}
body:not(.home) .hi-category-card--tankstelle{--hi-cat-bg:#fff6e9;--hi-cat-border:#f2e1c7;--hi-cat-icon-bg:#fcedd8;--hi-cat-icon:url('../icons/categories/tank.svg')}
body:not(.home) .hi-category-card--e-ladepunkt{--hi-cat-bg:#edf8f1;--hi-cat-border:#d5eadc;--hi-cat-icon-bg:#e0f1e6;--hi-cat-icon:url('../icons/categories/charge.svg')}
body:not(.home) .hi-category-card--fahrrad{--hi-cat-bg:#eaf7f8;--hi-cat-border:#cfe7e9;--hi-cat-icon-bg:#d9eef0;--hi-cat-icon:url('../icons/categories/bike.svg')}
body:not(.home) .hi-category-card--sharing{--hi-cat-bg:#eaf7f8;--hi-cat-border:#cfe7e9;--hi-cat-icon-bg:#d9eef0;--hi-cat-icon:url('../icons/categories/sharing.svg')}
/* Übernachten */
body:not(.home) :is(.hi-category-card--uebernachten,[class*="--uebernacht"],[class*="--hotel"]){
  --hi-cat-bg:#f8f2ee;--hi-cat-border:#eaded5;--hi-cat-icon-bg:#f1e5dc;--hi-cat-icon:url('../icons/categories/overnight.svg');
}
/* Familie / Bildung */
body:not(.home) :is(.hi-category-card--familie-bildung,.hi-service-topic--familie,[class*="--famil"],[class*="--kita"]){
  --hi-cat-bg:#f2f2ff;--hi-cat-border:#dedeef;--hi-cat-icon-bg:#e7e6fb;--hi-cat-icon:url('../icons/categories/family.svg');
}
body:not(.home) :is([class*="--schule"]){--hi-cat-icon:url('../icons/categories/school.svg')}
/* Gastronomie */
body:not(.home) :is([class*="--restaurant"],[class*="--gastro"],[class*="--essen"],[class*="--imbiss"]){
  --hi-cat-bg:#fff3e8;--hi-cat-border:#f0ddca;--hi-cat-icon-bg:#f8e7d7;--hi-cat-icon:url('../icons/categories/food.svg');
}
/* Service-spezifisch */
body:not(.home) .hi-service-topic--entsorgung{--hi-cat-bg:#eef8f5;--hi-cat-border:#d6ebe4;--hi-cat-icon-bg:#dff1eb;--hi-cat-icon:url('../icons/categories/waste.svg')}
body:not(.home) .hi-service-topic--parken{--hi-cat-bg:#eef5ff;--hi-cat-border:#d5e4fa;--hi-cat-icon-bg:#e1ecfc;--hi-cat-icon:url('../icons/categories/parking.svg')}
body:not(.home) .hi-service-topic--gesundheit{--hi-cat-bg:#fff0f1;--hi-cat-border:#f1d6d9;--hi-cat-icon-bg:#f9e1e4;--hi-cat-icon:url('../icons/categories/health.svg')}

/* Service-Übersicht: kompakt und ohne auseinandergerissene Zweispalten-Lücke. */
body:not(.home) .hi-service-topic-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}

/* Einzelne Treffer nutzen die verfügbare Inhaltsachse statt einer einsamen 1/3-Kachel. */
body:not(.home) .hi-service-directory.hi-service-directory--single{
  grid-template-columns:minmax(0,1fr)!important;
}
body:not(.home) .hi-service-directory.hi-service-directory--single>.hi-service-directory-card{
  width:100%!important;
  min-height:160px!important;
}
body:not(.home) .hi-service-directory.hi-service-directory--single>.hi-service-directory-card .hi-service-directory-card__excerpt{
  max-width:860px!important;
}

/* Mobility-Quicklinks benutzen dasselbe Kachelsystem. */
body:not(.home) .hi-topic-landing__section--mobility-quick .hi-place-type-grid>a{
  background:var(--hi-cat-bg,#eaf7f8)!important;
}

@media(max-width:980px){
  body:not(.home) .hi-service-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
  body:not(.home) .hi-service-topic-grid{grid-template-columns:1fr!important}
}

/* ========================================================================
 * Grafik-Fortführung 0.1.195 – freigegebene Kachelgrafik konsequent ausbauen
 * ======================================================================== */
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
){
  --hi-cat-accent:#0b7a75;
  min-height:92px!important;
  padding:15px 16px!important;
  grid-template-columns:50px minmax(0,1fr) 24px!important;
  column-gap:14px!important;
  border-width:1px!important;
  box-shadow:inset 4px 0 0 var(--hi-cat-accent),0 5px 16px rgba(18,49,72,.055)!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
)::before{
  width:44px!important;
  height:44px!important;
  background-size:24px 24px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 2px 8px rgba(18,49,72,.06)!important;
}
body:not(.home) :is(
  .hi-category-card,
  .hi-place-type-grid>a,
  .hi-gastro-type-grid>a,
  .hi-service-topic-grid>.hi-service-topic,
  .hi-place-subcategory-grid>a
)::after{
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.7)!important;
  color:var(--hi-cat-accent)!important;
  font-size:16px!important;
  line-height:1!important;
}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-place-subcategory-grid>a)>strong,
body:not(.home) .hi-service-topic-grid>.hi-service-topic>.hi-service-topic__title{
  font-size:1rem!important;
  letter-spacing:-.01em!important;
}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-place-subcategory-grid>a)>span,
body:not(.home) .hi-service-topic-grid>.hi-service-topic>.hi-service-topic__meta{
  margin-top:3px!important;
  font-size:.75rem!important;
  font-weight:700!important;
}
body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-service-topic-grid>.hi-service-topic,.hi-place-subcategory-grid>a):hover{
  transform:translateY(-2px)!important;
  box-shadow:inset 4px 0 0 var(--hi-cat-accent),0 12px 26px rgba(18,49,72,.11)!important;
}

/* Themenfarben steuern nicht nur den Hintergrund, sondern auch die grafische Akzentkante. */
body:not(.home) :is(.hi-category-card--alltag-versorgung,[class*="--alltag"],[class*="--versorgung"],.hi-service-topic--entsorgung){--hi-cat-accent:#27836d}
body:not(.home) :is(.hi-category-card--auto-verkehr,[class*="--auto"],[class*="--kfz"],.hi-category-card--parken,[class*="--parken"],.hi-service-topic--parken){--hi-cat-accent:#356fca}
body:not(.home) :is(.hi-category-card--banken,[class*="--bank"],.hi-category-card--finanzen-beratung,[class*="--finanz"]){--hi-cat-accent:#526d9a}
body:not(.home) :is(.hi-category-card--clubs-nachtleben,[class*="--club"],[class*="--nacht"],.hi-category-card--kirchen,[class*="--kirche"]){--hi-cat-accent:#7651a5}
body:not(.home) :is(.hi-category-card--einkaufen,[class*="--einkauf"],[class*="--shopping"],.hi-service-topic--wochenmaerkte,[class*="--markt"]){--hi-cat-accent:#bf7629}
body:not(.home) :is(.hi-category-card--freizeit-vereine,[class*="--freizeit"],[class*="--verein"],[class*="--natur"],[class*="--ausflug"],[class*="--spiel"]){--hi-cat-accent:#3a8b4e}
body:not(.home) :is(.hi-category-card--gesellschaft-politik,[class*="--gesellschaft"],[class*="--politik"],.hi-category-card--oeffentliche-infrastruktur,[class*="--oeffentlich"],[class*="--behoerd"]){--hi-cat-accent:#60748a}
body:not(.home) :is(.hi-category-card--gesundheit,[class*="--gesund"],[class*="--arzt"],[class*="--apothek"],[class*="--notfall"],.hi-service-topic--gesundheit){--hi-cat-accent:#c34b56}
body:not(.home) :is(.hi-category-card--handwerk,[class*="--handwerk"]){--hi-cat-accent:#b56735}
body:not(.home) :is(.hi-category-card--mobilitaet-verkehr,.hi-service-topic--mobilitaet,[class*="--mobilitaet"],.hi-category-card--bus,.hi-category-card--bahn,.hi-category-card--fahrrad,.hi-category-card--sharing){--hi-cat-accent:#16868b}
body:not(.home) .hi-category-card--taxi{--hi-cat-accent:#356fca}
body:not(.home) .hi-category-card--tankstelle{--hi-cat-accent:#bf7629}
body:not(.home) .hi-category-card--e-ladepunkt{--hi-cat-accent:#31865b}
body:not(.home) :is(.hi-category-card--uebernachten,[class*="--uebernacht"],[class*="--hotel"]){--hi-cat-accent:#8a6754}
body:not(.home) :is(.hi-category-card--familie-bildung,.hi-service-topic--familie,[class*="--famil"],[class*="--kita"],[class*="--schule"]){--hi-cat-accent:#6861bb}
body:not(.home) :is([class*="--restaurant"],[class*="--gastro"],[class*="--essen"],[class*="--imbiss"]){--hi-cat-accent:#b96a2f}

/* Mobilitäts-Schnellauswahl als geschlossenes grafisches Modul. */
body:not(.home) .hi-topic-landing__section--mobility-quick{
  padding:22px!important;
  border:1px solid #dce9ea!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#f7fbfb 0%,#f2f8f8 100%)!important;
}
body:not(.home) .hi-topic-landing__section--mobility-quick .hi-topic-landing__section-head{
  margin-bottom:16px!important;
}
body:not(.home) .hi-topic-landing__section--mobility-quick .hi-place-type-grid{
  margin-top:0!important;
}

/* Informationskarten erhalten dieselbe visuelle Ruhe wie die Grafikvorlage. */
body:not(.home) .hi-card--info{
  border-color:#dce6e8!important;
  box-shadow:0 5px 18px rgba(18,49,72,.055)!important;
}
body:not(.home) .hi-card--info>.hi-place-card__body,
body:not(.home) .hi-card--info.hi-service-directory-card{
  position:relative!important;
  padding-top:21px!important;
}
body:not(.home) .hi-card--info>.hi-place-card__body::before,
body:not(.home) .hi-card--info.hi-service-directory-card::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  width:100%!important;
  height:4px!important;
  background:linear-gradient(90deg,#0b7a75 0%,#38a38f 100%)!important;
}
body:not(.home) .hi-card--info :is(.hi-place-card__meta,.hi-service-directory-card__meta){
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:#edf6f5!important;
  color:#196e68!important;
  letter-spacing:.025em!important;
}
body:not(.home) .hi-card--info :is(.hi-place-card__more,.hi-service-directory-card__more){
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  padding:6px 9px!important;
  border-radius:9px!important;
  background:#eef4ff!important;
  color:#285eae!important;
}

@media(max-width:640px){
  body:not(.home) .hi-topic-landing__section--mobility-quick{padding:16px!important;border-radius:16px!important}
  body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-service-topic-grid>.hi-service-topic,.hi-place-subcategory-grid>a){
    min-height:84px!important;
    grid-template-columns:46px minmax(0,1fr) 22px!important;
    padding:12px 13px!important;
  }
  body:not(.home) :is(.hi-category-card,.hi-place-type-grid>a,.hi-gastro-type-grid>a,.hi-service-topic-grid>.hi-service-topic,.hi-place-subcategory-grid>a)::before{
    width:40px!important;height:40px!important;background-size:22px 22px!important;
  }
}
