/* restore extras — generated by restore_04_polish.py */

/* Consent overlays: the restore ships no analytics or third-party tracking at all, so there
   is nothing to consent to. Their scripts are gone too, meaning the banner can never be
   dismissed and would cover the top of every page. Removing the markup is unreliable when a
   JS bundle re-renders it, so it is hidden here as well. */
.cookies-banner, .cookies-banner-content, .cookie-banner, .cookie-consent, .cookie-notice,
.cc-window, .cc-banner, #cookie-law-info-bar, #cookieChoiceInfo, .gdpr-banner,
#tarteaucitronRoot, .consent-overlay, .cookiebar {
  display: none !important;
}
body.cookie-banner-open, body.has-cookie-banner, html.cookies-open {
  overflow: auto !important;
}

/* Dead account/login modals left by the CMS (no backend on a static host) */
.modal-login, #loginModal, .login-modal { display: none !important; }

/* Carousel slots the platform's JS bundles would have filled at runtime: without a working
   bundle they stay as <img> elements with no src and render as broken-image icons. Nothing is
   lost by hiding them — they never had content in the restore. */
img:not([src]), img[src=""], img[src="#"] { display: none !important; }

/* The client's backlink block must read as the page's own copy. Where a theme only colours
   links inside specific containers, the anchor would otherwise look like plain text — inherit
   the surrounding colour but keep an underline so it is still visibly a link. */
.content-wraparea a { color: inherit; text-decoration: underline; }

/* A few px of horizontal overflow on phones (an absolutely-positioned login list, a wide footer
   logo) makes the whole page pannable sideways, which reads as broken.
   NB: use `clip`, never `hidden`, and never on html together with height:100%. `overflow:hidden`
   turns the element into a scroll container: on themes that set html{height:100%} it stops body's
   overflow propagating to the viewport, the window stops scrolling entirely and every
   scroll-driven behaviour (sticky nav, back-to-top, in-page anchors, PageDown/End) dies.
   `clip` suppresses the sideways pan without creating a scroll container. */
body { overflow-x: clip; }
/* ---- end generated block; anything below is preserved across re-runs ---- */

/* --- friedens-apotheke.net -------------------------------------------------- */
/* Beratungsclips: the external video service is gone; the topic list replaces it. */
.clip-topics { list-style: none; margin: 0 0 1em; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: .25em .75em; }
.clip-topics li { padding: .35em 0 .35em 1.4em; position: relative; }
.clip-topics li:before { content: "\25B8"; position: absolute; left: .3em; opacity: .65; }

/* /news/ lists every archived article; the "Mehr News laden" button reveals them in batches
   instead of AJAX-ing a CMS route that no longer exists. */
.news-more-hidden { display: none !important; }

/* Static search results */
#fr-search-results mark { background: rgba(0,0,0,.08); padding: 0 .1em; }
#fr-search-results .news-item--list { border-bottom: 1px solid rgba(0,0,0,.08); padding-bottom: .8em; }

/* The Beipackzettel search field, styled by the old theme's .search-field rules */
#leaflet-search-form { display: flex; align-items: stretch; max-width: 34em; }
#leaflet-search-form .search-field__input { flex: 1 1 auto; margin: 0; }

/* The "Sonderangebote"/premium pre-order slots were filled by the CMS route
   /premium-vorbestellung, which 404s on a static host (its AJAX is removed). The theme marks
   them .hide, but Foundation's show-for-small-only wins on phones and left an empty 30px white
   box under the hero on every mobile page. Nothing can ever fill them again. */
.premium-preorder { display: none !important; }

/* --- friedens-apotheke.net: static map ------------------------------------------- */
/* The theme's lazy Google-Maps loader and its consent gate are gone: the map is a picture
   fetched at build time, so the page makes no third-party request and needs no consent. */
.static-map { width: 96%; margin: 0 auto; }
.static-map img { display: block; width: 100%; height: auto; }
.static-map__credit { font-size: .75em; opacity: .7; margin: .35em 0 0; }

/* --- friedens-apotheke.net: de-linked navigation --------------------------------- */
/* A control that pointed at the page it sits on, or at a page apotheken.de never let the
   crawler see, is not a link any more: it keeps its label and loses the click affordance.
   A top-level menu label still opens its panel on hover, so it stays legible; entries inside
   a panel or a side-nav are dimmed, so nobody aims at them. */
.nav-inert { cursor: default; opacity: .9; }
.nav__item .nav-inert,
.nav .nav-inert { display: block; padding: .35em 0; }
.dropdown .nav-inert,
.nav--vertical .nav-inert { opacity: .6; }
.nav-inert.h5 { opacity: .8; font-weight: 700; }
.pagination .is-disabled { display: block; padding: .0625rem .625rem; color: rgba(0,0,0,.35);
  cursor: default; }
.pagination--letters .is-disabled { padding: .0625rem .4rem; }
/* the small-screen letter row replaces a <select> the theme drove with JS that is gone;
   Foundation hides .pagination li below the medium breakpoint, so put it back */
.hide-for-medium-up .pagination--letters { margin: 0; }
.hide-for-medium-up .pagination--letters li { display: inline-block !important; float: none;
  margin: 0 .15em .25em 0; }
.hide-for-medium-up .pagination--letters a,
.hide-for-medium-up .pagination--letters .is-disabled { display: inline-block;
  padding: .15em .45em; }
/* --- end de-linked navigation ---------------------------------------------------- */
