/* Header mega-menu + dropdown polish. Desktop only (>=1200px); phones keep the theme's accordion menu. */
@media (min-width: 1200px) {
  .main-menu .main-menu__list > li.hc-mega { position: relative; }

  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) 250px;
    gap: 4px 20px;
    position: absolute !important;
    top: 100% !important;
    left: -40px !important;
    right: auto !important;
    width: 800px !important;
    min-width: 0 !important;
    box-sizing: border-box;
    padding: 26px 28px !important;
    background: #ffffff;
    border-top: 3px solid #0a7ac2;
    border-radius: 0 0 16px 16px;
    box-shadow: 0 22px 48px rgba(13, 33, 55, 0.18);
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
    z-index: 99;
  }
  .main-menu .main-menu__list > li.hc-mega:hover > ul.hc-mega__panel,
  .main-menu .main-menu__list > li.hc-mega:focus-within > ul.hc-mega__panel {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto;
    transform: none !important;
  }

  .hc-mega__panel > li { display: block !important; width: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none; }
  .hc-mega__panel > li > a { display: block !important; padding: 12px 14px !important; border-radius: 10px; line-height: 1.35; background: transparent; transition: background 0.2s ease; }
  .hc-mega__panel > li > a:hover { background: #eef5fb; }
  .hc-mega__t { display: block; font-size: 16px; font-weight: 600; color: #0d2137; }
  .hc-mega__d { display: block; margin-top: 2px; font-size: 14px; font-weight: 400; color: #4a5568; }
  .hc-mega__panel > li > a:hover .hc-mega__t { color: #0a7ac2; }

  .hc-mega__panel > li.hc-mega__all { grid-column: 1 / span 2; margin-bottom: 6px !important; border-bottom: 1px solid #e5e7eb !important; }
  .hc-mega__panel > li.hc-mega__all .hc-mega__t { color: #0a7ac2; font-size: 15px; font-weight: 700; letter-spacing: 0.4px; text-transform: uppercase; }

  .hc-mega__panel > li.hc-mega__cta {
    grid-column: 3; grid-row: 1 / span 4;
    display: flex !important; flex-direction: column; justify-content: center; gap: 10px;
    padding: 24px !important; background: #0f172a; border-radius: 14px;
  }
  .hc-mega__ctat { font-size: 20px; font-weight: 700; color: #ffffff; line-height: 1.25; }
  .hc-mega__ctad { font-size: 14px; line-height: 1.5; color: #cbd5e1; }
  .hc-mega__panel > li.hc-mega__cta > a.hc-mega__call {
    display: inline-block !important; align-self: flex-start; margin-top: 6px;
    padding: 12px 18px !important; border-radius: 10px; background: #0a7ac2 !important;
    color: #ffffff !important; font-size: 15px; font-weight: 700;
  }

  /* simple dropdowns (Services, Resources) */
  .main-menu .main-menu__list > li.hc-dd > ul {
    border-top: 3px solid #0a7ac2 !important;
    border-radius: 0 0 14px 14px !important;
    box-shadow: 0 18px 40px rgba(13, 33, 55, 0.16) !important;
  }
}

/* Shop Online panel: 8 category links in two columns (rows are shorter than Rentals, so the call card spans all five rows) */
@media (min-width: 1200px) {
  .hc-mega--shop > ul.hc-mega__panel > li.hc-mega__cta { grid-row: 1 / span 5 !important; }
  .hc-mega--shop > ul.hc-mega__panel > li > a > .hc-mega__t { padding: 2px 0; }
}

/* hover-fix: stop the theme's purple hover from covering our text */
@media (min-width: 1200px) {
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta),
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta):hover {
    background: transparent !important;
  }
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta) > a,
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta) > a:hover,
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta):hover > a {
    background-image: none !important;
    padding: 12px 14px !important;
    transform: none !important;
    box-shadow: none !important;
  }
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta) > a {
    background-color: transparent !important;
  }
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta) > a:hover,
  .main-menu .main-menu__list > li.hc-mega > ul.hc-mega__panel > li:not(.hc-mega__cta):hover > a {
    background-color: #eef5fb !important;
  }
  .hc-mega__panel > li > a::before,
  .hc-mega__panel > li > a::after { display: none !important; }
  .hc-mega__panel > li > a:hover .hc-mega__t,
  .hc-mega__panel > li:hover > a .hc-mega__t { color: #0a7ac2 !important; }
  .hc-mega__panel > li > a:hover .hc-mega__d,
  .hc-mega__panel > li:hover > a .hc-mega__d { color: #4a5568 !important; }
  .hc-mega__panel > li.hc-mega__cta,
  .hc-mega__panel > li.hc-mega__cta:hover { background: #0f172a !important; }
  .hc-mega__panel > li.hc-mega__cta > a.hc-mega__call:hover { background: #0b6aa8 !important; color: #ffffff !important; }

  /* simple dropdowns: light-blue hover, blue text */
  .main-menu .main-menu__list > li.hc-dd > ul > li:hover,
  .main-menu .main-menu__list > li.hc-dd > ul > li > a:hover,
  .main-menu .main-menu__list > li.hc-dd > ul > li:hover > a {
    background: #eef5fb !important;
    color: #0a7ac2 !important;
  }
}