/* Bau Huelva · cabecera y barra móvil compartidas por todas las páginas.
   Se carga como /css/cabecera.css?v=N (caché de un año): al cambiar algo, sube N en todas las páginas. */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px;padding:0 clamp(16px,4vw,56px);transition:background .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(243,239,232,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:rgba(10,10,10,.14)}
.nav .brand{display:block;line-height:0}
.nav .brand img{display:block;height:44px;width:auto}
.nav ul{display:flex;gap:28px;margin:0;padding:0;list-style:none;font-family:"Montserrat",system-ui,sans-serif;font-size:13px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.nav ul a{color:#0A0A0A;text-decoration:none;opacity:.75;transition:opacity .2s,color .2s}
.nav ul a:hover,.nav ul a[aria-current="page"]{opacity:1;color:#FF004E}

.nav-cta,.mbar-cta,.nav-panel-cta{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#FF004E;color:#fff;text-decoration:none;white-space:nowrap;font-family:"Archivo",system-ui,sans-serif;font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:.02em;transition:background .2s,transform .2s,box-shadow .2s}
.nav-cta{padding:10px 16px;font-size:12px}
.nav-cta:hover,.mbar-cta:hover,.nav-panel-cta:hover{background:#ff2a6b;transform:translateY(-2px);box-shadow:0 10px 30px -8px rgba(255,0,78,.7)}

/* barra inferior del móvil: WhatsApp + reservar */
.mbar{display:none}
.mbar-wa{flex:none;display:grid;place-items:center;width:54px;border-radius:999px;background:#25D366;border:1px solid #1a9e4c}
.mbar-cta{flex:1;padding:16px;font-size:14px}

@media (max-width:1080px){
  .nav ul,.nav-cta{display:none}
  .mbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:70;gap:8px;transform:translateY(140%);transition:transform .4s}
  .mbar.on{transform:none}
}
@media (max-width:560px){
  .nav{height:64px}
  .nav .brand img{height:36px}
}
@media (prefers-reduced-motion:reduce){
  .nav,.mbar,.nav-cta,.mbar-cta{transition:none}
}

/* ---------- menú hamburguesa (móvil y tablet) ---------- */
.nav-menu{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:999px;background:#0A0A0A;color:#fff;cursor:pointer;transition:transform .2s,background .2s}
.nav-menu:hover{background:#FF004E}
.nav-menu svg{display:block}
.nav-panel{position:fixed;inset:0;z-index:90;visibility:hidden;pointer-events:none}
.nav-panel::before{content:"";position:absolute;inset:0;background:rgba(10,10,10,.45);opacity:0;transition:opacity .3s}
.nav-panel-in{position:absolute;top:0;right:0;bottom:0;width:min(440px,100%);display:flex;flex-direction:column;background:#F3EFE8;padding:0 clamp(16px,4vw,40px) 28px;overflow-y:auto;transform:translateX(100%);transition:transform .38s cubic-bezier(.2,.8,.2,1);box-shadow:-20px 0 60px -20px rgba(10,10,10,.4)}
.nav-panel.open{visibility:visible;pointer-events:auto}
.nav-panel.open::before{opacity:1}
.nav-panel.open .nav-panel-in{transform:none}
.nav-panel-top{display:flex;align-items:center;justify-content:space-between;height:72px;flex:none}
.nav-panel-top img{display:block;height:44px;width:auto}
.nav-panel ul{list-style:none;margin:18px 0 0;padding:0}
.nav-panel li{border-bottom:1px solid rgba(10,10,10,.14)}
.nav-panel li a{display:flex;align-items:baseline;gap:14px;padding:16px 0;color:#0A0A0A;text-decoration:none;font-family:"Archivo",system-ui,sans-serif;font-stretch:125%;font-weight:900;text-transform:uppercase;font-size:clamp(28px,8.5vw,40px);line-height:1;letter-spacing:-.01em;transition:color .2s}
.nav-panel li a span{font-family:"VT323",ui-monospace,monospace;font-weight:400;font-stretch:100%;font-size:20px;color:#FF004E;letter-spacing:0}
.nav-panel li a:hover,.nav-panel li a[aria-current="page"]{color:#FF004E}
.nav-panel-cta{margin-top:28px;padding:18px;font-size:15px}
.nav-panel-wa{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;padding:16px;border-radius:999px;background:#25D366;color:#fff;text-decoration:none;font-family:"Archivo",system-ui,sans-serif;font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:14px}
.nav-panel-ig{margin:auto 0 0;padding-top:28px;font-family:"Montserrat",system-ui,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#5f5b55}
.nav-panel-ig a{color:#0A0A0A;text-decoration:none;font-weight:600}
html.menu-abierto,html.menu-abierto body{overflow:hidden}
@media (max-width:1080px){ .nav-menu{display:inline-flex} }
@media (max-width:560px){ .nav-panel-top{height:64px} .nav-panel-top img{height:36px} }
@media (min-width:1081px){ .nav-panel{display:none} }
@media (prefers-reduced-motion:reduce){ .nav-panel-in,.nav-panel::before{transition:none} }
