/* IDALO Catalog - Neuero Menu (shortcode: idalo_menu_section_neuero)
   All styles are namespaced to avoid conflicts. */


/* Fix astra megamenu */

.astra-full-megamenu-wrapper {
  box-shadow: none !important;
  border: 0 !important;
  border-top: 2px solid var(--neuero-color-1) !important;
  height: 100vh !important;
  background: rgba(255, 255, 255, 0.6) !important;
  backdrop-filter: blur(12px) saturate(120%);
  -webkit-backdrop-filter: blur(12px) saturate(120%);
}

.ast-mm-custom-content.ast-mm-custom-text-content {
    padding: 0;
}

.idalo-m-container-neuero {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  align-items: stretch;
}

/* Card */
.idalo-m-container-neuero .idalo-mn-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 0;
  border-radius: 0;
  overflow: visible; /* to allow dropdown shadow */
}

/* Image */
.idalo-m-container-neuero .idalo-mn-image {
  width: 100%;
  aspect-ratio: 4 / 3;
  background: #f3f3f3;
  overflow: hidden;
}

.idalo-m-container-neuero .idalo-mn-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.idalo-m-container-neuero .idalo-mn-image-placeholder {
  width: 100%;
  height: 100%;
  background: #e9edf2;
}

/* Blue title bar */
.idalo-m-container-neuero .idalo-mn-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #034784; /* Neuero blue */
  color: #fff;
  padding: 10px 12px;
  height: 56px; /* 2 lines @ 15px with ~1.2 line-height + 20px padding */
}

.idalo-m-container-neuero .idalo-mn-title a,
.idalo-m-container-neuero .idalo-mn-title span {
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.25;
  display: -webkit-box;           /* enable line clamp */
  -webkit-line-clamp: 2;          /* clamp to 2 lines */
  -webkit-box-orient: vertical;   /* vertical box orientation */
  overflow: hidden;               /* hide overflow */
  text-overflow: ellipsis;        /* ellipsis on overflow */
  max-height: calc(1.25em * 2);   /* ensure 2-line box height */
}

/* Caret as SVG icon */
.idalo-m-container-neuero .idalo-mn-caret {
  width: 16px;
  height: 16px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px 16px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23ffffff'><path stroke-linecap='round' stroke-linejoin='round' d='m19.5 8.25-7.5 7.5-7.5-7.5' /></svg>");
  transition: transform .2s ease;
}

/* Dropdown */
.idalo-m-container-neuero .idalo-mn-dropdown {
  position: absolute;
  left: 0;
  top: 100%; /* stick to the bottom of the blue bar (no gap) */
  width: 100%; /* same width as the card */
  box-sizing: border-box; /* include border in width */
  /* min-width: 240px;  removed to keep exact card width */
  background: #ffffff;
  box-shadow: 0 0px 8px rgba(0,0,0,0.2);
  padding: 6px 0;
  z-index: 50;
  display: none;
}

.idalo-m-container-neuero .idalo-mn-subgroup-list {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 60vh;
  overflow: auto;
}

.idalo-m-container-neuero .idalo-mn-subgroup-item {
  display: block;
}

.idalo-m-container-neuero .idalo-mn-subgroup-link {
  display: block;
  padding: 10px;
  color: #1c2b39;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.2;
  border-bottom: 1px solid #eef0f3;
}

.idalo-m-container-neuero .idalo-mn-subgroup-item:last-child .idalo-mn-subgroup-link {
  border-bottom: 0;
}

.idalo-m-container-neuero .idalo-mn-subgroup-link:hover {
  background: #f5f8fb;
}

/* Hover interaction: show dropdown and rotate caret */
.idalo-m-container-neuero .idalo-mn-card:hover .idalo-mn-dropdown {
  display: block;
}

.idalo-m-container-neuero .idalo-mn-card:hover .idalo-mn-caret {
  transform: rotate(180deg);
}

/* Responsive */
@media (max-width: 1200px) {
  .idalo-m-container-neuero {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 900px) {
  .idalo-m-container-neuero {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 700px) {
  .idalo-m-container-neuero {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 420px) {
  .idalo-m-container-neuero {
    grid-template-columns: 1fr;
  }
}


/* Mobile fix */
@media (max-width: 921px) {
    #ast-hf-menu-1-mobile .menu-item > .menu-link {
        height: auto;

    }

    #ast-hf-menu-1-mobile .menu-item div.astra-full-megamenu-wrapper {
        border: 0 !important;
    }

    #ast-hf-menu-1-mobile .astra-full-megamenu-wrapper {
        height: auto !important;
    }

    /*SET LIST*/
    .idalo-m-container-neuero {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .idalo-m-container-neuero .idalo-mn-image {
        display: none;
    }

    .idalo-m-container-neuero .idalo-mn-title-row {
        background-color: #f9f9f9;
        border: 0;
        border-bottom-width: 1px;
        border-style: solid;
        border-color: var(--ast-border-color);
        padding-left: 24px;
    }

    .idalo-m-container-neuero .idalo-mn-title-row .idalo-mn-title {
        color: var(--ast-global-color-3);
        font-size: 15px !important;
    }

    .idalo-m-container-neuero .idalo-mn-title-row .idalo-mn-title::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        width: .65em;
        height: .85em;
        transform: translateY(-50%) rotate(-90deg);
        background-repeat: no-repeat;
        background-size: contain;
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='57 35.171 26 16.043' fill='grey'><path d='M57.5,38.193l12.5,12.5l12.5-12.5l-2.5-2.5l-10,10l-10-10L57.5,38.193z'/></svg>");
        margin-left: 12px;

    }

    .idalo-m-container-neuero .idalo-mn-title-row .idalo-mn-caret {
        display: none;
    }

    .idalo-mn-dropdown {
        display: none !important;
    }
}