#mm-react-header-20 { width: 100%; }

/* HEADER base: di default NON sticky */
.mmrh-header{
  position: relative;
  top: auto;
  z-index: 999;
  background: #0b5a8a;
  border-bottom: 2px solid #c9a23a;
  transition: box-shadow .2s ease;
}

/* Sticky solo se abilitato e solo sul device selezionato */
@media (min-width: 921px){
  .mmrh-header.mmrh-sticky-desktop{
    position: sticky;
    top: 0;
  }
}
@media (max-width: 920px){
  .mmrh-header.mmrh-sticky-mobile{
    position: sticky;
    top: 0;
  }
}

.mmrh-header.is-scrolled{
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}

.mmrh-wrap{
  max-width: 1240px;
  margin: 0 auto;
  min-height: 96px;
  padding: 14px 18px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 22px;
}

/* LOGO: larghezze da admin via CSS vars */
.mmrh-logo{
  display:flex;
  align-items:center;
  text-decoration:none;
}
.mmrh-logo img{
  display:block;
  width: var(--mmrh-logo-w-desktop, 140px);
  height: auto;
}
@media (max-width: 920px){
  .mmrh-logo img{
    width: var(--mmrh-logo-w-mobile, 120px);
  }
}

/* DESKTOP NAV */
.mmrh-desktop{ flex:1; display:flex; justify-content:flex-end; }
.mmrh-nav{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap: 34px;
}
.mmrh-nav > li{ position:relative; }

.mmrh-link{
  color:#fff;
  text-decoration:none;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size: 13px;
  padding: 12px 0;
  display:inline-flex;
  align-items:center;
  gap:10px;
  opacity:.95;
  transition: opacity .15s ease, transform .15s ease;
}
.mmrh-link:hover{
  opacity:1;
  transform: translateY(-1px);
}

/* Submenu desktop */
.mmrh-nav .mmrh-sub{
  position:absolute;
  left: -14px;
  top: calc(100% + 10px);
  background:#0a4b72;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  min-width: 240px;
  padding: 10px;
  display:none;
  box-shadow: 0 18px 40px rgba(0,0,0,.25);
}
.mmrh-nav li:hover > .mmrh-sub{ display:block; }
.mmrh-nav .mmrh-sub li{ list-style:none; }
.mmrh-nav .mmrh-sub .mmrh-link{
  width:100%;
  padding: 12px 12px;
  letter-spacing:.08em;
  font-size: 12px;
  border-radius:10px;
}
.mmrh-nav .mmrh-sub .mmrh-link:hover{
  background: rgba(255,255,255,.10);
}

/* BURGER: nuovo stile (più grande, centrato, touch-friendly) */
.mmrh-burger{
  display:none;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.08);
  border-radius:14px;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  padding: 0;
}
.mmrh-burger span{
  display:block;
  width:24px;
  height:2px;
  background:#fff;
  margin:2px 0;
  border-radius:2px;
  opacity:.95;
}

/* OVERLAY + DRAWER */
.mmrh-overlay{
  position:fixed;
  inset:0;
  background: rgba(0,0,0,.45);
  opacity:0;
  pointer-events:none;
  transition: opacity .2s ease;
  z-index: 998;
}
.mmrh-drawer{
  position:fixed;
  top:0;
  right:0;
  height:100vh;
  width: min(380px, 92vw);
  background: #0b5a8a;
  border-left: 2px solid rgba(201,162,58,.7);
  transform: translateX(100%);
  transition: transform .25s ease;
  z-index: 999;
  padding: 16px;
  display:flex;
  flex-direction:column;
  gap: 14px;
}

.mmrh-drawer-head{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height: 54px;
}
.mmrh-close{
  width:46px;height:46px;
  border:0;
  border-radius:14px;
  background: rgba(255,255,255,.12);
  color:#fff;
  font-size: 28px;
  line-height: 1;
  cursor:pointer;
}

/* Mobile nav */
.mmrh-mobile{ overflow:auto; padding-bottom: 18px; }
.mmrh-mnav{
  list-style:none;
  margin: 0;
  padding: 0;
  display:flex;
  flex-direction:column;
  gap: 10px;
}
.mmrh-mnav li{ list-style:none; }

.mmrh-mrow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  border-radius:16px;
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  padding: 6px 10px;
}

.mmrh-mnav .mmrh-link{
  padding: 16px 10px;
  font-size: 18px;
  letter-spacing:.10em;
  width: 100%;
}

.mmrh-subtoggle{
  width: 46px;
  height: 46px;
  border:0;
  border-radius:14px;
  background: rgba(255,255,255,.14);
  color:#fff;
  font-size: 20px;
  cursor:pointer;
}

.mmrh-mnav .mmrh-sub{
  display:none;
  margin-top: 8px;
  padding-left: 10px;
  border-left: 2px solid rgba(201,162,58,.6);
}
.mmrh-mnav li.open > .mmrh-sub{ display:block; }
.mmrh-mnav .mmrh-sub .mmrh-link{
  font-size: 16px;
  letter-spacing:.08em;
  opacity:.95;
}

/* OPEN STATE */
.mmrh-open .mmrh-overlay{
  opacity:1;
  pointer-events:auto;
}
.mmrh-open .mmrh-drawer{
  transform: translateX(0);
}

/* RESPONSIVE */
@media (max-width: 920px){
  .mmrh-desktop{ display:none; }
  .mmrh-burger{ display:flex; margin-left:auto;flex-direction:column; }
  .mmrh-wrap{ justify-content:space-between; }
}
