/* EZ Custom Ag header/logo fix - v1.6.8
   Goal: larger logo, no desktop squish/cropping, and cleaner mobile transparency. */

/* ===== MOBILE / TABLET ===== */
@media (max-width: 980px) {
  /* Clear any box/background around logo wrappers */
  #main-header,
  #main-header .container,
  #main-header .logo_container,
  .et-l--header,
  .et-l--header .et_pb_section,
  .et-l--header .et_pb_row,
  .et_pb_menu,
  .et_pb_fullwidth_menu,
  .et_pb_menu .et_pb_menu__wrap,
  .et_pb_fullwidth_menu .et_pb_menu__wrap,
  .et_pb_menu .et_pb_menu__logo-wrap,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap,
  .et_pb_menu .et_pb_menu__logo,
  .et_pb_fullwidth_menu .et_pb_menu__logo,
  .et_mobile_menu {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* Divi default header */
  #main-header .container {
    min-height: 78px !important;
  }

  #main-header .logo_container {
    width: auto !important;
    max-width: 74% !important;
    height: 78px !important;
    display: flex !important;
    align-items: center !important;
    overflow: visible !important;
    padding: 6px 0 !important;
  }

  #main-header #logo,
  #main-header .logo_container img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 250px !important;
    max-height: 64px !important;
    object-fit: contain !important;
    object-position: left center !important;
    aspect-ratio: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    /* Helps knock out a baked-in white box if the logo file is not transparent */
    mix-blend-mode: multiply !important;
  }

  /* Divi Theme Builder / Menu Module */
  .et_pb_menu .et_pb_menu__wrap,
  .et_pb_fullwidth_menu .et_pb_menu__wrap {
    align-items: center !important;
    min-height: 78px !important;
  }

  .et_pb_menu .et_pb_menu__logo-wrap,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap,
  .et_pb_menu .et_pb_menu__logo,
  .et_pb_fullwidth_menu .et_pb_menu__logo {
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: 74% !important;
    margin: 0 12px 0 0 !important;
    padding: 6px 0 !important;
    align-items: center !important;
    overflow: visible !important;
  }

  .et_pb_menu .et_pb_menu__logo img,
  .et_pb_fullwidth_menu .et_pb_menu__logo img,
  .et_pb_menu .et_pb_menu__logo-wrap img,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 250px !important;
    max-height: 64px !important;
    object-fit: contain !important;
    object-position: left center !important;
    aspect-ratio: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    mix-blend-mode: multiply !important;
  }

  .et_pb_menu .et_mobile_nav_menu,
  .et_pb_fullwidth_menu .et_mobile_nav_menu {
    margin-left: auto !important;
    flex: 0 0 auto !important;
  }
}

@media (max-width: 480px) {
  #main-header .container,
  .et_pb_menu .et_pb_menu__wrap,
  .et_pb_fullwidth_menu .et_pb_menu__wrap {
    min-height: 72px !important;
  }

  #main-header .logo_container {
    height: 72px !important;
    max-width: 72% !important;
  }

  #main-header #logo,
  #main-header .logo_container img,
  .et_pb_menu .et_pb_menu__logo img,
  .et_pb_fullwidth_menu .et_pb_menu__logo img,
  .et_pb_menu .et_pb_menu__logo-wrap img,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap img {
    max-width: 225px !important;
    max-height: 58px !important;
  }

  .et_pb_menu .et_pb_menu__logo-wrap,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap,
  .et_pb_menu .et_pb_menu__logo,
  .et_pb_fullwidth_menu .et_pb_menu__logo {
    max-width: 72% !important;
  }
}

