/* ============================================================================
   PESCA AZTECA · BARRA DE NAVEGACIÓN — sistema visual limpio (.paznv-*)
   Hoja compartida por TODAS las páginas (español e inglés). Reemplaza el
   antiguo bloque .navbar + .floating de goblal.css. Es autónoma: define sus
   propios tokens. Se carga DESPUÉS de goblal.css y de la hoja de cada página.
   Comportamiento en static/js/paz-nav.js.
   ============================================================================ */

.paznv{
  --paz-navy:#00264d;
  --paz-deep:#004a98;   /* PANTONE 2945 C */
  --paz-blue:#0074bb;
  --paz-cyan:#02a8e8;
  --paz-light:#6ea7d8;

  --nv-h:84px;
  --nv-h-min:66px;
  --nv-bg:rgba(0,6,25,.90);
  --nv-line:rgba(255,255,255,.12);
  --nv-txt:rgba(255,255,255,.86);

  --font:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;

  position:fixed;top:0;left:0;z-index:200;
  width:100%;height:var(--nv-h);
  display:block;font-family:var(--font);
  -webkit-font-smoothing:antialiased;
  transition:height .3s ease,background .3s ease,box-shadow .3s ease,border-color .3s ease;
  background:transparent;border-bottom:1px solid transparent;
}
.paznv *{ box-sizing:border-box; }

/* velo superior: legibilidad sobre cualquier hero, sin tapar la imagen */
.paznv::before{
  content:"";position:absolute;inset:0 0 auto;height:calc(var(--nv-h) + 40px);
  pointer-events:none;opacity:1;transition:opacity .3s ease;
  background:linear-gradient(180deg, rgba(0,10,26,.62) 0%, rgba(0,10,26,.28) 55%, rgba(0,10,26,0) 100%);
}
.paznv.is-scrolled{
  height:var(--nv-h-min);
  background:var(--nv-bg);
  border-bottom-color:var(--nv-line);
  box-shadow:0 10px 34px rgba(0,8,22,.34);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
}
.paznv.is-scrolled::before{ opacity:0; }

.paznv__wrap{
  position:relative;z-index:2;height:100%;
  width:100%;max-width:1280px;margin:0 auto;padding:0 32px;
  display:flex;align-items:center;gap:26px;
}
@media (max-width:899px){ .paznv__wrap{ padding:0 20px;gap:14px; } }

/* ---------- logotipo ---------- */
.paznv__logo{ display:flex;align-items:center;flex:0 0 auto;text-decoration:none; }
.paznv__logo img{
  display:block;width:auto;height:58px;
  transition:height .3s ease;
}
.paznv.is-scrolled .paznv__logo img{ height:44px; }
@media (max-width:899px){
  .paznv__logo img{ height:46px; }
  .paznv.is-scrolled .paznv__logo img{ height:40px; }
}
.paznv__logo:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:4px;border-radius:4px; }

/* ---------- enlaces (escritorio) ---------- */
.paznv__nav{
  flex:1 1 auto;display:flex;align-items:center;justify-content:flex-end;
  gap:22px;min-width:0;
}
.paznv__link{
  position:relative;flex:0 0 auto;
  font-size:13.5px;font-weight:700;letter-spacing:-.005em;line-height:1;
  color:var(--nv-txt);text-decoration:none;white-space:nowrap;
  padding:8px 0;transition:color .2s ease;
}
.paznv__link::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--paz-cyan);border-radius:2px;
  transform:scaleX(0);transform-origin:left center;
  transition:transform .25s ease;
}
.paznv__link:hover{ color:#fff; }
.paznv__link:hover::after{ transform:scaleX(1); }
.paznv__link:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:4px;color:#fff;border-radius:2px; }
.paznv__link--on{ color:#fff; }
.paznv__link--on::after{ transform:scaleX(1);background:#fff; }

/* ---------- lado derecho ---------- */
.paznv__side{ flex:0 0 auto;display:flex;align-items:center;gap:12px; }

.paznv__cta{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  padding:11px 20px;border-radius:6px;text-decoration:none;white-space:nowrap;
  background:#fff;color:#00264d;border:1px solid #fff;
  transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.paznv__cta:hover{
  background:var(--paz-cyan);border-color:var(--paz-cyan);color:#fff;
  transform:translateY(-2px);box-shadow:0 10px 26px rgba(2,168,232,.32);
}
.paznv__cta:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:3px; }

.paznv__lang{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:6px;text-decoration:none;
  border:1px solid var(--nv-line);background:rgba(255,255,255,.06);
  transition:background .25s ease,border-color .25s ease;
}
.paznv__lang:hover{ background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.34); }
.paznv__lang:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:3px; }
.paznv__lang img{ display:block;width:20px;height:auto;border-radius:2px; }
.paznv__lang span{
  font-size:11px;font-weight:800;letter-spacing:.14em;color:#fff;
}

/* ---------- botón hamburguesa ---------- */
.paznv__burger{
  display:none;flex:0 0 auto;
  width:44px;height:44px;padding:0;margin:0;cursor:pointer;
  background:rgba(255,255,255,.06);border:1px solid var(--nv-line);border-radius:8px;
  align-items:center;justify-content:center;
  transition:background .25s ease,border-color .25s ease;
}
.paznv__burger:hover{ background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.34); }
.paznv__burger:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:3px; }
.paznv__burger__box{ position:relative;display:block;width:20px;height:14px; }
.paznv__burger__box i{
  position:absolute;left:0;width:100%;height:2px;border-radius:2px;background:#fff;
  transition:transform .3s ease,opacity .2s ease,top .3s ease;
}
.paznv__burger__box i:nth-child(1){ top:0; }
.paznv__burger__box i:nth-child(2){ top:6px; }
.paznv__burger__box i:nth-child(3){ top:12px; }
.paznv__burger[aria-expanded="true"] .paznv__burger__box i:nth-child(1){ top:6px;transform:rotate(45deg); }
.paznv__burger[aria-expanded="true"] .paznv__burger__box i:nth-child(2){ opacity:0; }
.paznv__burger[aria-expanded="true"] .paznv__burger__box i:nth-child(3){ top:6px;transform:rotate(-45deg); }

