/* Top banner: custom block "Bandeau haut de page" (class top-banner-block). */
body:has(.top-banner-block) {
  --tb-h: 48px;
  padding-top: calc(80px + var(--tb-h));
}
@media (min-width: 992px) {
  body:has(.top-banner-block) {
    --tb-h: 36px;
    padding-top: calc(100px + var(--tb-h));
  }
}
.equistro-breadcrumb:has(.top-banner-block) {
  padding: 0;
  margin: 0;
}
.top-banner-block {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  height: var(--tb-h);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  overflow: visible;
  background: #000;
  color: #C9A55A;
  font-size: 12px;
  line-height: 1.3;
  text-align: center;
}
@media (min-width: 992px) {
  .top-banner-block { font-size: 14px; }
}
/* Clip long text inside the banner only, so the admin edit pencil and its menu stay visible. */
.top-banner-block .block-content { max-height: 100%; overflow: hidden; }
.top-banner-block p { margin: 0; }
.top-banner-block strong { font-weight: 700; }

/* Banner text link only (not the admin pencil menu links). */
.top-banner-block .field--name-body a { color: inherit; text-decoration: none; }
.top-banner-block .field--name-body a:hover { text-decoration: underline; }
/* Makes the whole banner clickable. */
.top-banner-block .field--name-body a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
/* Admin edit pencil stays above the clickable layer. */
.top-banner-block .contextual { z-index: 2; }

/* Header below the banner; on scroll only the header's top row hides. */
body:has(.top-banner-block) header { top: var(--tb-h); }
@media (min-width: 992px) {
  body.scrolled:has(.top-banner-block) header { top: calc(var(--tb-h) - 40px); }
}

/* Logged-in admin toolbars. */
body.toolbar-horizontal:has(.top-banner-block) .top-banner-block { top: 39px; }
body.toolbar-horizontal:has(.top-banner-block) header { top: calc(39px + var(--tb-h)); }
body.toolbar-horizontal.toolbar-tray-open:has(.top-banner-block) .top-banner-block { top: 79px; }
body.toolbar-horizontal.toolbar-tray-open:has(.top-banner-block) header { top: calc(79px + var(--tb-h)); }
body.gin--horizontal-toolbar:has(.top-banner-block) .top-banner-block { top: 53px; }
body.gin--horizontal-toolbar:has(.top-banner-block) header { top: calc(53px + var(--tb-h)); }
body.gin--vertical-toolbar:has(.top-banner-block) .top-banner-block { top: 60px; left: 65px; }
body.gin--vertical-toolbar:has(.top-banner-block) header { top: calc(60px + var(--tb-h)); }