/* ====== HEADER NAV envios.com.pe (hd) ====== */
header.hd{position:-webkit-sticky;position:sticky;top:0;z-index:999;height:auto;background:rgba(255,255,255,.96);border-bottom:1px solid #eceff5;
  box-shadow:0 2px 14px rgba(15,38,70,.05);backdrop-filter:blur(10px);transition:box-shadow .22s ease,background .22s ease}
.hd-in{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:clamp(10px,1.4vw,22px);
  box-sizing:border-box;height:60px;padding:5px clamp(14px,2.2vw,30px);transition:height .24s ease,padding .24s ease}
.hd-logo{flex:0 0 auto;display:flex;align-items:center}
.hd-logo img{height:34px;max-width:min(210px,24vw);width:auto;object-fit:contain;display:block;transition:height .24s ease}

/* nav */
.hd-nav{margin-left:auto}
.hd-nav > ul{display:flex;align-items:center;gap:clamp(2px,.6vw,10px);margin:0;padding:0;list-style:none}
.hd-nav > ul > li{position:relative}
.hd-nav a{display:flex;align-items:center;gap:7px;padding:9px clamp(7px,.75vw,13px);border-radius:6px;
  font-size:clamp(11.5px,.92vw,14px);font-weight:700;color:#0f2452;text-decoration:none;
  white-space:nowrap;transition:.2s;outline:none}
