/* Keep submenu visible when hovering over it */
.site-nav .menu-item-has-children {
  position: relative;
}

.site-nav .menu-item-has-children .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  padding-top: 8px; /* creates invisible bridge over the gap */
  margin-top: 0;
}

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

/* Add dropdown arrow indicator */
.site-nav .menu-item-has-children > a::after {
  content: ' ▾';
  font-size: 10px;
  opacity: 0.6;
}

/* ── Mobile responsive fixes ── */
@media (max-width: 768px) {

  /* Reduce section padding */
  section {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  /* All grids collapse to single column */
  div[style*="grid-template-columns: repeat(4"] ,
  div[style*="grid-template-columns: repeat(3"] ,
  div[style*="grid-template-columns: repeat(2"] ,
  div[style*="grid-template-columns: 1fr 2fr"] ,
  div[style*="grid-template-columns: 2fr 3fr"] ,
  div[style*="grid-template-columns: 3fr 2fr"] ,
  div[style*="grid-template-columns: 1fr 1fr"] ,
  div[style*="grid-template-columns: 2fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* Hero text sizing */
  h1 {
    font-size: 2rem !important;
    line-height: 1.2 !important;
  }

  h2 {
    font-size: 1.6rem !important;
  }

  h3 {
    font-size: 1.2rem !important;
  }

  /* Hero sections */
  section[style*="padding:120px"] {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  section[style*="padding:100px"] {
    padding-top: 60px !important;
    padding-bottom: 48px !important;
  }

  /* Buttons stack */
  div[style*="display:flex;gap:16px"] {
    flex-direction: column !important;
    gap: 12px !important;
  }

  /* Images full width */
  img {
    width: 100% !important;
    height: auto !important;
    min-height: unset !important;
  }

  /* Nav */
  .site-nav {
    display: none;
  }

  /* Consultation cards */
  div[style*="grid-template-columns:repeat(2,1fr)"] {
    grid-template-columns: 1fr !important;
  }

  /* Article images side by side -> stacked */
  div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }

  /* Max width containers */
  div[style*="max-width:1100px"] {
    max-width: 100% !important;
  }

}