/*
 * Global header utilities
 * The B2B menu is created in an Elementor HTML widget. Keep its mobile panel
 * aligned to the button's right edge, so it expands towards the left.
 */
@media (max-width: 767px) {
  .sa-b2b-menu .sa-b2b-dropdown {
    right: 0 !important;
    left: auto !important;
  }

  .sa-b2b-menu::after {
    right: -6px !important;
    left: auto !important;
  }
}


/*
 * Mobile menu access rule. The full-screen menu is built with an Elementor
 * HTML widget, so it does not pass through wp_nav_menu_objects. The role-aware
 * body class is supplied by SAM_Permissions and keeps Backoffice private to
 * the dedicated “Proprietário do site” account.
 */
body.sam-not-site-owner .sa-mobile-menu__nav a[href*="/gestion-voitures"],
body.sam-not-site-owner .sa-mobile-menu__nav a[href*="/backoffice"] {
  display: none !important;
}


/* ============================================================
 * v1.6.50.12 — Homepage sound button: brand-safe states
 * The homepage is rendered by WPCode, while this stylesheet is
 * loaded globally by the plugin. This prevents Hello Elementor
 * from applying its default #c36 focus/active accent after click.
 * ============================================================ */
html body button.sa-home-sound-toggle,
html body button.sa-home-sound-toggle:hover,
html body button.sa-home-sound-toggle:active,
html body button.sa-home-sound-toggle:focus,
html body button.sa-home-sound-toggle:focus-visible {
  border:1px solid rgba(255,255,255,.38) !important;
  border-color:rgba(255,255,255,.38) !important;
  border-radius:50% !important;
  background:rgba(0,50,76,.58) !important;
  background-color:rgba(0,50,76,.58) !important;
  color:#fff !important;
  outline:none !important;
  text-decoration:none !important;
  box-shadow:
    0 4px 18px rgba(0,0,0,.18),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
  -webkit-tap-highlight-color:transparent !important;
}

html body button.sa-home-sound-toggle:hover,
html body button.sa-home-sound-toggle:focus-visible {
  border-color:rgba(255,255,255,.62) !important;
  background:rgba(0,67,102,.88) !important;
  background-color:rgba(0,67,102,.88) !important;
  transform:translateY(-1px);
}

html body button.sa-home-sound-toggle:active {
  border-color:rgba(197,162,102,.78) !important;
  background:rgba(0,67,102,.96) !important;
  background-color:rgba(0,67,102,.96) !important;
  transform:translateY(0);
}

html body button.sa-home-sound-toggle:focus:not(:focus-visible) {
  border-color:rgba(255,255,255,.38) !important;
  background:rgba(0,50,76,.58) !important;
  background-color:rgba(0,50,76,.58) !important;
  transform:none;
  box-shadow:
    0 4px 18px rgba(0,0,0,.18),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
}

html body button.sa-home-sound-toggle:focus-visible {
  box-shadow:
    0 4px 18px rgba(0,0,0,.18),
    0 0 0 3px rgba(197,162,102,.18),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
}
