/*
 * Heidenheim.info – Ausflugsziele 0.1.219
 * 15er-Verzeichnis + CI-konforme Typauswahl direkt unter dem Hero.
 */

body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-destination-type-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:22px 0 32px!important;
}

body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 20px!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  gap:11px!important;
  min-height:76px!important;
  padding:11px 13px!important;
  border:1px solid #dbe5e8!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(18,49,72,.055)!important;
  color:#123148!important;
  text-decoration:none!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card::before,
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card::after{
  content:none!important;
  display:none!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__icon{
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:40px!important;
  margin:0!important;
  border-radius:50%!important;
  background:#eaf4f3!important;
  color:#0b7a75!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:nth-child(4n+2) .hi-destination-type-card__icon{background:#eaf7ef!important;color:#16844a!important}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:nth-child(4n+3) .hi-destination-type-card__icon{background:#eef1ff!important;color:#5d58c7!important}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:nth-child(4n) .hi-destination-type-card__icon{background:#fff3e6!important;color:#b9681d!important}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__icon svg{
  width:22px!important;
  height:22px!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__copy{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:inherit!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__copy strong{
  display:block!important;
  margin:0!important;
  color:#123148!important;
  font-size:.88rem!important;
  font-weight:850!important;
  line-height:1.16!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__copy small{
  display:block!important;
  margin:3px 0 0!important;
  color:#667780!important;
  font-size:.69rem!important;
  font-weight:650!important;
  line-height:1.15!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card__arrow{
  grid-column:3!important;
  grid-row:1!important;
  display:block!important;
  margin:0!important;
  color:#2563d9!important;
  font-size:18px!important;
  font-weight:850!important;
  line-height:1!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:hover,
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:focus-visible{
  transform:translateY(-2px)!important;
  border-color:#b8d3d1!important;
  box-shadow:0 10px 24px rgba(18,49,72,.10)!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card:focus-visible{
  outline:3px solid rgba(37,99,217,.20)!important;
  outline-offset:2px!important;
}

body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-directory-pagination{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  gap:14px!important;
  margin:20px 0 4px!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-directory-pagination a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:42px!important;
  width:max-content!important;
  padding:9px 14px!important;
  border:1px solid #cbdadc!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#0b6f6a!important;
  font-size:.82rem!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-shadow:0 3px 10px rgba(18,49,72,.04)!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-directory-pagination__next{justify-self:end!important}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-directory-pagination a:hover,
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-directory-pagination a:focus-visible{
  border-color:#0b7a75!important;
  background:#f1f8f7!important;
}

@media(max-width:1050px){
  body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-destination-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-destination-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-destination-type-card{min-height:72px!important;padding:10px 11px!important}
}
@media(max-width:500px){
  body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-destination-type-grid{grid-template-columns:1fr!important}
}

/* 0.1.220 – Portalinhalt wieder auf die feste CI-Achse begrenzen.
 * Der Hero bleibt bewusst full-bleed; Auswahl, Ergebnisse, Karte und Feedback
 * folgen darunter derselben 1320px-Achse wie die übrigen Verzeichnisse. */
body:not(.home) .hi-destination-portal[data-hi-ci="0219"]{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-place-portal__hero{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  box-sizing:border-box!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > :is(
  .hi-destination-type-grid,
  .hi-place-directory-section,
  .hi-gastro-map-section,
  .hi-feedback-cta
){
  width:min(var(--hi-subpage-axis,1320px),calc(100vw - 64px))!important;
  max-width:var(--hi-subpage-axis,1320px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-destination-type-grid{
  margin-top:22px!important;
  margin-bottom:34px!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-place-directory-section{
  margin-top:30px!important;
  margin-bottom:34px!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > .hi-gastro-map-section{
  margin-top:34px!important;
  margin-bottom:34px!important;
}

/* Ziele ohne gepflegtes Bild nicht künstlich auf die Höhe einer Bildkarte ziehen. */
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-card--discover:not(:has(.hi-place-card__image)){
  min-height:190px!important;
}
body:not(.home) .hi-destination-portal[data-hi-ci="0219"] .hi-card--discover:not(:has(.hi-place-card__image)) .hi-place-card__body{
  min-height:190px!important;
  padding:16px 17px!important;
}

@media(max-width:760px){
  body:not(.home) .hi-destination-portal[data-hi-ci="0219"] > :is(
    .hi-destination-type-grid,
    .hi-place-directory-section,
    .hi-gastro-map-section,
    .hi-feedback-cta
  ){
    width:calc(100vw - 28px)!important;
  }
}


/* 0.1.236 – destination maps keep their own legend visible. Gastronomy hides
 * its legend intentionally; destination pages must not inherit that rule. */
.hi-destination-map-section .hi-map-legend{
  display:flex!important;
}
.hi-destination-map-section .hi-map-overview__header{
  display:none!important;
}
