/* Shared public components, loaded after the catalogue and offcanvas styles. */
#cabecera .navegacion-cabecera {
  display: contents;
}

#cabecera .catalogo-toggle {
  width: auto;
  color: #111;
}

#cabecera .catalogo-toggle p {
  color: inherit;
}

#cabecera .catalogo-toggle span,
#cabecera .catalogo-toggle span::before,
#cabecera .catalogo-toggle span::after {
  background: #c54d4a;
}

#cabecera .catalogo-toggle:hover,
#cabecera .catalogo-toggle:focus-visible {
  color: #c54d4a;
}

#cabecera .catalogo-toggle:hover span,
#cabecera .catalogo-toggle:hover span::before,
#cabecera .catalogo-toggle:hover span::after,
#cabecera .catalogo-toggle:focus-visible span,
#cabecera .catalogo-toggle:focus-visible span::before,
#cabecera .catalogo-toggle:focus-visible span::after {
  background: #111;
}

@media (min-width: 900px) {
  #cabecera .navegacion-cabecera {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 5px 0;
  }

  #cabecera .navegacion-cabecera .catalogo-toggle {
    position: relative;
    top: auto;
    left: auto;
    float: none;
    flex: 0 0 auto;
    box-sizing: border-box;
    min-height: 40px;
    margin: 0;
    padding: 0 0 0 45px;
  }

  #cabecera .navegacion-cabecera .catalogo-toggle p {
    margin: 0;
    font-size: 16px;
    line-height: 20px;
    text-align: left;
  }

  #cabecera .navegacion-cabecera .zoninf {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    margin: 0;
  }
}

/* Reapply the home menu theme after the offcanvas demo bundle.
 * Keep these rules aligned with estilos_dv_alr.css for the other layouts. */