/* ===== DESKTOP ===== */
@media (min-width: 981px) {
  /* Keep the header visually consistent and prevent the logo from shrinking/cropping */
  #main-header,
  #main-header.et-fixed-header {
    transition: none !important;
    animation: none !important;
  }

  #main-header .container,
  #main-header.et-fixed-header .container {
    min-height: 96px !important;
    height: auto !important;
  }

  #main-header .logo_container,
  #main-header.et-fixed-header .logo_container {
    width: auto !important;
    height: 96px !important;
    line-height: 96px !important;
    display: flex !important;
    align-items: center !important;
    overflow: visible !important;
    padding: 8px 0 !important;
  }

  #main-header #logo,
  #main-header .logo_container img,
  #main-header.et-fixed-header #logo,
  #main-header.et-fixed-header .logo_container img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: 80px !important;
    max-width: 390px !important;
    object-fit: contain !important;
    object-position: left center !important;
    aspect-ratio: auto !important;
    transform: none !important;
    transition: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* Make the shrunken/fixed state match the regular state */
  #main-header.et-fixed-header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #main-header #top-menu > li > a,
  #main-header.et-fixed-header #top-menu > li > a {
    padding-top: 37px !important;
    padding-bottom: 37px !important;
    transition: none !important;
  }

  /* Theme Builder / Menu Module desktop states */
  .et-l--header .et_pb_section,
  .et-l--header .et_pb_row,
  .et_pb_menu,
  .et_pb_fullwidth_menu,
  .et_pb_menu .et_pb_menu__wrap,
  .et_pb_fullwidth_menu .et_pb_menu__wrap,
  .et_pb_sticky.et_pb_sticky--active,
  .et_pb_menu.et_pb_sticky--active,
  .et_pb_fullwidth_menu.et_pb_sticky--active {
    overflow: visible !important;
    transition: none !important;
    animation: none !important;
  }

  .et_pb_menu .et_pb_menu__wrap,
  .et_pb_fullwidth_menu .et_pb_menu__wrap,
  .et_pb_sticky.et_pb_sticky--active .et_pb_menu__wrap,
  .et_pb_menu.et_pb_sticky--active .et_pb_menu__wrap,
  .et_pb_fullwidth_menu.et_pb_sticky--active .et_pb_menu__wrap {
    min-height: 96px !important;
    align-items: center !important;
  }

  .et_pb_menu .et_pb_menu__logo-wrap,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap,
  .et_pb_menu .et_pb_menu__logo,
  .et_pb_fullwidth_menu .et_pb_menu__logo,
  .et_pb_sticky.et_pb_sticky--active .et_pb_menu__logo-wrap,
  .et_pb_sticky.et_pb_sticky--active .et_pb_menu__logo,
  .et_pb_menu.et_pb_sticky--active .et_pb_menu__logo-wrap,
  .et_pb_menu.et_pb_sticky--active .et_pb_menu__logo,
  .et_pb_fullwidth_menu.et_pb_sticky--active .et_pb_menu__logo-wrap,
  .et_pb_fullwidth_menu.et_pb_sticky--active .et_pb_menu__logo {
    width: auto !important;
    flex: 0 1 auto !important;
    align-items: center !important;
    padding: 8px 0 !important;
    margin: 0 16px 0 0 !important;
    overflow: visible !important;
  }

  .et_pb_menu .et_pb_menu__logo img,
  .et_pb_fullwidth_menu .et_pb_menu__logo img,
  .et_pb_menu .et_pb_menu__logo-wrap img,
  .et_pb_fullwidth_menu .et_pb_menu__logo-wrap img,
  .et_pb_sticky.et_pb_sticky--active .et_pb_menu__logo img,
  .et_pb_sticky.et_pb_sticky--active .et_pb_menu__logo-wrap img,
  .et_pb_menu.et_pb_sticky--active .et_pb_menu__logo img,
  .et_pb_menu.et_pb_sticky--active .et_pb_menu__logo-wrap img,
  .et_pb_fullwidth_menu.et_pb_sticky--active .et_pb_menu__logo img,
  .et_pb_fullwidth_menu.et_pb_sticky--active .et_pb_menu__logo-wrap img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: 80px !important;
    max-width: 390px !important;
    object-fit: contain !important;
    object-position: left center !important;
    aspect-ratio: auto !important;
    transform: none !important;
    transition: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}


/* Desktop dropdown arrows: keep the arrow directly beside the menu label */
@media (min-width: 981px) {
  #top-menu > li.menu-item-has-children > a:first-child,
  .et-menu > li.menu-item-has-children > a:first-child,
  .et_pb_menu .et-menu > li.menu-item-has-children > a:first-child,
  .et_pb_fullwidth_menu .et-menu > li.menu-item-has-children > a:first-child {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    padding-right: 18px !important;
  }

  #top-menu > li.menu-item-has-children > a:first-child:after,
  .et-menu > li.menu-item-has-children > a:first-child:after,
  .et_pb_menu .et-menu > li.menu-item-has-children > a:first-child:after,
  .et_pb_fullwidth_menu .et-menu > li.menu-item-has-children > a:first-child:after {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    margin-top: 0 !important;
    transform: translateY(-50%) !important;
    line-height: 1 !important;
  }
}
