#site-header {
  background: #fff;
  position: relative;
  max-width: 1800px;
  margin: auto;
  font-family: var(--tipoMontserratMedium);
  z-index: 99999996;
}

.header-footer-group,
body:not(.overlay-header) #site-header .toggle,
.menu-modal .toggle {
  color: #000000;
}

.header-inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 2.8rem 0;
  max-width: 168rem;
  /* padding: 3.15rem 0; */
  padding: 1.5rem 0;
  z-index: 100;
  background-color: rgb(255 255 255 / 80%);
}

.section-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 120rem;
  width: calc(100% - 4rem);
}

.header-titles-wrapper {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0 4rem;
  text-align: center;
}

.header-navigation-wrapper {
  display: none;
}

.menu_main_nav_area {
  display: none;
}
.primary-menu > li > a {
  font-weight: 500;
  font-size: calc(var(--tamanio-base) * 0.85rem);
}
.primary-menu > li > a > span {
  font-weight: 300;
}

.primary-menu > li.herosMenu > a {
  font-weight: 900;
}

.primary-menu ul {
  padding-left: unset;
}
.primary-menu li {
  list-style: none;
}
.primary-menu > li:hover > a {
  /*border-bottom: 1px solid var(--primario1);*/
}

ul.primary-menu {
  display: flex;
  font-size: calc(var(--tamanio-base) * 1.6rem);
  font-weight: 500;
  letter-spacing: -0.0277em;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 0 0 -1.6rem;
  list-style: none;
  padding-left: 0;
  align-items: center;
  /* overflow-y: scroll; */
  /* overflow-x: hidden; */
}

.primary-menu > li {
  margin: 0.8rem 0 0 1.6rem;
}

.primary-menu li {
  font-size: calc(var(--tamanio-base) * 0.9rem);
  line-height: 1.25;
  position: relative;
}

.primary-menu a {
  color: inherit;
  display: block;
  line-height: 1.2;
  text-decoration: none;
  word-break: normal;
  word-wrap: normal;
}

.primary-menu > li > ul {
  background: #000;
  border-radius: 0.4rem;
  color: #fff;
  font-size: 1.7rem;
  opacity: 0;
  padding: 0;
  position: absolute;
  right: 9999rem;
  /* top: calc(100% + 2rem); */
  top: calc(100% + 1.8rem);
  transition: opacity 0.15s linear, transform 0.15s linear, right 0s 0.15s;
  transform: translateY(0.6rem);
  width: 20rem;
  z-index: 1;
  list-style: none;
  margin: 0;
  box-shadow: 0 0 8px 0 rgb(0 0 0 / 20%);
}

body:not(.overlay-header) .primary-menu ul {
  background-color: rgb(255 255 255 / 80%);
}

.primary-menu ul a {
  background: transparent;
  border: none;
  color: var(--primario2);
  display: block;
  padding: 1rem 2rem;
  transition: background-color 0.15s linear;
  width: 100%;
}

.parten > a::after {
  font-family: "Font Awesome 6 Free";
  content: "\f078";
  font-size: calc(var(--tamanio-base) * 0.9rem);
  line-height: calc(var(--tamanio-base) * 2rem);
  margin-left: 0.5rem;
  font-weight: 900;
}

.parten2 > a::after {
  font-family: "Font Awesome 6 Free";
  content: "\f106";
  font-size: calc(var(--tamanio-base) * 1rem);
  line-height: calc(var(--tamanio-base) * 2rem);

  margin-left: 0.6rem;
}

.fal {font-family: "Font Awesome 6 Free";}

.tituloSeccion.parten > a::after {
  content: "";
}
.tituloSeccion > a > i::after {
  font-family: "Font Awesome 6 Free";
  content: "\f078";
  font-size: calc(var(--tamanio-base) * 0.9rem);
  line-height: calc(var(--tamanio-base) * 2rem);
  margin-left: 0.5rem;
  font-style: normal;
}
.tituloSeccion > a > i.cerrar::after {
  content: "\f106";
}

