﻿

.divHeaderWrapper {
  width: 100%;
  max-width: 1400px;
  position: fixed;
  top: 0px;
  transition: top 0.5s ease-in-out;
  z-index: 99;
}

.nav-up {
  top: -185px;
}


header {
  background: #005596;
  background: var(--main-color);
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  grid-template-rows: auto auto;
  grid-template-areas:
    "GAHeaderBefore GAHeaderBefore GAHeaderBefore GAHeaderBefore"
    "GAmobileMenu GAheaderLogo GAheaderSearch GAheaderLinks";
  width: 100%;
  text-align: left;
  position: relative;
  height: 100px;
}

.admin-header-links {
  background-color: #444;
  text-align: center;
  color: #eee;
}

  .admin-header-links a {
    display: inline-block;
    margin: 0 10px;
    line-height: 35px;
    font-size: 12px;
    font-weight: bold;
    color: #eee;
  }
  .admin-header-links .impersonate {
    display: inline-block;
  }
    .admin-header-links .impersonate span {
      display: inline-block;
      margin: 0px 10px;
      padding: 0px 10px;
      line-height: 35px;
      font-size: 12px;
      font-weight: bold;
      background: #FFFF00;
      color: #444;
    }

    .admin-header-links .impersonate a {
      display: inline-block;
      margin: 0px 10px;
      padding: 0px 10px;
      line-height: 35px;
      font-size: 12px;
      font-weight: bold;
      background-color: #444;
    }

      .admin-header-links .impersonate a:hover,
      .admin-header-links .impersonate a:focus {
        background-color: #444;
      }

      /*#region -- ADMIN HEADER BAR */
