/* East Side Blues Band - shared site header v1 (home, archivio, dettaglio) */
@font-face{font-family:'Oswald';font-style:normal;font-weight:400 700;font-display:swap;src:url('/static/fonts/oswald-latin-v57.woff2') format('woff2')}

:root{scroll-padding-top:104px}

.site-header{
  --sh-bg:#171515;
  --sh-bg-scrolled:rgba(23,21,21,.94);
  --sh-red:#a30d2b;
  --sh-red-hover:#850a23;
  --sh-ink:#fff9f0;
  --sh-muted:rgba(255,249,240,.78);
  --sh-line:rgba(255,255,255,.12);
  position:sticky;top:0;z-index:40;
  box-sizing:border-box;width:100%;
  margin:0;padding:0;
  background:var(--sh-bg);color:var(--sh-ink);
  border-bottom:1px solid var(--sh-line);
  font-family:'DM Sans',system-ui,sans-serif;
  transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.site-header *,.site-header *::before,.site-header *::after{box-sizing:border-box}
.site-header.is-scrolled{background:var(--sh-bg-scrolled);box-shadow:0 10px 30px rgba(10,6,6,.35)}
@supports ((-webkit-backdrop-filter:blur(8px)) or (backdrop-filter:blur(8px))){
  .site-header.is-scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
}

/* Home: overlay sopra hero, trasparente a scroll zero */
.site-header.site-header--home{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom-color:transparent;box-shadow:none}
.site-header.site-header--home.is-scrolled{background:var(--sh-bg-scrolled);border-bottom-color:var(--sh-line);box-shadow:0 10px 30px rgba(10,6,6,.35)}
.site-header:has(.site-header-nav[data-open="true"]),
.site-header.site-header--home:has(.site-header-nav[data-open="true"]){background:var(--sh-bg);border-bottom-color:var(--sh-line)}

.site-header .site-header-inner{
  position:relative;
  max-width:80rem;min-height:88px;margin:0 auto;
  padding:20px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}

.site-header .site-header-brand{
  display:flex;align-items:center;gap:12px;min-width:0;min-height:44px;
  color:var(--sh-ink);text-decoration:none;
}
.site-header .site-header-brand img{
  flex:none;display:block;width:48px;height:48px;max-width:none;
  border-radius:50%;border:2px solid rgba(255,255,255,.7);object-fit:cover;
}
.site-header .site-header-brand span{
  display:block;max-width:7rem;
  font-family:'Oswald','Arial Narrow',sans-serif;font-size:14px;font-weight:600;
  line-height:1.05;letter-spacing:.025em;text-transform:uppercase;color:var(--sh-ink);
}
.site-header .site-header-brand:hover{color:var(--sh-ink)}

/* Nav senza JS: link visibili e a capo sotto brand/azioni */
.site-header .site-header-inner{flex-wrap:wrap}
.site-header .site-header-nav{
  order:3;flex:1 0 100%;
  display:flex;flex-wrap:wrap;gap:0 20px;
  border-top:1px solid var(--sh-line);
}
.site-header .site-header-nav a{border-bottom:0}
/* Con JS: dropdown mobile */
.site-header[data-enhanced="true"] .site-header-inner{flex-wrap:nowrap}
.site-header[data-enhanced="true"] .site-header-nav{
  display:none;
  position:absolute;left:0;right:0;top:100%;
  flex-direction:column;flex-wrap:nowrap;
  padding:8px 20px 20px;
  background:var(--sh-bg);
  border-top:1px solid var(--sh-line);border-bottom:2px solid var(--sh-red);
  box-shadow:0 18px 36px rgba(10,6,6,.45);
}
.site-header[data-enhanced="true"] .site-header-nav[data-open="true"]{display:flex;animation:site-header-drop .22s cubic-bezier(.2,.7,.25,1) both}
.site-header .site-header-nav a{
  display:flex;align-items:center;min-height:48px;
  border-bottom:1px solid var(--sh-line);
  color:var(--sh-muted);text-decoration:none;
  font-family:'DM Sans',system-ui,sans-serif;font-size:13px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;line-height:1.2;
  transition:color .2s ease;
}
.site-header[data-enhanced="true"] .site-header-nav a{border-bottom:1px solid var(--sh-line)}
.site-header[data-enhanced="true"] .site-header-nav a:last-child{border-bottom:0}
.site-header .site-header-nav a:hover{color:var(--sh-ink)}
.site-header .site-header-nav a[aria-current="page"]{color:var(--sh-ink);box-shadow:inset 3px 0 0 var(--sh-red);padding-left:12px}

.site-header .site-header-actions{display:flex;align-items:center;gap:8px;flex:none}

.site-header .site-header-toggle{display:none}
.site-header[data-enhanced="true"] .site-header-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;padding:0;margin:0;
  background:transparent;color:var(--sh-ink);
  border:1px solid rgba(255,255,255,.28);border-radius:2px;cursor:pointer;
  transition:border-color .2s ease,background-color .2s ease;
}
.site-header .site-header-toggle:hover{border-color:var(--sh-ink)}
.site-header .site-header-toggle[aria-expanded="true"]{background:rgba(255,255,255,.08);border-color:var(--sh-ink)}
.site-header .site-header-toggle svg{width:22px;height:22px;display:block}