ul.sub-menu.SubmenuMovil {
  position: relative;
  display: block;
  left: 0px;
  opacity: 1;
  top: 0rem;
}
.menu-btn {
  display: block;
  margin: 1rem;
  width: 25px;
  height: 25px;
  cursor: pointer;
}

.menu-btn:before,
.menu-btn:after {
  background-color: #000;
  content: "";
  display: block;
  height: 3px;
  transition: all 200ms ease-in-out;
  cursor: pointer;
}

.menu-btn:before {
  box-shadow: 0 10px 0 #000;
  margin-bottom: 16px;
}

.menu-btn.open:before {
  box-shadow: 0 0 0 #000;
  transform: translateY(10px) rotate(45deg);
  cursor: pointer;
}

.menu-btn.open:after {
  transform: translateY(-10px) rotate(-45deg);
  cursor: pointer;
}

/*AJUSTES MENU*/
#menu_main_nav_area {
  /*height: calc(100vh - 1.8rem);*/
}

li.agrupador > a {
  display: none !important;
  content: "";
  cursor: default;
  color: var(--primario1);
}

li.tituloGeneral {
  padding: 0 !important;
}

li.tituloGeneral > a {
  pointer-events: none;
  cursor: default;
  color: white !important;
  font-weight: 900;
  font-size: calc(var(--tamanio-base) * 1.3rem) !important;
  padding: 0 !important;
}

li.tituloGeneral > a::after {
  content: "";
}

li.tituloSeccion > a > span {
  font-weight: 700;
  /* border-bottom: 1px solid var(--primario1); */
}

li.agrupador ul.sub-menu li {
  padding: 0;
}

li.agrupador ul.sub-menu li a {
  /* padding: 0; */
}

/* CAJAS MENU */
/* Caja Azul */
.primary-menu li.megaMenu li.ofetaAzul {
  background-color: var(--primario1) !important;
  padding: 25px !important;
  border-radius: 15px !important;
  margin-bottom: 10px;
  /* box-shadow: 0 0 8px 0 rgb(0 0 0 / 20%);*/
}



/* Caja Gris */
.primary-menu li.megaMenu li.ofertaGris {
  background-color: #f5f5f5;
  padding: 25px !important;
  border-radius: 15px !important;
  margin-bottom: 10px;
  /* box-shadow: 0 0 8px 0 rgb(0 0 0 / 20%); */
}

/* CAJA Amarilla  */
.primary-menu li.megaMenu li.ofertaAmarilla {
    background-color: #ffed02;
    padding: 25px !important;
    border-radius: 15px !important;
    margin-bottom:10px;
}

/* Caja Negra */
.primary-menu li.megaMenu li.ofertaNegra {
  background-color: #000 !important;
  padding: 25px !important;
  border-radius: 15px !important;
  margin-bottom: 10px;
}

.primary-menu li.megaMenu li.ofertaNegra a,.primary-menu li.megaMenu li.ofertaNegra span {
  color:white;
}



.primary-menu li.megaMenu li.ofetaAzul a,
.primary-menu li.megaMenu li.ofertaGris a,
.primary-menu li.megaMenu li.ofertaAmarilla a,
.primary-menu li.megaMenu li.ofertaNegra a {
  display: flex;
  flex-direction: column;
}

.primary-menu li.megaMenu li.ofertaGris a span {
  font-size: calc(var(--tamanio-base) * 0.8rem);
  color: black;
  display: block;
}
.primary-menu li.megaMenu li.ofetaAzul a span {
  font-size: calc(var(--tamanio-base) * 0.8rem);
  color: white;
  display: block;
}

/* TITULO Caja Azul */
.primary-menu li.megaMenu li.ofetaAzul a span.novedad,.primary-menu li.megaMenu li.ofertaNegra a span.novedad {
    color: #ffffff;
    font-weight: 900;
    margin-bottom: 5px;
}

/* TITULO Caja Gris */
.primary-menu li.megaMenu li.ofertaGris a span.novedad {
    color: var(--primario1);
    font-weight: 900;
    margin-bottom: 5px;
}

