/* EPICORE R42 CLEAN TWO-ROW HEADER
   Built from stable R40. Replaces the broken R41 header layout.
*/

@media (min-width: 901px){
  .next-header{
    overflow:visible !important;
  }

  .next-header .next-wrap.next-header-row{
    width:min(100% - 28px, 1680px) !important;
    max-width:1680px !important;
    margin:0 auto !important;
    padding:12px 0 10px !important;

    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:10px 18px !important;
    min-height:auto !important;
  }

  /* BRAND: first row, far left */
  .next-header .epicore-r2-brand{
    order:1 !important;
    flex:0 0 auto !important;
    width:auto !important;
    min-width:250px !important;
    max-width:310px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    overflow:visible !important;
  }

  .next-header .epicore-r2-brand-logo{
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    object-fit:contain !important;
  }

  .next-header .epicore-r2-brand-copy{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:5px !important;
    min-width:0 !important;
  }

  .next-header .epicore-r2-brand-name{
    font-size:28px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  .next-header .epicore-r2-brand-slogan{
    display:block !important;
    font-size:9px !important;
    line-height:1.15 !important;
    letter-spacing:.09em !important;
    white-space:normal !important;
    width:190px !important;
    max-width:190px !important;
  }

  .next-header .epicore-r42-line{
    display:block !important;
    white-space:nowrap !important;
  }

  /* ACTIONS: first row, far right */
  .next-header .next-header-actions{
    order:2 !important;
    flex:0 0 auto !important;
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    white-space:nowrap !important;
  }

  .next-header .next-header-actions a{
    white-space:nowrap !important;
  }

  /* NAV: second row, full width */
  .next-header .next-nav{
    order:3 !important;
    flex:0 0 100% !important;
    width:100% !important;
    margin:2px 0 0 !important;
    padding:9px 0 3px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:10px 26px !important;

    border-top:1px solid rgba(51,223,255,.12) !important;
    overflow:visible !important;
  }

  .next-header .next-nav a{
    white-space:nowrap !important;
    font-size:13px !important;
  }

  /* desktop menu button stays hidden */
  .next-header .next-menu{
    display:none !important;
  }
}

/* medium desktop: slightly tighter but still two rows */
@media (min-width: 901px) and (max-width: 1250px){
  .next-header .next-wrap.next-header-row{
    width:calc(100% - 22px) !important;
  }

  .next-header .epicore-r2-brand{
    min-width:230px !important;
  }

  .next-header .next-header-actions{
    gap:9px !important;
  }

  .next-header .next-header-actions a{
    font-size:11.5px !important;
  }

  .next-header .next-nav{
    gap:9px 18px !important;
  }

  .next-header .next-nav a{
    font-size:12px !important;
  }
}

/* mobile: leave the stable R40 mobile behaviour alone */
@media (max-width: 900px){
  .next-header .epicore-r42-line{
    display:block !important;
  }
}
