/* NW-FRAME v2 — ONE header/footer component, identical on every page.
   Glass mode: transparent over hero at rest, solidifies on scroll. */
.nw-hdr{position:sticky;top:0;z-index:9999;background:#0b1e2d;border-bottom:1px solid rgba(255,255,255,.08);font-family:'DM Sans',system-ui,sans-serif;transition:background-color .25s ease,border-color .25s ease}
.nw-hdr--glass{position:fixed;left:0;right:0;background:rgba(11,30,45,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.nw-hdr--glass.nw-scrolled{background:rgba(11,30,45,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom-color:rgba(255,255,255,.08)}
.nw-hdr-in{max-width:1080px;margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:18px;position:relative}
.nw-logo{display:block;flex-shrink:0}
.nw-logo img{height:48px;width:auto;display:block}
.nw-mnav{display:flex;gap:20px;align-items:center;margin:0 auto}
.nw-mnav a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14.5px;font-weight:500;white-space:nowrap;padding:6px 0}
.nw-mnav a:hover{color:#c9a84c}
.nw-mnav a.here{color:#c9a84c;border-bottom:2px solid #c9a84c}
.nw-chip{display:flex;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;overflow:hidden;font-size:13px;font-weight:700;flex-shrink:0;font-family:'DM Sans',system-ui,sans-serif}
.nw-chip button{border:0;background:transparent;padding:7px 13px;cursor:pointer;font:inherit;color:rgba(255,255,255,.7)}
.nw-chip button.on{background:#fff;color:#0b1e2d}
.nw-login{background:#157a5a;color:#fff!important;text-decoration:none;font-weight:700;padding:10px 18px;border-radius:10px;white-space:nowrap;flex-shrink:0;font-family:'DM Sans',system-ui,sans-serif;font-size:15px}
.nw-login:hover{background:#116b4d}
.nw-mlogin{display:none}
.nw-burger{display:none;flex-shrink:0;border:0;background:transparent;cursor:pointer;padding:8px 4px}
.nw-burger span{display:block;width:22px;height:2px;background:#fff;margin:5px 0;border-radius:2px}
@media(max-width:920px){
  .nw-hdr-in{gap:12px}
  .nw-logo img{height:40px}
  .nw-mnav{display:none;position:absolute;top:100%;left:0;right:0;background:#0b1e2d;flex-direction:column;align-items:stretch;gap:0;padding:6px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08);margin:0}
  .nw-mnav.open{display:flex}
  .nw-mnav a{padding:13px 0;border-top:1px solid rgba(255,255,255,.08);font-size:16px}
  .nw-mnav a.here{border-bottom:0;border-left:3px solid #c9a84c;padding-left:10px}
  .nw-burger{display:block}
  .nw-hdr-in > .nw-login{display:none}
  .nw-mlogin{display:block;background:#157a5a;color:#fff;text-align:center;margin-top:14px;border-top:0!important;border-radius:10px;padding:13px!important;font-weight:700;text-decoration:none}
}
/* language visibility (nav/footer everywhere; page content on rebuilt pages) */
[data-lang="es"] [lang-en]{display:none}
[data-lang="en"] [lang-es]{display:none}
/* announcement bar is bottom-fixed by design (P0) — pin it there, immune to frame layout */
.nw-ann-bar{position:fixed!important;top:auto!important;bottom:0!important;left:0!important;right:0!important;margin:0!important;transform:none!important;z-index:9998}
/* footer */
.nw-ftr{background:#0b1e2d;color:rgba(255,255,255,.8);font-family:'DM Sans',system-ui,sans-serif}
.nw-ftr a{color:rgba(255,255,255,.85);text-decoration:none}
.nw-ftr a:hover{color:#c9a84c}
.nw-ftr-in{max-width:1080px;margin:0 auto;padding:48px 20px 30px;display:grid;gap:34px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.nw-ftr-col p{margin:7px 0;font-size:14.5px;line-height:1.6}
.nw-ftr-col h4{font-family:'Cormorant',serif;font-size:20px;color:#fff;margin:0 0 10px;letter-spacing:.03em}
.nw-ftr-brand img{margin-bottom:12px;height:64px;width:auto}
.nw-ftr-brand p{color:rgba(255,255,255,.6);font-size:14px;max-width:280px}
.nw-ftr-base{border-top:1px solid rgba(255,255,255,.1);text-align:center;padding:18px 20px;font-size:13px;color:rgba(255,255,255,.5)}
.nw-ftr-base a{color:rgba(255,255,255,.6)}
/* hide frozen WP frames */
div[data-elementor-type="header"],div[data-elementor-type="footer"]{display:none!important}
.elementor-element-4505f3c,.elementor-element-f021901{display:none!important}
/* old footer partial baked into page bodies: hide everywhere except the Contact page (it IS that page's content) */
.elementor-element-1cb7f36{display:none!important}
/* calendar page: frozen WP content is an empty void + stray button - hidden, native calendar owns the page */
.page-id-25377 div[data-elementor-type="wp-page"]{display:none!important}
/* inner in-flow WhatsApp button inside the partial (floating widget stays) */
.elementor-element-1cb7f36 a[href*="wa.me"],.elementor-element-1cb7f36 a[href*="whatsapp"]{display:none!important}

/* Floating WhatsApp widget (native pages; frozen pages use the baked joinchat plugin) */
.nw-wa{position:fixed;right:20px;bottom:20px;z-index:9990;display:flex;align-items:center;gap:10px;text-decoration:none}
.nw-wa-bubble{background:#fff;color:#0b1e2d;border:1px solid #e4ddcf;border-radius:999px;padding:9px 15px;font:500 14px 'DM Sans',system-ui,sans-serif;box-shadow:0 2px 12px rgba(11,30,45,.14);white-space:nowrap}
.nw-wa-fab{width:54px;height:54px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(11,30,45,.25);flex-shrink:0}
.nw-wa-fab svg{width:30px;height:30px;fill:#fff}
.nw-wa:hover .nw-wa-fab{background:#1ebe5d}
@media(max-width:640px){.nw-wa-bubble{display:none}}