/* TITULO Caja Amarilla */
.primary-menu li.megaMenu li.ofertaAmarilla a span.novedad {
    color: black;
    font-weight: 900;
    margin-bottom: 5px;
}

/* .primary-menu li.megaMenu li.ofertaGris a span.novedad,
.primary-menu li.megaMenu li.ofetaAzul a span.novedad {
  color: #ff7f7d;
  font-weight: 900;
  margin-bottom: 5px;
} */

.primary-menu li.megaMenu li.ofertaGris a span.opcion {
  font-size: calc(var(--tamanio-base) * 0.7rem);
}
.primary-menu li.megaMenu li.ofetaAzul a span.opcion {
  font-size: calc(var(--tamanio-base) * 0.7rem);
}

/* CONTENIDO Caja Amarilla */
.primary-menu li.megaMenu li.ofertaAmarilla a span {
    font-size: calc(var(--tamanio-base) * 0.8rem);
}

/* END CAJAS MENU */

/*AJUSTES MENU*/
@media (min-width: 300px) {
  .header-inner {
    padding: 0.4rem 0;
  }
  .menuMovil {
    position: absolute;
    left: 0;
    background-color: black;
    top: 85px;
    color: white;
    width: 100%;
    height: calc(100vh - 4.1rem);
    overflow-y: scroll;
    font-family: var(--tipoNeueMachina-bold);
  }

  ul.sub-menu.SubmenuMovil {
    position: relative;
    display: block;
    left: 0px;
    opacity: 1;
    top: 0rem;
  }

  ul.primary-menu {
    flex-direction: column;
  }

  .primary-menu li {
    text-align: left;
    width: 100%;
    padding: 0 1.5rem 0 0.5rem;
  }

  .primary-menu ul li {
    line-height: 100%;
  }
  .primary-menu ul a {
    text-align: left;
    background-color: transparent;
    color: white;
    padding: 0 1rem;
    font-size: calc(var(--tamanio-base) * 0.8rem);
  }

  body:not(.overlay-header) .primary-menu ul {
    background-color: var(--primario2);
  }

  .header-inner {
    /* justify-content: space-around; */
    justify-content: center;
  }

  .section-inner {
    width: calc(100% - 0rem);
  }

  .header-titles-wrapper {
    padding: 0 1.5rem;
  }

  .header-titles {
    text-align: left;
  }

  .primary-menu > li {
    border-bottom: 1px solid white;
  }
  .primary-menu > li:last-child {
    border-bottom: none;
    padding-bottom: 1rem;
  }
  .primary-menu li.menu-item-has-children:hover > ul,
  .primary-menu li.menu-item-has-children:focus > ul,
  .primary-menu li.menu-item-has-children.focus > ul {
    transform: translateY(0.1rem);
  }

  /*MENU MÓVIL 22/05/2022 03:50*/
  .menu_main_nav_area.menuMovil .primary-menu li a {
    padding: 10px 20px 10px 20px;
    font-size:24px;
    line-height: 1.3;    
    font-family: var(--tipoNeueMachina-bold);
  }
  .menu_main_nav_area.menuMovil li.tituloSeccion > ul.sub-menu > li > a {
    padding: 10px 20px 2px 20px;    
    font-family: var(--tipoNeueMachina-bold);
  }
}


@media (min-width: 700px) {
  .section-inner {
    width: calc(100% - 0rem);
  }
}