body.theme-default .hc-offcanvas-nav .nav-container, body.theme-default .hc-offcanvas-nav .nav-wrapper, body.theme-default .hc-offcanvas-nav ul { background: #fff;}
body.theme-default .hc-offcanvas-nav .nav-content>h2, body.theme-default .hc-offcanvas-nav .nav-content>h3, body.theme-default .hc-offcanvas-nav .nav-content>h4, body.theme-default .hc-offcanvas-nav .nav-content>h5, body.theme-default .hc-offcanvas-nav .nav-content>h6{ color:#c94b43;}
body.theme-default .hc-offcanvas-nav .nav-content h2 { padding: 15px 0 8px; margin-bottom: 0; background-color:#fff;}
body.theme-default .hc-offcanvas-nav .nav-content>.nav-close a {background: #c94b43; box-sizing: border-box;}
body.theme-default .hc-offcanvas-nav .nav-content>.nav-close a:hover {background: radial-gradient(farthest-corner at top right, rgba(201,75,67,.5), rgba(201,75,67,1));}
body.theme-default .hc-offcanvas-nav .nav-close-button span {top:10px;}
.hc-offcanvas-nav li .nav-item-wrapper .nav-item-link::before {content:none!important;}
body.theme-default .hc-offcanvas-nav .nav-item-link, body.theme-default .hc-offcanvas-nav li.nav-close a, body.theme-default .hc-offcanvas-nav .nav-back a {border-bottom: 1px solid #ccc; color:#c94b43;}
body.theme-default .hc-offcanvas-nav .nav-item-link:hover, body.theme-default .hc-offcanvas-nav li.nav-close:hover a {color:#fff;}
body.theme-default .hc-offcanvas-nav .nav-back a { color:#fff;}
body.theme-default .hc-offcanvas-nav .nav-next span::before {border-top: 2px solid #c94b43; border-left: 2px solid #c94b43;}
body.theme-default .hc-offcanvas-nav .nav-back span::before {border-top: 2px solid #fff; border-left: 2px solid #fff;}
body.theme-default .hc-offcanvas-nav .nav-next:hover span::before, body.theme-default .hc-offcanvas-nav .nav-back:hover span::before {border-top: 2px solid #fff; border-left: 2px solid #fff;}
body.theme-default .hc-offcanvas-nav .nav-item-link:hover .nav-next span::before, body.theme-default .hc-offcanvas-nav .nav-item-link:hover .nav-back span::before { border-top: 2px solid #fff; border-left: 2px solid #fff;}
body.theme-default .hc-offcanvas-nav .nav-wrapper>.nav-content>ul:not(:last-child) { /*border-bottom: 2px solid #ccc;*/ border-bottom: none;}
body.theme-default .hc-offcanvas-nav .nav-content>.nav-close:first-child a, body.theme-default .hc-offcanvas-nav .nav-title+.nav-close a.has-label, body.theme-default .hc-offcanvas-nav li.nav-close a, body.theme-default .hc-offcanvas-nav .nav-back a {  background: #c94b43; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;}
body.theme-default .hc-offcanvas-nav .nav-wrapper>.nav-content>ul:first-of-type>li:first-child:not(.nav-back):not(.nav-close)>.nav-item-wrapper>.nav-item-link {border-top: 1px solid #ccc;}
body.theme-default .hc-offcanvas-nav .nav-wrapper>.nav-content>ul:first-of-type>li:first-child:not(.nav-back):not(.nav-close)>.nav-item-wrapper>.nav-item-link+a { border-top: 1px solid #ccc;}
body.theme-default .hc-offcanvas-nav a.nav-next { border-left: 1px solid #ccc; border-bottom: 1px solid #ccc;}
body.theme-default .hc-offcanvas-nav:not(.touch-device) li:not(.nav-item-custom) a:not([disabled]):hover { background: #c94b43;}
body.theme-default .hc-offcanvas-nav .nav-custom-content {border-bottom: 1px solid #ccc;}

/* Both header variants use the same complete, scaled social icons. */
#cabecera .cabeceracont .redessoc .face,
#cabecera .cabeceracont .redessoc .twitt,
#cabecera .cabeceracont .redessoc .link {
  display: inline-block;
  width: 32px;
  height: 32px;
  margin: 0 2px;
  padding: 0;
  vertical-align: top;
}

#cabecera .cabeceracont .redessoc .face a,
#cabecera .cabeceracont .redessoc .twitt a,
#cabecera .cabeceracont .redessoc .link a {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

#cabecera .cabeceracont .redessoc .face a { background-image: url('/css/img/ico_face.png'); }
#cabecera .cabeceracont .redessoc .face a:hover { background-image: url('/css/img/ico_face_h.png'); }
#cabecera .cabeceracont .redessoc .twitt a { background-image: url('/css/img/ico_twitter.png'); }
#cabecera .cabeceracont .redessoc .twitt a:hover { background-image: url('/css/img/ico_twitter_h.png'); }
#cabecera .cabeceracont .redessoc .link a { background-image: url('/css/img/ico_link.png'); }
#cabecera .cabeceracont .redessoc .link a:hover { background-image: url('/css/img/ico_link_h.png'); }

/* Keep the email field and consent rows inside one centred panel. */
#secc-suscripcion #formsubscrib {
  box-sizing: border-box;
  width: 100%;
  max-width: 600px;
  margin: 20px auto;
  padding: 20px;
  background: #f2f2f2;
}

#secc-suscripcion #formsubscrib label {
  box-sizing: border-box;
  width: 100%;
  text-align: left;
}

#secc-suscripcion #formsubscrib .entrada {
  box-sizing: border-box;
  width: 100%;
  height: 36px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid #ddd;
  background: #fff;
}

#secc-suscripcion #formsubscrib label.mt18 {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 16px 0 0;
}

#secc-suscripcion #formsubscrib input.aceptpoli {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  padding: 0;
}

#secc-suscripcion #formsubscrib span.txtacept {
  display: block;
  flex: 1;
  width: auto;
  margin: 0;
  font-size: 14px;
  line-height: 20px;
}

#secc-suscripcion #formsubscrib input.btsubscri {
  display: block;
  width: 106px;
  height: 28px;
  margin: 20px auto 0;
  padding: 0;
}
