/* =========================================================
   HEADER MASTER — COPIA ESATTA DELLA MANTOVA LOCAL LIST
   Fonte: local-list.html consegnato il 19/08/2026
   Non modificare pagina per pagina.
   ========================================================= */

:root{--site-master-red:#b40000;--site-master-header-h:82px}

/* =========================
   MENU MASTER — DESKTOP
   riferimento: Organizza il viaggio
   ========================= */
.site-master-header{
  position:fixed !important;
  top:0;left:0;width:100%;height:var(--site-master-header-h);
  z-index:99999;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 28px;
  background:var(--site-master-red);
  color:#fff;
  box-shadow:0 2px 14px rgba(0,0,0,.16);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.site-master-left{order:1;flex:1 1 0;display:flex;justify-content:flex-start;position:relative;min-width:0}
.site-master-toggle{
  border:0;background:transparent;color:#fff;cursor:pointer;
  font:inherit;font-weight:700;padding:12px 0;white-space:nowrap
}
.site-master-brand{order:2;flex:1 1 0;display:flex;justify-content:center;text-align:center;min-width:0}
.site-master-brand a{
  color:#fff;text-decoration:none;
  font-family:"Cormorant Garamond",serif;
  font-size:1.55rem;font-weight:700;white-space:nowrap
}
.site-master-tools{
  order:3;flex:1 1 0;display:flex;justify-content:flex-end;align-items:center;gap:14px;min-width:0
}
.site-master-access{
  color:#fff;text-decoration:none;font-weight:700;
  border:1px solid rgba(255,255,255,.55);
  border-radius:999px;padding:8px 15px
}
.site-master-language{
  border:1px solid rgba(255,255,255,.6);
  background:#fff;color:#222;border-radius:7px;padding:7px 8px;font:inherit
}
.site-master-nav{
  position:absolute;top:58px;left:0;
  width:320px;max-width:calc(100vw - 28px);
  opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;
  background:#fff;color:#171717;
  border:1px solid rgba(0,0,0,.08);
  border-radius:0 0 12px 12px;
  box-shadow:0 18px 38px rgba(0,0,0,.18);
  overflow:hidden;transition:.2s ease
}
.site-master-nav.show{
  opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto
}
.site-master-nav a{
  display:block;padding:12px 18px;border-bottom:1px solid #eee;
  font-size:.94rem;font-weight:600;background:#fff;color:#171717;text-decoration:none
}
.site-master-nav a:last-child{border-bottom:0}
.site-master-nav a:hover{background:#faf3f3;color:var(--site-master-red)}

/* =========================
   MOBILE — riferimento HOME
   barra rossa compatta + hamburger + brand + profilo + lingua
   ========================= */
@media(max-width:1023px){
  :root{--site-master-header-h:64px}
  .site-master-header{
    height:64px;padding:0 14px;
  }
  .site-master-left{flex:0 0 auto}
  .site-master-toggle{
    width:42px;overflow:hidden;white-space:nowrap;font-size:0;padding:0;
  }
  .site-master-toggle::before{content:"☰";font-size:27px;line-height:1}
  .site-master-brand{
    position:absolute;left:50%;transform:translateX(-50%);
    width:auto;max-width:56vw;flex:none
  }
  .site-master-brand a{
    font-family:Inter,system-ui,sans-serif;
    font-size:16px;font-weight:700;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:56vw
  }
  .site-master-tools{flex:0 0 auto;margin-left:auto;gap:7px}
  .site-master-access{
    width:32px;height:32px;padding:0;border-radius:50%;
    font-size:0;position:relative
  }
  .site-master-access::before{
    content:"👤";font-size:16px;position:absolute;inset:0;display:grid;place-items:center
  }
  .site-master-language{height:34px;padding:0 5px;font-size:12px}
  .site-master-nav{
    position:fixed;top:64px;left:0;width:100%;max-width:none;
    max-height:calc(100vh - 64px);overflow-y:auto;border-radius:0
  }
}

/* --- spacing mobile esatto Local List --- */
/* MOBILE: più spazio tra brand centrale, profilo e selettore lingua */
@media(max-width:1023px){
  .site-master-header{
    padding-left:14px !important;
    padding-right:12px !important;
  }

  .site-master-brand{
    left:48% !important;
    transform:translateX(-50%) !important;
    max-width:50vw !important;
  }

  .site-master-brand a{
    max-width:50vw !important;
    font-size:15px !important;
    letter-spacing:-0.01em !important;
  }

  .site-master-tools{
    gap:9px !important;
  }

  .site-master-access{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
  }

  .site-master-language{
    min-width:43px !important;
    flex:0 0 auto !important;
  }
}

@media(max-width:390px){
  .site-master-brand{
    left:47% !important;
    max-width:46vw !important;
  }

  .site-master-brand a{
    max-width:46vw !important;
    font-size:14px !important;
  }

  .site-master-tools{
    gap:7px !important;
  }
}

/* --- apertura/chiusura menu esatta Local List --- */
.site-master-header .site-master-nav{
  display:block !important;
  flex-direction:unset !important;
  align-items:unset !important;
  justify-content:unset !important;
  gap:0 !important;
  padding:0 !important;
  margin:0 !important;
}
@media(min-width:1024px){
  .site-master-header .site-master-nav{
    position:absolute !important;
    top:58px !important;
    left:0 !important;
    right:auto !important;
    width:320px !important;
    max-width:calc(100vw - 28px) !important;
    height:auto !important;
    max-height:calc(100vh - 90px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    background:#fff !important;
    color:#171717 !important;
    border:1px solid rgba(0,0,0,.08) !important;
    border-radius:0 0 12px 12px !important;
    box-shadow:0 18px 38px rgba(0,0,0,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-8px) !important;
    pointer-events:none !important;
    z-index:100000 !important;
  }
  .site-master-header .site-master-nav.show{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }
  .site-master-header .site-master-nav > a{
    display:block !important;
    width:100% !important;
    padding:12px 18px !important;
    margin:0 !important;
    border-bottom:1px solid #eee !important;
    background:#fff !important;
    color:#171717 !important;
    text-align:left !important;
    white-space:normal !important;
    float:none !important;
  }
}
@media(max-width:1023px){
  .site-master-header .site-master-nav{
    position:fixed !important;
    top:64px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    max-height:calc(100vh - 64px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    background:#fff !important;
    color:#171717 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:0 18px 38px rgba(0,0,0,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-8px) !important;
    pointer-events:none !important;
    z-index:100000 !important;
  }
  .site-master-header .site-master-nav.show{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }
  .site-master-header .site-master-nav > a{
    display:block !important;
    width:100% !important;
    padding:14px 18px !important;
    margin:0 !important;
    border-bottom:1px solid #eee !important;
    background:#fff !important;
    color:#171717 !important;
    text-align:left !important;
    white-space:normal !important;
    float:none !important;
  }
  .site-master-header .site-master-toggle{
    position:relative !important;
    z-index:100001 !important;
    pointer-events:auto !important;
    cursor:pointer !important;
  }
}

/* --- normalizzazione finale esatta Local List --- */
/* Header uniforme — tutte le pagine */
        .site-master-brand a,
        .brand-center a,
        .mobile-brand{
          text-transform:uppercase !important;
          white-space:nowrap !important;
        }

        @media (min-width:1024px){
          .site-master-brand a,
          .brand-center a{
            font-size:22px !important;
            line-height:1 !important;
            letter-spacing:0 !important;
            font-weight:700 !important;
          }
        }

        @media (max-width:1023px){
          .site-master-brand,
          .brand-center{
            width:auto !important;
            max-width:calc(100vw - 150px) !important;
          }

          .site-master-brand a,
          .brand-center a,
          .mobile-brand{
            font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif !important;
            font-size:clamp(10px,3vw,12px) !important;
            line-height:1 !important;
            letter-spacing:-.2px !important;
            font-weight:700 !important;
            overflow:visible !important;
            text-overflow:clip !important;
            max-width:none !important;
          }

          /* Profilo mobile: sola sagoma, nessun cerchio/bottone attorno */
          .site-master-access,
          .accedi-btn,
          .mobile-account-icon{
            border:0 !important;
            outline:0 !important;
            background:transparent !important;
            border-radius:0 !important;
            box-shadow:none !important;
          }

          .site-master-access,
          .accedi-btn{
            width:24px !important;
            height:32px !important;
            min-width:24px !important;
            padding:0 !important;
            position:relative !important;
          }

          .site-master-access::before,
          .accedi-btn::before{
            content:"" !important;
            position:absolute !important;
            left:50% !important;
            top:50% !important;
            width:20px !important;
            height:20px !important;
            transform:translate(-50%,-50%) !important;
            background:#fff !important;
            -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm0 2c-4.42 0-8 2.24-8 5v1h16v-1c0-2.76-3.58-5-8-5Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm0 2c-4.42 0-8 2.24-8 5v1h16v-1c0-2.76-3.58-5-8-5Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
          }

          .mobile-account-icon{
            width:22px !important;
            height:22px !important;
            min-width:22px !important;
            padding:0 !important;
            display:grid !important;
            place-items:center !important;
          }
          .mobile-account-icon svg{
            width:20px !important;
            height:20px !important;
            fill:currentColor !important;
          }
        }
