:root {
  --padding-menu: 24px;
}

ul.main-menu.level-0 > li.menu-item {
  border-top: 3px solid transparent; 
  position: relative;
}
ul.main-menu.level-0 > li.menu-item:hover > a.menu-link {
  color: rgba(0, 153, 75, 0.8) ;

}
ul.main-menu.level-0 > li.menu-item:hover  {
  border-top-color: transparent !important;


}
ul.main-menu.level-0 > li.menu-item::before {
  content: "";
  position: absolute;
  top: -3px; /* Se posiciona justo donde iría el borde */
  left: 0;
  width: 100%;
  height: 3px;
  background-color: rgba(217, 39, 45, 0.8);

  /* Estado inicial: 10px más arriba e invisible */
  transform: translateY(-10px);
  opacity: 0;
  transition: all 0.3s ease-in-out;

  /* CLAVE: Evita que bloquee el hover de los submenús */
  pointer-events: none; 
  z-index: 10;
}
ul.main-menu.level-0 > li.menu-item:hover::before {
  transform: translateY(0);
  opacity: 1;
}
.has-submenu .menu-item{
  position: relative;
}
.menu-section .submenu.level-2 {
  position: absolute;
  left: 100%;
  top: 0;
}
.menu-section ul,
.menu-section li{
  list-style: none;
  margin: 0;
  padding: 0;

}

.menu-section a{
  text-decoration: none;
}

.menu-section .main-menu{
  display: flex;
}

.menu-section .submenu{
  position: absolute;
  padding: 30px 0px;
  z-index: 0;
  background: white;
  opacity: 0;
  visibility: hidden;
  transition: all ease-in-out 0.3s;
  min-width: 240px;
  top: 100%;
  border-top: 4px solid green;
  padding-top:10px;
  margin-top: 35px;
  left: 50%;
  transform: translateX(-50%);
}
.menu-section .main-menu .submenu .has-submenu.menu-item > .menu-link {
  display: inline-block;
  width: calc(100% - 65px);
  padding-right: 40px;
}

.menu-section .main-menu .submenu > li {
  margin: var(--padding-menu) 0px 0px 10px;
  margin-right: 20px;
}
.menu-section .main-menu .submenu>li:first-child {
  padding-top: 0px;
}
.menu-section .main-menu .submenu > li a {
  padding: 0 41px 4px 11px;
}
.menu-section .has-submenu:hover > .submenu{
  opacity: 1;
  visibility: visible;
  z-index: 7;

}
.menu-section .menu-item > .has-submenu:hover > .submenu {
  box-shadow: 0px 4px 16px 0px rgba(17, 17, 26, 0.05), 0px 8px 32px 0px rgba(17, 17, 26, 0.05);
}
.menu-section .main-menu .submenu > li a.has-submenu:hover {
  border-bottom-color: 1px solid rgba(255, 255, 255, 0.2);;
}
.menu-section .main-menu .submenu > li.has-submenu .menu-arrow svg{
  transition: .5s ease;
}
/*
.menu-section .main-menu .submenu > li.has-submenu .submenu-toggle:checked ~ .menu-arrow svg {
  transform: rotate(180deg);
}
.menu-section .main-menu .has-submenu .menu-item .submenu-toggle:checked ~ .submenu.level-2 {
  margin-top: 14px;
  padding: 24px 0;
  transform: translateX(0%);

}*/
.submenu.submenu.level-2 li{
  display:none;
  transition:all ease 0.3s;
}/*
.menu-section .has-submenu .submenu-toggle:checked~.submenu.submenu.level-2 li{
  display:block;
}*/
{#.menu-section .submenu:not(.level-1){
  position: inherit;
  height: 0;
  padding: 0;
}#}

.menu-section .submenu-toggle{
  display: none;
}


.menu-section .has-submenu > .menu-arrow{
  cursor: pointer;
  margin-left: 5px;
}
.menu-section .main-menu .submenu .level-2 .menu-item {
  padding-right: 0px;
  padding-left: 0px;
}
.menu-section .main-menu .submenu .level-2 .menu-link > li a:hover:{
  border-bottom: transparent ;
}
.menu-section .main-menu .submenu .level-2 .menu-link {
  background: transparent;
  width: auto;
  {#padding: 0;#}
}
{#.menu-section .main-menu .submenu > li:hover, .menu-section .main-menu .submenu .level-2 > li a:hover {
  border-bottom: 2px solid rgba(1, 133, 183, 1.0);
}#}
.menu-section .main-menu .submenu .level-2 > li:hover, .menu-section .main-menu .submenu .level-2 > li {
  border-bottom-color: 1px solid rgba(255, 255, 255, 0.2);;
}
.menu-section .has-submenu >.submenu .level-2 {
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  transition: all .5s ease;
}/*
.menu-section .has-submenu .submenu-toggle:checked ~ .submenu{
  height: auto;
  opacity: 1;
  visibility: visible;
  z-index: 7;
}*/
@media screen and (max-width:790px){
  .menu-section{
    width: 340px !important;
  }
}
@media screen and (min-width: 791px) {
.menu-section .main-menu .submenu > li.has-submenu > .menu-arrow svg {
    transform: rotate(270deg);
  }
.menu-section .main-menu .submenu > li.has-submenu:hover > .submenu.level-2 {
  opacity: 1;
  visibility: visible;
  z-index: 10;
  transform: translateX(8%);
  top:0;
  margin-top: 0px;
  padding: 24px 0;
}

.submenu.level-2 li {
  display: block !important; 

  }}