
/* Header commun DI : définition unique, sans positionnement absolu interne. */
:root {
  --insider-header-height: 82px;
}
.insider-site-header {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 24px);
  max-width: 760px;
  margin: 0;
  padding: env(safe-area-inset-top, 0px) 0 0;
  background: #fff;
  z-index: 250000;
  box-sizing: border-box;
}
.insider-header-inner {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr) 80px;
  align-items: center;
  gap: 8px;
  height: var(--insider-header-height);
  padding: 0 8px;
}
.rdh-header-menu {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 8px;
  border: 0;
  background: transparent;
  color: #10235a;
  cursor: pointer;
}
.rdh-header-menu svg {
  width: 27px;
  height: 27px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}
.rdh-header-logo {
  min-width: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.rdh-header-logo a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
}
.rdh-header-logo img {
  display: block;
  width: 100%;
  max-width: 288px;
  height: auto;
  max-height: 72px;
  object-fit: contain;
}
.rdh-header-right {
  width: 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.hi-language-switcher {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
}
.hi-language-switcher a {
  display: grid;
  place-items: center;
  width: 34px;
  height: 30px;
  padding: 3px;
  border: 1px solid transparent;
  border-radius: 8px;
  box-sizing: border-box;
}
.hi-language-switcher a.is-active {
  border-color: #c9a34f;
}
.hi-language-flag {
  display: block;
  width: 28px;
  height: 19px;
  border-radius: 3px;
}
.rdh-header-weather {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  width: 100%;
  color: #10235a;
  text-decoration: none;
}
.rdh-header-weather-icon,
.rdh-header-weather-icon svg {
  display: block;
  width: 27px;
  height: 27px;
}
.rdh-header-temperature {
  font-size: 17px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}
@media (max-width: 520px) {
  :root { --insider-header-height: 76px; }
  .insider-site-header {
    width: 100%;
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
  }
  .insider-header-inner {
    grid-template-columns: 70px minmax(0, 1fr) 70px;
    gap: 4px;
    padding: 0 8px;
  }
  .rdh-header-right { width: 70px; }
  .rdh-header-logo img { max-height: 64px; }
  .hi-language-switcher a { width: 30px; height: 28px; }
  .hi-language-flag { width: 24px; height: 16px; }
}
/* Réservation de l’espace réellement occupé par le header fixe. */
.rdh-app.rdh-with-global-header,
.rdh-app.rdh-home-ref.rdh-with-global-header {
  padding-top: calc(
    var(--insider-header-height) + env(safe-area-inset-top, 0px) + 8px
  ) !important;
}