@media (min-width: 1000px) {
  .primary-menu li.menu-item-has-children:hover > ul,
  .primary-menu li.menu-item-has-children:focus > ul,
  .primary-menu li.menu-item-has-children.focus > ul {
    left: 0;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.15s linear, transform 0.15s linear;
  }

  .mobile-nav-toggle {
    display: none;
  }

  body:not(.overlay-header) .primary-menu ul {
    background-color: white;
    border-radius: 0;
  }
  ul.primary-menu {
    overflow-y: unset;
  }

  .primary-menu ul a {
    background-color: transparent;
    color: var(--primario2);
  }
  .section-inner {
    width: calc(100% - 4rem);
  }
  .primary-menu > li:last-child {
    padding-bottom: 0;
    background: var(--primario1);
    color: var(--blanco);
  }
  .primary-menu li.menu-item-has-children:hover > ul,
  .primary-menu li.menu-item-has-children:focus > ul,
  .primary-menu li.menu-item-has-children.focus > ul {
    transform: unset;
  }
  .primary-menu > li {
    border-bottom: none;
    width: inherit;
    padding: 0;
    margin: 0 0 0 0.61rem;
  }

  ul.primary-menu {
    flex-direction: row;
  }

  .primary-menu > li > a {
    padding: 30px 0;
  }

  ul.primary-menu > li.parten > a::after {
    font-size: calc(var(--tamanio-base) * 0.7rem);
  }

  .primary-menu li {
    font-size: calc(var(--tamanio-base) * 0.7rem);
  }

  button.toggle.nav-toggle.mobile-nav-toggle {
    display: none;
  }

  .header-titles-wrapper {
    margin-right: 0rem;
    max-width: 143px;
    padding: 0;
    text-align: left;
  }

  .header-navigation-wrapper {
    align-items: center;
    display: flex;
  }

  .menu_main_nav_area {
    display: block;
    width: 100%;
  }

  .header-inner {
    justify-content: space-around;
  }

  /*============LANDING==============*/
  .Header-custom2 {
    justify-content: flex-start;
  }
  .section-innerLanding {
    width: 100%;
  }
  .header-titles-wrapperLanding {
    margin-right: 0rem;
    max-width: 143px;
    padding: 0;
    text-align: left;
    margin-left: 10rem;
  }

  .header-innerLanding {
    padding: 0.6rem 0;
    background: var(--blanco);
  }
  /*============END LANDING==============*/

  /*DISEÑO MENÚ ORDENADOR*/
  li.tituloSeccion {
    margin-bottom: 25px;
  }

  li.tituloGeneral > a {
    color: var(--primario1) !important;
  }

  li.tituloSeccion > a:after {
    content: "";
  }
  .tituloSeccion > a > i {
    display: none;
  }

  .primary-menu li.megaMenu {
    position: unset;
  }
  .primary-menu li.megaMenu a:hover {
    color: var(--primario1) !important;
  }

  .primary-menu li.megaMenu > .sub-menu {
    display: none;
    position: absolute;
    min-width: 60vw;
    top: 60px;
    padding: 40px;
    left: calc(40vw / 2);
    background-color: rgba(255, 255, 255, 1) !important;
  }
  .primary-menu li.megaMenu:hover > .sub-menu {
    display: block;
    position: absolute;
    /* min-width: 80vw; */ /* Cambio JD 04/07/2025 */
    min-width: 70vw;
    /* top: 80px; */
    top: 75px;
    padding: 20px;
    /* padding: 40px; */
    /* left: calc(20vw / 2); */
    left: calc(30vw / 2);
  }
  #menu_main_nav_area > li > .sub-menu > li .sub-menu {
    display: flex;
    position: relative;
    left: unset;
    visibility: visible;
    opacity: 1;
    background: transparent !important;
    padding: 0;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  #menu_main_nav_area > li > .sub-menu > li > .sub-menu > li {
    width: 33%;
  }

  /*DISEÑO MENÚ ORDENADOR*/
}

@media (min-width: 1000px) {
  /* .menu_main_nav_area .primary-menu li a {
    padding: 21px 10px 19px 10px;
  } */
  .primary-menu > li:last-child > a {
    padding: 10px 16px; 
  }
}

@media (min-width: 1200px) {
  .menu_main_nav_area .primary-menu li a {
    /* padding: 21px 20px 19px 20px; */
    padding: 21px 22px 19px 22px;
  }
  .primary-menu > li:last-child > a {
    padding: 10px 16px;
  }
}

@media (max-width: 999px) {
  .header-titles-wrapper {
    width: 95%;
    margin: auto;
  }
}



/* NEW Header */
.new-header > .header-inner{
  background-color: white!important;
  width: 100%;
  box-shadow: 0 0 7px 0px #00000020;
  min-height: 90px;
}

