/* Desktop compaction layer. Kept separate for straightforward rollback/tuning. */
.myhalo-repair-mega-trigger > .menu-link::after { content: none; }
.myhalo-repair-mega-trigger > .menu-link .myhalo-repair-mega-arrow { display: inline-flex; align-items: center; justify-content: center; align-self: center; height: 1em; margin-left: 2px; padding: 0; line-height: 1; vertical-align: middle; transform: translateY(-1px); }
.myhalo-repair-mega-trigger > .menu-link .myhalo-repair-mega-arrow .ast-icon { display: inline-flex !important; align-items: center; height: 1em; line-height: 1; }
.myhalo-repair-mega__panel { max-height: calc(100vh - var(--myhalo-mega-top, 84px) - 14px); overflow-y: auto; overscroll-behavior: contain; }
.myhalo-repair-mega h3 > a { display: inline-flex; align-items: center; gap: 4px; color: #6b756d !important; font: inherit; letter-spacing: inherit; text-transform: inherit; }
.myhalo-repair-mega h3 > a::after { content: "\2192"; font-size: 1.05em; opacity: .65; transition: transform .2s ease; }
.myhalo-repair-mega h3 > a:hover { color: #1f6533 !important; }
.myhalo-repair-mega h3 > a:hover::after { transform: translateX(2px); }
.myhalo-repair-mega__more { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 5px 12px; }
.myhalo-repair-mega footer > a { font-size: 13px; }
.myhalo-repair-mega__more span { color: #7a847d; font-size: 12px; }
.myhalo-repair-mega footer .myhalo-repair-mega__more a { position: relative; font-size: 13px; white-space: nowrap; }
.myhalo-repair-mega footer .myhalo-repair-mega__more a + a::before { content: "·"; position: absolute; left: -8px; color: #a7afa9; }
.myhalo-repair-mega-mobile-toggle { display: none; }
.myhalo-repair-mega__mobile-header { display: none; }
@media (max-width: 768px) {
  .ast-mobile-popup-drawer, .ast-mobile-popup-drawer .ast-mobile-popup-inner, .ast-mobile-popup-drawer .ast-mobile-popup-content { max-width: 100vw; overflow-x: hidden !important; }
  .ast-mobile-popup-drawer .ast-mobile-popup-inner { max-height: 100dvh; overflow-y: auto !important; overscroll-behavior-y: contain; -webkit-overflow-scrolling: touch; }
  .myhalo-repair-mega-trigger { position: relative; max-width: 100%; overflow-x: hidden; }
  .myhalo-repair-mega-trigger > .menu-link { padding-right: 52px !important; }
  .myhalo-repair-mega-trigger > .menu-link .myhalo-repair-mega-arrow { display: none !important; }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega-mobile-toggle { display: flex !important; align-items: center; justify-content: center; position: absolute; z-index: 2; top: 0; right: 0; width: 48px; height: 48px; margin: 0; padding: 0; color: inherit; visibility: visible !important; opacity: 1 !important; }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega-mobile-toggle::before { content: none !important; }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega-mobile-toggle .ast-icon { display: inline-flex !important; align-items: center; justify-content: center; width: 16px; height: 16px; transition: transform .2s ease; }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega-mobile-toggle .ast-icon::before { content: ""; display: block; width: 12px; height: 12px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translate(-1px, -1px); }
  .myhalo-repair-mega-trigger.is-mega-open > .myhalo-repair-mega-mobile-toggle .ast-icon { transform: rotate(180deg); }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega { position: fixed !important; z-index: 100001; top: 10vh; top: 10dvh; right: 10px; bottom: 10vh; bottom: 10dvh; left: 10px; width: auto; max-width: none; height: auto; padding: 0; overflow: hidden; transform: none; }
  .myhalo-repair-mega-trigger > .myhalo-repair-mega .myhalo-repair-mega__panel { display: flex; flex-direction: column; width: 100%; max-width: 100%; height: 100%; max-height: none; overflow-x: hidden; overflow-y: auto; overscroll-behavior-y: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y; border-radius: 14px; box-shadow: 0 12px 45px rgba(20,50,28,.28); }
  .myhalo-repair-mega__mobile-header { position: sticky; z-index: 5; top: 0; display: flex; align-items: center; justify-content: space-between; flex: 0 0 auto; min-height: 54px; padding: 10px 14px 10px 20px; background: #fff; border-bottom: 1px solid #e9efeb; color: #1f6533; }
  .myhalo-repair-mega__mobile-header strong { font-size: 16px; line-height: 1.25; }
  .myhalo-repair-mega__mobile-close { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: #eef7f0; color: #1f6533; box-shadow: none; font: 400 26px/1 Arial,sans-serif; }
  .myhalo-repair-mega__mobile-close:hover, .myhalo-repair-mega__mobile-close:focus { background: #e3f1e6; color: #1f6533; }
  .myhalo-repair-mega__grid, .myhalo-repair-mega footer { flex: 0 0 auto; }
  .myhalo-repair-mega__grid, .myhalo-repair-mega__col, .myhalo-repair-mega__help, .myhalo-repair-mega footer { min-width: 0; max-width: 100%; }
  .myhalo-repair-mega a, .myhalo-repair-mega__more, .myhalo-repair-mega__more a { overflow-wrap: anywhere; white-space: normal !important; }
  .myhalo-repair-mega__more { justify-content: flex-start; margin-top: 8px; }
}
@media (min-width: 769px) {
  .myhalo-repair-mega__col { padding: 20px; }
  .myhalo-repair-mega h2 { margin-bottom: 11px; font-size: 13px; line-height: 1.3; }
  .myhalo-repair-mega h3 { margin: 13px 0 5px; font-size: 11px; line-height: 1.3; }
  .myhalo-repair-mega__col > a:not(.myhalo-repair-mega__featured) { padding: 7px 9px 7px 16px; border-radius: 7px; font-size: 13px; line-height: 1.4; }
  .myhalo-repair-mega__featured { gap: 8px; padding: 11px 13px; border-radius: 9px; font-size: 13px; line-height: 1.35; }
  .myhalo-repair-mega__popular > a { margin-bottom: 6px; padding: 10px 12px !important; }
  .myhalo-repair-mega__popular strong { font-size: 12px; line-height: 1.35; }
  .myhalo-repair-mega__popular small { margin-top: 2px; font-size: 10px; line-height: 1.35; }
  .myhalo-repair-mega__help { padding: 12px; }
  .myhalo-repair-mega__help-card { padding: 15px; border-radius: 13px; }
  .myhalo-repair-mega__help-card h2 { margin: 8px 0 5px; font-size: 16px; line-height: 1.15; }
  .myhalo-repair-mega__help-card h3 { margin-top: 10px; padding-top: 9px; }
  .myhalo-repair-mega__help-card p { margin-bottom: 9px; font-size: 12px; line-height: 1.45; }
  .myhalo-repair-mega__help-card > a { padding: 7px 2px; font-size: 12px; line-height: 1.35; }
  .myhalo-repair-mega__help-card .myhalo-repair-mega__cta { margin-bottom: 2px; padding: 10px 12px; border-radius: 8px; }
  .myhalo-repair-mega footer { gap: 15px; padding: 9px 18px; }
}