/* franja intermedia: comprime la tipografía antes de plegar el menú */
@media (max-width:1319px){
  .paznv__wrap{ gap:20px; }
  .paznv__nav{ gap:16px; }
  .paznv__link{ font-size:12.5px; }
  .paznv__cta{ padding:10px 16px;font-size:11.5px;letter-spacing:.08em; }
  .paznv__lang{ padding:7px 10px; }
}

/* ---------- conmutación escritorio / móvil ---------- */
@media (max-width:1180px){
  .paznv__nav{ display:none; }
  .paznv__burger{ display:flex; }
  .paznv__side{ margin-left:auto; }
}
@media (max-width:599px){
  .paznv__cta{ display:none; }   /* Thunnus vive dentro del panel */
}

/* ============================================================================
   PANEL MÓVIL
   ============================================================================ */
.paznv-panel{
  --font:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --paz-cyan:#02a8e8;
  position:fixed;inset:0;z-index:190;
  font-family:var(--font);
  background:
    radial-gradient(ellipse at 88% 8%, rgba(2,168,232,.18) 0%, transparent 58%),
    linear-gradient(165deg, #00264d 0%, #000c22 62%, #000619 100%);
  opacity:0;visibility:hidden;
  transition:opacity .3s ease,visibility .3s ease;
  overflow-y:auto;-webkit-overflow-scrolling:touch;
}
.paznv-panel *{ box-sizing:border-box; }
.paznv-panel.is-open{ opacity:1;visibility:visible; }

.paznv-panel__inner{
  min-height:100%;
  padding:calc(var(--nv-h-min, 66px) + 40px) 32px 44px;
  display:flex;flex-direction:column;
  width:100%;max-width:1280px;margin:0 auto;
}
@media (max-width:899px){ .paznv-panel__inner{ padding-left:20px;padding-right:20px; } }

.paznv-panel__k{
  font-size:10.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:var(--paz-cyan);margin-bottom:22px;
}
.paznv-panel__nav{ display:flex;flex-direction:column;align-items:flex-start; }
.paznv-panel__link{
  position:relative;display:block;width:100%;
  font-size:clamp(22px,4.6vw,30px);font-weight:800;letter-spacing:-.02em;line-height:1.2;
  color:#fff;text-decoration:none;
  padding:16px 0;border-bottom:1px solid rgba(255,255,255,.10);
  opacity:0;transform:translateY(14px);
  transition:opacity .4s ease,transform .4s ease,color .2s ease;
}
.paznv-panel.is-open .paznv-panel__link{ opacity:1;transform:none; }
.paznv-panel__link:hover{ color:var(--paz-cyan); }
.paznv-panel__link:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:3px; }
.paznv-panel__link--on{ color:#6ea7d8; }
.paznv-panel__link__tag{
  font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.48);margin-left:10px;vertical-align:3px;
}
.paznv-panel.is-open .paznv-panel__link:nth-child(1){ transition-delay:.06s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(2){ transition-delay:.10s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(3){ transition-delay:.14s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(4){ transition-delay:.18s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(5){ transition-delay:.22s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(6){ transition-delay:.26s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(7){ transition-delay:.30s; }
.paznv-panel.is-open .paznv-panel__link:nth-child(8){ transition-delay:.34s; }

.paznv-panel__foot{
  margin-top:auto;padding-top:36px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px;
}
.paznv-panel__social{ display:flex;flex-wrap:wrap;gap:10px; }
.paznv-panel__social__el{
  width:44px;height:44px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:16px;text-decoration:none;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.paznv-panel__social__el:hover{ background:#fff;color:#004a98;border-color:#fff; }
.paznv-panel__social__el:focus-visible{ outline:3px solid var(--paz-cyan);outline-offset:3px; }
.paznv-panel__social__el i{ display:block;line-height:1; }

.paznv-panel__tel{
  font-size:19px;font-weight:800;color:#fff;text-decoration:none;letter-spacing:-.01em;
}
.paznv-panel__tel:hover{ color:var(--paz-cyan); }

/* bloqueo de scroll del documento con el panel abierto */
html.paznv-lock,
html.paznv-lock body{ overflow:hidden; }

/* ---------- accesibilidad ---------- */
@media (prefers-reduced-motion:reduce){
  .paznv,.paznv *,.paznv-panel,.paznv-panel *{ transition:none !important; }
  .paznv-panel__link{ opacity:1;transform:none; }
}
