/* Ajustements partagés, chargés après les styles des pages. */
.back-to-hub-marche { position: static !important; width: fit-content; margin: 8px 20px; padding: 6px 12px !important; z-index: auto !important; box-shadow: none !important; }
.back-to-hub-marche span { display: inline !important; }
.nav-container { min-width: 0; gap: 12px; position: relative; }
.nav-logo { flex-shrink: 0; }
.nav-actions { min-width: 0; flex-wrap: wrap; }
.nav-toggle { flex-shrink: 0; }
.role-card { text-align: left; font: inherit; color: inherit; }
.commission-details { padding-top: 32px; padding-bottom: 32px; }
:focus-visible { outline: 3px solid #986f00; outline-offset: 3px; }
.skip-link { position: absolute; left: 8px; top: -80px; padding: 12px; background: #fff; color: #153d17; z-index: 100001; }
.skip-link:focus { top: 8px; }
@media (max-width: 1024px) {
  .nav-links.mobile-active { position: absolute; top: 100%; left: 0; right: 0; max-height: 65vh; }
}
@media (max-width: 600px) {
  .nav { padding: 0 !important; }
  .nav-container { display: grid; grid-template-columns: minmax(0, 1fr) 44px; padding: 10px 16px; gap: 8px; }
  .nav-logo-text { font-size: 1.05rem; line-height: 1.3; }
  .nav-logo-icon { width: 38px; height: 38px; flex-shrink: 0; }
  .nav-actions { grid-column: 1 / -1; justify-content: flex-end; gap: 8px; }
  .nav-actions .btn { white-space: normal; }
  .nav-actions [data-user-area] { flex-wrap: wrap; }
  .nav-toggle { width: 44px; height: 44px; }
  .role-selector { grid-template-columns: 1fr !important; }
  .form-row { grid-template-columns: 1fr !important; }
  .hero-container, .search-main, .container { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
