/*
 * Heidenheim.info – Unterseiten-CI 0.1.178
 * Globaler Portal-Hero-Pass auf Basis des abgenommenen Branchen-Headers.
 * Nur Darstellung/Markup-Layout; keine Daten- oder Importlogik.
 */

:root{
  --hi178-axis:1320px;
  --hi178-gutter:24px;
  --hi178-navy:#123148;
  --hi178-green:#18823a;
}

/*
 * Portal-Inhalte bleiben auf einer festen 1320-px-Achse. Das ist bewusst
 * getrennt vom Full-Bleed-Hero, damit später links/rechts Werberails möglich
 * bleiben, ohne das eigentliche Inhaltsraster erneut umzubauen.
 */
/*
 * 0.1.178: WordPress constrains the shortcode block itself to the normal
 * reading column. Make the post-content/shortcode canvas full viewport first;
 * only then center the 1320px portal axis. This prevents every portal from
 * inheriting the left edge of the 760px Gutenberg content column.
 */
body.hi-ci-portal-page:not(.home) .hi-page-shell{
  width:100%!important;
  max-width:none!important;
}
body.hi-ci-portal-page:not(.home) .hi-page-shell>.wp-block-post-content,
body.hi-ci-portal-page:not(.home) .wp-block-post-content{
  position:relative!important;
  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.hi-ci-portal-page:not(.home) .wp-block-post-content>.wp-block-shortcode{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
body.hi-ci-portal-page:not(.home) .wp-block-post-content>p{
  width:min(var(--hi178-axis),calc(100vw - 48px))!important;
  max-width:var(--hi178-axis)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.hi-ci-portal-page:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"],
  .hi-service-portal[data-hi-ci="0178"],
  .hi-place-portal[data-hi-ci="0178"],
  .hi-topic-landing[data-hi-ci="0178"],
  .hi-event-directory[data-hi-ci="0178"],
  .hi-daily-menu-portal[data-hi-ci="0178"]
){
  position:relative!important;
  left:auto!important;
  transform:none!important;
  width:min(var(--hi178-axis),calc(100vw - 48px))!important;
  max-width:var(--hi178-axis)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Shared Full-Bleed-Hero. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
  .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
  .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
){
  position:relative!important;
  left:auto!important;
  transform:none!important;
  display:flex!important;
  width:100vw!important;
  max-width:none!important;
  min-height:390px!important;
  margin:0 0 30px calc(50% - 50vw)!important;
  padding:54px max(24px,calc((100vw - var(--hi178-axis))/2)) 50px!important;
  box-sizing:border-box!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  text-align:center!important;
  isolation:isolate!important;
  background:
    linear-gradient(180deg,rgba(4,25,38,.16) 0%,rgba(4,25,38,.06) 46%,rgba(4,25,38,.33) 100%),
    url('../images/home/hero-haertsfeldsee.webp') center 52%/cover no-repeat!important;
}

/* Bereichsspezifische Motive. */
body:not(.home) .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero{
  background-image:
    linear-gradient(180deg,rgba(4,25,38,.18),rgba(4,25,38,.08) 46%,rgba(4,25,38,.36)),
    url('../images/home/hero-schloss-hellenstein-nebel.webp')!important;
  background-position:center 56%!important;
  background-size:cover!important;
}
body:not(.home) .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
body:not(.home) .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
body:not(.home) .hi-place-portal[data-hi-ci="0178"]:is(.hi-doctor-portal,.hi-driving-school-portal)>.hi-place-portal__hero{
  background-image:
    linear-gradient(180deg,rgba(4,25,38,.18),rgba(4,25,38,.08) 46%,rgba(4,25,38,.36)),
    url('../images/home/hero-kuepfendorf.webp')!important;
  background-position:center 50%!important;
  background-size:cover!important;
}
body:not(.home) .hi-place-portal[data-hi-ci="0178"].hi-destination-portal>.hi-place-portal__hero,
body:not(.home) .hi-place-portal[data-hi-ci="0178"].hi-martial-arts-portal>.hi-place-portal__hero{
  background-image:
    linear-gradient(180deg,rgba(4,25,38,.17),rgba(4,25,38,.07) 46%,rgba(4,25,38,.35)),
    url('../images/home/hero-burg-katzenstein.webp')!important;
  background-position:center 48%!important;
  background-size:cover!important;
}

/* Branding im Hero – wie auf dem abgenommenen Branchen-Kopf. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
  .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
  .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
)::before{
  content:"HEIDENHEIM.INFO"!important;
  display:block!important;
  position:relative!important;
  z-index:3!important;
  margin:0 0 10px!important;
  color:rgba(255,255,255,.89)!important;
  font-size:.7rem!important;
  font-weight:900!important;
  letter-spacing:.18em!important;
  line-height:1!important;
}
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
  .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
  .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
)::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(3,24,34,.18) 100%)!important;
}

/* Alte Eyebrows verschwinden im Hero; das gemeinsame Branding ersetzt sie. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
  .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
  .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
) :is(.hi-gastro-portal__eyebrow,.hi-service-portal__eyebrow,.hi-topic-landing__eyebrow){
  display:none!important;
}

/* Event- und Tagesessen-Innenwrapper neutralisieren alte Kartenstile. */
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-portal-hero-inner,
body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"] .hi-portal-hero-inner{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  width:100%!important;
  max-width:var(--hi178-axis)!important;
  margin:0 auto!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-directory__head{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#fff!important;
  text-align:center!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-directory__head::before,
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-directory__head::after{display:none!important}

/* Einheitliche Headline-/Intro-Proportionen. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
  .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
  .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
) h1{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  color:#fff!important;
  font-size:clamp(3rem,4.6vw,4.9rem)!important;
  font-weight:850!important;
  line-height:.98!important;
  letter-spacing:-.047em!important;
  text-align:center!important;
  text-shadow:0 3px 22px rgba(0,0,0,.28)!important;
}
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero .hi-gastro-portal__intro,
  .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero .hi-service-portal__intro,
  .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero .hi-place-portal__intro,
  .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero .hi-topic-landing__intro,
  .hi-event-directory[data-hi-ci="0178"] .hi-event-directory__head>p,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-portal__intro
){
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:940px!important;
  margin:.8rem auto 0!important;
  color:rgba(255,255,255,.95)!important;
  font-size:clamp(.98rem,1.25vw,1.1rem)!important;
  line-height:1.5!important;
  text-align:center!important;
  text-shadow:0 2px 15px rgba(0,0,0,.20)!important;
}

/* Die funktionale Suche liegt direkt im Bild. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
  .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
  .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
  .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
){
  position:relative!important;
  z-index:3!important;
  display:grid!important;
  gap:8px!important;
  width:min(1120px,100%)!important;
  max-width:none!important;
  min-height:62px!important;
  margin:24px auto 0!important;
  padding:7px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 16px 38px rgba(7,32,49,.26)!important;
  backdrop-filter:blur(12px)!important;
}
body:not(.home) .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search{
  grid-template-columns:minmax(0,1.45fr) minmax(170px,.72fr) minmax(170px,.72fr) auto 124px!important;
  align-items:center!important;
}
body:not(.home) .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
body:not(.home) .hi-place-portal[data-hi-ci="0178"].hi-destination-portal .hi-place-search,
body:not(.home) .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search{
  grid-template-columns:minmax(0,1fr) minmax(220px,280px) 124px!important;
  align-items:center!important;
}
body:not(.home) .hi-place-portal[data-hi-ci="0178"] .hi-doctor-search,
body:not(.home) .hi-place-portal[data-hi-ci="0178"] .hi-martial-arts-search{
  grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(150px,.62fr)) 124px!important;
  align-items:center!important;
}
body:not(.home) .hi-place-portal[data-hi-ci="0178"] .hi-driving-school-search{
  grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(180px,.72fr)) 124px!important;
  align-items:center!important;
}
body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter{
  grid-template-columns:minmax(0,1.5fr) minmax(180px,.72fr) minmax(180px,.72fr) 124px!important;
  align-items:end!important;
}
body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter label>span{display:none!important}

body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
  .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
  .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
  .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
) :is(input,select,button){
  min-height:48px!important;
  height:48px!important;
  margin:0!important;
  box-sizing:border-box!important;
  border-radius:11px!important;
}
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
  .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
  .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
  .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
) :is(input,select){
  width:100%!important;
  border:1px solid #d2dde0!important;
  background:#fff!important;
  color:#243d4d!important;
}
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
  .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
  .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
  .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
) button{
  border:0!important;
  background:var(--hi178-green)!important;
  color:#fff!important;
  font-weight:850!important;
  box-shadow:0 4px 12px rgba(24,130,58,.2)!important;
}
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
  .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
  .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
  .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
  .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
) button:hover{background:#126b30!important}

/* Gastro: „Jetzt geöffnet“ als kompakter Bestandteil der Suchleiste. */
body:not(.home) .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search__open{
  display:flex!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 12px!important;
  align-items:center!important;
  gap:7px!important;
  border:1px solid #d2dde0!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#243d4d!important;
  white-space:nowrap!important;
}
body:not(.home) .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search__open input{width:auto!important;height:auto!important;min-height:0!important}

/* Veranstaltungen: kompakte CI-Zeitraumnavigation + Suche im Hero. */
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav{
  position:relative!important;
  z-index:3!important;
  display:flex!important;
  width:min(1120px,100%)!important;
  margin:24px auto 0!important;
  padding:0!important;
  box-sizing:border-box!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav__item{
  display:inline-flex!important;
  min-height:40px!important;
  padding:0 15px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:.79rem!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav__item:hover,
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav__item:focus-visible{
  border-color:#fff!important;
  background:rgba(255,255,255,.22)!important;
  color:#fff!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav__item.is-active{
  border-color:#fff!important;
  background:#fff!important;
  color:var(--hi178-navy)!important;
  box-shadow:0 5px 15px rgba(7,32,49,.18)!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search{
  display:grid!important;
  grid-template-columns:minmax(190px,.85fr) minmax(220px,1fr) 98px!important;
  flex:1 1 520px!important;
  min-width:min(100%,420px)!important;
  min-height:40px!important;
  margin-left:auto!important;
  padding:0!important;
  gap:7px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search :is(select,input,button){height:40px!important;min-height:40px!important;margin:0!important;border-radius:999px!important;box-sizing:border-box!important}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search :is(select,input){border:1px solid rgba(255,255,255,.78)!important;background:#fff!important;color:#243d4d!important;padding-inline:14px!important}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search button{border:1px solid #fff!important;background:var(--hi178-green)!important;color:#fff!important;font-weight:850!important;padding-inline:16px!important}
body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search button:hover{background:#126b30!important}
@media(max-width:900px){
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search{flex-basis:100%!important;width:100%!important;margin-left:0!important}
}
@media(max-width:620px){
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav__item{flex:1 1 calc(50% - 8px)!important}
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search{grid-template-columns:1fr!important}
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search :is(select,input,button){width:100%!important}
}

/* Die Zeitraumauswahl der Tagesessen bleibt als eigener Navigationsstreifen unter dem Hero. */
body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-days{
  width:100%!important;
  margin:22px 0 26px!important;
}

/* Portal-Hubs mit Karten-/Kachelrastern: volle 1320-px-Achse. */
body:not(.home) :is(
  .hi-gastro-portal[data-hi-ci="0178"],
  .hi-service-portal[data-hi-ci="0178"],
  .hi-place-portal[data-hi-ci="0178"],
  .hi-topic-landing[data-hi-ci="0178"],
  .hi-event-directory[data-hi-ci="0178"],
  .hi-daily-menu-portal[data-hi-ci="0178"]
) :is(.hi-place-type-grid,.hi-gastro-type-grid,.hi-service-topic-grid){
  width:100%!important;
  max-width:none!important;
}

/* Tablet. */
@media (max-width:1179px){
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"],.hi-service-portal[data-hi-ci="0178"],
    .hi-place-portal[data-hi-ci="0178"],.hi-topic-landing[data-hi-ci="0178"],
    .hi-event-directory[data-hi-ci="0178"],.hi-daily-menu-portal[data-hi-ci="0178"]
  ){
    width:calc(100vw - 36px)!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw + 18px)!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
    .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
    .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
    .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
    .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
    .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
  ){
    min-height:360px!important;
    padding:42px 18px!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
  ){
    grid-template-columns:1fr 1fr!important;
    width:min(900px,100%)!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
  )>input:first-of-type{grid-column:1/-1!important}
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
  )>button{grid-column:1/-1!important}
  body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter>label:first-of-type{grid-column:1/-1!important}
}

/* Mobil. */
@media (max-width:639px){
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"],.hi-service-portal[data-hi-ci="0178"],
    .hi-place-portal[data-hi-ci="0178"],.hi-topic-landing[data-hi-ci="0178"],
    .hi-event-directory[data-hi-ci="0178"],.hi-daily-menu-portal[data-hi-ci="0178"]
  ){
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw + 12px)!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
    .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
    .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
    .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
    .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
    .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
  ){
    min-height:430px!important;
    margin-bottom:18px!important;
    padding:34px 14px!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"]>.hi-gastro-portal__hero,
    .hi-service-portal[data-hi-ci="0178"]>.hi-service-portal__hero,
    .hi-place-portal[data-hi-ci="0178"]>.hi-place-portal__hero,
    .hi-topic-landing[data-hi-ci="0178"]>.hi-topic-landing__hero,
    .hi-event-directory[data-hi-ci="0178"]>.hi-event-directory__hero,
    .hi-daily-menu-portal[data-hi-ci="0178"]>.hi-daily-menu-portal__hero
  ) h1{
    max-width:none!important;
    font-size:clamp(2.4rem,12vw,3.3rem)!important;
    text-align:left!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-portal__intro,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-portal__intro,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-portal__intro,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-landing__intro,
    .hi-event-directory[data-hi-ci="0178"] .hi-event-directory__head>p,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-portal__intro
  ){
    margin-left:0!important;
    text-align:left!important;
  }
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-portal-hero-inner,
  body:not(.home) .hi-daily-menu-portal[data-hi-ci="0178"] .hi-portal-hero-inner{align-items:flex-start!important;text-align:left!important}
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
  ){
    grid-template-columns:1fr!important;
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body:not(.home) :is(
    .hi-gastro-portal[data-hi-ci="0178"] .hi-gastro-search,
    .hi-service-portal[data-hi-ci="0178"] .hi-service-search,
    .hi-place-portal[data-hi-ci="0178"] .hi-place-search,
    .hi-topic-landing[data-hi-ci="0178"] .hi-topic-search,
    .hi-daily-menu-portal[data-hi-ci="0178"] .hi-daily-menu-filter
  )>*{grid-column:auto!important;width:100%!important}
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-nav{justify-content:flex-start!important;width:100%!important}
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search{grid-template-columns:1fr!important;width:100%!important}
  body:not(.home) .hi-event-directory[data-hi-ci="0178"] .hi-event-range-search button{width:100%!important}
}

/* Topic-Hubs: Familienseite hat nur Suchfeld + Button; Parken zusätzlich Kommune. */
body:not(.home) .hi-topic-landing[data-hi-ci="0178"].hi-topic-landing--family .hi-topic-search{
  grid-template-columns:minmax(0,1fr) 124px!important;
}
body:not(.home) .hi-topic-landing[data-hi-ci="0178"].hi-topic-landing--parking .hi-topic-search{
  grid-template-columns:minmax(0,1fr) minmax(220px,280px) 124px!important;
}
@media (max-width:1179px){
  body:not(.home) .hi-topic-landing[data-hi-ci="0178"]:is(.hi-topic-landing--family,.hi-topic-landing--parking) .hi-topic-search{grid-template-columns:1fr 1fr!important}
}
@media (max-width:639px){
  body:not(.home) .hi-topic-landing[data-hi-ci="0178"]:is(.hi-topic-landing--family,.hi-topic-landing--parking) .hi-topic-search{grid-template-columns:1fr!important}
}

/* Keep the global feedback callout on the same portal axis. */
body.hi-ci-portal-page:not(.home) .hi-feedback-cta{
  width:min(var(--hi178-axis),calc(100vw - 48px))!important;
  max-width:var(--hi178-axis)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/*
 * 0.1.178: Archive/taxonomy templates were still using theme.json's
 * contentSize 760px (and wideSize 1200px). The full-bleed hero could escape
 * that box, but the result lists remained trapped in the narrow reading
 * column. Give every portal archive/taxonomy a real 1320px canvas and remove
 * the core/shortcode max-width on its direct portal block.
 */
body:not(.home) :is(
  main.hi-place-main,
  main.hi-gastro-main,
  main.hi-service-main,
  main.hi-destination-main,
  main.hi-event-archive-main
){
  width:min(var(--hi178-axis),calc(100vw - 48px))!important;
  max-width:var(--hi178-axis)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body:not(.home) :is(
  main.hi-place-main,
  main.hi-gastro-main,
  main.hi-service-main,
  main.hi-destination-main,
  main.hi-event-archive-main
) > :is(.wp-block-shortcode,.wp-block-group,.wp-block-columns){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
/* Direct portal roots: never inherit Gutenberg's 760px content width. */
body:not(.home) :is(
  .hi-place-main .hi-place-portal[data-hi-ci="0178"],
  .hi-gastro-main .hi-gastro-portal[data-hi-ci="0178"],
  .hi-service-main .hi-service-portal[data-hi-ci="0178"],
  .hi-destination-main .hi-place-portal[data-hi-ci="0178"],
  .hi-event-archive-main .hi-event-directory[data-hi-ci="0178"]
){
  width:100%!important;
  max-width:var(--hi178-axis)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  left:auto!important;
  transform:none!important;
}
body:not(.home) .hi-place-portal[data-hi-ci="0178"] > .hi-place-directory-section,
body:not(.home) .hi-place-portal[data-hi-ci="0178"] > .hi-gastro-map-section,
body:not(.home) .hi-place-portal[data-hi-ci="0178"] > .hi-place-type-grid,
body:not(.home) .hi-place-portal[data-hi-ci="0178"] > .hi-feedback-cta{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
body:not(.home) .hi-place-portal[data-hi-ci="0178"] .hi-place-directory{
  width:100%!important;
  max-width:none!important;
}
@media (max-width:1179px){
  body:not(.home) :is(main.hi-place-main,main.hi-gastro-main,main.hi-service-main,main.hi-destination-main,main.hi-event-archive-main){
    width:calc(100vw - 36px)!important;
  }
}
@media (max-width:639px){
  body:not(.home) :is(main.hi-place-main,main.hi-gastro-main,main.hi-service-main,main.hi-destination-main,main.hi-event-archive-main){
    width:calc(100vw - 24px)!important;
  }
}
