.pm-search-page{background:#fff;color:#171717;padding:58px 0 88px}.pm-search-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}.pm-search-head{max-width:780px;margin:0 0 32px}.pm-search-kicker{margin:0 0 8px!important;color:var(--pm-gold,#d4af37)!important;font-size:13px!important;font-weight:700!important;letter-spacing:.12em;text-transform:uppercase}.pm-search-head h1{color:#171717!important;font-size:clamp(36px,5vw,62px);line-height:1.02;margin:0 0 16px}.pm-search-head>p:last-child{font-size:18px;line-height:1.65;color:#666!important;margin:0}.pm-live-search{position:relative}.pm-live-search__form{position:relative}.pm-live-search__field-wrap{display:flex;background:#fff;border:1px solid #d8d4cc;border-radius:10px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.06);transition:border-color .2s,box-shadow .2s}.pm-live-search__field-wrap:focus-within{border-color:var(--pm-gold,#d4af37);box-shadow:0 10px 34px rgba(0,0,0,.09)}.pm-live-search__input{min-width:0;flex:1;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:17px 19px!important;font:inherit!important;font-size:17px!important;color:#171717!important}.pm-live-search__input::placeholder{color:#777!important}.pm-live-search__submit,.pm-search-more{border:0;background:var(--pm-gold,#d4af37);color:#111;font-weight:800;padding:0 25px;cursor:pointer;transition:filter .2s,transform .2s}.pm-live-search__submit:hover,.pm-search-more:hover{filter:brightness(1.07)}.pm-live-search__dropdown{position:absolute;z-index:1205;width:100%;top:calc(100% + 8px);left:0;background:#fff;border:1px solid #dedbd4;border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.16);overflow:hidden}.pm-live-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;padding:12px 14px;text-decoration:none!important;color:#171717!important;border-bottom:1px solid #eeeae3;transition:background .15s}.pm-live-item:last-child{border-bottom:0}.pm-live-item:hover,.pm-live-item.is-active{background:#f7f4ee}.pm-live-item__image{width:72px;height:54px;object-fit:cover;border-radius:5px;background:#eee}.pm-live-item__placeholder{width:72px;height:54px;border-radius:5px;background:#f0eee9}.pm-live-item__meta{display:flex;gap:9px;color:#9b793d;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pm-live-item__title{display:block;font-size:15px;font-weight:750;line-height:1.3;margin-top:3px}.pm-live-item__excerpt{display:block;font-size:13px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.pm-live-search__status{padding:16px 18px;color:#777;font-size:14px}.pm-live-search__all{display:block;padding:13px 18px;text-align:center;background:#171717;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:750}.pm-live-search mark,.pm-search-card mark{background:transparent;color:#8e6c21;font-weight:850}.pm-search-results{margin-top:44px}.pm-search-summary{font-size:16px;color:#555;padding-bottom:20px;border-bottom:1px solid #dedbd4}.pm-search-list{display:grid;gap:30px;margin-top:30px}.pm-search-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding:22px;border:1px solid #e5e1da;border-radius:10px;background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.035);transition:transform .2s,box-shadow .2s,border-color .2s}.pm-search-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,0,0,.07);border-color:#d4c8b2}.pm-search-card__image{display:block;min-height:145px}.pm-search-card__image img{width:100%;height:100%;max-height:170px;object-fit:cover;border-radius:7px}.pm-search-card__meta{display:flex;gap:12px;color:#8f6d31;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pm-search-card h2{color:#171717!important;font-size:24px;line-height:1.2;margin:7px 0 10px}.pm-search-card h2 a{color:#171717!important;text-decoration:none}.pm-search-card p{color:#666!important;line-height:1.6;margin:0 0 13px}.pm-search-card__more{color:#8f6d31!important;text-decoration:none!important;font-weight:750}.pm-search-more-wrap{text-align:center;margin-top:34px}.pm-search-more{border-radius:7px;padding:13px 25px}.pm-search-empty{margin-top:26px;padding:28px;border:1px solid #e5e1da;border-radius:10px;background:#f8f6f2;color:#666}.pm-search-again{margin-top:70px;padding:34px;background:#f4f1eb;border-radius:12px}.pm-search-again h2{color:#171717!important;margin:0 0 20px;font-size:28px}.pm-search-again .pm-live-search{max-width:760px}

/* Websiteweite Suche aus der Hauptnavigation. */
html.pm-search-is-open,html.pm-search-is-open body{overflow:hidden}.pm-search-overlay[hidden]{display:none!important}.pm-search-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:start center;padding:clamp(92px,14vh,150px) 24px 40px;opacity:0;transition:opacity .18s ease}.pm-search-overlay.is-open{opacity:1}.pm-search-overlay__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(5,5,5,.86);backdrop-filter:blur(10px);cursor:default}.pm-search-overlay__dialog{position:relative;z-index:1;width:min(900px,100%);padding:clamp(28px,4vw,48px);border:1px solid rgba(212,175,55,.28);border-radius:16px;background:#111;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.55)}.pm-search-overlay__dialog h2{margin:0 48px 24px 0!important;color:#fff!important;font-size:clamp(30px,4vw,48px);line-height:1.08}.pm-search-overlay__kicker{margin:0 0 8px!important;color:var(--pm-gold,#d4af37)!important;text-transform:uppercase;letter-spacing:.12em;font-size:12px!important;font-weight:800!important}.pm-search-overlay__hint{margin:18px 0 0!important;color:#aaa!important;font-size:13px!important}.pm-search-overlay__close{position:absolute;right:20px;top:16px;width:44px;height:44px;border:0;background:transparent;color:#fff;font-size:34px;line-height:1;cursor:pointer}.pm-search-overlay__close:hover,.pm-search-overlay__close:focus-visible{color:var(--pm-gold,#d4af37)}.pm-live-search--overlay .pm-live-search__dropdown{max-height:min(52vh,520px);overflow:auto}.pm-live-search--overlay .pm-live-search__field-wrap{box-shadow:none}

@media(max-width:720px){.pm-search-shell{width:min(100% - 28px,1180px)}.pm-search-page{padding:42px 0 55px}.pm-search-card{grid-template-columns:1fr;gap:16px;padding:16px}.pm-search-card__image{min-height:0}.pm-search-card__image img{height:auto;aspect-ratio:16/9;max-height:none}.pm-live-search__submit{padding:0 16px}.pm-live-item{grid-template-columns:58px minmax(0,1fr)}.pm-live-item__image,.pm-live-item__placeholder{width:58px;height:44px}.pm-live-item__excerpt{display:none}.pm-search-again{margin-top:48px;padding:24px 18px}.pm-search-overlay{padding:88px 14px 20px}.pm-search-overlay__dialog{padding:28px 18px 24px;border-radius:12px}.pm-search-overlay__dialog h2{margin-right:42px!important}.pm-search-overlay__close{right:10px;top:8px}}

/* V3.45.87: Suchseite CI-fest und bestehende WordPress-Suchfelder live-faehig. */
.pm-search-breadcrumb-band{background:#100d0a;color:#fff;padding:calc(var(--pm-breadcrumb-block,125px) + 2px) 0 24px}
.pm-search-breadcrumb{display:flex;align-items:center;gap:10px;font-size:.84rem;color:#aaa}
.pm-search-breadcrumb a{color:#aaa!important;text-decoration:none!important}.pm-search-breadcrumb a:hover{color:var(--pm-gold,#d4af37)!important}.pm-search-breadcrumb [aria-current="page"]{color:#fff;font-weight:700}
.pm-search-template .pm-search-page{margin:0}
.pm-live-search--native{position:relative!important}
.pm-live-search--native .pm-live-search__dropdown{top:calc(100% + 8px);z-index:1100}
@media(max-width:700px){.pm-search-breadcrumb-band{padding-top:calc(var(--pm-breadcrumb-block,109px) + 2px)}}

/* V3.45.88: Header-Suche und Link-Ziele gegen Ueberlagerungen absichern. */
.pm-nav .pm-nav-search{position:relative!important;z-index:3!important;flex:0 0 30px!important;width:30px!important;min-width:30px!important;height:38px!important;overflow:hidden!important;pointer-events:auto!important}
.pm-nav .pm-nav-search svg{flex:0 0 20px!important;pointer-events:none!important}
.pm-nav .pm-nav-search-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.pm-live-search__dropdown,.pm-live-search__dropdown a,.pm-live-item,.pm-live-search__all{pointer-events:auto!important}
.pm-live-item,.pm-live-search__all{position:relative!important;z-index:2!important}
.pm-live-item>*{pointer-events:none}

/* Ab hier wechselt der Header kontrolliert in die mobile Navigation. Die Suche
   darf den Projekt-CTA in keinem Zwischenbereich ueberlagern. */
@media(max-width:1180px){
  .pm-site-header .pm-header-inner{grid-template-columns:1fr auto!important}
  .pm-site-header .pm-menu-toggle{display:inline-flex!important}
  .pm-site-header .pm-header-cta{display:none!important}
  .pm-site-header .pm-nav{position:absolute!important;top:84px!important;left:0!important;right:0!important;display:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;padding:20px 24px!important;background:#17130f!important;border-top:1px solid rgba(255,255,255,.08)!important;box-shadow:0 18px 40px rgba(0,0,0,.45)!important;z-index:1002!important}
  .pm-site-header .pm-nav.is-open{display:flex!important}
  .pm-site-header .pm-nav>a{display:flex!important;align-items:center!important;min-height:44px!important;width:100%!important}
  .pm-site-header .pm-nav .pm-nav-search{width:100%!important;min-width:0!important;height:44px!important;flex:0 0 auto!important;gap:9px!important;overflow:visible!important;justify-content:flex-start!important}
  .pm-site-header .pm-nav .pm-nav-search-text{position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important}
}


/* V3.45.89: Menuesuche funktional und optisch in die Navigationsachse integrieren. */
.pm-site-header .pm-nav{align-items:center!important}
.pm-site-header .pm-nav .pm-nav-search{
  position:relative!important;
  top:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  box-sizing:border-box!important;
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  flex:0 0 44px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#fff!important;
  line-height:1!important;
  text-decoration:none!important;
  cursor:pointer!important;
  overflow:visible!important;
  z-index:5!important;
  pointer-events:auto!important;
  -webkit-tap-highlight-color:transparent;
}
.pm-site-header .pm-nav .pm-nav-search svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
  margin:0!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  pointer-events:none!important;
}
.pm-site-header .pm-nav .pm-nav-search:hover,
.pm-site-header .pm-nav .pm-nav-search:focus-visible{color:var(--pm-gold,#d4af37)!important}
.pm-site-header .pm-nav .pm-nav-search:focus-visible{outline:2px solid var(--pm-gold,#d4af37)!important;outline-offset:2px!important}
.pm-site-header .pm-nav .pm-nav-search-text{pointer-events:none!important}

/* Live-Treffer bleiben echte Links: Text, Bild und der Link 'Alle Ergebnisse' sind voll anklickbar. */
.pm-live-search__dropdown{isolation:isolate!important}
.pm-live-search__dropdown a,
.pm-live-search__dropdown a *{pointer-events:auto!important}
.pm-live-item,.pm-live-search__all{cursor:pointer!important}
.pm-live-item>*{pointer-events:auto!important}

@media(max-width:1180px){
  .pm-site-header .pm-nav{align-items:stretch!important}
  .pm-site-header .pm-nav .pm-nav-search{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    flex:0 0 44px!important;
    justify-content:flex-start!important;
    gap:9px!important;
    padding:0!important;
    border-radius:0!important;
  }
  .pm-site-header .pm-nav .pm-nav-search-text{
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:normal!important;
    border:0!important;
    pointer-events:none!important;
  }
}

/* V3.45.91: Suchoverlay als geschlossene Einheit; dezente, CI-konforme Scrollbar. */
.pm-search-overlay__dialog{
  max-height:min(85vh,760px);
  overflow:hidden;
}
.pm-live-search--overlay .pm-live-search__dropdown{
  max-height:calc(min(85vh,760px) - 285px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(212,175,55,.72) rgba(255,255,255,.06);
}
.pm-live-search--overlay .pm-live-search__dropdown::-webkit-scrollbar{width:8px}
.pm-live-search--overlay .pm-live-search__dropdown::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:8px}
.pm-live-search--overlay .pm-live-search__dropdown::-webkit-scrollbar-thumb{background:rgba(212,175,55,.72);border-radius:8px}
.pm-live-item.is-active{outline:2px solid var(--pm-gold,#d4af37);outline-offset:-2px;background:#fffaf0}
@media(max-width:720px){.pm-live-search--overlay .pm-live-search__dropdown{max-height:calc(85vh - 250px)}}


/* V3.45.94: Suchdialog auf Desktop verbindlich im Seitenverhaeltnis 16:9. */
@media(min-width:721px){
  .pm-search-overlay{
    place-items:center!important;
    padding:32px!important;
  }
  .pm-search-overlay__dialog{
    box-sizing:border-box!important;
    width:min(1600px,calc(100vw - 64px),calc((100vh - 64px) * 16 / 9))!important;
    aspect-ratio:16 / 9!important;
    max-height:calc(100vh - 64px)!important;
    padding:clamp(32px,3.2vw,58px)!important;
    overflow:hidden!important;
  }
  .pm-live-search--overlay .pm-live-search__dropdown{
    max-height:min(390px,calc(100vh - 390px))!important;
    overflow-y:auto!important;
  }
}

/* V3.45.95: Suchvorschau-Bilder verbindlich im 16:9-Format. */
.pm-live-item{grid-template-columns:96px minmax(0,1fr)}
.pm-live-item__image,.pm-live-item__placeholder{width:96px;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:5px;display:block}
@media(max-width:720px){.pm-live-item{grid-template-columns:80px minmax(0,1fr)}.pm-live-item__image,.pm-live-item__placeholder{width:80px;height:auto;aspect-ratio:16/9}}


/* V3.45.96: Mobile Suchoverlay nutzt den tatsaechlich sichtbaren dynamischen Viewport.
   Flexbox verteilt den verbleibenden Platz an die scrollbare Trefferliste;
   dadurch bleiben bei eingeblendeter iOS-Tastatur alle Treffer erreichbar. */
@media(max-width:720px){
  .pm-search-overlay{
    box-sizing:border-box!important;
    height:100dvh!important;
    min-height:0!important;
    padding:clamp(14px,5dvh,48px) 14px 14px!important;
    place-items:stretch center!important;
    overflow:hidden!important;
  }
  .pm-search-overlay__dialog{
    box-sizing:border-box!important;
    width:100%!important;
    max-height:calc(100dvh - clamp(28px,10dvh,96px))!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .pm-live-search--overlay{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    flex:1 1 auto!important;
  }
  .pm-live-search--overlay .pm-live-search__dropdown{
    position:static!important;
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
  }
}


/* V3.45.97: iOS-Live-Suche – Flex-Kette bis zum Formular schliessen.
   In V3.45.96 war nur der aeussere .pm-live-search-Container flexibel;
   das darin liegende Formular blieb jedoch block-level. Dadurch wuchs die
   Trefferliste unterhalb des sichtbaren Dialogs weiter und wurde vom
   overflow:hidden des Dialogs abgeschnitten. */
@media(max-width:720px){
  .pm-search-overlay{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    height:100dvh!important;
    padding:14px!important;
  }
  .pm-search-overlay__dialog{
    width:100%!important;
    height:calc(100dvh - 28px)!important;
    max-height:calc(100dvh - 28px)!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .pm-live-search--overlay{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .pm-live-search--overlay .pm-live-search__form{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .pm-live-search--overlay .pm-live-search__field-wrap{
    flex:0 0 auto!important;
  }
  .pm-live-search--overlay .pm-live-search__dropdown{
    position:static!important;
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }
  .pm-search-overlay__hint{
    flex:0 0 auto!important;
  }
}


/* V3.45.99: Suchoverlay als halbtransparentes Glass-Panel.
   Die Seite bleibt visuell erkennbar; das Logo stammt dynamisch aus
   Promedia CMS -> Branding -> Header-Logo und wird nicht im Plugin dupliziert. */
.pm-search-overlay__backdrop{
  background:rgba(5,5,5,.48)!important;
  -webkit-backdrop-filter:blur(7px) saturate(.82)!important;
  backdrop-filter:blur(7px) saturate(.82)!important;
}
.pm-search-overlay__dialog{
  background:rgba(17,17,17,.78)!important;
  -webkit-backdrop-filter:blur(16px) saturate(.92)!important;
  backdrop-filter:blur(16px) saturate(.92)!important;
  border-color:rgba(212,175,55,.42)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.38)!important;
}
.pm-search-overlay__brand{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  width:min(250px,35%);
  height:64px;
  margin:0 0 clamp(24px,3vh,38px);
}
.pm-search-overlay__brand img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:64px;
  object-fit:contain;
  object-position:left center;
}
@media(max-width:720px){
  .pm-search-overlay__brand{
    width:min(180px,55%);
    height:46px;
    margin-bottom:18px;
  }
  .pm-search-overlay__brand img{max-height:46px}
}
