
:root{
  --vhmm-bg:#F6F2E7;
  --vhmm-card:#FCFAF4;
  --vhmm-text:#2D241F;
  --vhmm-copy:#67584D;
  --vhmm-green:#A7C84F;
  --vhmm-green-dark:#76922B;
  --vhmm-line:#D8D5C9;
}

@media(min-width:1024px){

  /* Loveus / old fixes: reset only inside our mega menu */
  body .main-header .main-menu .navigation > li.vhmm281-host,
  body .sticky-header .main-menu .navigation > li.vhmm281-host{
    position:static!important;
  }

  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel{
    position:fixed!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:minmax(132px,auto)!important;
    align-items:stretch!important;
    gap:22px 42px!important;

    left:50vw!important;
    top:0;
    transform:translateX(-50%) translateY(10px)!important;

    width:min(1480px,calc(100vw - 70px))!important;
    min-width:900px!important;
    max-width:calc(100vw - 70px)!important;

    height:auto!important;
    min-height:0!important;
    max-height:calc(100vh - 150px)!important;
    overflow:auto!important;

    margin:0!important;
    padding:32px 38px!important;

    background:var(--vhmm-bg)!important;
    border:1px solid rgba(86,73,61,.14)!important;
    border-top:3px solid var(--vhmm-green)!important;
    border-radius:0 0 28px 28px!important;
    box-shadow:0 26px 70px rgba(34,28,22,.17)!important;

    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:999999!important;

    transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;
    box-sizing:border-box!important;
  }

  body .main-header .main-menu .navigation > li.vhmm281-host.vhmm281-open > ul.vhmm281-panel,
  body .sticky-header .main-menu .navigation > li.vhmm281-host.vhmm281-open > ul.vhmm281-panel{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateX(-50%) translateY(0)!important;
  }

  /* override EVERY old li fixed-height rule */
  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li{
    position:relative!important;
    display:block!important;
    float:none!important;

    width:100%!important;
    min-width:0!important;
    max-width:none!important;

    height:auto!important;
    min-height:132px!important;
    max-height:none!important;

    margin:0!important;
    padding:0!important;

    line-height:normal!important;
    border:0!important;
    background:transparent!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li + li,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li + li{
    border-top:0!important;
  }

  /* override EVERY old link fixed-height rule */
  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li > a.vhmm281-card,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li > a.vhmm281-card{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    align-items:center!important;
    gap:24px!important;

    width:100%!important;
    min-width:0!important;

    height:auto!important;
    min-height:132px!important;
    max-height:none!important;

    margin:0!important;
    padding:8px!important;

    line-height:normal!important;
    white-space:normal!important;
    text-transform:none!important;
    text-decoration:none!important;

    background:transparent!important;
    border:1px solid transparent!important;
    border-radius:20px!important;
    box-sizing:border-box!important;
    overflow:visible!important;

    transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
  }

  body .vhmm281-panel > li > a.vhmm281-card:hover{
    background:rgba(255,255,255,.42)!important;
    border-color:rgba(167,200,79,.28)!important;
    transform:translateY(-1px)!important;
  }

  body .vhmm281-icon{
    width:112px!important;
    height:112px!important;
    min-width:112px!important;
    display:grid!important;
    place-items:center!important;

    border:1px solid var(--vhmm-line)!important;
    border-radius:22px!important;
    background:var(--vhmm-card)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
  }

  body .vhmm281-icon .dashicons{
    width:48px!important;
    height:48px!important;
    font-size:48px!important;
    line-height:1!important;
    color:var(--vhmm-green)!important;
  }

  body .vhmm281-text{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:8px!important;
    min-width:0!important;
    text-align:left!important;
  }

  body .vhmm281-title{
    display:block!important;
    margin:0!important;
    padding:0!important;

    font-family:Georgia,"Times New Roman",serif!important;
    font-size:27px!important;
    line-height:1.12!important;
    font-weight:400!important;
    letter-spacing:-.015em!important;

    color:var(--vhmm-text)!important;
    text-transform:none!important;
    white-space:normal!important;
  }

  body .vhmm281-desc{
    display:block!important;
    max-width:500px!important;
    margin:0!important;
    padding:0!important;

    font-family:Arial,sans-serif!important;
    font-size:14.5px!important;
    line-height:1.5!important;
    font-weight:500!important;

    color:var(--vhmm-copy)!important;
    text-transform:none!important;
    white-space:normal!important;
  }

  /* third level: reset old flyout dropdown */
  body .vhmm281-panel > li > ul{
    position:static!important;
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;

    width:auto!important;
    min-width:0!important;
    max-width:none!important;

    height:auto!important;
    min-height:0!important;
    max-height:none!important;

    margin:6px 0 0 144px!important;
    padding:0 8px 8px!important;

    opacity:1!important;
    visibility:visible!important;
    transform:none!important;

    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    overflow:visible!important;
  }

  body .vhmm281-panel > li > ul > li{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
  }

  body .vhmm281-panel > li > ul > li > a{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;

    height:auto!important;
    min-height:0!important;
    max-height:none!important;

    margin:0!important;
    padding:3px 0!important;

    font-size:13px!important;
    line-height:1.4!important;
    color:#6B625A!important;
    text-transform:none!important;
    white-space:normal!important;
    background:transparent!important;
  }

  body .vhmm281-panel > li > ul > li > a::before{
    content:"→"!important;
    color:var(--vhmm-green-dark)!important;
  }

  /* clean dim without blur, so header stays crisp */
  body.vhmm281-overlay::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:999990;
    background:rgba(26,31,18,.10);
    pointer-events:none;
  }
}

@media(min-width:1024px) and (max-width:1250px){
  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel{
    width:calc(100vw - 36px)!important;
    min-width:0!important;
    max-width:calc(100vw - 36px)!important;
    gap:16px 24px!important;
    padding:24px 26px!important;
  }

  body .main-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li > a.vhmm281-card,
  body .sticky-header .main-menu .navigation > li.vhmm281-host > ul.vhmm281-panel > li > a.vhmm281-card{
    grid-template-columns:86px minmax(0,1fr)!important;
    gap:17px!important;
    min-height:106px!important;
  }

  body .vhmm281-icon{
    width:86px!important;
    height:86px!important;
    min-width:86px!important;
  }

  body .vhmm281-icon .dashicons{
    width:38px!important;
    height:38px!important;
    font-size:38px!important;
  }

  body .vhmm281-title{font-size:23px!important}
  body .vhmm281-desc{font-size:13.5px!important}

  body .vhmm281-panel > li > ul{
    margin-left:111px!important;
  }
}

/* mobile uses the original Loveus menu */
@media(max-width:1023px){
  body .vhmm281-icon,
  body .vhmm281-desc{
    display:none!important;
  }
}
