/* WordPress chrome must share the sticky header's spacing on every template. */
:root { --maupiti-admin-offset: 0px; }
html:has(body.admin-bar) { --maupiti-admin-offset: 32px; }

body.admin-bar .tourism-header.refined-header {
  top: var(--maupiti-admin-offset);
}
html:has(.refined-header) {
  scroll-padding-top: calc(var(--site-header-height) + var(--maupiti-admin-offset));
}
.refined-header .mega-panel,
.refined-header .mobile-navigation {
  max-height: calc(100dvh - var(--site-header-height) - var(--maupiti-admin-offset) - 12px);
}
.tourism-site .editorial-aside,
.tourism-site .pension-aside,
.tourism-site .guide-toc,
.tourism-site .restaurant-sidebar,
.tourism-site .property-booking,
.tourism-site .itinerary-layout aside {
  top: calc(var(--site-header-height) + var(--maupiti-admin-offset) + 24px);
}
.destination-article .editorial-aside {
  max-height: calc(100dvh - var(--site-header-height) - var(--maupiti-admin-offset) - 48px);
}

/* Wide comparisons must scroll instead of crushing five columns on a phone. */
.directory-overview .article-comparison,
.excursion-comparison .article-comparison { overscroll-behavior-x: contain; }
.directory-overview .article-comparison table,
.excursion-comparison .article-comparison table {
  min-width: 900px;
  table-layout: auto;
}
.directory-overview .article-comparison th:first-child,
.excursion-comparison .article-comparison th:first-child { width: 20%; }
@media (max-width: 960px) {
  .directory-overview .article-comparison::before,
  .excursion-comparison .article-comparison::before {
    content: "Faites défiler le tableau pour tout comparer →";
    display: block;
    position: sticky;
    left: 0;
    padding: 12px 16px;
    color: #245263;
    background: #edf5f7;
    font-size: 12px;
    line-height: 1.5;
  }
}

@media (max-width: 782px) {
  html:has(body.admin-bar) { --maupiti-admin-offset: 46px; }
}
@media (max-width: 600px) {
  /* Core normally scrolls this bar away, leaving a 46px hole above the header. */
  body.admin-bar #wpadminbar { position: fixed; }
}
@media (max-width: 760px) {
  .destination-article .editorial-aside { max-height: none; }
}
@media print {
  html:has(.refined-header) { scroll-padding-top: 0; }
}