.site-header .site-header-booking{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 16px;
  background:var(--sh-red);color:#fff9f1;text-decoration:none;
  border-radius:2px;
  font-family:'DM Sans',system-ui,sans-serif;font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;line-height:1;
  transition:background-color .2s ease,transform .2s ease;
}
.site-header .site-header-booking:hover{background:var(--sh-red-hover);color:#fff9f1;transform:translateY(-1px)}

.site-header .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header a:focus-visible,.site-header button:focus-visible{outline:2px solid #f1b9c1;outline-offset:3px;border-radius:2px}

@media (max-width:359px){
  .site-header .site-header-inner{padding:20px 14px;gap:8px}
  .site-header .site-header-brand{gap:8px}
  .site-header .site-header-brand span{font-size:12px;max-width:5.6rem}
  .site-header .site-header-booking{padding:0 11px;letter-spacing:.1em}
  .site-header .site-header-actions{gap:6px}
}

@media (min-width:768px){
  .site-header .site-header-inner{padding:20px 40px}
  .site-header .site-header-inner,
  .site-header[data-enhanced="true"] .site-header-inner{flex-wrap:nowrap}
  .site-header .site-header-toggle,
  .site-header[data-enhanced="true"] .site-header-toggle{display:none}
  .site-header .site-header-nav,
  .site-header .site-header-nav[data-open="true"],
  .site-header[data-enhanced="true"] .site-header-nav,
  .site-header[data-enhanced="true"] .site-header-nav[data-open="true"]{
    display:flex;position:static;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:32px;
    order:0;flex:0 1 auto;
    padding:0;background:none;border:0;box-shadow:none;animation:none;
  }
  .site-header .site-header-nav a,
  .site-header[data-enhanced="true"] .site-header-nav a{
    min-height:44px;border:0;font-size:11px;color:rgba(255,249,240,.75);
  }
  .site-header .site-header-nav a[aria-current="page"]{padding-left:0;box-shadow:inset 0 -2px 0 var(--sh-red);color:var(--sh-ink)}
  .site-header:has(.site-header-nav[data-open="true"]).site-header--home:not(.is-scrolled){background:transparent;border-bottom-color:transparent}
}

@keyframes site-header-drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

@media (prefers-reduced-motion:reduce){
  .site-header,.site-header *{transition:none!important;animation:none!important}
  .site-header .site-header-booking:hover{transform:none}
}
@media (forced-colors:active){
  .site-header{border-bottom:1px solid CanvasText}
  .site-header .site-header-toggle{border-color:ButtonText}
}