.admin-header-links { grid-column: 1 /span 2; grid-row: 1; background-color: #444; text-align: center; color: #eee; border-bottom: 1px solid var(--tertiary-color-3); }
  .admin-header-links * { display: inline-block; margin: 0 10px; line-height: 35px; font-size: 12px; font-weight: bold; }
  .admin-header-links a { color: #eee; }
    .admin-header-links a:hover { color: #fff; }
  .admin-header-links .impersonate .manualPriceOverride { display: none; }
    .admin-header-links .impersonate .manualPriceOverride.visible { display: inline-block; }
      .admin-header-links .impersonate .manualPriceOverride.visible:hover { text-decoration: underline; cursor: pointer; }
      .admin-header-links .impersonate span,
      .admin-header-links .impersonate .manualPriceOverride.visible.active { background: var(--main-action-color, #ffb32c); padding: 0 15px; color: #333; }
  .HeaderLinksContainer > .HeaderNavMenu {}


.header-upper {
  grid-area: GAHeaderBefore;
  display: none;
}

.header-lower {
  display: contents;
}

/* explicit header column placement — deterministic after adding the GAmobileMenu column */
.mobileMenuToggle { grid-column: 1; grid-row: 2; }
.logoWrapper { grid-column: 2; grid-row: 2; }
.header-lower > .store-search-box { grid-column: 3; grid-row: 2; }
.header-links-wrapper { grid-column: 4; grid-row: 2; }

.logoWrapper {
  max-width: 260px;
  min-width: 220px;
  padding: 0 2rem;
  grid-area: GAheaderLogo;
  display: grid;
  place-items: center;
}

.logoWrapper a, .logoWrapper img{
  width: 100%;
}

.search-box {
  max-width: 450px;
  position: relative;
  line-height: 0px;
  grid-area: GAheaderSearch;
  display: grid;
  place-items: center;
}

  .search-box #small-search-box-form {
    width: 100%;
  }

  .search-box #small-search-box-form input[type=text] {
    width: 100%;
  }

/* mobile search magnifier toggle — hidden by default; revealed < 768 in mediaqueries.css */
.searchToggle {
  display: none;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--light-text-color);
  padding: 0;
}
.searchToggle .material-icons-outlined {
  font-size: 34px;
  line-height: 1;
}

.searchClear {
  display: none;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--dark-text-color);
  padding: 0;
  flex: 0 0 auto;
}
.searchClear .material-icons-outlined {
  font-size: 28px;
  line-height: 1;
}

.header-links-wrapper {
  grid-area: GAheaderLinks
}

.header-links {
}

.header-links ul{
}

  .header-links ul li {
    background-color: transparent;
    position: relative;
    text-align: center;
    width: auto;
    height: auto;
    margin-top: auto;
  }
  .header-links ul li a{color: #fff;
  }

.header-menu {
width:100%;
max-width: 1400px;
}

nav {
  grid-column: 1;
  grid-row: 1;
  background: #fff;
}

.mega-menu-responsive, .menu-title {
display: none !important;
}

/*#region -- HEADER LINKS WRAPPER */

.headerLinks {
}

  .headerLinks > ul {
  }

    .headerLinks > ul > li {
      display: inline-block;
      vertical-align: top;
      z-index: 999;
      padding: 0px;
      margin: 0px;
    }

.headerLinksWrapper {
  grid-column: 3;
  grid-row: 2;
  white-space: nowrap;
  display: flex;
  padding: 0 2rem;
  flex-direction: column;
  height: 100px;
  justify-content: space-around;
  text-align: right;
  margin-right: 30px;
}

.HeaderLinksContainer {
  display: inline-block;
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
  display: inline-block;
  vertical-align: top;
}

  .HeaderLinksContainer > .HeaderNavMenu {
    list-style: none;
    margin: 0px;
    padding: 0px;
    text-align: left;
    display: inline-block;
    background: none;
    position: relative;
    width: auto;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }

    .HeaderLinksContainer > .HeaderNavMenu > li {
      display: inline-block;
      padding: 0px 0;
      margin: 0px;
      height: 1rem;
      vertical-align: bottom;
      border-bottom: none;
    }

      .HeaderLinksContainer > .HeaderNavMenu > li > a > span {
        font-size: 1.4rem;
        font-weight: 600;
        color: #fff;
        display: block;
        text-align: left;
        text-decoration: none;
        text-transform: uppercase;
        cursor: pointer;
        margin: 0px 15px;
      }





    .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > a.with-subcategories {
      display: inline-block;
    }

    .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > .plus-button {
      display: inline-block;
      color: #fff;
      font-family: 'Material Icons Outlined';
      font-weight: normal;
      font-style: normal;
      font-size: 24px;
      line-height: 1;
      letter-spacing: normal;
      text-transform: none;
      display: inline-block;
      white-space: nowrap;
      word-wrap: normal;
      direction: ltr;
      -webkit-font-smoothing: antialiased;
      content: "expand_more";
      vertical-align: middle;
    }

      .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > .plus-button::after {
        content: "expand_more";
      }

    .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap {
      display: none;
    }

    .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap {
      background: #FFFFFF;
      min-width: 100%;
      width: auto;
      padding: 0px;
      left: 0;
      position: absolute;
      opacity: 0;
      top: 1rem;
      visibility: hidden;
      z-index: 99999;
      border: 1px solid #ccc;
      border-radius: 5px;
      -webkit-box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
      -moz-box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
      box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
      transition: all 0.3s ease;
      padding: 1rem 0;
    }

      .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active {
        opacity: 1;
        top: 5rem;
        visibility: visible;
        display: block;
      }

      .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap ul.sublist {
        padding: 0px;
        margin: 0px;
      }

        .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap ul.sublist li {
        }

      .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active li:hover {
        background-color: #efefef;
      }

      .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active a {
        display: block;
        padding: 1rem 4rem 1rem 2rem;
      }

        .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active a,
        .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active a span {
          color: #333333;
          margin: 0px;
          font-size: 14px;
          line-height: 22.5px;
          font-weight: 600;
          text-align: left;
          text-decoration: none;
          text-transform: uppercase;
        }

          .HeaderLinksContainer > .HeaderNavMenu > li.has-sublist > div.sublist-wrap.active a:hover {
            color: #333333;
            text-decoration: underline;
          }

.header-links-wrapper {
  grid-column: 4;
  grid-row: 2;
  white-space: nowrap;
  display: flex;
  padding: 0 2rem;
  flex-direction: column;
  height: 100px;
  justify-content: space-around;
  text-align: right;
  margin-right: 60px;
}

.headerLinksCart {
  margin-left: 1rem;
  display: inline-block;
  position: absolute;
  text-indent: 0px;
  content: "";
  width: 56px;
  height: 48px;
  background: transparent url(/Themes/Cokesbury/Content/images/icon_nav_cart_2x.png) no-repeat;
  background-size: 56px 48px;
}

.headerLinksCartQty {
  display: inline-block;
  border-radius: 50%;
  font-size: 1.6rem;
  font-weight: 600;
  color: #333333 !important;
  width: 30px;
  height: 30px;
  position: absolute;
  left: 7px;
  top: -4px;
  background: var(--main-action-color, #ffb32c);
  z-index: 1000;
  text-align: center;
  line-height: 2.8rem;
  overflow: hidden;
}


.flyout-cart.active {
  visibility: visible;
  opacity: 1;
  top: 8.5rem;
  transition: all 0.3s ease;
}

.flyout-cart.fade {
  top: 8.5rem;
}

.flyout-cart {
  border: 1px solid #ccc;
  border-radius: 5px;
  position: absolute;
  right: 2rem;
  top: 6rem;
  z-index: 100;
  width: 550px;
  -webkit-box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
  -moz-box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
  box-shadow: 1px 4px 6px -2px rgba(0,0,0,0.3);
  transition: all 0.3s ease;
  background-color: #fff;
  visibility: hidden;
  opacity: 0;
}

.mini-shopping-cart {
  padding: 3rem 4rem 4rem;
}

.miniCartnoItemsMessageWrapper {
  padding: 1rem 0 0;
  display: block;
}

.miniCartItemsMessageWrapper {
  display: flex;
  justify-content: space-between;
  padding: 0 0 1rem;
  border-bottom: 1px solid #ccc;
}

  .miniCartItemsMessageWrapper span {
    margin: 0;
    padding: 0;
  }

    .miniCartItemsMessageWrapper span a {
      font-size: 2rem;
    }


.mini-shopping-cart .totals .flyoutSubTotalLabel {
  font-size: 2.8rem;
  float: left;
}

.mini-shopping-cart .totals .flyoutSubTotal {
  font-size: 2.8rem;
  float: right;
  font-weight: 700;
}

.mini-shopping-cart .checkout-button {
  width: 100%;
}

.namePriceWrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

  .namePriceWrapper .name a {
    text-transform: none;
  }

  .namePriceWrapper .price {
    margin: 0 0 0 3rem;
  }




.mini-shopping-cart .items {
  margin: 0 0 2rem;
  border-bottom: 1px solid #ccc;
}

  .mini-shopping-cart .items .item {
    display: flex;
    padding: 2rem 0;
  }


.mini-shopping-cart .picture {
  display: inline-block;
  text-align: center;
}

.mini-shopping-cart .product {
  display: inline-block;
  text-align: left;
  vertical-align: top;
  padding-left: 2rem;
  white-space: normal;
  width: 100%;
}

.mini-shopping-cart .authorName {
  margin-bottom: 2rem;
}

.mini-shopping-cart .buttons {
  clear: both;
}

  .mini-shopping-cart .buttons .checkout-button {
    margin-bottom: 0;
  }

.mini-shopping-cart .picture a {
  display: block;
  overflow: visible;
}

  .mini-shopping-cart .picture a img {
    top: 0;
    left: 0;
    margin: auto;
    width: 10rem;
  }

/* Mobile menu hamburger toggle — lives in the header's GAmobileMenu cell (before the logo);
   hidden on desktop, revealed < 992 in mediaqueries.css */
.mobileMenuToggle {
    grid-area: GAmobileMenu;
    display: none;
    align-items: center;
    padding: 0 1.5rem;
    background: transparent;
    border: none;
    cursor: pointer;
}
.mobileMenuToggle .hamburgerBars {
    display: inline-block;
    width: 26px;
}
.mobileMenuToggle .hamburgerBars > span {
    display: block;
    height: 3px;
    margin: 5px 0;
    background: #fff;
    border-radius: 2px;
    transition: all .3s ease;
}
.mobileMenuToggle .mobileMenuToggleLabel {
    display: none;
}
.mobileMenuToggle.active .hamburgerBars > span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.mobileMenuToggle.active .hamburgerBars > span:nth-child(2) { opacity: 0; }
.mobileMenuToggle.active .hamburgerBars > span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