.new-header .primary-menu > li:last-child{
  background: var(--primario1);
}

.new-header .primary-menu > li:last-child a{
  letter-spacing: .2px;
}

.new-header > .header-inner > div{
width: 1400px;
display: flex;
justify-content: space-between;
align-items: center;
}




@media (max-width: 1500px) {

  .new-header > .header-inner > div {
    width: 100%;
    padding-left: 80px;
    padding-right: 80px;

}


}


@media (max-width: 1260px) and (min-width:1000px) {

     .menu_main_nav_area .primary-menu li a {
      padding: 21px 10px 19px 10px;
    } 
  
  }


@media (max-width: 1150px) and (min-width:1000px) {

.new-header>.header-inner>div {
  padding-left: 40px;
  padding-right: 40px;
}



}

/* Megamenu 2 (yoSOCIAL) */
.primary-menu li.megaMenu2 > .sub-menu {
    position: absolute;
    top: 75px;
    background-color: rgba(255, 255, 255, 1) !important;
}

/* ESTILOS JD MENU MOVIL 07/07/2025 */
.menuMovil ul.primary-menu {
    overflow-x: hidden !important;
}

.menuMovil .caja-categoriaPrincipal-Menu {
    padding-left: 0 !important;
}

.caja-auditoria-menu {
    background-color: #ffed02;
    color: black;
    display: flex;
    justify-content: center;
    margin: 0 !important;
    padding: 0px !important;
}

.caja-auditoria-menu a {
    font-weight: 900 !important;
    font-size: 18px !important;
}


.caja-consultanos-menu {
    background-color: var(--primario1) !important;
    color: white;
    display: flex;
    justify-content: center;
    margin: 0 !important;
    padding: 0px !important;
}

.caja-consultanos-menu a {
    font-weight: 900 !important;
    font-size: 18px !important;
}

.caja-categoriaPrincipal-Menu .SubmenuMovil li {
    border: 1px solid black;
    padding: 5px 0px 5px 0px;
    background-color: white;
}

.caja-categoriaPrincipal-Menu .SubmenuMovil li a {
    color: black;
}

.new-header .menuMovil .primary-menu > li:last-child {
    background: black;
    border-bottom: 1px solid wheat;
}

.menuMovil ul li > ul {
    width: 100%;
}

.menuMovil .parten > a::after,
.menuMovil .parten2 > a::after {
    content:"";
}



.menuMovil .primary-menu a {
  font-weight: 900 !important;
  font-size:20px;
}


/* END ESTILOS JD MENU MOVIL 07/07/2025 */
/*Apaño submenu*/

.submenu-toggle {
    display: none;
}


@media (min-width: 769px) { /* Este breakpoint es crucial que coincida con tu JS y móvil CSS */
    .menu-item-has-children > .sub-menu {
        display: none; 
        position: absolute;        
    }

    .menu-item-has-children:hover > .sub-menu {
        display: block;
    }

    .menu-item-has-children > a .submenu-toggle::after {
        content: none;
    }
}

@media (max-width: 768px) {
    .menuMovil .submenu-toggle {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 100vw;
      height: 100%;
      cursor: pointer;
      z-index: 2;
      background-color: transparent;
      font-size: 0.8em;
      color: inherit;
      transition: transform 0.3s ease;
      padding-right: 20px;
    }

    .menuMovil .submenu-toggle::after {
        font-family: "Font Awesome 6 Free";
        content: "\2193";
        font-size: calc(var(--tamanio-base) * 0.9rem);
        line-height: calc(var(--tamanio-base) * 2rem);
        margin-left: 0.5rem;
        font-weight: 900;
    }
    .menuMovil .menu-item-has-children.submenu-open .submenu-toggle {
        right: 30px;
        left:unset;
        width: 40px;        
        align-items: baseline;
    }

    .menu-item-has-children.submenu-open .submenu-toggle::after {
        content: "x";
    }
}

/* JD ESPACIO ENTRE ENLACES MENU */
li.agrupador ul.sub-menu li a {
    padding: 10px;
}