.hd-nav a:hover,.hd-nav li.on > a{color:#d31220;background:#fdf3f4}
.hd-nav a:focus-visible,.hd-ic:focus-visible,.hd-cta:focus-visible,.hd-close:focus-visible,.hd-sf button:focus-visible,
.hd-sres a:focus-visible{outline:2px solid rgba(211,18,32,.35);outline-offset:2px}
.hd-nav .eb-nav-caret{position:relative!important;inset:auto!important;display:block!important;align-self:center;flex:0 0 auto;
  width:7px;height:7px;margin:-4px 1px 0 3px;border-right:1.7px solid #667085;border-bottom:1.7px solid #667085;
  border-left:0!important;border-top:0!important;background:none!important;box-shadow:none!important;
  line-height:0;transform:rotate(45deg);transform-origin:center;transition:transform .2s,border-color .2s}
.hd-nav li.on > a .eb-nav-caret{margin-top:4px;transform:rotate(225deg);border-color:#d31220}

/* Header compacto al desplazarse. */
header.hd.is-compact{background:rgba(255,255,255,.985);box-shadow:0 10px 30px rgba(15,38,70,.13)}
header.hd.is-compact .hd-in{height:52px;padding-top:3px;padding-bottom:3px}
header.hd.is-compact .hd-logo img{height:29px}
header.hd.is-compact .hd-nav a{padding-top:7px;padding-bottom:7px}

/* dropdown nivel 1 */
.hd-nav li{position:relative}
.hd-menu{position:absolute;left:0;top:calc(100% + 8px);min-width:230px;background:#fff;
  border:1px solid #eceff5;border-top:3px solid #d31220;border-radius:0 0 10px 10px;
  box-shadow:0 20px 44px rgba(15,38,70,.16);padding:7px;margin:0;list-style:none;
  opacity:0;visibility:hidden;pointer-events:none;z-index:920;transform:translateY(-6px);transition:.2s}
.hd-nav li:hover > .hd-menu,.hd-nav li.on > .hd-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.hd-menu:before{content:"";position:absolute;left:0;right:0;top:-11px;height:11px}
.hd-menu > li > a{justify-content:space-between;padding:10px 13px;font-weight:600;
  font-size:clamp(12px,.95vw,13.5px)}
.hd-menu > li > a:hover{background:#fdf3f4;color:#d31220}

/* dropdown nivel 2 */
.hd-sub{position:absolute;left:100%;top:-8px;min-width:225px;max-height:70vh;overflow:auto;
  background:#fff;border:1px solid #eceff5;border-left:3px solid #d31220;border-radius:0 10px 10px 0;
  box-shadow:0 20px 44px rgba(15,38,70,.16);padding:7px;margin:0;list-style:none;
  opacity:0;visibility:hidden;pointer-events:none;z-index:930;transform:translateX(-6px);transition:.2s}
.hd-menu > li:hover > .hd-sub,.hd-menu > li.on > .hd-sub{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.hd-sub a{padding:9px 13px;font-weight:500;font-size:clamp(11.5px,.92vw,13px);color:#5b6472}
.hd-sub a:hover{background:#fdf3f4;color:#d31220}
.hd-sub a small{margin-left:auto;font-size:10px;font-weight:800;color:#a3abba;letter-spacing:.05em}

/* acciones */
.hd-acts{display:flex;align-items:center;gap:clamp(6px,.7vw,10px);flex:0 0 auto}
.hd-ic{width:clamp(36px,3.2vw,42px);height:clamp(36px,3.2vw,42px);border:1px solid #e6eaf1;border-radius:8px;
  background:#fff;color:#0f2452;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:clamp(14px,1.2vw,16px);transition:.2s}
.hd-ic:hover{border-color:#d31220;color:#d31220;background:#fdf3f4}
.hd-cta{display:inline-flex;align-items:center;gap:9px;padding:clamp(10px,1.1vw,13px) clamp(14px,1.5vw,24px);
  border-radius:8px;background:#d31220;color:#fff;font-size:clamp(11px,.92vw,13.5px);font-weight:800;
  letter-spacing:.03em;text-transform:uppercase;text-decoration:none;white-space:nowrap;
  box-shadow:0 10px 22px rgba(211,18,32,.26);transition:.25s}
.hd-cta:hover{background:#b30f1b;color:#fff}
.hd-burger{display:none}
.hd-mobile-contact,.hd-menu-overlay{display:none}
.hd-ic svg,.hd-close svg,.hd-cta svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}

@media (prefers-reduced-motion: reduce) {
  .hd-nav a,.hd-nav .eb-nav-caret,.hd-ic,.hd-cta,.hd-search,.hd-menu,.hd-sub,.hd-logo img,header.hd,.hd-in{transition:none!important}
}

/* buscador */
.hd-search{position:fixed;inset:0;z-index:1000;background:rgba(15,33,64,.6);backdrop-filter:blur(3px);
  display:none;align-items:flex-start;justify-content:center;padding:clamp(50px,10vh,120px) 16px 20px}
.hd-search.open{display:flex}
.hd-sbox{width:100%;max-width:640px;background:#fff;border-radius:12px;overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.4)}
.hd-sf{display:flex;align-items:center;gap:12px;padding:clamp(13px,1.5vw,18px);border-bottom:1px solid #eceff5}
.hd-sf i{color:#667085;font-size:16px}
.hd-sf input{flex:1;min-width:0;border:0;outline:0;font-family:inherit;font-size:clamp(14px,1.2vw,16px);
  color:#0f2452;background:transparent}
.hd-sf button{border:0;background:#f2f4f8;color:#5b6472;border-radius:6px;cursor:pointer;font-family:inherit;
  font-size:11px;font-weight:700;padding:6px 10px}
.hd-sf button:hover{background:#fdf0f1;color:#d31220}
.hd-sres{max-height:min(60vh,420px);overflow:auto;padding:7px}
.hd-sres a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:8px;
  text-decoration:none;color:#0f2452;transition:.15s}
.hd-sres a:hover,.hd-sres a.sel{background:#fdf3f4}
.hd-sres .ico{width:32px;height:32px;border-radius:7px;background:#f2f4f8;color:#d31220;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;font-size:13px}
.hd-sres b{display:block;font-size:13.5px;font-weight:700}
.hd-sres span{display:block;font-size:11.5px;color:#667085;margin-top:2px}
.hd-snone{padding:26px 16px;text-align:center;color:#667085;font-size:13px}

@media(max-width:1150px){
  body.menu-open, body.search-open { overflow:hidden;height:100vh }
  /* backdrop-filter crea un bloque contenedor para los hijos fixed en varios
     navegadores. En movil se desactiva para que el panel mida el viewport. */
  header.hd,header.hd.is-compact{backdrop-filter:none;-webkit-backdrop-filter:none}
  .hd-burger{display:flex;order:3}
  .hd-acts{margin-left:auto}
  .hd-ic.hd-searchbtn{order:1}
  .hd-cta{order:2}
  .hd-nav{position:fixed;left:0;top:0;bottom:0;width:min(84vw,320px);margin:0;background:#071a36;color:#fff;z-index:1002;
    display:block;overflow-y:auto;padding:92px 16px 32px;box-sizing:border-box;box-shadow:8px 0 28px rgba(0,0,0,.3);
    transform:translateX(-105%);visibility:hidden;transition:transform .28s ease,visibility .28s}
  .hd-nav.open{transform:translateX(0);visibility:visible}
  .hd-menu-overlay{display:block;position:fixed;inset:0;z-index:1001;border:0;padding:0;background:rgba(18,41,75,.68);
    opacity:0;visibility:hidden;transition:opacity .28s,visibility .28s;cursor:pointer}
  body.menu-open .hd-menu-overlay{opacity:1;visibility:visible}
  .hd-nav > ul{flex-direction:column;align-items:stretch;gap:2px}
  .hd-nav a{padding:13px 0;font-size:14px;color:#fff;border-bottom:1px solid #343434;border-radius:0;justify-content:space-between}
  .hd-nav a:hover,.hd-nav li.on>a{color:#fff;background:transparent}
  .hd-nav>ul>li>a .eb-nav-caret{width:30px!important;height:30px!important;margin:-7px 0!important;border:0!important;
    background:#d31220!important;transform:none!important;display:flex!important;align-items:center;justify-content:center}
  .hd-nav>ul>li>a .eb-nav-caret:after{content:'›';font-size:25px;font-weight:700;line-height:1;color:#fff;transform:none}
  .hd-nav>ul>li.on>a .eb-nav-caret:after{transform:rotate(90deg)}
  .hd-menu,.hd-sub{position:static;opacity:1;visibility:visible;pointer-events:auto;transform:none;display:none;
    box-shadow:none;background:#0b2348;border:0;border-left:2px solid #d31220;border-radius:0;margin:0 0 4px 8px;padding:0 0 0 10px;max-height:none}
  .hd-nav li.on > .hd-menu,.hd-menu > li.on > .hd-sub{display:block}
  .hd-menu > li > a,.hd-sub a{font-size:13px;padding:11px 4px;color:#eee;border-color:#383838}
  .hd-close{position:absolute;right:14px;top:23px;width:34px;height:34px;border-radius:0;
    border:0;background:transparent;color:#fff;font-size:18px;cursor:pointer;
    display:flex;align-items:center;justify-content:center}
  .hd-navlogo{position:absolute;left:16px;right:62px;top:18px;height:42px;padding:0;border:0!important;display:flex;align-items:center}
  .hd-navlogo img{display:block;max-width:190px;max-height:40px;width:auto;filter:brightness(0) invert(1)}
  .hd-mobile-contact{display:block;margin-top:20px;padding-top:2px}
  .hd-mobile-contact>a{justify-content:flex-start;gap:11px;border:0;padding:8px 0;font-size:13px;font-weight:600;color:#fff}
  .hd-mobile-contact>a i{display:flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:#d31220;color:#fff;font-size:12px}
  .hd-mobile-social{display:flex;align-items:center;gap:8px;margin-top:10px}
  .hd-mobile-social a{width:31px;height:31px;padding:0;border:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px}
  .hd-mobile-social a:hover{color:#d31220}

  /* Cuando el usuario esta conectado, el menu comienza debajo de la barra WP
     y conserva el resto de la altura de la pantalla. */
  body.admin-bar .hd-nav{top:32px}
  body.admin-bar .hd-menu-overlay{top:32px}
}
@media(min-width:1151px){
  /* El logo del panel es tambien un enlace y la regla `.hd-nav a` tiene mayor
     especificidad. Se fuerza su ocultacion para que no deforme el escritorio. */
  header.hd .hd-nav>.hd-navlogo,
  header.hd .hd-nav>.hd-close,
  header.hd .hd-mobile-contact,
  header.hd .hd-menu-overlay{display:none!important}
}
@media(max-width:560px){
  .hd-cta span{display:none}
  .hd-cta{padding:11px 13px}
}
@media(max-width:782px){
  body.admin-bar .hd-nav{top:46px}
  body.admin-bar .hd-menu-overlay{top:46px}
}
/* La pagina Reservas reutiliza solamente el formulario operativo; se oculta
   la antigua presentacion de registro de cuentas. */
body.eb-reservas .ax-ph,body.eb-reservas .ax-sec{display:none!important}
/* Barra de administraci\u00f3n de WordPress: no debe tapar el encabezado sticky. */
body.admin-bar header.hd{top:32px}
@media(max-width:782px){body.admin-bar header.hd{top:46px}}
